-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathindex.d.ts
117 lines (104 loc) · 2.73 KB
/
index.d.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
import * as React from "react";
import {
ViewProps,
ViewStyle,
ScrollViewProps,
TextInputSubmitEditingEventData,
NativeSyntheticEvent,
StyleProp,
} from "react-native";
export type AndroidKeyboardDidHideEvent = null | undefined;
export interface AndroidKeyboardDidShowEvent {
endCoordinates: {
screenX: number;
screenY: number;
width: number;
height: number;
};
}
export interface IOSKeyboardEvent {
startCoordinates: {
screenX: number;
screenY: number;
width: number;
height: number;
};
endCoordinates: {
screenX: number;
screenY: number;
width: number;
height: number;
};
duration: number;
easing: "easeIn" | "easeInEaseOut" | "easeOut" | "linear" | "keyboard";
}
export type KeyboardEvent =
| AndroidKeyboardDidHideEvent
| AndroidKeyboardDidShowEvent
| IOSKeyboardEvent;
export interface KeyboardAvoidingViewProps extends ViewProps {
behavior?: "margin";
androidSoftInputMode?: "adjustResize";
}
export class KeyboardAvoidingView extends React.Component<
KeyboardAvoidingViewProps
> {}
export class PortalHost extends React.Component {}
export class Portal extends React.Component {}
export interface ModalProps {
visible: boolean;
onRequestClose: () => void;
children: React.ReactNode;
onShow?: () => void;
onDismiss?: () => void;
}
export class Modal extends React.Component<ModalProps> {}
export interface PickerItem {
value: string;
label: string;
}
export interface PickerProps {
visible: boolean;
value: string;
items: PickerItem[];
onDismiss: (value: string) => void;
onDone: (value: string) => void;
onCancel: (value: string) => void;
doneButtonLabel?: string;
cancelButtonLabel?: string | null;
ToolbarComponent?: React.ReactType<{}>;
toolbarStyle?: StyleProp<ViewStyle>;
itemsStyle?: StyleProp<ViewStyle>;
}
export class Picker extends React.Component<PickerProps> {}
interface FormProps extends ScrollViewProps {
autoScrollToFocusedInput?: boolean;
scrollToInputThresholds?: number;
getScrollToTextInputOffset?: (
data: {
inputY: number;
scrollViewContentHeight: number;
scrollViewHeight: number;
}
) => number;
}
declare class Form extends React.Component<FormProps> {}
interface FormFieldRenderProps {
focusableRef: React.Ref<any>;
onSubmitEditing: (
e: NativeSyntheticEvent<TextInputSubmitEditingEventData>
) => void;
blurOnSubmit: false;
}
interface FormFieldProps {
index: number;
children: (props: FormFieldRenderProps) => React.ReactNode;
onSubmitEditing?: (
e: NativeSyntheticEvent<TextInputSubmitEditingEventData>
) => void;
}
declare class FormField extends React.Component<FormFieldProps> {}
export function createForm(): {
Form: typeof Form;
FormField: typeof FormField;
};