@react-navigation/core 7.0.0-alpha.8 → 7.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/lib/commonjs/BaseNavigationContainer.js +18 -19
  2. package/lib/commonjs/BaseNavigationContainer.js.map +1 -1
  3. package/lib/commonjs/CurrentRenderContext.js +1 -1
  4. package/lib/commonjs/CurrentRenderContext.js.map +1 -1
  5. package/lib/commonjs/DeprecatedNavigationInChildContext.js +1 -1
  6. package/lib/commonjs/DeprecatedNavigationInChildContext.js.map +1 -1
  7. package/lib/commonjs/EnsureSingleNavigator.js +4 -5
  8. package/lib/commonjs/EnsureSingleNavigator.js.map +1 -1
  9. package/lib/commonjs/Group.js.map +1 -1
  10. package/lib/commonjs/NavigationBuilderContext.js +1 -1
  11. package/lib/commonjs/NavigationBuilderContext.js.map +1 -1
  12. package/lib/commonjs/NavigationContainerRefContext.js +1 -1
  13. package/lib/commonjs/NavigationContainerRefContext.js.map +1 -1
  14. package/lib/commonjs/NavigationContext.js +1 -1
  15. package/lib/commonjs/NavigationContext.js.map +1 -1
  16. package/lib/commonjs/NavigationHelpersContext.js +1 -1
  17. package/lib/commonjs/NavigationHelpersContext.js.map +1 -1
  18. package/lib/commonjs/NavigationIndependentTree.js +4 -5
  19. package/lib/commonjs/NavigationIndependentTree.js.map +1 -1
  20. package/lib/commonjs/NavigationIndependentTreeContext.js +1 -1
  21. package/lib/commonjs/NavigationIndependentTreeContext.js.map +1 -1
  22. package/lib/commonjs/NavigationRouteContext.js +1 -1
  23. package/lib/commonjs/NavigationRouteContext.js.map +1 -1
  24. package/lib/commonjs/NavigationStateContext.js +1 -1
  25. package/lib/commonjs/NavigationStateContext.js.map +1 -1
  26. package/lib/commonjs/PreventRemoveContext.js +1 -1
  27. package/lib/commonjs/PreventRemoveContext.js.map +1 -1
  28. package/lib/commonjs/PreventRemoveProvider.js +12 -17
  29. package/lib/commonjs/PreventRemoveProvider.js.map +1 -1
  30. package/lib/commonjs/SceneView.js +11 -12
  31. package/lib/commonjs/SceneView.js.map +1 -1
  32. package/lib/commonjs/Screen.js.map +1 -1
  33. package/lib/commonjs/StaticContainer.js +1 -1
  34. package/lib/commonjs/StaticContainer.js.map +1 -1
  35. package/lib/commonjs/StaticNavigation.js +85 -37
  36. package/lib/commonjs/StaticNavigation.js.map +1 -1
  37. package/lib/commonjs/UnhandledActionContext.js +1 -1
  38. package/lib/commonjs/UnhandledActionContext.js.map +1 -1
  39. package/lib/commonjs/checkDuplicateRouteNames.js.map +1 -1
  40. package/lib/commonjs/checkSerializable.js.map +1 -1
  41. package/lib/commonjs/createNavigationContainerRef.js +2 -6
  42. package/lib/commonjs/createNavigationContainerRef.js.map +1 -1
  43. package/lib/commonjs/createNavigatorFactory.js.map +1 -1
  44. package/lib/commonjs/deepFreeze.js +37 -0
  45. package/lib/commonjs/deepFreeze.js.map +1 -0
  46. package/lib/commonjs/findFocusedRoute.js.map +1 -1
  47. package/lib/commonjs/getActionFromState.js +1 -2
  48. package/lib/commonjs/getActionFromState.js.map +1 -1
  49. package/lib/commonjs/getFocusedRouteNameFromRoute.js.map +1 -1
  50. package/lib/commonjs/getPathFromState.js +8 -14
  51. package/lib/commonjs/getPathFromState.js.map +1 -1
  52. package/lib/commonjs/getStateFromPath.js +48 -20
  53. package/lib/commonjs/getStateFromPath.js.map +1 -1
  54. package/lib/commonjs/index.js.map +1 -1
  55. package/lib/commonjs/isArrayEqual.js.map +1 -1
  56. package/lib/commonjs/isRecordEqual.js.map +1 -1
  57. package/lib/commonjs/theming/ThemeContext.js +1 -1
  58. package/lib/commonjs/theming/ThemeContext.js.map +1 -1
  59. package/lib/commonjs/theming/ThemeProvider.js +5 -6
  60. package/lib/commonjs/theming/ThemeProvider.js.map +1 -1
  61. package/lib/commonjs/theming/useTheme.js +1 -1
  62. package/lib/commonjs/theming/useTheme.js.map +1 -1
  63. package/lib/commonjs/types.js.map +1 -1
  64. package/lib/commonjs/useChildListeners.js +1 -1
  65. package/lib/commonjs/useChildListeners.js.map +1 -1
  66. package/lib/commonjs/useComponent.js +8 -10
  67. package/lib/commonjs/useComponent.js.map +1 -1
  68. package/lib/commonjs/useCurrentRender.js +6 -7
  69. package/lib/commonjs/useCurrentRender.js.map +1 -1
  70. package/lib/commonjs/useDescriptors.js +16 -17
  71. package/lib/commonjs/useDescriptors.js.map +1 -1
  72. package/lib/commonjs/useEventEmitter.js +7 -8
  73. package/lib/commonjs/useEventEmitter.js.map +1 -1
  74. package/lib/commonjs/useFocusEffect.js +3 -3
  75. package/lib/commonjs/useFocusEffect.js.map +1 -1
  76. package/lib/commonjs/useFocusEvents.js +5 -6
  77. package/lib/commonjs/useFocusEvents.js.map +1 -1
  78. package/lib/commonjs/useFocusedListenersChildrenAdapter.js +5 -6
  79. package/lib/commonjs/useFocusedListenersChildrenAdapter.js.map +1 -1
  80. package/lib/commonjs/useIsFocused.js +1 -1
  81. package/lib/commonjs/useIsFocused.js.map +1 -1
  82. package/lib/commonjs/useIsomorphicLayoutEffect.js.map +1 -1
  83. package/lib/commonjs/useIsomorphicLayoutEffect.native.js.map +1 -1
  84. package/lib/commonjs/useKeyedChildListeners.js +1 -1
  85. package/lib/commonjs/useKeyedChildListeners.js.map +1 -1
  86. package/lib/commonjs/useLazyValue.js +17 -0
  87. package/lib/commonjs/useLazyValue.js.map +1 -0
  88. package/lib/commonjs/useNavigation.js +1 -1
  89. package/lib/commonjs/useNavigation.js.map +1 -1
  90. package/lib/commonjs/useNavigationBuilder.js +16 -8
  91. package/lib/commonjs/useNavigationBuilder.js.map +1 -1
  92. package/lib/commonjs/useNavigationCache.js +12 -18
  93. package/lib/commonjs/useNavigationCache.js.map +1 -1
  94. package/lib/commonjs/useNavigationContainerRef.js +1 -1
  95. package/lib/commonjs/useNavigationContainerRef.js.map +1 -1
  96. package/lib/commonjs/useNavigationHelpers.js +9 -12
  97. package/lib/commonjs/useNavigationHelpers.js.map +1 -1
  98. package/lib/commonjs/useNavigationIndependentTree.js +1 -1
  99. package/lib/commonjs/useNavigationIndependentTree.js.map +1 -1
  100. package/lib/commonjs/useNavigationState.js +1 -1
  101. package/lib/commonjs/useNavigationState.js.map +1 -1
  102. package/lib/commonjs/useOnAction.js +12 -14
  103. package/lib/commonjs/useOnAction.js.map +1 -1
  104. package/lib/commonjs/useOnGetState.js +5 -6
  105. package/lib/commonjs/useOnGetState.js.map +1 -1
  106. package/lib/commonjs/useOnPreventRemove.js +6 -7
  107. package/lib/commonjs/useOnPreventRemove.js.map +1 -1
  108. package/lib/commonjs/useOnRouteFocus.js +7 -8
  109. package/lib/commonjs/useOnRouteFocus.js.map +1 -1
  110. package/lib/commonjs/useOptionsGetters.js +6 -7
  111. package/lib/commonjs/useOptionsGetters.js.map +1 -1
  112. package/lib/commonjs/usePreventRemove.js +2 -2
  113. package/lib/commonjs/usePreventRemove.js.map +1 -1
  114. package/lib/commonjs/usePreventRemoveContext.js +1 -1
  115. package/lib/commonjs/usePreventRemoveContext.js.map +1 -1
  116. package/lib/commonjs/useRegisterNavigator.js +1 -1
  117. package/lib/commonjs/useRegisterNavigator.js.map +1 -1
  118. package/lib/commonjs/useRoute.js +1 -1
  119. package/lib/commonjs/useRoute.js.map +1 -1
  120. package/lib/commonjs/useRouteCache.js +16 -2
  121. package/lib/commonjs/useRouteCache.js.map +1 -1
  122. package/lib/commonjs/useSyncState.js +13 -4
  123. package/lib/commonjs/useSyncState.js.map +1 -1
  124. package/lib/commonjs/validatePathConfig.js +3 -8
  125. package/lib/commonjs/validatePathConfig.js.map +1 -1
  126. package/lib/module/BaseNavigationContainer.js +16 -17
  127. package/lib/module/BaseNavigationContainer.js.map +1 -1
  128. package/lib/module/CurrentRenderContext.js.map +1 -1
  129. package/lib/module/DeprecatedNavigationInChildContext.js.map +1 -1
  130. package/lib/module/EnsureSingleNavigator.js +3 -4
  131. package/lib/module/EnsureSingleNavigator.js.map +1 -1
  132. package/lib/module/Group.js.map +1 -1
  133. package/lib/module/NavigationBuilderContext.js.map +1 -1
  134. package/lib/module/NavigationContainerRefContext.js.map +1 -1
  135. package/lib/module/NavigationContext.js.map +1 -1
  136. package/lib/module/NavigationHelpersContext.js.map +1 -1
  137. package/lib/module/NavigationIndependentTree.js +3 -4
  138. package/lib/module/NavigationIndependentTree.js.map +1 -1
  139. package/lib/module/NavigationIndependentTreeContext.js.map +1 -1
  140. package/lib/module/NavigationRouteContext.js.map +1 -1
  141. package/lib/module/NavigationStateContext.js.map +1 -1
  142. package/lib/module/PreventRemoveContext.js.map +1 -1
  143. package/lib/module/PreventRemoveProvider.js +10 -15
  144. package/lib/module/PreventRemoveProvider.js.map +1 -1
  145. package/lib/module/SceneView.js +10 -11
  146. package/lib/module/SceneView.js.map +1 -1
  147. package/lib/module/Screen.js.map +1 -1
  148. package/lib/module/StaticContainer.js.map +1 -1
  149. package/lib/module/StaticNavigation.js +84 -36
  150. package/lib/module/StaticNavigation.js.map +1 -1
  151. package/lib/module/UnhandledActionContext.js.map +1 -1
  152. package/lib/module/checkDuplicateRouteNames.js.map +1 -1
  153. package/lib/module/checkSerializable.js.map +1 -1
  154. package/lib/module/createNavigationContainerRef.js +2 -6
  155. package/lib/module/createNavigationContainerRef.js.map +1 -1
  156. package/lib/module/createNavigatorFactory.js +1 -0
  157. package/lib/module/createNavigatorFactory.js.map +1 -1
  158. package/lib/module/deepFreeze.js +29 -0
  159. package/lib/module/deepFreeze.js.map +1 -0
  160. package/lib/module/findFocusedRoute.js.map +1 -1
  161. package/lib/module/getActionFromState.js +1 -2
  162. package/lib/module/getActionFromState.js.map +1 -1
  163. package/lib/module/getFocusedRouteNameFromRoute.js.map +1 -1
  164. package/lib/module/getPathFromState.js +7 -13
  165. package/lib/module/getPathFromState.js.map +1 -1
  166. package/lib/module/getStateFromPath.js +46 -18
  167. package/lib/module/getStateFromPath.js.map +1 -1
  168. package/lib/module/index.js.map +1 -1
  169. package/lib/module/isArrayEqual.js.map +1 -1
  170. package/lib/module/isRecordEqual.js.map +1 -1
  171. package/lib/module/theming/ThemeContext.js.map +1 -1
  172. package/lib/module/theming/ThemeProvider.js +4 -5
  173. package/lib/module/theming/ThemeProvider.js.map +1 -1
  174. package/lib/module/theming/useTheme.js.map +1 -1
  175. package/lib/module/types.js.map +1 -1
  176. package/lib/module/useChildListeners.js.map +1 -1
  177. package/lib/module/useComponent.js +7 -9
  178. package/lib/module/useComponent.js.map +1 -1
  179. package/lib/module/useCurrentRender.js +5 -6
  180. package/lib/module/useCurrentRender.js.map +1 -1
  181. package/lib/module/useDescriptors.js +15 -16
  182. package/lib/module/useDescriptors.js.map +1 -1
  183. package/lib/module/useEventEmitter.js +6 -7
  184. package/lib/module/useEventEmitter.js.map +1 -1
  185. package/lib/module/useFocusEffect.js +2 -2
  186. package/lib/module/useFocusEffect.js.map +1 -1
  187. package/lib/module/useFocusEvents.js +4 -5
  188. package/lib/module/useFocusEvents.js.map +1 -1
  189. package/lib/module/useFocusedListenersChildrenAdapter.js +4 -5
  190. package/lib/module/useFocusedListenersChildrenAdapter.js.map +1 -1
  191. package/lib/module/useIsFocused.js.map +1 -1
  192. package/lib/module/useIsomorphicLayoutEffect.js.map +1 -1
  193. package/lib/module/useIsomorphicLayoutEffect.native.js.map +1 -1
  194. package/lib/module/useKeyedChildListeners.js.map +1 -1
  195. package/lib/module/useLazyValue.js +9 -0
  196. package/lib/module/useLazyValue.js.map +1 -0
  197. package/lib/module/useNavigation.js.map +1 -1
  198. package/lib/module/useNavigationBuilder.js +14 -6
  199. package/lib/module/useNavigationBuilder.js.map +1 -1
  200. package/lib/module/useNavigationCache.js +11 -17
  201. package/lib/module/useNavigationCache.js.map +1 -1
  202. package/lib/module/useNavigationContainerRef.js.map +1 -1
  203. package/lib/module/useNavigationHelpers.js +8 -11
  204. package/lib/module/useNavigationHelpers.js.map +1 -1
  205. package/lib/module/useNavigationIndependentTree.js.map +1 -1
  206. package/lib/module/useNavigationState.js.map +1 -1
  207. package/lib/module/useOnAction.js +11 -13
  208. package/lib/module/useOnAction.js.map +1 -1
  209. package/lib/module/useOnGetState.js +4 -5
  210. package/lib/module/useOnGetState.js.map +1 -1
  211. package/lib/module/useOnPreventRemove.js +5 -6
  212. package/lib/module/useOnPreventRemove.js.map +1 -1
  213. package/lib/module/useOnRouteFocus.js +6 -7
  214. package/lib/module/useOnRouteFocus.js.map +1 -1
  215. package/lib/module/useOptionsGetters.js +5 -6
  216. package/lib/module/useOptionsGetters.js.map +1 -1
  217. package/lib/module/usePreventRemove.js.map +1 -1
  218. package/lib/module/usePreventRemoveContext.js.map +1 -1
  219. package/lib/module/useRegisterNavigator.js.map +1 -1
  220. package/lib/module/useRoute.js.map +1 -1
  221. package/lib/module/useRouteCache.js +15 -1
  222. package/lib/module/useRouteCache.js.map +1 -1
  223. package/lib/module/useSyncState.js +12 -3
  224. package/lib/module/useSyncState.js.map +1 -1
  225. package/lib/module/validatePathConfig.js +3 -8
  226. package/lib/module/validatePathConfig.js.map +1 -1
  227. package/lib/typescript/src/BaseNavigationContainer.d.ts.map +1 -1
  228. package/lib/typescript/src/CurrentRenderContext.d.ts +1 -1
  229. package/lib/typescript/src/CurrentRenderContext.d.ts.map +1 -1
  230. package/lib/typescript/src/Group.d.ts +1 -1
  231. package/lib/typescript/src/Group.d.ts.map +1 -1
  232. package/lib/typescript/src/NavigationBuilderContext.d.ts +5 -5
  233. package/lib/typescript/src/NavigationBuilderContext.d.ts.map +1 -1
  234. package/lib/typescript/src/NavigationStateContext.d.ts +3 -19
  235. package/lib/typescript/src/NavigationStateContext.d.ts.map +1 -1
  236. package/lib/typescript/src/PreventRemoveContext.d.ts.map +1 -1
  237. package/lib/typescript/src/Screen.d.ts +1 -1
  238. package/lib/typescript/src/Screen.d.ts.map +1 -1
  239. package/lib/typescript/src/StaticNavigation.d.ts +43 -19
  240. package/lib/typescript/src/StaticNavigation.d.ts.map +1 -1
  241. package/lib/typescript/src/checkSerializable.d.ts.map +1 -1
  242. package/lib/typescript/src/createNavigatorFactory.d.ts +1 -9
  243. package/lib/typescript/src/createNavigatorFactory.d.ts.map +1 -1
  244. package/lib/typescript/src/deepFreeze.d.ts +3 -0
  245. package/lib/typescript/src/deepFreeze.d.ts.map +1 -0
  246. package/lib/typescript/src/findFocusedRoute.d.ts +1 -11
  247. package/lib/typescript/src/findFocusedRoute.d.ts.map +1 -1
  248. package/lib/typescript/src/getPathFromState.d.ts.map +1 -1
  249. package/lib/typescript/src/index.d.ts +1 -1
  250. package/lib/typescript/src/index.d.ts.map +1 -1
  251. package/lib/typescript/src/types.d.ts +69 -24
  252. package/lib/typescript/src/types.d.ts.map +1 -1
  253. package/lib/typescript/src/useChildListeners.d.ts.map +1 -1
  254. package/lib/typescript/src/useComponent.d.ts.map +1 -1
  255. package/lib/typescript/src/useDescriptors.d.ts +35 -45
  256. package/lib/typescript/src/useDescriptors.d.ts.map +1 -1
  257. package/lib/typescript/src/useKeyedChildListeners.d.ts.map +1 -1
  258. package/lib/typescript/src/useLazyValue.d.ts +2 -0
  259. package/lib/typescript/src/useLazyValue.d.ts.map +1 -0
  260. package/lib/typescript/src/useNavigation.d.ts +4 -1
  261. package/lib/typescript/src/useNavigation.d.ts.map +1 -1
  262. package/lib/typescript/src/useNavigationBuilder.d.ts +57 -93
  263. package/lib/typescript/src/useNavigationBuilder.d.ts.map +1 -1
  264. package/lib/typescript/src/useNavigationCache.d.ts +17 -22
  265. package/lib/typescript/src/useNavigationCache.d.ts.map +1 -1
  266. package/lib/typescript/src/useNavigationHelpers.d.ts +21 -26
  267. package/lib/typescript/src/useNavigationHelpers.d.ts.map +1 -1
  268. package/lib/typescript/src/useOnAction.d.ts.map +1 -1
  269. package/lib/typescript/src/useOnPreventRemove.d.ts.map +1 -1
  270. package/lib/typescript/src/useRouteCache.d.ts +1 -1
  271. package/lib/typescript/src/useRouteCache.d.ts.map +1 -1
  272. package/lib/typescript/src/useSyncState.d.ts.map +1 -1
  273. package/package.json +5 -5
  274. package/src/BaseNavigationContainer.tsx +3 -0
  275. package/src/Group.tsx +2 -1
  276. package/src/Screen.tsx +11 -1
  277. package/src/StaticNavigation.tsx +299 -72
  278. package/src/createNavigatorFactory.tsx +1 -36
  279. package/src/deepFreeze.tsx +34 -0
  280. package/src/getPathFromState.tsx +6 -1
  281. package/src/getStateFromPath.tsx +60 -16
  282. package/src/index.tsx +1 -0
  283. package/src/types.tsx +138 -23
  284. package/src/useDescriptors.tsx +8 -1
  285. package/src/useFocusEffect.tsx +2 -2
  286. package/src/useLazyValue.tsx +11 -0
  287. package/src/useNavigation.tsx +4 -1
  288. package/src/useNavigationBuilder.tsx +33 -11
  289. package/src/useRouteCache.tsx +17 -1
  290. package/src/useSyncState.tsx +16 -3
