Compared with 57.0.26: `useRootNavigation`, `withLayoutContext`, `unstable_createStandardRouterNavigator`, `unstable_integrateWithRouter`, `NativeStackHeaderLeftProps`, and 34 more. 4 newly deprecated.
expo-router 57.0.26 → 58.0.25: deprecates 39 API(s): from its source to your code
useRootNavigation: Use [`useNavigationContainerRef`](#usenavigationcontainerref) instead, which returns a React `ref`.
withLayoutContext: Returns a navigator that automatically injects matched routes and renders nothing when there are no children. Return type with `children` prop optional. Enables use of other built-in React Navigation navigators and other navigators built with the React Navigation custom navigator API. Use `integrateWithRouter` instead.
unstable_createStandardRouterNavigator: Use `createStandardRouterNavigator` instead.
unstable_integrateWithRouter: Use `integrateWithRouter` instead.
NativeStackHeaderLeftProps: Use `NativeStackHeaderBackProps` instead.
NativeStackHeaderRightProps: Use `NativeStackHeaderItemProps` instead.
NativeStackHeaderNativeProps.topInsetEnabled: Setting this prop has no effect. Retained only for backward compatibility. For apps targeting Android SDK 35 or above edge-to-edge mode is enabled by default therefore this prop loses its relevance.
NativeStackNativeProps.fullScreenSwipeShadowEnabled: Whether the full screen dismiss gesture has shadow under view during transition. When enabled, a custom shadow view is added during the transition which tries to mimic the default iOS shadow. Defaults to `true`. This does not affect the behavior of transitions that don't use gestures, enabled by `fullScreenGestureEnabled` prop. since iOS 26, full screen swipe is handled by native recognizer, and this prop is ignored. We still fallback to the legacy implementation when handling custom animations, but we assume `true` for shadows.
NativeStackNativeProps.navigationBarColor: Setting this prop has no effect. Retained only for backward compatibility. For all apps targeting Android SDK 35 or above this prop has no effect. See: https://developer.android.com/reference/android/view/Window#setNavigationBarColor(int)
NativeStackNativeProps.navigationBarTranslucent: Setting this prop has no effect. Retained only for backward compatibility. For all apps targeting Android SDK 35 or above edge-to-edge is enabled by default. See: https://developer.android.com/about/versions/15/behavior-changes-15#window-insets
NativeStackNativeProps.statusBarColor: Setting this prop has no effect. Retained only for backward compatibility. For all apps targeting Android SDK 35 or above this prop has no effect. See: https://developer.android.com/reference/android/view/Window#setStatusBarColor(int)
NativeStackNativeProps.statusBarTranslucent: Setting this prop has no effect. Retained only for backward compatibility. For all apps targeting Android SDK 35 or above edge-to-edge mode on Android is enabled by default and this prop loses relevance. See: https://developer.android.com/about/versions/15/behavior-changes-15#ux.
NativeStackNavigationOptions.headerBackImageSource: Image to display in the header as the icon in the back button. Use `headerBackIcon` instead.
NativeStackNavigationOptions.headerLargeTitle: Whether to enable header with large title which collapses to regular header on scroll. Use `headerLargeTitleEnabled` instead.
NativeStackNavigationOptions.navigationBarColor: Sets the navigation bar color. Defaults to initial navigation bar color. For all apps targeting Android SDK 35 or above edge-to-edge is enabled by default. This prop is subject to removal in the future. See: https://developer.android.com/about/versions/15/behavior-changes-15#ux.
NativeStackNavigationOptions.navigationBarTranslucent: Boolean indicating whether the content should be visible behind the navigation bar. Defaults to `false`. For all apps targeting Android SDK 35 or above edge-to-edge is enabled by default. This prop is subject to removal in the future. See: https://developer.android.com/about/versions/15/behavior-changes-15#ux.
NativeStackNavigationOptions.statusBarBackgroundColor: Sets the status bar color (similar to the `StatusBar` component). Defaults to initial status bar color. For all apps targeting Android SDK 35 or above edge-to-edge is enabled by default. This prop is subject to removal in the future. See: https://developer.android.com/about/versions/15/behavior-changes-15#ux.
NativeStackNavigationOptions.statusBarTranslucent: Sets the translucency of the status bar. Defaults to `false`. For all apps targeting Android SDK 35 or above edge-to-edge is enabled by default. This prop is subject to removal in the future. See: https://developer.android.com/about/versions/15/behavior-changes-15#ux.
NativeStackNavigationOptions.fullScreenGestureShadowEnabled: iOS 18 and below. Controls whether the full screen dismiss gesture has shadow under view during transition. The gesture uses custom transition and thus doesn't have a shadow by default. When enabled, a custom shadow view is added during the transition which tries to mimic the default iOS shadow. Defaults to `true`. This does not affect the behavior of transitions that don't use gestures, enabled by `fullScreenGestureEnabled` prop. since iOS 26.
NativeStackNavigationOptions.freezeOnBlur: This option has no effect in Expo Router.
LinkMenuActionProps.title: The title of the menu item. Use `children` prop instead.
LinkMenuProps.displayAsPalette: Use `palette` prop instead.
LinkMenuProps.displayInline: Use `inline` prop instead.
AndroidBaseColor.primary_text_dark: PlatformColor("@android:color/primary_text_dark") Deprecated in Android SDK 28
AndroidBaseColor.primary_text_dark_nodisable: PlatformColor("@android:color/primary_text_dark_nodisable") Deprecated in Android SDK 28
AndroidBaseColor.primary_text_light: PlatformColor("@android:color/primary_text_light") Deprecated in Android SDK 28
AndroidBaseColor.primary_text_light_nodisable: PlatformColor("@android:color/primary_text_light_nodisable") Deprecated in Android SDK 28
AndroidBaseColor.secondary_text_dark: PlatformColor("@android:color/secondary_text_dark") Deprecated in Android SDK 28
AndroidBaseColor.secondary_text_dark_nodisable: PlatformColor("@android:color/secondary_text_dark_nodisable") Deprecated in Android SDK 28
AndroidBaseColor.secondary_text_light: PlatformColor("@android:color/secondary_text_light") Deprecated in Android SDK 28
AndroidBaseColor.secondary_text_light_nodisable: PlatformColor("@android:color/secondary_text_light_nodisable") Deprecated in Android SDK 28
AndroidBaseColor.tertiary_text_dark: PlatformColor("@android:color/tertiary_text_dark") Deprecated in Android SDK 28
AndroidBaseColor.tertiary_text_light: PlatformColor("@android:color/tertiary_text_light") Deprecated in Android SDK 28
LinkPreviewProps.style.transformMatrix: Use matrix in transform prop instead.
LinkPreviewProps.style.rotation: Use rotate in transform prop instead.
LinkPreviewProps.style.scaleX: Use scaleX in transform prop instead.
LinkPreviewProps.style.scaleY: Use scaleY in transform prop instead.
LinkPreviewProps.style.translateX: Use translateX in transform prop instead.
LinkPreviewProps.style.translateY: Use translateY in transform prop instead.