# androidx.navigation.compose

Common/AllAndroid/JVM

## Classes

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigator` | Navigator that navigates through `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable`s. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigator.Destination` | NavDestination specific to `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigator` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigatorDestinationBuilder` | DSL for constructing a new `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigator.Destination` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator` | Navigator that navigates through `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable`s that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator.Destination` | NavDestination specific to `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigatorDestinationBuilder` | DSL for constructing a new `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator.Destination` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/NavBackStackEntryInfo` | Snapshot of a back stack entry in a `https://developer.android.com/reference/kotlin/androidx/navigation/NavController`. | Cmn |

## Objects

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DefaultNavTransitions` | Default nav transitions to be used by `https://developer.android.com/reference/kotlin/androidx/navigation/compose/NavHost.composable#NavHost(androidx.navigation.NavHostController,kotlin.String,androidx.compose.ui.Modifier,androidx.compose.ui.Alignment,kotlin.String,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2,kotlin.Function2,kotlin.Function1,kotlin.Function1)`. | Cmn android |

## Composables

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogHost.composable` | Show each `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator.Destination` on the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator`'s back stack as a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/LocalOwnersProvider.composable` | Provides `https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry` as `https://developer.android.com/reference/kotlin/androidx/lifecycle/viewmodel/compose/LocalViewModelStoreOwner`, `https://developer.android.com/reference/kotlin/androidx/lifecycle/compose/package-summary#LocalLifecycleOwner()` and `https://developer.android.com/reference/kotlin/androidx/savedstate/compose/package-summary#LocalSavedStateRegistryOwner()` to the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavBackStackEntry).LocalOwnersProvider(androidx.compose.runtime.saveable.SaveableStateHolder,kotlin.Function0)` and saves the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavBackStackEntry).LocalOwnersProvider(androidx.compose.runtime.saveable.SaveableStateHolder,kotlin.Function0)`'s saveable states with the given `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavBackStackEntry).LocalOwnersProvider(androidx.compose.runtime.saveable.SaveableStateHolder,kotlin.Function0)`. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/NavHost.composable` | Provides a place in the Compose hierarchy for self contained navigation to occur. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/currentBackStackEntryAsState.composable` | Gets the current navigation back stack entry as a `https://developer.android.com/reference/kotlin/androidx/compose/runtime/MutableState`. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/navigation/compose/rememberNavController.composable` | Creates a NavHostController that handles the adding of the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/ComposeNavigator` and `https://developer.android.com/reference/kotlin/androidx/navigation/compose/DialogNavigator`. | Cmn android |

## Extension functions summary

