forked from proyecto26/react-native-inappbrowser
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.d.ts
85 lines (76 loc) · 2.06 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
declare module 'react-native-inappbrowser-reborn' {
export interface RedirectEvent {
url: 'string';
}
export interface BrowserResult {
type: 'cancel' | 'dismiss';
}
export interface RedirectResult {
type: 'success';
url: string;
}
type InAppBrowseriOSOptions = {
dismissButtonStyle?: 'done' | 'close' | 'cancel',
preferredBarTintColor?: string,
preferredControlTintColor?: string,
readerMode?: boolean,
animated?: boolean,
modalPresentationStyle?:
| 'automatic'
| 'fullScreen'
| 'pageSheet'
| 'formSheet'
| 'currentContext'
| 'custom'
| 'overFullScreen'
| 'overCurrentContext'
| 'popover'
| 'none',
modalTransitionStyle?:
| 'coverVertical'
| 'flipHorizontal'
| 'crossDissolve'
| 'partialCurl',
modalEnabled?: boolean,
enableBarCollapsing?: boolean,
ephemeralWebSession?: boolean
}
type InAppBrowserAndroidOptions = {
showTitle?: boolean,
toolbarColor?: string,
secondaryToolbarColor?: string,
navigationBarColor?: string,
navigationBarDividerColor?: string,
enableUrlBarHiding?: boolean,
enableDefaultShare?: boolean,
forceCloseOnRedirection?: boolean,
animations?: {
startEnter: string,
startExit: string,
endEnter: string,
endExit: string
},
headers?: { [key: string]: string },
hasBackButton?: boolean,
browserPackage?: string,
showInRecents?: boolean
}
export type InAppBrowserOptions = InAppBrowserAndroidOptions | InAppBrowseriOSOptions;
type AuthSessionResult = RedirectResult | BrowserResult;
interface InAppBrowserClassMethods {
open: (
url: string,
options?: InAppBrowserOptions,
) => Promise<BrowserResult>;
close: () => void;
openAuth: (
url: string,
redirectUrl: string,
options?: InAppBrowserOptions,
) => Promise<AuthSessionResult>;
closeAuth: () => void;
isAvailable: () => Promise<boolean>;
}
export const InAppBrowser: InAppBrowserClassMethods;
export default InAppBrowser;
}