import { promise as wdpromise, WebDriver } from 'selenium-webdriver'; export interface ExtendedWebDriver extends WebDriver { getNetworkConnection: () => wdpromise.Promise<0 | 1 | 2 | 3 | 4 | 5 | 6 | 7>; setNetworkConnection: (typeOrAirplaneMode: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | boolean, wifi?: boolean, data?: boolean) => wdpromise.Promise; toggleAirplaneMode: () => wdpromise.Promise; toggleWiFi: () => wdpromise.Promise; toggleData: () => wdpromise.Promise; toggleLocationServices: () => wdpromise.Promise; getGeolocation: () => wdpromise.Promise<{ latitude: number; longitude: number; altitude: number; }>; setGeolocation: (latitude?: number, longitude?: number, altitude?: number) => wdpromise.Promise; getCurrentDeviceActivity: () => wdpromise.Promise; startDeviceActivity: (appPackage: string, appActivity: string, appWaitPackage?: string, appWaitActivity?: string) => wdpromise.Promise; getAppiumSettings: () => wdpromise.Promise<{ [name: string]: any; }>; setAppiumSettings: (settings: { [name: string]: any; }) => wdpromise.Promise; getCurrentContext: () => wdpromise.Promise; selectContext: (name: string) => wdpromise.Promise; listContexts: () => wdpromise.Promise; getScreenOrientation: () => wdpromise.Promise<'LANDSCAPE' | 'PORTRAIT'>; setScreenOrientation: (orientation: string) => wdpromise.Promise; isDeviceLocked: () => wdpromise.Promise; lockDevice: (delay?: number) => wdpromise.Promise; unlockDevice: () => wdpromise.Promise; installApp: (appPath: string) => wdpromise.Promise; isAppInstalled: (bundleId: string) => wdpromise.Promise; removeApp: (appId: string) => wdpromise.Promise; pullFileFromDevice: (path: string) => wdpromise.Promise; pullFolderFromDevice: (path: string) => wdpromise.Promise; pushFileToDevice: (path: string, base64Data: string) => wdpromise.Promise; uploadFile: (base64Data: string) => wdpromise.Promise; switchToParentFrame: () => wdpromise.Promise; fullscreen: () => wdpromise.Promise; sendAppToBackground: (delay?: number) => wdpromise.Promise; closeApp: () => wdpromise.Promise; getAppStrings: (language?: string) => wdpromise.Promise; launchSession: () => wdpromise.Promise; resetApp: () => wdpromise.Promise; hideSoftKeyboard: (strategy?: 'default' | 'tapOutside' | 'tapOut' | 'swipeDown' | 'pressKey' | 'press', key?: string) => wdpromise.Promise; getDeviceTime: () => wdpromise.Promise; openDeviceNotifications: () => wdpromise.Promise; rotationGesture: (x?: number, y?: number, duration?: number, rotation?: number, touchCount?: 1 | 2 | 3 | 4 | 5) => wdpromise.Promise; shakeDevice: () => wdpromise.Promise; sendChromiumCommand: (cmd: string, params: Object) => wdpromise.Promise; sendChromiumCommandAndGetResult: (cmd: string, params: Object) => wdpromise.Promise; } export declare function extend(baseDriver: WebDriver, fallbackGracefully?: boolean): ExtendedWebDriver;