|---|---|---|
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)( typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, noinline content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)( route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.String,kotlin.collections.List,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)( route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.collections.Map,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)( typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties, noinline content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)( route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties, content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.String,kotlin.collections.List,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)( route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties, content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.Any,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)( startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, noinline builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph` | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)( startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<*>, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, noinline builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.Any,kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)( startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html, route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html> https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.reflect.KClass,kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)( startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<*>, route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>, typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph` | Cmn |
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.String,kotlin.String,kotlin.collections.List,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)( startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html, arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument>, deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink>, enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)?, popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)?, sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)?, builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph` | Cmn |

## Extension functions

### NavGraphBuilder.composable

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:composable)

```
inline fun <T : Any> NavGraphBuilder.composable(
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    noinline enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    noinline exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    noinline popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    noinline popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    noinline sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    noinline content: @Composable AnimatedContentScope.(NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder`

| Parameters |
|---|---|
| `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html>` | route from a `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html` for the destination |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to determine the destination's enter transition |
| `noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to determine the destination's exit transition |
| `noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to determine the destination's popEnter transition |
| `noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to determine the destination's popExit transition |
| `noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to determine the destination's sizeTransform. |
| `noinline content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable for the destination |

### NavGraphBuilder.composable

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:composable) Added in [2.9.0](https://developer.android.com/jetpack/androidx/releases/navigation#2.9.0)

```
fun <T : Any> NavGraphBuilder.composable(
    route: KClass<T>,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    content: @Composable AnimatedContentScope.(NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder`

| Parameters |
|---|---|
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>` | route from a `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html` for the destination |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to determine the destination's enter transition |
| `exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to determine the destination's exit transition |
| `popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to determine the destination's popEnter transition |
| `popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to determine the destination's popExit transition |
| `sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to determine the destination's sizeTransform. |
| `content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable for the destination |

### NavGraphBuilder.composable

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:composable)

```
fun NavGraphBuilder.composable(
    route: String,
    arguments: List<NamedNavArgument> = emptyList(),
    deepLinks: List<NavDeepLink> = emptyList(),
    enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    content: @Composable AnimatedContentScope.(NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder`

```kotlin
import androidx.compose.animation.EnterTransition
import androidx.compose.animation.ExitTransition
import androidx.compose.animation.SizeTransform
import androidx.compose.animation.core.keyframes
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.size
import androidx.compose.ui.unit.IntSize
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController

val navController = rememberNavController()
Box {
    NavHost(navController, startDestination = Collapsed) {
        composable<Collapsed>(
            enterTransition = { EnterTransition.None },
            exitTransition = { ExitTransition.None },
            sizeTransform = {
                SizeTransform { initialSize, targetSize ->
                    keyframes {
                        durationMillis = 500
                        IntSize(
                            initialSize.width,
                            (initialSize.height + targetSize.height) / 2,
                        ) at 150
                    }
                }
            },
        ) {
            CollapsedScreen { navController.navigate(Expanded) }
        }
        composable<Expanded>(
            enterTransition = { EnterTransition.None },
            exitTransition = { ExitTransition.None },
            sizeTransform = {
                SizeTransform { initialSize, targetSize ->
                    keyframes {
                        durationMillis = 500
                        IntSize(targetSize.width, initialSize.height + 400) at 150
                    }
                }
            },
        ) {
            ExpandedScreen { navController.popBackStack() }
        }
    }
}
```

| Parameters |
|---|---|
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | route for the destination |
| `arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument> = emptyList()` | list of arguments to associate with destination |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to determine the destination's enter transition |
| `exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to determine the destination's exit transition |
| `popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to determine the destination's popEnter transition |
| `popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to determine the destination's popExit transition |
| `sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to determine the destination's sizeTransform. |
| `content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentScope.(https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable for the destination |

### NavGraphBuilder.dialog

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:dialog)

```
inline fun <T : Any> NavGraphBuilder.dialog(
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    dialogProperties: DialogProperties = DialogProperties(),
    noinline content: @Composable (NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. This is suitable only when this dialog represents a separate screen in your app that needs its own lifecycle and saved state, independent of any other destination in your navigation graph. For use cases such as `AlertDialog`, you should use those APIs directly in the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.String,kotlin.collections.List,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)` destination that wants to show that dialog.

| Parameters |
|---|---|
| `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html>` | route from a KClass for the destination |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.collections.Map,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties = DialogProperties()` | properties that should be passed to `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. |
| `noinline content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable content for the destination that will be hosted within the Dialog |

### NavGraphBuilder.dialog

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:dialog) Added in [2.9.0](https://developer.android.com/jetpack/androidx/releases/navigation#2.9.0)

```
fun <T : Any> NavGraphBuilder.dialog(
    route: KClass<T>,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    dialogProperties: DialogProperties = DialogProperties(),
    content: @Composable (NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. This is suitable only when this dialog represents a separate screen in your app that needs its own lifecycle and saved state, independent of any other destination in your navigation graph. For use cases such as `AlertDialog`, you should use those APIs directly in the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.String,kotlin.collections.List,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)` destination that wants to show that dialog.

| Parameters |
|---|---|
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>` | route from `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html` of `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)` for the destination |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).dialog(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,androidx.compose.ui.window.DialogProperties,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties = DialogProperties()` | properties that should be passed to `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. |
| `content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable content for the destination that will be hosted within the Dialog |

### NavGraphBuilder.dialog

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:dialog) Added in [2.4.0](https://developer.android.com/jetpack/androidx/releases/navigation#2.4.0)

```
fun NavGraphBuilder.dialog(
    route: String,
    arguments: List<NamedNavArgument> = emptyList(),
    deepLinks: List<NavDeepLink> = emptyList(),
    dialogProperties: DialogProperties = DialogProperties(),
    content: @Composable (NavBackStackEntry) -> Unit
): Unit
```

Add the `https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable` to the `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder` that will be hosted within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. This is suitable only when this dialog represents a separate screen in your app that needs its own lifecycle and saved state, independent of any other destination in your navigation graph. For use cases such as `AlertDialog`, you should use those APIs directly in the `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).composable(kotlin.String,kotlin.collections.List,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function2)` destination that wants to show that dialog.

| Parameters |
|---|---|
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | route for the destination |
| `arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument> = emptyList()` | list of arguments to associate with destination |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `dialogProperties: https://developer.android.com/reference/kotlin/androidx/compose/ui/window/DialogProperties = DialogProperties()` | properties that should be passed to `https://developer.android.com/reference/kotlin/androidx/compose/ui/window/Dialog.composable#Dialog(kotlin.Function0,androidx.compose.ui.window.DialogProperties,kotlin.Function0)`. |
| `content: @https://developer.android.com/reference/kotlin/androidx/compose/runtime/Composable (https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | composable content for the destination that will be hosted within the Dialog |

### NavGraphBuilder.navigation

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:navigation)

```
inline fun <T : Any> NavGraphBuilder.navigation(
    startDestination: Any,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    noinline enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    noinline exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    noinline popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    noinline popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    noinline sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    noinline builder: NavGraphBuilder.() -> Unit
): Unit
```

Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph`

| Parameters |
|---|---|
| `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html>` | the destination's unique route from a KClass |
| `startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html` | the starting destination's route from an Object for this NavGraph |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.Any,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to define enter transitions for destination in this NavGraph |
| `noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to define exit transitions for destination in this NavGraph |
| `noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to define pop enter transitions for destination in this NavGraph |
| `noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to define pop exit transitions for destination in this NavGraph |
| `noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to define the size transform for destinations in this NavGraph |
| `noinline builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the builder used to construct the graph |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the newly constructed nested NavGraph |

### NavGraphBuilder.navigation

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:navigation)

```
inline fun <T : Any> NavGraphBuilder.navigation(
    startDestination: KClass<*>,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    noinline enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    noinline exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    noinline popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    noinline popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    noinline sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    noinline builder: NavGraphBuilder.() -> Unit
): Unit
```

Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph`

```kotlin
import androidx.compose.animation.EnterTransition
import androidx.compose.animation.ExitTransition
import androidx.compose.animation.SizeTransform
import androidx.compose.animation.core.keyframes
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.size
import androidx.compose.ui.unit.IntSize
import androidx.navigation.compose.NavHost
import androidx.navigation.compose.composable
import androidx.navigation.compose.navigation
import androidx.navigation.compose.rememberNavController

val navController = rememberNavController()
Box {
    NavHost(navController, startDestination = Collapsed) {
        navigation<NestedGraph>(
            enterTransition = { EnterTransition.None },
            exitTransition = { ExitTransition.None },
            startDestination = InnerCollapsed::class,
            sizeTransform = {
                SizeTransform { initialSize, targetSize ->
                    keyframes {
                        durationMillis = 500
                        IntSize(
                            initialSize.width,
                            (initialSize.height + targetSize.height) / 2,
                        ) at 150
                    }
                }
            },
        ) {
            composable<InnerCollapsed>(
                enterTransition = { EnterTransition.None },
                exitTransition = { ExitTransition.None },
            ) {
                ExpandedScreen {}
            }
        }
    }
}
```

| Parameters |
|---|---|
| `<T : https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html>` | the destination's unique route from a KClass |
| `startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<*>` | the starting destination's route from `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html` for this NavGraph |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `noinline enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to define enter transitions for destination in this NavGraph |
| `noinline exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to define exit transitions for destination in this NavGraph |
| `noinline popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to define pop enter transitions for destination in this NavGraph |
| `noinline popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to define pop exit transitions for destination in this NavGraph |
| `noinline sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to define the size transform for destinations in this NavGraph |
| `noinline builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the builder used to construct the graph |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the newly constructed nested NavGraph |

### NavGraphBuilder.navigation

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:navigation) Added in [2.9.0](https://developer.android.com/jetpack/androidx/releases/navigation#2.9.0)

```
fun <T : Any> NavGraphBuilder.navigation(
    startDestination: Any,
    route: KClass<T>,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    builder: NavGraphBuilder.() -> Unit
): Unit
```

Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph`

| Parameters |
|---|---|
| `startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-any/index.html` | the starting destination's route from an Object for this NavGraph |
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>` | the destination's unique route from a KClass |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.Any,kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to define enter transitions for destination in this NavGraph |
| `exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to define exit transitions for destination in this NavGraph |
| `popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to define pop enter transitions for destination in this NavGraph |
| `popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to define pop exit transitions for destination in this NavGraph |
| `sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to define the size transform for destinations in this NavGraph |
| `builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the builder used to construct the graph |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the newly constructed nested NavGraph |

### NavGraphBuilder.navigation

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:navigation) Added in [2.9.0](https://developer.android.com/jetpack/androidx/releases/navigation#2.9.0)

```
fun <T : Any> NavGraphBuilder.navigation(
    startDestination: KClass<*>,
    route: KClass<T>,
    typeMap: Map<KType, NavType<*>> = emptyMap(),
    deepLinks: List<NavDeepLink> = emptyList(),
    enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    builder: NavGraphBuilder.() -> Unit
): Unit
```

Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph`

| Parameters |
|---|---|
| `startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<*>` | the starting destination's route from `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html` for this NavGraph |
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-class/index.html<T>` | the destination's unique route from a KClass |
| `typeMap: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-map/index.html<https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html, https://developer.android.com/reference/kotlin/androidx/navigation/NavType<*>> = emptyMap()` | map of destination arguments' kotlin type `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.reflect/-k-type/index.html` to its respective custom `https://developer.android.com/reference/kotlin/androidx/navigation/NavType`. May be empty if `https://developer.android.com/reference/kotlin/androidx/navigation/compose/package-summary#(androidx.navigation.NavGraphBuilder).navigation(kotlin.reflect.KClass,kotlin.reflect.KClass,kotlin.collections.Map,kotlin.collections.List,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1,kotlin.Function1)` does not use custom NavTypes. |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to define enter transitions for destination in this NavGraph |
| `exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to define exit transitions for destination in this NavGraph |
| `popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to define pop enter transitions for destination in this NavGraph |
| `popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to define pop exit transitions for destination in this NavGraph |
| `sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to define the size transform for destinations in this NavGraph |
| `builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the builder used to construct the graph |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the newly constructed nested NavGraph |

### NavGraphBuilder.navigation

Cmn Artifact: [androidx.navigation:navigation-compose](https://developer.android.com/jetpack/androidx/releases/navigation) [View Source](https://cs.android.com/search?q=file:androidx/navigation/compose/NavGraphBuilder.kt+function:navigation)

```
fun NavGraphBuilder.navigation(
    startDestination: String,
    route: String,
    arguments: List<NamedNavArgument> = emptyList(),
    deepLinks: List<NavDeepLink> = emptyList(),
    enterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = null,
    exitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = null,
    popEnterTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> EnterTransition?)? = enterTransition,
    popExitTransition: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> ExitTransition?)? = exitTransition,
    sizeTransform: (AnimatedContentTransitionScope<NavBackStackEntry>.() -> SizeTransform?)? = null,
    builder: NavGraphBuilder.() -> Unit
): Unit
```

Construct a nested `https://developer.android.com/reference/kotlin/androidx/navigation/NavGraph`

