expo-router
Version:
Expo Router is a file-based router for React Native and web applications.
136 lines • 14 kB
TypeScript
import { BottomTabNavigationEventMap, BottomTabNavigationOptions } from '@react-navigation/bottom-tabs';
import { ParamListBase, TabNavigationState } from '@react-navigation/native';
import React from 'react';
import { Href } from '../types';
type TabsProps = BottomTabNavigationOptions & {
href?: Href | null;
};
export declare const Tabs: React.ForwardRefExoticComponent<Omit<Omit<import(" -navigation/native").DefaultNavigatorOptions<ParamListBase, string | undefined, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, import(" -navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase>> & import(" -navigation/native").DefaultRouterOptions & {
backBehavior?: import(" -navigation/routers/lib/typescript/commonjs/src/TabRouter").BackBehavior | undefined;
} & import(" -navigation/bottom-tabs/lib/typescript/commonjs/src/types").BottomTabNavigationConfig, "initialRouteName" | "children" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_getStateForRouteNamesChange"> & import(" -navigation/native").DefaultRouterOptions<string> & {
children: React.ReactNode;
layout?: ((props: {
state: TabNavigationState<ParamListBase>;
navigation: import(" -navigation/native").NavigationHelpers<ParamListBase, {}>;
descriptors: Record<string, import(" -navigation/native").Descriptor<BottomTabNavigationOptions, import(" -navigation/native").NavigationProp<ParamListBase, string, string | undefined, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap>, import(" -navigation/native").RouteProp<ParamListBase, string>>>;
children: React.ReactNode;
}) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) | undefined;
screenListeners?: Partial<{
tabPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress", true>;
tabLongPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress", unknown>;
transitionStart: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionStart", unknown>;
transitionEnd: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionEnd", unknown>;
focus: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus", unknown>;
blur: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur", unknown>;
state: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state", unknown>;
beforeRemove: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove", true>;
}> | ((props: {
route: import(" -navigation/native").RouteProp<ParamListBase, string>;
navigation: import(" -navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
}) => Partial<{
tabPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress", true>;
tabLongPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress", unknown>;
transitionStart: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionStart", unknown>;
transitionEnd: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionEnd", unknown>;
focus: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus", unknown>;
blur: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur", unknown>;
state: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state", unknown>;
beforeRemove: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove", true>;
}>) | undefined;
screenOptions?: BottomTabNavigationOptions | ((props: {
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
theme: ReactNavigation.Theme;
}) => BottomTabNavigationOptions) | undefined;
screenLayout?: ((props: {
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
theme: ReactNavigation.Theme;
children: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
}) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) | undefined;
UNSTABLE_getStateForRouteNamesChange?: ((state: Readonly<{
key: string;
index: number;
routeNames: string[];
history?: unknown[] | undefined;
routes: import(" -navigation/native").NavigationRoute<ParamListBase, string>[];
type: string;
stale: false;
}>) => import("@react-navigation/native").PartialState<Readonly<{
key: string;
index: number;
routeNames: string[];
history?: unknown[] | undefined;
routes: import(" -navigation/native").NavigationRoute<ParamListBase, string>[];
type: string;
stale: false;
}>> | undefined) | undefined;
} & {
id?: undefined;
}, "children"> & Partial<Pick<Omit<import(" -navigation/native").DefaultNavigatorOptions<ParamListBase, string | undefined, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap, import(" -navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase>> & import(" -navigation/native").DefaultRouterOptions & {
backBehavior?: import(" -navigation/routers/lib/typescript/commonjs/src/TabRouter").BackBehavior | undefined;
} & import(" -navigation/bottom-tabs/lib/typescript/commonjs/src/types").BottomTabNavigationConfig, "initialRouteName" | "children" | "layout" | "id" | "screenOptions" | "screenListeners" | "screenLayout" | "UNSTABLE_getStateForRouteNamesChange"> & import(" -navigation/native").DefaultRouterOptions<string> & {
children: React.ReactNode;
layout?: ((props: {
state: TabNavigationState<ParamListBase>;
navigation: import(" -navigation/native").NavigationHelpers<ParamListBase, {}>;
descriptors: Record<string, import(" -navigation/native").Descriptor<BottomTabNavigationOptions, import(" -navigation/native").NavigationProp<ParamListBase, string, string | undefined, TabNavigationState<ParamListBase>, BottomTabNavigationOptions, BottomTabNavigationEventMap>, import(" -navigation/native").RouteProp<ParamListBase, string>>>;
children: React.ReactNode;
}) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) | undefined;
screenListeners?: Partial<{
tabPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress", true>;
tabLongPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress", unknown>;
transitionStart: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionStart", unknown>;
transitionEnd: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionEnd", unknown>;
focus: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus", unknown>;
blur: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur", unknown>;
state: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state", unknown>;
beforeRemove: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove", true>;
}> | ((props: {
route: import(" -navigation/native").RouteProp<ParamListBase, string>;
navigation: import(" -navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
}) => Partial<{
tabPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabPress", true>;
tabLongPress: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "tabLongPress", unknown>;
transitionStart: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionStart", unknown>;
transitionEnd: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "transitionEnd", unknown>;
focus: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "focus", unknown>;
blur: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "blur", unknown>;
state: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "state", unknown>;
beforeRemove: import(" -navigation/native").EventListenerCallback<BottomTabNavigationEventMap & import(" -navigation/native").EventMapCore<TabNavigationState<ParamListBase>>, "beforeRemove", true>;
}>) | undefined;
screenOptions?: BottomTabNavigationOptions | ((props: {
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
theme: ReactNavigation.Theme;
}) => BottomTabNavigationOptions) | undefined;
screenLayout?: ((props: {
route: import("@react-navigation/native").RouteProp<ParamListBase, string>;
navigation: import("@react-navigation/bottom-tabs").BottomTabNavigationProp<ParamListBase, string, undefined>;
theme: ReactNavigation.Theme;
children: React.ReactElement<any, string | React.JSXElementConstructor<any>>;
}) => React.ReactElement<any, string | React.JSXElementConstructor<any>>) | undefined;
UNSTABLE_getStateForRouteNamesChange?: ((state: Readonly<{
key: string;
index: number;
routeNames: string[];
history?: unknown[] | undefined;
routes: import(" -navigation/native").NavigationRoute<ParamListBase, string>[];
type: string;
stale: false;
}>) => import("@react-navigation/native").PartialState<Readonly<{
key: string;
index: number;
routeNames: string[];
history?: unknown[] | undefined;
routes: import(" -navigation/native").NavigationRoute<ParamListBase, string>[];
type: string;
stale: false;
}>> | undefined) | undefined;
} & {
id?: undefined;
}, "children">> & React.RefAttributes<unknown>> & {
Screen: (props: import("..").ScreenProps<TabsProps, TabNavigationState<ParamListBase>, BottomTabNavigationEventMap>) => null;
};
export default Tabs;
//# sourceMappingURL=TabsClient.d.ts.map