@@ -1 +1 @@
1
- {"version":3,"file":"CurrentRenderContext.d.ts","sourceRoot":"","sources":["../../../src/CurrentRenderContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;cAErB,CAAC"}
1
+ {"version":3,"file":"CurrentRenderContext.d.ts","sourceRoot":"","sources":["../../../src/CurrentRenderContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;GAGG;AACH,eAAO,MAAM,oBAAoB;cACnB,MAAM;cACR,CAAC"}
@@ -3,5 +3,5 @@ import type { RouteGroupConfig } from './types';
3
3
  /**
4
4
  * Empty component used for grouping screen configs.
5
5
  */
6
- export declare function Group<ParamList extends ParamListBase, ScreenOptions extends {}>(_: RouteGroupConfig<ParamList, ScreenOptions>): null;
6
+ export declare function Group<ParamList extends ParamListBase, ScreenOptions extends {}, Navigation>(_: RouteGroupConfig<ParamList, ScreenOptions, Navigation>): null;
7
7
  //# sourceMappingURL=Group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Group.d.ts","sourceRoot":"","sources":["../../../src/Group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;GAEG;AACH,wBAAgB,KAAK,CACnB,SAAS,SAAS,aAAa,EAC/B,aAAa,SAAS,EAAE,EACxB,CAAC,EAAE,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,QAG9C"}
1
+ {"version":3,"file":"Group.d.ts","sourceRoot":"","sources":["../../../src/Group.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;GAEG;AACH,wBAAgB,KAAK,CACnB,SAAS,SAAS,aAAa,EAC/B,aAAa,SAAS,EAAE,EACxB,UAAU,EACV,CAAC,EAAE,gBAAgB,CAAC,SAAS,EAAE,aAAa,EAAE,UAAU,CAAC,QAG1D"}
@@ -23,12 +23,12 @@ export type ChildBeforeRemoveListener = (action: NavigationAction) => boolean;
23
23
  * Context which holds the required helpers needed to build nested navigators.
24
24
  */
25
25
  export declare const NavigationBuilderContext: React.Context<{
26
- onAction?: ((action: NavigationAction, visitedNavigators?: Set<string>) => boolean) | undefined;
27
- addListener?: AddListener | undefined;
28
- addKeyedListener?: AddKeyedListener | undefined;
29
- onRouteFocus?: ((key: string) => void) | undefined;
26
+ onAction?: (action: NavigationAction, visitedNavigators?: Set<string>) => boolean;
27
+ addListener?: AddListener;
28
+ addKeyedListener?: AddKeyedListener;
29
+ onRouteFocus?: (key: string) => void;
30
30
  onDispatchAction: (action: NavigationAction, noop: boolean) => void;
31
31
  onOptionsChange: (options: object) => void;
32
- stackRef?: React.MutableRefObject<string | undefined> | undefined;
32
+ stackRef?: React.MutableRefObject<string | undefined>;
33
33
  }>;
34
34
  //# sourceMappingURL=NavigationBuilderContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationBuilderContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationBuilderContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,yBAAyB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,YAAY,EAAE,yBAAyB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,MAAM,WAAW,EACpD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KACrB,IAAI,CAAC;AAEV,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC9D,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAC1B,IAAI,CAAC;AAEV,MAAM,MAAM,mBAAmB,GAAG,CAChC,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAC5B,OAAO,CAAC;AAEb,MAAM,MAAM,yBAAyB,CAAC,CAAC,IAAI,CACzC,UAAU,EAAE,iBAAiB,CAAC,aAAa,CAAC,KACzC,CAAC,CAAC;AAEP,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,EACxC,QAAQ,EAAE,yBAAyB,CAAC,CAAC,CAAC,KACnC;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;AAErD,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,wBAAwB;yBAEzB,gBAAgB,sBACJ,IAAI,MAAM,CAAC,KAC5B,OAAO;;;0BAGS,MAAM,KAAK,IAAI;+BACT,gBAAgB,QAAQ,OAAO,KAAK,IAAI;+BACxC,MAAM,KAAK,IAAI;;EAK1C,CAAC"}
1
+ {"version":3,"file":"NavigationBuilderContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationBuilderContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACd,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,KAAK,EAAE,yBAAyB,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,YAAY,EAAE,yBAAyB,CAAC;CACzC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,SAAS,MAAM,WAAW,EACpD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,KACrB,IAAI,CAAC;AAEV,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,SAAS,MAAM,gBAAgB,EAC9D,IAAI,EAAE,CAAC,EACP,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAC1B,IAAI,CAAC;AAEV,MAAM,MAAM,mBAAmB,GAAG,CAChC,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAC5B,OAAO,CAAC;AAEb,MAAM,MAAM,yBAAyB,CAAC,CAAC,IAAI,CACzC,UAAU,EAAE,iBAAiB,CAAC,aAAa,CAAC,KACzC,CAAC,CAAC;AAEP,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,EACxC,QAAQ,EAAE,yBAAyB,CAAC,CAAC,CAAC,KACnC;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,eAAe,CAAC;AAErD,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,wBAAwB;eACxB,CACT,MAAM,EAAE,gBAAgB,EACxB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,KAC5B,OAAO;kBACE,WAAW;uBACN,gBAAgB;mBACpB,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;sBAClB,CAAC,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI;qBAClD,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI;eAC/B,KAAK,CAAC,gBAAgB,CAAC,MAAM,GAAG,SAAS,CAAC;EAIrD,CAAC"}
@@ -1,29 +1,13 @@
1
1
  import type { NavigationState, PartialState } from '@react-navigation/routers';
2
2
  import * as React from 'react';
3
3
  export declare const NavigationStateContext: React.Context<{
4
- isDefault?: true | undefined;
5
- state?: Readonly<{
6
- key: string;
7
- index: number;
8
- routeNames: string[];
9
- history?: unknown[] | undefined;
10
- routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
11
- type: string;
12
- stale: false;
13
- }> | PartialState<Readonly<{
14
- key: string;
15
- index: number;
16
- routeNames: string[];
17
- history?: unknown[] | undefined;
18
- routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
19
- type: string;
20
- stale: false;
21
- }>> | undefined;
4
+ isDefault?: true;
5
+ state?: NavigationState | PartialState<NavigationState>;
22
6
  getKey: () => string | undefined;
23
7
  setKey: (key: string) => void;
24
8
  getState: () => NavigationState | PartialState<NavigationState> | undefined;
25
9
  setState: (state: NavigationState | PartialState<NavigationState> | undefined) => void;
26
10
  getIsInitial: () => boolean;
27
- addOptionsGetter?: ((key: string, getter: () => object | undefined | null) => void) | undefined;
11
+ addOptionsGetter?: (key: string, getter: () => object | undefined | null) => void;
28
12
  }>;
29
13
  //# sourceMappingURL=NavigationStateContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationStateContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationStateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;YAGzB,MAAM,MAAM,GAAG,SAAS;kBAClB,MAAM,KAAK,IAAI;cACnB,MAAM,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS;sBAElE,eAAe,GAAG,aAAa,eAAe,CAAC,GAAG,SAAS,KAC/D,IAAI;kBACK,MAAM,OAAO;8BAEpB,MAAM,UACH,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,KACpC,IAAI;EAmBT,CAAC"}
1
+ {"version":3,"file":"NavigationStateContext.d.ts","sourceRoot":"","sources":["../../../src/NavigationStateContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,eAAO,MAAM,sBAAsB;gBACrB,IAAI;YACR,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC;YAC/C,MAAM,MAAM,GAAG,SAAS;YACxB,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI;cACnB,MAAM,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS;cACjE,CACR,KAAK,EAAE,eAAe,GAAG,YAAY,CAAC,eAAe,CAAC,GAAG,SAAS,KAC/D,IAAI;kBACK,MAAM,OAAO;uBACR,CACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,MAAM,GAAG,SAAS,GAAG,IAAI,KACpC,IAAI;EAmBT,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"PreventRemoveContext.d.ts","sourceRoot":"","sources":["../../../src/PreventRemoveContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,aAAa,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEzE,eAAO,MAAM,oBAAoB;qBAEV,eAAe;2BAE1B,MAAM,YACA,MAAM,iBACD,OAAO,KACnB,IAAI;cAGH,CAAC"}
1
+ {"version":3,"file":"PreventRemoveContext.d.ts","sourceRoot":"","sources":["../../../src/PreventRemoveContext.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE;IAAE,aAAa,EAAE,OAAO,CAAA;CAAE,CAAC,CAAC;AAEzE,eAAO,MAAM,oBAAoB;qBAEV,eAAe;sBACd,CAChB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,OAAO,KACnB,IAAI;cAGH,CAAC"}
@@ -3,5 +3,5 @@ import type { EventMapBase, RouteConfig } from './types';
3
3
  /**
4
4
  * Empty component used for specifying route configuration.
5
5
  */
6
- export declare function Screen<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap>): null;
6
+ export declare function Screen<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationProp>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap, NavigationProp>): null;
7
7
  //# sourceMappingURL=Screen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Screen.d.ts","sourceRoot":"","sources":["../../../src/Screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEzD;;GAEG;AACH,wBAAgB,MAAM,CACpB,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,EACjC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,CAAC,EAAE,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,QAGrE"}
1
+ {"version":3,"file":"Screen.d.ts","sourceRoot":"","sources":["../../../src/Screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAEhF,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEzD;;GAEG;AACH,wBAAgB,MAAM,CACpB,SAAS,SAAS,aAAa,EAC/B,SAAS,SAAS,MAAM,SAAS,EACjC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,cAAc,EAEd,CAAC,EAAE,WAAW,CACZ,SAAS,EACT,SAAS,EACT,KAAK,EACL,aAAa,EACb,QAAQ,EACR,cAAc,CACf,QAIF"}
@@ -1,6 +1,6 @@
1
1
  import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
2
  import * as React from 'react';
3
- import type { DefaultNavigatorOptions, EventMapBase, NavigatorScreenParams, PathConfig, RouteConfig, RouteGroupConfig } from './types';
3
+ import type { DefaultNavigatorOptions, EventMapBase, NavigationListBase, NavigatorScreenParams, NavigatorTypeBagBase, PathConfig, RouteConfigComponent, RouteConfigProps, RouteGroupConfig } from './types';
4
4
  /**
5
5
  * Flatten a type to remove all type alias names, unions etc.
6
6
  * This will show a plain object when hovering over the type.
@@ -38,15 +38,16 @@ type ParamListForScreens<Screens> = {
38
38
  };
39
39
  type ParamListForGroups<Groups extends Readonly<{
40
40
  [key: string]: {
41
- screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
41
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase, any>;
42
42
  };
43
43
  }> | undefined> = Groups extends {
44
44
  [key: string]: {
45
- screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
45
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase, any>;
46
46
  };
47
47
  } ? ParamListForScreens<UnionToIntersection<Groups[keyof Groups]['screens']>> : {};
48
- type StaticConfigScreens<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = {
49
- [key in keyof ParamList]: React.ComponentType<any> | StaticNavigation<any, any, any> | (Omit<RouteConfig<ParamList, keyof ParamList, State, ScreenOptions, EventMap>, 'name' | 'component' | 'getComponent' | 'children'> & {
48
+ type StaticRouteConfig<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigation> = RouteConfigProps<ParamListBase, string, State, ScreenOptions, EventMap, Navigation> & RouteConfigComponent<ParamList, RouteName>;
49
+ type StaticConfigScreens<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>> = {
50
+ [RouteName in keyof ParamList]: React.ComponentType<any> | StaticNavigation<any, any, any> | (Omit<StaticRouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap, NavigationList[RouteName]>, 'name' | 'component' | 'getComponent' | 'children'> & {
50
51
  /**
51
52
  * Callback to determine whether the screen should be rendered or not.
52
53
  * This can be useful for conditional rendering of screens,
@@ -79,7 +80,7 @@ type StaticConfigScreens<ParamList extends ParamListBase, State extends Navigati
79
80
  screen: StaticNavigation<any, any, any> | React.ComponentType<any>;
80
81
  });
81
82
  };
82
- type GroupConfig<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = Omit<RouteGroupConfig<ParamList, ScreenOptions>, 'screens' | 'children'> & {
83
+ type GroupConfig<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>> = Omit<RouteGroupConfig<ParamList, ScreenOptions, NavigationList[keyof ParamList]>, 'screens' | 'children'> & {
83
84
  /**
84
85
  * Callback to determine whether the screens in the group should be rendered or not.
85
86
  * This can be useful for conditional rendering of group of screens.
@@ -88,20 +89,32 @@ type GroupConfig<ParamList extends ParamListBase, State extends NavigationState,
88
89
  /**
89
90
  * Static navigation config or Component to render for the screen.
90
91
  */
91
- screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap>;
92
+ screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap, NavigationList>;
92
93
  };
93
- export type StaticConfig<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigator extends React.ComponentType<{}>> = Omit<Omit<React.ComponentProps<Navigator>, keyof DefaultNavigatorOptions<ParamListBase, NavigationState, {}, EventMapBase>> & DefaultNavigatorOptions<ParamList, State, ScreenOptions, EventMap>, 'screens' | 'children'> & {
94
+ export type StaticConfig<Bag extends NavigatorTypeBagBase> = StaticConfigInternal<Bag['ParamList'], Bag['NavigatorID'], Bag['State'], Bag['ScreenOptions'], Bag['EventMap'], Bag['NavigationList'], Bag['Navigator']>;
95
+ type StaticConfigInternal<ParamList extends ParamListBase, NavigatorID extends string | undefined, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>, Navigator extends React.ComponentType<any>> = Omit<Omit<React.ComponentProps<Navigator>, keyof DefaultNavigatorOptions<ParamListBase, string | undefined, NavigationState, {}, EventMapBase, NavigationList[keyof ParamList]>> & DefaultNavigatorOptions<ParamList, NavigatorID, State, ScreenOptions, EventMap, NavigationList[keyof ParamList]>, 'screens' | 'children'> & ({
94
96
  /**
95
97
  * Screens to render in the navigator and their configuration.
96
98
  */
97
- screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap>;
99
+ screens: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap, NavigationList>;
98
100
  /**
99
101
  * Groups of screens to render in the navigator and their configuration.
100
102
  */
101
103
  groups?: {
102
- [key: string]: GroupConfig<ParamList, State, ScreenOptions, EventMap>;
104
+ [key: string]: GroupConfig<ParamList, State, ScreenOptions, EventMap, NavigationList>;
103
105
  };
104
- };
106
+ } | {
107
+ /**
108
+ * Screens to render in the navigator and their configuration.
109
+ */
110
+ screens?: StaticConfigScreens<ParamList, State, ScreenOptions, EventMap, NavigationList>;
111
+ /**
112
+ * Groups of screens to render in the navigator and their configuration.
113
+ */
114
+ groups: {
115
+ [key: string]: GroupConfig<ParamList, State, ScreenOptions, EventMap, NavigationList>;
116
+ };
117
+ });
105
118
  /**
106
119
  * Props for a screen component which is rendered by a static navigator.
107
120
  * Takes the route params as a generic argument.
@@ -116,7 +129,7 @@ export type StaticScreenProps<T extends Record<string, unknown> | undefined> = {
116
129
  */
117
130
  export type StaticParamList<T extends {
118
131
  readonly config: {
119
- readonly screens: Record<string, any>;
132
+ readonly screens?: Record<string, any>;
120
133
  readonly groups?: {
121
134
  [key: string]: {
122
135
  screens: Record<string, any>;
@@ -128,7 +141,7 @@ export type StaticNavigation<NavigatorProps, GroupProps, ScreenProps> = {
128
141
  Navigator: React.ComponentType<NavigatorProps>;
129
142
  Group: React.ComponentType<GroupProps>;
130
143
  Screen: React.ComponentType<ScreenProps>;
131
- config: StaticConfig<ParamListBase, NavigationState, {}, EventMapBase, React.ComponentType<any>>;
144
+ config: StaticConfig<NavigatorTypeBagBase>;
132
145
  };
133
146
  /**
134
147
  * Create a component that renders a navigator based on the static configuration.
@@ -138,10 +151,23 @@ export type StaticNavigation<NavigatorProps, GroupProps, ScreenProps> = {
138
151
  * @returns A component which renders the navigator.
139
152
  */
140
153
  export declare function createComponentForStaticNavigation(tree: StaticNavigation<any, any, any>, displayName: string): React.ComponentType<{}>;
154
+ type TreeForPathConfig = {
155
+ config: {
156
+ initialRouteName?: string;
157
+ screens?: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase, Record<string, unknown>>;
158
+ groups?: {
159
+ [key: string]: {
160
+ screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase, Record<string, unknown>>;
161
+ };
162
+ };
163
+ };
164
+ };
141
165
  /**
142
166
  * Create a path config object from a static navigation config for deep linking.
143
167
  *
144
168
  * @param tree Static navigation config.
169
+ * @param options Additional options from `linking.config`.
170
+ * @param auto Whether to automatically generate paths for leaf screens.
145
171
  * @returns Path config object to use in linking config.
146
172
  *
147
173
  * @example
@@ -155,12 +181,10 @@ export declare function createComponentForStaticNavigation(tree: StaticNavigatio
155
181
  * };
156
182
  * ```
157
183
  */
158
- export declare function createPathConfigForStaticNavigation(tree: {
159
- config: {
160
- screens: StaticConfigScreens<ParamListBase, NavigationState, {}, EventMapBase>;
161
- };
162
- }): {
184
+ export declare function createPathConfigForStaticNavigation(tree: TreeForPathConfig, options?: {
185
+ initialRouteName?: string;
186
+ }, auto?: boolean): {
163
187
  [k: string]: PathConfig<ParamListBase>;
164
- };
188
+ } | undefined;
165
189
  export {};
166
190
  //# sourceMappingURL=StaticNavigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StaticNavigation.d.ts","sourceRoot":"","sources":["../../../src/StaticNavigation.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StaticNavigation.d.ts","sourceRoot":"","sources":["../../../src/StaticNavigation.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"checkSerializable.d.ts","sourceRoot":"","sources":["../../../src/checkSerializable.tsx"],"names":[],"mappings":"AAuEA,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE;;;;;;EAE1D"}
1
+ {"version":3,"file":"checkSerializable.d.ts","sourceRoot":"","sources":["../../../src/checkSerializable.tsx"],"names":[],"mappings":"AAuEA,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE;kBAlEvC,IAAI;;kBAEJ,KAAK;cACT,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE;YACrB,MAAM;EAgEnB"}
@@ -1,7 +1,4 @@
1
- import type { NavigationState, ParamListBase } from '@react-navigation/routers';
2
1
  import type * as React from 'react';
3
- import type { StaticConfig } from './StaticNavigation';
4
- import type { EventMapBase, TypedNavigator } from './types';
5
2
  /**
6
3
  * Higher order component to create a `Navigator` and `Screen` pair.
7
4
  * Custom navigators should wrap the navigator component in `createNavigator` before exporting.
@@ -9,10 +6,5 @@ import type { EventMapBase, TypedNavigator } from './types';
9
6
  * @param Navigator The navigator component to wrap.
10
7
  * @returns Factory method to create a `Navigator` and `Screen` pair.
11
8
  */
12
- export declare function createNavigatorFactory<State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigatorComponent extends React.ComponentType<any>>(Navigator: NavigatorComponent): {
13
- <ParamList extends ParamListBase>(): TypedNavigator<ParamList, State, ScreenOptions, EventMap, NavigatorComponent>;
14
- <ParamList_1 extends ParamListBase, Config extends StaticConfig<ParamList_1, State, ScreenOptions, EventMap, NavigatorComponent>>(config: Config): TypedNavigator<ParamList_1, State, ScreenOptions, EventMap, NavigatorComponent> & {
15
- config: Config;
16
- };
17
- };
9
+ export declare function createNavigatorFactory(Navigator: React.ComponentType<any>): (config?: any) => any;
18
10
  //# sourceMappingURL=createNavigatorFactory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"createNavigatorFactory.d.ts","sourceRoot":"","sources":["../../../src/createNavigatorFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAChF,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAIpC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE5D;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,SAAS,eAAe,EAC7B,aAAa,SAAS,EAAE,EACxB,QAAQ,SAAS,YAAY,EAC7B,kBAAkB,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EACnD,SAAS,EAAE,kBAAkB;;;;;EA8C9B"}
1
+ {"version":3,"file":"createNavigatorFactory.d.ts","sourceRoot":"","sources":["../../../src/createNavigatorFactory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAKpC;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,aACtC,GAAG,KAAG,GAAG,CAkB5C"}
@@ -0,0 +1,3 @@
1
+ export declare const isPlainObject: (value: unknown) => value is object;
2
+ export declare const deepFreeze: <T>(object: T) => Readonly<T>;
3
+ //# sourceMappingURL=deepFreeze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deepFreeze.d.ts","sourceRoot":"","sources":["../../../src/deepFreeze.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,UAAW,OAAO,KAAG,KAAK,IAAI,MAMvD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,CAAC,UAAW,CAAC,KAAG,QAAQ,CAAC,CAAC,CAyBpD,CAAC"}
@@ -1,15 +1,5 @@
1
1
  import type { InitialState } from '@react-navigation/routers';
2
2
  export declare function findFocusedRoute(state: InitialState): (Omit<import("@react-navigation/routers").Route<string, object | undefined>, "key"> & {
3
- state?: Readonly<Partial<Omit<Readonly<{
4
- key: string;
5
- index: number;
6
- routeNames: string[];
7
- history?: unknown[] | undefined;
8
- routes: import("@react-navigation/routers").NavigationRoute<import("@react-navigation/routers").ParamListBase, string>[];
9
- type: string;
10
- stale: false;
11
- }>, "stale" | "routes">> & {
12
- routes: (Omit<import("@react-navigation/routers").Route<string, object | undefined>, "key"> & any)[];
13
- }> | undefined;
3
+ state?: InitialState;
14
4
  }) | undefined;
15
5
  //# sourceMappingURL=findFocusedRoute.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"findFocusedRoute.d.ts","sourceRoot":"","sources":["../../../src/findFocusedRoute.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY;;;;;;;;;;;;eAUnD"}
1
+ {"version":3,"file":"findFocusedRoute.d.ts","sourceRoot":"","sources":["../../../src/findFocusedRoute.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY;;eAUnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../../src/getPathFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAGzD,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAEF,KAAK,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;AAuB5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CA2KR"}
1
+ {"version":3,"file":"getPathFromState.d.ts","sourceRoot":"","sources":["../../../src/getPathFromState.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EAEb,MAAM,2BAA2B,CAAC;AAGnC,OAAO,KAAK,EAAc,aAAa,EAAE,MAAM,SAAS,CAAC;AAGzD,KAAK,OAAO,CAAC,SAAS,SAAS,EAAE,IAAI;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACnC,CAAC;AAEF,KAAK,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC,CAAC;AAuB5E;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,EAAE,EACnD,KAAK,EAAE,KAAK,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC3B,MAAM,CAgLR"}
@@ -14,7 +14,7 @@ export { NavigationIndependentTree } from './NavigationIndependentTree';
14
14
  export { NavigationRouteContext } from './NavigationRouteContext';
15
15
  export { PreventRemoveContext } from './PreventRemoveContext';
16
16
  export { PreventRemoveProvider } from './PreventRemoveProvider';
17
- export { createComponentForStaticNavigation, createPathConfigForStaticNavigation, type StaticNavigation, type StaticParamList, type StaticScreenProps, } from './StaticNavigation';
17
+ export { createComponentForStaticNavigation, createPathConfigForStaticNavigation, type StaticConfig, type StaticNavigation, type StaticParamList, type StaticScreenProps, } from './StaticNavigation';
18
18
  export { ThemeContext } from './theming/ThemeContext';
19
19
  export { ThemeProvider } from './theming/ThemeProvider';
20
20
  export { useTheme } from './theming/useTheme';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,mCAAmC,EACnC,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,cAAc,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,kCAAkC,EAClC,mCAAmC,EACnC,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,cAAc,2BAA2B,CAAC"}
@@ -9,11 +9,7 @@ declare global {
9
9
  }
10
10
  }
11
11
  type Keyof<T extends {}> = Extract<keyof T, string>;
12
- export type DefaultNavigatorOptions<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = DefaultRouterOptions<Keyof<ParamList>> & {
13
- /**
14
- * Optional ID for the navigator. Can be used with `navigation.getParent(id)` to refer to a parent.
15
- */
16
- id?: string;
12
+ export type DefaultNavigatorOptions<ParamList extends ParamListBase, NavigatorID extends string | undefined, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigation> = DefaultRouterOptions<Keyof<ParamList>> & {
17
13
  /**
18
14
  * Children React Elements to extract the route configuration from.
19
15
  * Only `Screen`, `Group` and `React.Fragment` are supported as children.
@@ -34,14 +30,14 @@ export type DefaultNavigatorOptions<ParamList extends ParamListBase, State exten
34
30
  */
35
31
  screenListeners?: ScreenListeners<State, EventMap> | ((props: {
36
32
  route: RouteProp<ParamList>;
37
- navigation: any;
33
+ navigation: Navigation;
38
34
  }) => ScreenListeners<State, EventMap>);
39
35
  /**
40
36
  * Default options for all screens under this navigator.
41
37
  */
42
38
  screenOptions?: ScreenOptions | ((props: {
43
39
  route: RouteProp<ParamList>;
44
- navigation: any;
40
+ navigation: Navigation;
45
41
  theme: ReactNavigation.Theme;
46
42
  }) => ScreenOptions);
47
43
  /**
@@ -49,15 +45,22 @@ export type DefaultNavigatorOptions<ParamList extends ParamListBase, State exten
49
45
  */
50
46
  screenLayout?: (props: {
51
47
  route: RouteProp<ParamList, keyof ParamList>;
52
- navigation: any;
48
+ navigation: Navigation;
53
49
  theme: ReactNavigation.Theme;
54
50
  children: React.ReactElement;
55
51
  }) => React.ReactElement;
56
52
  /**
57
53
  A function returning a state, which may be set after modifying the routes name.
58
54
  */
59
- getStateForRouteNamesChange?: (state: NavigationState) => PartialState<NavigationState> | undefined;
60
- };
55
+ UNSTABLE_getStateForRouteNamesChange?: (state: NavigationState) => PartialState<NavigationState> | undefined;
56
+ } & (NavigatorID extends string ? {
57
+ /**
58
+ * Optional ID for the navigator. Can be used with `navigation.getParent(id)` to refer to a parent.
59
+ */
60
+ id: NavigatorID;
61
+ } : {
62
+ id?: undefined;
63
+ });
61
64
  export type EventMapBase = Record<string, {
62
65
  data?: any;
63
66
  canPreventDefault?: boolean;
@@ -373,7 +376,7 @@ export type Descriptor<ScreenOptions extends {}, Navigation extends NavigationPr
373
376
  navigation: Navigation;
374
377
  };
375
378
  export type ScreenListeners<State extends NavigationState, EventMap extends EventMapBase> = Partial<{
376
- [EventName in keyof (EventMap & EventMapCore<State>)]: EventListenerCallback<EventMap, EventName>;
379
+ [EventName in keyof (EventMap & EventMapCore<State>)]: EventListenerCallback<EventMap & EventMapCore<State>, EventName>;
377
380
  }>;
378
381
  type ScreenComponentType<ParamList extends ParamListBase, RouteName extends keyof ParamList> = React.ComponentType<{
379
382
  route: RouteProp<ParamList, RouteName>;
@@ -404,7 +407,7 @@ export type RouteConfigComponent<ParamList extends ParamListBase, RouteName exte
404
407
  component?: never;
405
408
  getComponent?: never;
406
409
  };
407
- export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase> = {
410
+ export type RouteConfigProps<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigation> = {
408
411
  /**
409
412
  * Optional key for this screen. This doesn't need to be unique.
410
413
  * If the key changes, existing screens with this name will be removed or reset.
@@ -420,7 +423,7 @@ export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof
420
423
  */
421
424
  options?: ScreenOptions | ((props: {
422
425
  route: RouteProp<ParamList, RouteName>;
423
- navigation: any;
426
+ navigation: Navigation;
424
427
  theme: ReactNavigation.Theme;
425
428
  }) => ScreenOptions);
426
429
  /**
@@ -428,7 +431,7 @@ export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof
428
431
  */
429
432
  listeners?: ScreenListeners<State, EventMap> | ((props: {
430
433
  route: RouteProp<ParamList, RouteName>;
431
- navigation: any;
434
+ navigation: Navigation;
432
435
  }) => ScreenListeners<State, EventMap>);
433
436
  /**
434
437
  * Layout for this screen.
@@ -436,8 +439,8 @@ export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof
436
439
  * e.g. for styling, error boundaries, suspense, etc.
437
440
  */
438
441
  layout?: (props: {
439
- route: RouteProp<ParamList, keyof ParamList>;
440
- navigation: any;
442
+ route: RouteProp<ParamList, RouteName>;
443
+ navigation: Navigation;
441
444
  theme: ReactNavigation.Theme;
442
445
  children: React.ReactElement;
443
446
  }) => React.ReactElement;
@@ -454,8 +457,9 @@ export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof
454
457
  * Initial params object for the route.
455
458
  */
456
459
  initialParams?: Partial<ParamList[RouteName]>;
457
- } & RouteConfigComponent<ParamList, RouteName>;
458
- export type RouteGroupConfig<ParamList extends ParamListBase, ScreenOptions extends {}> = {
460
+ };
461
+ export type RouteConfig<ParamList extends ParamListBase, RouteName extends keyof ParamList, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigation> = RouteConfigProps<ParamList, RouteName, State, ScreenOptions, EventMap, Navigation> & RouteConfigComponent<ParamList, RouteName>;
462
+ export type RouteGroupConfig<ParamList extends ParamListBase, ScreenOptions extends {}, Navigation> = {
459
463
  /**
460
464
  * Optional key for the screens in this group.
461
465
  * If the key changes, all existing screens in this group will be removed or reset.
@@ -466,7 +470,7 @@ export type RouteGroupConfig<ParamList extends ParamListBase, ScreenOptions exte
466
470
  */
467
471
  screenOptions?: ScreenOptions | ((props: {
468
472
  route: RouteProp<ParamList, keyof ParamList>;
469
- navigation: any;
473
+ navigation: Navigation;
470
474
  theme: ReactNavigation.Theme;
471
475
  }) => ScreenOptions);
472
476
  /**
@@ -475,7 +479,7 @@ export type RouteGroupConfig<ParamList extends ParamListBase, ScreenOptions exte
475
479
  */
476
480
  screenLayout?: (props: {
477
481
  route: RouteProp<ParamList, keyof ParamList>;
478
- navigation: any;
482
+ navigation: Navigation;
479
483
  theme: ReactNavigation.Theme;
480
484
  children: React.ReactElement;
481
485
  }) => React.ReactElement;
@@ -550,23 +554,64 @@ export type NavigationContainerRef<ParamList extends {}> = NavigationHelpers<Par
550
554
  * Whether the navigation container is ready to handle actions.
551
555
  */
552
556
  isReady(): boolean;
557
+ /**
558
+ * Stub function for setOptions on navigation object for use with useNavigation.
559
+ */
560
+ setOptions(): never;
561
+ /**
562
+ * Stub function for getParent on navigation object for use with useNavigation.
563
+ */
564
+ getParent(): undefined;
553
565
  };
554
566
  export type NavigationContainerRefWithCurrent<ParamList extends {}> = NavigationContainerRef<ParamList> & {
555
567
  current: NavigationContainerRef<ParamList> | null;
556
568
  };
557
- export type TypedNavigator<ParamList extends ParamListBase, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, Navigator extends React.ComponentType<any>> = {
569
+ export type NavigationListBase<ParamList extends ParamListBase> = {
570
+ [RouteName in keyof ParamList]: unknown;
571
+ };
572
+ export type TypeBag<ParamList extends ParamListBase, NavigatorID extends string | undefined, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>, Navigator extends React.ComponentType<any>> = {
573
+ ParamList: ParamList;
574
+ NavigatorID: NavigatorID;
575
+ State: State;
576
+ ScreenOptions: ScreenOptions;
577
+ EventMap: EventMap;
578
+ NavigationList: NavigationList;
579
+ Navigator: Navigator;
580
+ };
581
+ export type NavigatorTypeBagBase = {
582
+ ParamList: ParamListBase;
583
+ NavigatorID: string | undefined;
584
+ State: NavigationState;
585
+ ScreenOptions: {};
586
+ EventMap: EventMapBase;
587
+ NavigationList: NavigationListBase<ParamListBase>;
588
+ Navigator: React.ComponentType<any>;
589
+ };
590
+ export type NavigatorTypeBag<ParamList extends ParamListBase, NavigatorID extends string | undefined, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>, Navigator extends React.ComponentType<any>> = {
591
+ ParamList: ParamList;
592
+ NavigatorID: NavigatorID;
593
+ State: State;
594
+ ScreenOptions: ScreenOptions;
595
+ EventMap: EventMap;
596
+ NavigationList: NavigationList;
597
+ Navigator: Navigator;
598
+ };
599
+ export type TypedNavigator<Bag extends NavigatorTypeBagBase, Config = unknown> = TypedNavigatorInternal<Bag['ParamList'], Bag['NavigatorID'], Bag['State'], Bag['ScreenOptions'], Bag['EventMap'], Bag['NavigationList'], Bag['Navigator']> & (undefined extends Config ? {} : {
600
+ config: Config;
601
+ });
602
+ type TypedNavigatorInternal<ParamList extends ParamListBase, NavigatorID extends string | undefined, State extends NavigationState, ScreenOptions extends {}, EventMap extends EventMapBase, NavigationList extends NavigationListBase<ParamList>, Navigator extends React.ComponentType<any>> = {
558
603
  /**
559
604
  * Navigator component which manages the child screens.
560
605
  */
561
- Navigator: React.ComponentType<Omit<React.ComponentProps<Navigator>, keyof DefaultNavigatorOptions<any, any, any, any>> & DefaultNavigatorOptions<ParamList, State, ScreenOptions, EventMap>>;
606
+ Navigator: React.ComponentType<Omit<React.ComponentProps<Navigator>, keyof DefaultNavigatorOptions<any, any, any, any, any, any>> & DefaultNavigatorOptions<ParamList, NavigatorID, State, ScreenOptions, EventMap, NavigationList[keyof ParamList]>>;
562
607
  /**
563
608
  * Component used for grouping multiple route configuration.
564
609
  */
565
- Group: React.ComponentType<RouteGroupConfig<ParamList, ScreenOptions>>;
610
+ Group: React.ComponentType<RouteGroupConfig<ParamList, ScreenOptions, NavigationList[keyof ParamList]>>;
566
611
  /**
567
612
  * Component used for specifying route configuration.
568
613
  */
569
- Screen: <RouteName extends keyof ParamList>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap>) => null;
614
+ Screen: <RouteName extends keyof ParamList>(_: RouteConfig<ParamList, RouteName, State, ScreenOptions, EventMap, NavigationList[RouteName]>) => null;
570
615
  };
571
616
  export type NavigatorScreenParams<ParamList extends {}> = {
572
617
  screen?: never;