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 } type InAppBrowserAndroidOptions = { showTitle?: boolean, toolbarColor?: string, secondaryToolbarColor?: string, enableUrlBarHiding?: boolean, enableDefaultShare?: boolean, forceCloseOnRedirection?: boolean, animations?: { startEnter: string, startExit: string, endEnter: string, endExit: string }, headers?: { [key: string]: string } } export type InAppBrowserOptions = InAppBrowserAndroidOptions | InAppBrowseriOSOptions; type AuthSessionResult = RedirectResult | BrowserResult; interface RNInAppBrowserClassMethods { open: ( url: string, options?: InAppBrowserOptions, ) => Promise; close: () => void; openAuth: ( url: string, redirectUrl: string, options?: InAppBrowserOptions, ) => Promise; closeAuth: () => void; isAvailable: () => Promise; } const RNInAppBrowser: RNInAppBrowserClassMethods; export default RNInAppBrowser; }