import type { DriverCaps, DriverOpts, ExternalDriver, InitialOpts, RouteMatcher, StringRecord, W3CDriverCaps } from '@appium/types';
import { ADB } from 'appium-adb';
import type { LogcatListener } from 'appium-adb';
import type { default as AppiumChromedriver } from 'appium-chromedriver';
import { BaseDriver } from 'appium/driver';
import { AndroidDriverConstraints } from './constraints';
import { SettingsApp } from 'io.appium.settings';
import { getContexts, getCurrentContext, defaultContextName, assignContexts, switchContext, defaultWebviewName, isWebContext, isChromedriverContext, startChromedriverProxy, onChromedriverStop, stopChromedriverProxies, suspendChromedriverProxy, startChromeSession, mobileGetContexts, getWindowHandle, getWindowHandles, setWindow, notifyBiDiContextChange } from './commands/context/exports';
import { getDeviceInfoFromCaps, createADB, getLaunchInfo, initDevice } from './commands/device/common';
import { fingerprint, mobileFingerprint, sendSMS, mobileSendSms, gsmCall, mobileGsmCall, gsmSignal, mobileGsmSignal, gsmVoice, mobileGsmVoice, powerAC, mobilePowerAc, powerCapacity, mobilePowerCapacity, networkSpeed, mobileNetworkSpeed, sensorSet } from './commands/device/emulator-actions';
import { mobileExecEmuConsoleCommand } from './commands/device/emulator-console';
import { getThirdPartyPackages, uninstallOtherPackages, installOtherApks, installAUT, resetAUT, background, getCurrentActivity, getCurrentPackage, mobileClearApp, mobileInstallApp, installApp, mobileIsAppInstalled, mobileRemoveApp, mobileTerminateApp, terminateApp, removeApp, activateApp, queryAppState, isAppInstalled } from './commands/app-management';
import { mobileGetUiMode, mobileSetUiMode } from './commands/appearance';
import { mobileDeviceidle } from './commands/deviceidle';
import { mobileBluetooth } from './commands/bluetooth';
import { getAttribute, getName, elementDisplayed, elementEnabled, elementSelected, setElementValue, doSetElementValue, replaceValue, setValueImmediate, setValue, click, getLocationInView, getText, getLocation, getSize } from './commands/element';
import { execute } from './commands/execute';
import { pullFile, pullFolder, pushFile, mobileDeleteFile } from './commands/file-actions';
import { findElOrEls, doFindElementOrEls } from './commands/find';
import { setGeoLocation, getGeoLocation, mobileRefreshGpsCache, toggleLocationServices, isLocationServicesEnabled, mobileGetGeolocation, mobileSetGeolocation, mobileResetGeolocation } from './commands/geolocation';
import { performActions } from './commands/gestures';
import { isIMEActivated, availableIMEEngines, getActiveIMEEngine, activateIMEEngine, deactivateIMEEngine } from './commands/ime';
import { mobileStartActivity, mobileBroadcast, mobileStartService, mobileStopService } from './commands/intent';
import { hideKeyboard, isKeyboardShown, keys, doSendKeys, pressKeyCode, longPressKeyCode, mobilePerformEditorAction } from './commands/keyboard';
import { lock, unlock, mobileUnlock, isLocked } from './commands/lock/exports';
import { mobileStartLogsBroadcast, mobileStopLogsBroadcast, getLogTypes, getLog, assignBiDiLogListener } from './commands/log';
import { mobileIsMediaProjectionRecordingRunning, mobileStartMediaProjectionRecording, mobileStopMediaProjectionRecording } from './commands/media-projection';
import { mobileSendTrimMemory } from './commands/memory';
import { mobileNfc } from './commands/nfc';
import { mobileInjectEmulatorCameraImage } from './commands/image-injection';
import { getWindowRect, getWindowSize, getDisplayDensity, mobileGetNotifications, mobileListSms, openNotifications, setUrl } from './commands/misc';
import { getNetworkConnection, isWifiOn, mobileGetConnectivity, mobileSetConnectivity, setNetworkConnection, setWifiState, setDataState, toggleData, toggleFlightMode, toggleWiFi } from './commands/network';
import { getPerformanceData, getPerformanceDataTypes, mobileGetPerformanceData } from './commands/performance';
import { reset, closeApp, launchApp } from './commands/legacy';
import { mobileChangePermissions, mobileGetPermissions } from './commands/permissions';
import { startRecordingScreen, stopRecordingScreen } from './commands/recordscreen';
import { getStrings, ensureDeviceLocale } from './commands/resources';
import { mobileShell } from './commands/shell';
import { mobileStartScreenStreaming, mobileStopScreenStreaming } from './commands/streamscreen';
import { getSystemBars, mobilePerformStatusBarCommand } from './commands/system-bars';
import { getDeviceTime, mobileGetDeviceTime } from './commands/time';
export type AndroidDriverCaps = DriverCaps<AndroidDriverConstraints>;
export type W3CAndroidDriverCaps = W3CDriverCaps<AndroidDriverConstraints>;
export type AndroidDriverOpts = DriverOpts<AndroidDriverConstraints>;
type AndroidExternalDriver = ExternalDriver<AndroidDriverConstraints>;
declare class AndroidDriver extends BaseDriver<AndroidDriverConstraints, StringRecord> implements ExternalDriver<AndroidDriverConstraints, string, StringRecord> {
    static newMethodMap: {
        readonly '/session/:sessionId/timeouts/implicit_wait': {
            readonly POST: {
                readonly command: "implicitWait";
                readonly payloadParams: {
                    readonly required: readonly ["ms"];
                };
            };
        };
        readonly '/session/:sessionId/ime/available_engines': {
            readonly GET: {
                readonly command: "availableIMEEngines";
            };
        };
        readonly '/session/:sessionId/ime/active_engine': {
            readonly GET: {
                readonly command: "getActiveIMEEngine";
            };
        };
        readonly '/session/:sessionId/ime/activated': {
            readonly GET: {
                readonly command: "isIMEActivated";
            };
        };
        readonly '/session/:sessionId/ime/deactivate': {
            readonly POST: {
                readonly command: "deactivateIMEEngine";
            };
        };
        readonly '/session/:sessionId/ime/activate': {
            readonly POST: {
                readonly command: "activateIMEEngine";
                readonly payloadParams: {
                    readonly required: readonly ["engine"];
                };
            };
        };
        readonly '/session/:sessionId/window/:windowhandle/size': {
            readonly GET: {
                readonly command: "getWindowSize";
            };
        };
        readonly '/session/:sessionId/keys': {
            readonly POST: {
                readonly command: "keys";
                readonly payloadParams: {
                    readonly required: readonly ["value"];
                };
            };
        };
        readonly '/session/:sessionId/element/:elementId/location': {
            readonly GET: {
                readonly command: "getLocation";
            };
        };
        readonly '/session/:sessionId/element/:elementId/location_in_view': {
            readonly GET: {
                readonly command: "getLocationInView";
            };
        };
        readonly '/session/:sessionId/element/:elementId/size': {
            readonly GET: {
                readonly command: "getSize";
            };
        };
        readonly '/session/:sessionId/appium/device/lock': {
            readonly POST: {
                readonly command: "lock";
                readonly payloadParams: {
                    readonly optional: readonly ["seconds"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/unlock': {
            readonly POST: {
                readonly command: "unlock";
            };
        };
        readonly '/session/:sessionId/appium/device/is_locked': {
            readonly POST: {
                readonly command: "isLocked";
            };
        };
        readonly '/session/:sessionId/appium/start_recording_screen': {
            readonly POST: {
                readonly command: "startRecordingScreen";
                readonly payloadParams: {
                    readonly optional: readonly ["options"];
                };
            };
        };
        readonly '/session/:sessionId/appium/stop_recording_screen': {
            readonly POST: {
                readonly command: "stopRecordingScreen";
                readonly payloadParams: {
                    readonly optional: readonly ["options"];
                };
            };
        };
        readonly '/session/:sessionId/appium/performanceData/types': {
            readonly POST: {
                readonly command: "getPerformanceDataTypes";
            };
        };
        readonly '/session/:sessionId/appium/getPerformanceData': {
            readonly POST: {
                readonly command: "getPerformanceData";
                readonly payloadParams: {
                    readonly required: readonly ["packageName", "dataType"];
                    readonly optional: readonly ["dataReadTimeout"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/press_keycode': {
            readonly POST: {
                readonly command: "pressKeyCode";
                readonly payloadParams: {
                    readonly required: readonly ["keycode"];
                    readonly optional: readonly ["metastate", "flags"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/long_press_keycode': {
            readonly POST: {
                readonly command: "longPressKeyCode";
                readonly payloadParams: {
                    readonly required: readonly ["keycode"];
                    readonly optional: readonly ["metastate", "flags"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/finger_print': {
            readonly POST: {
                readonly command: "fingerprint";
                readonly payloadParams: {
                    readonly required: readonly ["fingerprintId"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/send_sms': {
            readonly POST: {
                readonly command: "sendSMS";
                readonly payloadParams: {
                    readonly required: readonly ["phoneNumber", "message"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/gsm_call': {
            readonly POST: {
                readonly command: "gsmCall";
                readonly payloadParams: {
                    readonly required: readonly ["phoneNumber", "action"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/gsm_signal': {
            readonly POST: {
                readonly command: "gsmSignal";
                readonly payloadParams: {
                    readonly required: readonly ["signalStrength"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/gsm_voice': {
            readonly POST: {
                readonly command: "gsmVoice";
                readonly payloadParams: {
                    readonly required: readonly ["state"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/power_capacity': {
            readonly POST: {
                readonly command: "powerCapacity";
                readonly payloadParams: {
                    readonly required: readonly ["percent"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/power_ac': {
            readonly POST: {
                readonly command: "powerAC";
                readonly payloadParams: {
                    readonly required: readonly ["state"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/network_speed': {
            readonly POST: {
                readonly command: "networkSpeed";
                readonly payloadParams: {
                    readonly required: readonly ["netspeed"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/keyevent': {
            readonly POST: {
                readonly command: "keyevent";
                readonly payloadParams: {
                    readonly required: readonly ["keycode"];
                    readonly optional: readonly ["metastate"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/current_activity': {
            readonly GET: {
                readonly command: "getCurrentActivity";
            };
        };
        readonly '/session/:sessionId/appium/device/current_package': {
            readonly GET: {
                readonly command: "getCurrentPackage";
            };
        };
        readonly '/session/:sessionId/appium/device/app_state': {
            readonly POST: {
                readonly command: "queryAppState";
                readonly payloadParams: {
                    readonly required: readonly [readonly ["appId"], readonly ["bundleId"]];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/toggle_airplane_mode': {
            readonly POST: {
                readonly command: "toggleFlightMode";
            };
        };
        readonly '/session/:sessionId/appium/device/toggle_data': {
            readonly POST: {
                readonly command: "toggleData";
            };
        };
        readonly '/session/:sessionId/appium/device/toggle_wifi': {
            readonly POST: {
                readonly command: "toggleWiFi";
            };
        };
        readonly '/session/:sessionId/appium/device/toggle_location_services': {
            readonly POST: {
                readonly command: "toggleLocationServices";
            };
        };
        readonly '/session/:sessionId/appium/device/open_notifications': {
            readonly POST: {
                readonly command: "openNotifications";
            };
        };
        readonly '/session/:sessionId/appium/device/start_activity': {
            readonly POST: {
                readonly command: "startActivity";
                readonly payloadParams: {
                    readonly required: readonly ["appPackage", "appActivity"];
                    readonly optional: readonly ["appWaitPackage", "appWaitActivity", "intentAction", "intentCategory", "intentFlags", "optionalIntentArguments", "dontStopAppOnReset"];
                };
            };
        };
        readonly '/session/:sessionId/appium/device/system_bars': {
            readonly GET: {
                readonly command: "getSystemBars";
            };
        };
        readonly '/session/:sessionId/appium/device/display_density': {
            readonly GET: {
                readonly command: "getDisplayDensity";
            };
        };
        readonly '/session/:sessionId/appium/app/background': {
            readonly POST: {
                readonly command: "background";
                readonly payloadParams: {
                    readonly required: readonly ["seconds"];
                };
            };
        };
        readonly '/session/:sessionId/appium/app/strings': {
            readonly POST: {
                readonly command: "getStrings";
                readonly payloadParams: {
                    readonly optional: readonly ["language", "stringFile"];
                };
            };
        };
        readonly '/session/:sessionId/appium/element/:elementId/value': {
            readonly POST: {
                readonly command: "setValueImmediate";
                readonly payloadParams: {
                    readonly required: readonly ["text"];
                };
            };
        };
        readonly '/session/:sessionId/appium/element/:elementId/replace_value': {
            readonly POST: {
                readonly command: "replaceValue";
                readonly payloadParams: {
                    readonly required: readonly ["text"];
                };
            };
        };
    };
    static executeMethodMap: {
        readonly 'mobile: shell': {
            readonly command: "mobileShell";
            readonly params: {
                readonly required: readonly ["command"];
                readonly optional: readonly ["args", "timeout", "includeStderr"];
            };
        };
        readonly 'mobile: execEmuConsoleCommand': {
            readonly command: "mobileExecEmuConsoleCommand";
            readonly params: {
                readonly required: readonly ["command"];
                readonly optional: readonly ["execTimeout", "connTimeout", "initTimeout"];
            };
        };
        readonly 'mobile: startLogsBroadcast': {
            readonly command: "mobileStartLogsBroadcast";
        };
        readonly 'mobile: stopLogsBroadcast': {
            readonly command: "mobileStopLogsBroadcast";
        };
        readonly 'mobile: changePermissions': {
            readonly command: "mobileChangePermissions";
            readonly params: {
                readonly required: readonly ["permissions"];
                readonly optional: readonly ["appPackage", "action", "target"];
            };
        };
        readonly 'mobile: getPermissions': {
            readonly command: "mobileGetPermissions";
            readonly params: {
                readonly optional: readonly ["type", "appPackage"];
            };
        };
        readonly 'mobile: performEditorAction': {
            readonly command: "mobilePerformEditorAction";
            readonly params: {
                readonly required: readonly ["action"];
            };
        };
        readonly 'mobile: getDeviceTime': {
            readonly command: "mobileGetDeviceTime";
            readonly params: {
                readonly optional: readonly ["format"];
            };
        };
        readonly 'mobile: startScreenStreaming': {
            readonly command: "mobileStartScreenStreaming";
            readonly params: {
                readonly optional: readonly ["width", "height", "bitRate", "host", "port", "pathname", "tcpPort", "quality", "considerRotation", "logPipelineDetails"];
            };
        };
        readonly 'mobile: stopScreenStreaming': {
            readonly command: "mobileStopScreenStreaming";
        };
        readonly 'mobile: getNotifications': {
            readonly command: "mobileGetNotifications";
        };
        readonly 'mobile: listSms': {
            readonly command: "mobileListSms";
        };
        readonly 'mobile: pushFile': {
            readonly command: "pushFile";
            readonly params: {
                readonly required: readonly ["remotePath", "payload"];
            };
        };
        readonly 'mobile: pullFolder': {
            readonly command: "pullFolder";
            readonly params: {
                readonly required: readonly ["remotePath"];
            };
        };
        readonly 'mobile: pullFile': {
            readonly command: "pullFile";
            readonly params: {
                readonly required: readonly ["remotePath"];
            };
        };
        readonly 'mobile: deleteFile': {
            readonly command: "mobileDeleteFile";
            readonly params: {
                readonly required: readonly ["remotePath"];
            };
        };
        readonly 'mobile: isAppInstalled': {
            readonly command: "mobileIsAppInstalled";
            readonly params: {
                readonly required: readonly ["appId"];
                readonly optional: readonly ["user"];
            };
        };
        readonly 'mobile: queryAppState': {
            readonly command: "queryAppState";
            readonly params: {
                readonly required: readonly ["appId"];
            };
        };
        readonly 'mobile: activateApp': {
            readonly command: "activateApp";
            readonly params: {
                readonly required: readonly ["appId"];
            };
        };
        readonly 'mobile: removeApp': {
            readonly command: "mobileRemoveApp";
            readonly params: {
                readonly required: readonly ["appId"];
                readonly optional: readonly ["timeout", "keepData", "skipInstallCheck"];
            };
        };
        readonly 'mobile: terminateApp': {
            readonly command: "mobileTerminateApp";
            readonly params: {
                readonly required: readonly ["appId"];
                readonly optional: readonly ["timeout"];
            };
        };
        readonly 'mobile: installApp': {
            readonly command: "mobileInstallApp";
            readonly params: {
                readonly required: readonly ["appPath"];
                readonly optional: readonly ["checkVersion", "timeout", "allowTestPackages", "useSdcard", "grantPermissions", "replace", "noIncremental"];
            };
        };
        readonly 'mobile: clearApp': {
            readonly command: "mobileClearApp";
            readonly params: {
                readonly required: readonly ["appId"];
            };
        };
        readonly 'mobile: startService': {
            readonly command: "mobileStartService";
            readonly params: {
                readonly optional: readonly ["foreground", "user", "intent", "action", "package", "uri", "mimeType", "identifier", "component", "categories", "extras", "flags"];
            };
        };
        readonly 'mobile: stopService': {
            readonly command: "mobileStopService";
            readonly params: {
                readonly optional: readonly ["user", "intent", "action", "package", "uri", "mimeType", "identifier", "component", "categories", "extras", "flags"];
            };
        };
        readonly 'mobile: startActivity': {
            readonly command: "mobileStartActivity";
            readonly params: {
                readonly optional: readonly ["wait", "stop", "windowingMode", "activityType", "display", "user", "intent", "action", "package", "uri", "mimeType", "identifier", "component", "categories", "extras", "flags"];
            };
        };
        readonly 'mobile: broadcast': {
            readonly command: "mobileBroadcast";
            readonly params: {
                readonly optional: readonly ["receiverPermission", "allowBackgroundActivityStarts", "user", "intent", "action", "package", "uri", "mimeType", "identifier", "component", "categories", "extras", "flags"];
            };
        };
        readonly 'mobile: getContexts': {
            readonly command: "mobileGetContexts";
            readonly params: {
                readonly optional: readonly ["waitForWebviewMs"];
            };
        };
        readonly 'mobile: lock': {
            readonly command: "lock";
            readonly params: {
                readonly optional: readonly ["seconds"];
            };
        };
        readonly 'mobile: unlock': {
            readonly command: "mobileUnlock";
            readonly params: {
                readonly optional: readonly ["key", "type", "strategy", "timeoutMs"];
            };
        };
        readonly 'mobile: isLocked': {
            readonly command: "isLocked";
        };
        readonly 'mobile: refreshGpsCache': {
            readonly command: "mobileRefreshGpsCache";
            readonly params: {
                readonly optional: readonly ["timeoutMs"];
            };
        };
        readonly 'mobile: startMediaProjectionRecording': {
            readonly command: "mobileStartMediaProjectionRecording";
            readonly params: {
                readonly optional: readonly ["resolution", "priority", "maxDurationSec", "filename"];
            };
        };
        readonly 'mobile: isMediaProjectionRecordingRunning': {
            readonly command: "mobileIsMediaProjectionRecordingRunning";
        };
        readonly 'mobile: stopMediaProjectionRecording': {
            readonly command: "mobileStopMediaProjectionRecording";
            readonly params: {
                readonly optional: readonly ["remotePath", "user", "pass", "method", "headers", "fileFieldName", "formFields", "uploadTimeout"];
            };
        };
        readonly 'mobile: getConnectivity': {
            readonly command: "mobileGetConnectivity";
            readonly params: {
                readonly optional: readonly ["services"];
            };
        };
        readonly 'mobile: setConnectivity': {
            readonly command: "mobileSetConnectivity";
            readonly params: {
                readonly optional: readonly ["wifi", "data", "airplaneMode"];
            };
        };
        readonly 'mobile: hideKeyboard': {
            readonly command: "hideKeyboard";
        };
        readonly 'mobile: isKeyboardShown': {
            readonly command: "isKeyboardShown";
        };
        readonly 'mobile: deviceidle': {
            readonly command: "mobileDeviceidle";
            readonly params: {
                readonly required: readonly ["action"];
                readonly optional: readonly ["packages"];
            };
        };
        readonly 'mobile: bluetooth': {
            readonly command: "mobileBluetooth";
            readonly params: {
                readonly required: readonly ["action"];
            };
        };
        readonly 'mobile: nfc': {
            readonly command: "mobileNfc";
            readonly params: {
                readonly required: readonly ["action"];
            };
        };
        readonly 'mobile: setUiMode': {
            readonly command: "mobileSetUiMode";
            readonly params: {
                readonly required: readonly ["mode", "value"];
            };
        };
        readonly 'mobile: getUiMode': {
            readonly command: "mobileGetUiMode";
            readonly params: {
                readonly required: readonly ["mode"];
            };
        };
        readonly 'mobile: injectEmulatorCameraImage': {
            readonly command: "mobileInjectEmulatorCameraImage";
            readonly params: {
                readonly required: readonly ["payload"];
            };
        };
        readonly 'mobile: sendTrimMemory': {
            readonly command: "mobileSendTrimMemory";
            readonly params: {
                readonly required: readonly ["pkg", "level"];
            };
        };
        readonly 'mobile: getPerformanceData': {
            readonly command: "mobileGetPerformanceData";
            readonly params: {
                readonly required: readonly ["packageName", "dataType"];
            };
        };
        readonly 'mobile: getPerformanceDataTypes': {
            readonly command: "getPerformanceDataTypes";
        };
        readonly 'mobile: toggleGps': {
            readonly command: "toggleLocationServices";
        };
        readonly 'mobile: isGpsEnabled': {
            readonly command: "isLocationServicesEnabled";
        };
        readonly 'mobile: getDisplayDensity': {
            readonly command: "getDisplayDensity";
        };
        readonly 'mobile: getSystemBars': {
            readonly command: "getSystemBars";
        };
        readonly 'mobile: statusBar': {
            readonly command: "mobilePerformStatusBarCommand";
            readonly params: {
                readonly required: readonly ["command"];
                readonly optional: readonly ["component"];
            };
        };
        readonly 'mobile: fingerprint': {
            readonly command: "mobileFingerprint";
            readonly params: {
                readonly required: readonly ["fingerprintId"];
            };
        };
        readonly 'mobile: sendSms': {
            readonly command: "mobileSendSms";
            readonly params: {
                readonly required: readonly ["phoneNumber", "message"];
            };
        };
        readonly 'mobile: gsmCall': {
            readonly command: "mobileGsmCall";
            readonly params: {
                readonly required: readonly ["phoneNumber", "action"];
            };
        };
        readonly 'mobile: gsmSignal': {
            readonly command: "mobileGsmSignal";
            readonly params: {
                readonly required: readonly ["strength"];
            };
        };
        readonly 'mobile: gsmVoice': {
            readonly command: "mobileGsmVoice";
            readonly params: {
                readonly required: readonly ["state"];
            };
        };
        readonly 'mobile: powerAc': {
            readonly command: "mobilePowerAc";
            readonly params: {
                readonly required: readonly ["state"];
            };
        };
        readonly 'mobile: powerCapacity': {
            readonly command: "mobilePowerCapacity";
            readonly params: {
                readonly required: readonly ["percent"];
            };
        };
        readonly 'mobile: networkSpeed': {
            readonly command: "mobileNetworkSpeed";
            readonly params: {
                readonly required: readonly ["speed"];
            };
        };
        readonly 'mobile: sensorSet': {
            readonly command: "sensorSet";
            readonly params: {
                readonly required: readonly ["sensorType", "value"];
            };
        };
        readonly 'mobile: getCurrentActivity': {
            readonly command: "getCurrentActivity";
        };
        readonly 'mobile: getCurrentPackage': {
            readonly command: "getCurrentPackage";
        };
        readonly 'mobile: setGeolocation': {
            readonly command: "mobileSetGeolocation";
            readonly params: {
                readonly required: readonly ["latitude", "longitude"];
                readonly optional: readonly ["altitude", "satellites", "speed", "bearing", "accuracy"];
            };
        };
        readonly 'mobile: getGeolocation': {
            readonly command: "mobileGetGeolocation";
        };
        readonly 'mobile: resetGeolocation': {
            readonly command: "mobileResetGeolocation";
        };
        readonly 'mobile: getAppStrings': {
            readonly command: "getStrings";
            readonly params: {
                readonly optional: readonly ["language"];
            };
        };
    };
    jwpProxyAvoid: RouteMatcher[];
    adb: ADB;
    _settingsApp: SettingsApp;
    proxyReqRes?: (...args: any) => any;
    contexts?: string[];
    sessionChromedrivers: StringRecord<AppiumChromedriver>;
    chromedriver?: AppiumChromedriver;
    proxyCommand?: AndroidExternalDriver['proxyCommand'];
    jwpProxyActive: boolean;
    curContext: string;
    useUnlockHelperApp?: boolean;
    defaultIME?: string;
    _wasWindowAnimationDisabled?: boolean;
    _cachedActivityArgs: StringRecord;
    _screenStreamingProps?: StringRecord;
    _screenRecordingProperties?: StringRecord;
    _logcatWebsocketListener?: LogcatListener;
    _bidiServerLogListener?: (...args: any[]) => void;
    opts: AndroidDriverOpts;
    constructor(opts?: InitialOpts, shouldValidateCaps?: boolean);
    get settingsApp(): SettingsApp;
    isEmulator(): boolean;
    get isChromeSession(): boolean;
    validateDesiredCaps(caps: any): caps is AndroidDriverCaps;
    deleteSession(sessionId?: string | null): Promise<void>;
    getContexts: typeof getContexts;
    getCurrentContext: typeof getCurrentContext;
    defaultContextName: typeof defaultContextName;
    assignContexts: typeof assignContexts;
    switchContext: typeof switchContext;
    defaultWebviewName: typeof defaultWebviewName;
    isChromedriverContext: typeof isChromedriverContext;
    startChromedriverProxy: typeof startChromedriverProxy;
    stopChromedriverProxies: typeof stopChromedriverProxies;
    suspendChromedriverProxy: typeof suspendChromedriverProxy;
    startChromeSession: typeof startChromeSession;
    onChromedriverStop: typeof onChromedriverStop;
    isWebContext: typeof isWebContext;
    mobileGetContexts: typeof mobileGetContexts;
    setContext: (this: AndroidDriver, name?: string) => Promise<void>;
    setWindow: typeof setWindow;
    getWindowHandle: typeof getWindowHandle;
    getWindowHandles: typeof getWindowHandles;
    notifyBiDiContextChange: typeof notifyBiDiContextChange;
    getDeviceInfoFromCaps: typeof getDeviceInfoFromCaps;
    createADB: typeof createADB;
    getLaunchInfo: typeof getLaunchInfo;
    initDevice: typeof initDevice;
    fingerprint: typeof fingerprint;
    mobileFingerprint: typeof mobileFingerprint;
    sendSMS: typeof sendSMS;
    mobileSendSms: typeof mobileSendSms;
    gsmCall: typeof gsmCall;
    mobileGsmCall: typeof mobileGsmCall;
    gsmSignal: typeof gsmSignal;
    mobileGsmSignal: typeof mobileGsmSignal;
    gsmVoice: typeof gsmVoice;
    mobileGsmVoice: typeof mobileGsmVoice;
    powerAC: typeof powerAC;
    mobilePowerAc: typeof mobilePowerAc;
    powerCapacity: typeof powerCapacity;
    mobilePowerCapacity: typeof mobilePowerCapacity;
    networkSpeed: typeof networkSpeed;
    mobileNetworkSpeed: typeof mobileNetworkSpeed;
    sensorSet: typeof sensorSet;
    mobileExecEmuConsoleCommand: typeof mobileExecEmuConsoleCommand;
    getThirdPartyPackages: typeof getThirdPartyPackages;
    uninstallOtherPackages: typeof uninstallOtherPackages;
    installOtherApks: typeof installOtherApks;
    installAUT: typeof installAUT;
    resetAUT: typeof resetAUT;
    background: typeof background;
    getCurrentActivity: typeof getCurrentActivity;
    getCurrentPackage: typeof getCurrentPackage;
    mobileClearApp: typeof mobileClearApp;
    mobileInstallApp: typeof mobileInstallApp;
    installApp: typeof installApp;
    mobileIsAppInstalled: typeof mobileIsAppInstalled;
    mobileRemoveApp: typeof mobileRemoveApp;
    mobileTerminateApp: typeof mobileTerminateApp;
    terminateApp: typeof terminateApp;
    removeApp: typeof removeApp;
    activateApp: typeof activateApp;
    queryAppState: typeof queryAppState;
    isAppInstalled: typeof isAppInstalled;
    mobileGetUiMode: typeof mobileGetUiMode;
    mobileSetUiMode: typeof mobileSetUiMode;
    mobileDeviceidle: typeof mobileDeviceidle;
    mobileBluetooth: typeof mobileBluetooth;
    getAttribute: typeof getAttribute;
    getName: typeof getName;
    elementDisplayed: typeof elementDisplayed;
    elementEnabled: typeof elementEnabled;
    elementSelected: typeof elementSelected;
    setElementValue: typeof setElementValue;
    doSetElementValue: typeof doSetElementValue;
    replaceValue: typeof replaceValue;
    setValueImmediate: typeof setValueImmediate;
    setValue: typeof setValue;
    click: typeof click;
    getLocationInView: typeof getLocationInView;
    getText: typeof getText;
    getLocation: typeof getLocation;
    getSize: typeof getSize;
    execute: typeof execute;
    pullFile: typeof pullFile;
    pullFolder: typeof pullFolder;
    pushFile: typeof pushFile;
    mobileDeleteFile: typeof mobileDeleteFile;
    findElOrEls: typeof findElOrEls;
    doFindElementOrEls: typeof doFindElementOrEls;
    setGeoLocation: typeof setGeoLocation;
    getGeoLocation: typeof getGeoLocation;
    mobileRefreshGpsCache: typeof mobileRefreshGpsCache;
    toggleLocationServices: typeof toggleLocationServices;
    isLocationServicesEnabled: typeof isLocationServicesEnabled;
    mobileGetGeolocation: typeof mobileGetGeolocation;
    mobileSetGeolocation: typeof mobileSetGeolocation;
    mobileResetGeolocation: typeof mobileResetGeolocation;
    performActions: typeof performActions;
    isIMEActivated: typeof isIMEActivated;
    availableIMEEngines: typeof availableIMEEngines;
    getActiveIMEEngine: typeof getActiveIMEEngine;
    activateIMEEngine: typeof activateIMEEngine;
    deactivateIMEEngine: typeof deactivateIMEEngine;
    startActivity: (appPackage: string, appActivity: string, appWaitPackage?: string, appWaitActivity?: string, intentAction?: string, intentCategory?: string, intentFlags?: string, optionalIntentArguments?: string, dontStopAppOnReset?: boolean) => Promise<void>;
    mobileStartActivity: typeof mobileStartActivity;
    mobileBroadcast: typeof mobileBroadcast;
    mobileStartService: typeof mobileStartService;
    mobileStopService: typeof mobileStopService;
    hideKeyboard: typeof hideKeyboard;
    isKeyboardShown: typeof isKeyboardShown;
    keys: typeof keys;
    doSendKeys: typeof doSendKeys;
    pressKeyCode: typeof pressKeyCode;
    longPressKeyCode: typeof longPressKeyCode;
    mobilePerformEditorAction: typeof mobilePerformEditorAction;
    lock: typeof lock;
    unlock: typeof unlock;
    mobileUnlock: typeof mobileUnlock;
    isLocked: typeof isLocked;
    supportedLogTypes: {
        logcat: {
            description: string;
            getter: (self: import("./driver").AndroidDriver) => import("appium-adb").LogEntry[];
        };
        bugreport: {
            description: string;
            getter: (self: import("./driver").AndroidDriver) => Promise<import("appium-adb").LogEntry[]>;
        };
        server: {
            description: string;
            getter: (self: import("./driver").AndroidDriver) => import("appium-adb").LogEntry[];
        };
    };
    mobileStartLogsBroadcast: typeof mobileStartLogsBroadcast;
    mobileStopLogsBroadcast: typeof mobileStopLogsBroadcast;
    getLogTypes: typeof getLogTypes;
    getLog: typeof getLog;
    assignBiDiLogListener: typeof assignBiDiLogListener;
    mobileIsMediaProjectionRecordingRunning: typeof mobileIsMediaProjectionRecordingRunning;
    mobileStartMediaProjectionRecording: typeof mobileStartMediaProjectionRecording;
    mobileStopMediaProjectionRecording: typeof mobileStopMediaProjectionRecording;
    mobileSendTrimMemory: typeof mobileSendTrimMemory;
    mobileInjectEmulatorCameraImage: typeof mobileInjectEmulatorCameraImage;
    getWindowRect: typeof getWindowRect;
    getWindowSize: typeof getWindowSize;
    getDisplayDensity: typeof getDisplayDensity;
    mobileGetNotifications: typeof mobileGetNotifications;
    mobileListSms: typeof mobileListSms;
    openNotifications: typeof openNotifications;
    setUrl: typeof setUrl;
    getNetworkConnection: typeof getNetworkConnection;
    isWifiOn: typeof isWifiOn;
    mobileGetConnectivity: typeof mobileGetConnectivity;
    mobileSetConnectivity: typeof mobileSetConnectivity;
    setNetworkConnection: typeof setNetworkConnection;
    setWifiState: typeof setWifiState;
    setDataState: typeof setDataState;
    toggleData: typeof toggleData;
    toggleFlightMode: typeof toggleFlightMode;
    toggleWiFi: typeof toggleWiFi;
    getPerformanceData: typeof getPerformanceData;
    getPerformanceDataTypes: typeof getPerformanceDataTypes;
    mobileGetPerformanceData: typeof mobileGetPerformanceData;
    mobileChangePermissions: typeof mobileChangePermissions;
    mobileGetPermissions: typeof mobileGetPermissions;
    startRecordingScreen: typeof startRecordingScreen;
    stopRecordingScreen: typeof stopRecordingScreen;
    getStrings: typeof getStrings;
    ensureDeviceLocale: typeof ensureDeviceLocale;
    mobileShell: typeof mobileShell;
    mobileNfc: typeof mobileNfc;
    mobileStartScreenStreaming: typeof mobileStartScreenStreaming;
    mobileStopScreenStreaming: typeof mobileStopScreenStreaming;
    getSystemBars: typeof getSystemBars;
    mobilePerformStatusBarCommand: typeof mobilePerformStatusBarCommand;
    getDeviceTime: typeof getDeviceTime;
    mobileGetDeviceTime: typeof mobileGetDeviceTime;
    reset: typeof reset;
    closeApp: typeof closeApp;
    launchApp: typeof launchApp;
}
export { AndroidDriver };
//# sourceMappingURL=driver.d.ts.map