ScreensNavigation
Defines screens navigation map by declaring all possible screens and their contents identified by their routes.
It's later provided via compositionLocalOf to allow navigation to another screen within currently presented screen.
Has separate implementations for Android and non Android targets.
Android target underneath uses official Compose Navigation framework made by Google. Android implementation utilizes optional route arguments and JSON serialization via Kotlin Serialization.
Other targets have common custom implementation that does not involve any serialization.
Parameters
first screen route for which the initial screen will be displayed
defines enter transitions when pushing new screen on the stack, by default uses fade in animation
defines exit transitions when pushing new screen on the stack by default uses fade out animation
defines enter transitions when popping screen from the stack by default uses animation specified in enterTransition
defines exit transitions when popping screen from the stack by default uses animation specified in exitTransition
the builder used to construct the underlying screens navigation map