According to the official docs the pageBuilder parameter is used to build the primary route content and the transitionsBuilder parameter is used to build the route's transition.

So both of them have different jobs but if pageBuilder is use to build the primary route content then why it also declares two Animation parameter in its typedef RoutePageBuilder, also in the transitionBuilder typedef RouteTransitionBuilder, there are two Animation parameters declared animation and secondaryAnimation . What is the difference between those two Animations and how we can use them?