| Parameters |
|---|---|
| `startDestination: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | the starting destination's route for this NavGraph |
| `route: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-string/index.html` | the destination's unique route |
| `arguments: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NamedNavArgument> = emptyList()` | list of arguments to associate with destination |
| `deepLinks: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.collections/-list/index.html<https://developer.android.com/reference/kotlin/androidx/navigation/NavDeepLink> = emptyList()` | list of deep links to associate with the destinations |
| `enterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = null` | callback to define enter transitions for destination in this NavGraph |
| `exitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = null` | callback to define exit transitions for destination in this NavGraph |
| `popEnterTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/EnterTransition?)? = enterTransition` | callback to define pop enter transitions for destination in this NavGraph |
| `popExitTransition: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/ExitTransition?)? = exitTransition` | callback to define pop exit transitions for destination in this NavGraph |
| `sizeTransform: (https://developer.android.com/reference/kotlin/androidx/compose/animation/AnimatedContentTransitionScope<https://developer.android.com/reference/kotlin/androidx/navigation/NavBackStackEntry>.() -> https://developer.android.com/reference/kotlin/androidx/compose/animation/SizeTransform?)? = null` | callback to define the size transform for destinations in this NavGraph |
| `builder: https://developer.android.com/reference/kotlin/androidx/navigation/NavGraphBuilder.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the builder used to construct the graph |

| Returns |
|---|---|
| `https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | the newly constructed nested NavGraph |