Page: An abstract class that describes the configuration of a route
Router: A class that manages opening and closing pages of an application
RouterInformationParser: An abstract class used by the Router
's widget to parse route information into a configuration
RouteInformationProvider: An abstract class that provides route information for the Router
's widget
RouterDelegate: An abstract class used by the Router
's widget to build and configure a navigating widget
BackButtonDispatcher: Reports to a Router when the user taps the back button on platforms that support back button (such as Android)
TransitionDelegate: The delegate that decides how pages transition in or out of the screen when it's added or removed.
════════ Exception caught by widget library ════════════════════════════════════
The Navigator.pages must not be empty to use the Navigator.pages API
════════════════════════════════════════════════════════════════════════════════