UNPKG

1.16 kBTypeScriptView Raw
1import type { Animated } from 'react-native';
2import type { PagerViewProps } from 'react-native-pager-view';
3
4export type Route = {
5 key: string;
6 icon?: string;
7 title?: string;
8 accessible?: boolean;
9 accessibilityLabel?: string;
10 testID?: string;
11};
12
13export type Event = {
14 defaultPrevented: boolean;
15 preventDefault(): void;
16};
17
18export type Scene<T extends Route> = {
19 route: T;
20};
21
22export type NavigationState<T extends Route> = {
23 index: number;
24 routes: T[];
25};
26
27export type Layout = {
28 width: number;
29 height: number;
30};
31
32export type Listener = (value: number) => void;
33
34export type SceneRendererProps = {
35 layout: Layout;
36 position: Animated.AnimatedInterpolation;
37 jumpTo: (key: string) => void;
38};
39
40export type EventEmitterProps = {
41 addEnterListener: (listener: Listener) => () => void;
42};
43
44export type PagerProps = Omit<
45 PagerViewProps,
46 | 'initialPage'
47 | 'scrollEnabled'
48 | 'onPageScroll'
49 | 'onPageSelected'
50 | 'onPageScrollStateChanged'
51 | 'keyboardDismissMode'
52 | 'children'
53> & {
54 keyboardDismissMode?: 'none' | 'on-drag' | 'auto';
55 swipeEnabled?: boolean;
56 onSwipeStart?: () => void;
57 onSwipeEnd?: () => void;
58};