[flow] Fix NavigationScreenComponent's navigationOptions (#4317)

This commit is contained in:
Serge Lebedev 2018-06-06 01:19:12 +06:00 committed by Brent Vatne
parent 183ea82416
commit 842f5eb7b2

View File

@ -283,6 +283,10 @@ declare module 'react-navigation' {
| NavigationScreenComponent<NavigationRoute, *, *> | NavigationScreenComponent<NavigationRoute, *, *>
| NavigationContainer<*, *, *>; | NavigationContainer<*, *, *>;
declare interface withOptionalNavigationOptions<Options> {
navigationOptions?: NavigationScreenConfig<Options>,
}
declare export type NavigationScreenComponent< declare export type NavigationScreenComponent<
Route: NavigationRoute, Route: NavigationRoute,
Options: {}, Options: {},
@ -290,8 +294,11 @@ declare module 'react-navigation' {
> = React$ComponentType<{ > = React$ComponentType<{
...Props, ...Props,
...NavigationNavigatorProps<Options, Route>, ...NavigationNavigatorProps<Options, Route>,
}> & }> & withOptionalNavigationOptions<Options>;
({} | { navigationOptions: NavigationScreenConfig<Options> });
declare interface withRouter<State, Options> {
router: NavigationRouter<State, Options>,
}
declare export type NavigationNavigator< declare export type NavigationNavigator<
State: NavigationState, State: NavigationState,
@ -300,10 +307,7 @@ declare module 'react-navigation' {
> = React$ComponentType<{ > = React$ComponentType<{
...Props, ...Props,
...NavigationNavigatorProps<Options, State>, ...NavigationNavigatorProps<Options, State>,
}> & { }> & withRouter<State, Options> & withOptionalNavigationOptions<Options>;
router: NavigationRouter<State, Options>,
navigationOptions?: ?NavigationScreenConfig<Options>,
};
declare export type NavigationRouteConfig = declare export type NavigationRouteConfig =
| NavigationComponent | NavigationComponent
@ -549,10 +553,7 @@ declare module 'react-navigation' {
> = React$ComponentType<{ > = React$ComponentType<{
...Props, ...Props,
...NavigationContainerProps<State, Options>, ...NavigationContainerProps<State, Options>,
}> & { }> & withRouter<State, Options> & withOptionalNavigationOptions<Options>;
router: NavigationRouter<State, Options>,
navigationOptions?: ?NavigationScreenConfig<Options>,
};
declare export type NavigationContainerProps<S: {}, O: {}> = $Shape<{ declare export type NavigationContainerProps<S: {}, O: {}> = $Shape<{
uriPrefix?: string | RegExp, uriPrefix?: string | RegExp,