export default EspressoRunner;
export class EspressoRunner {
    /**
     *
     * @param {import('@appium/types').AppiumLogger} log
     * @param {import('@appium/types').StringRecord} opts
     */
    constructor(log: import("@appium/types").AppiumLogger, opts?: import("@appium/types").StringRecord);
    /** @type {string} */
    host: string;
    /** @type {number} */
    systemPort: number;
    /** @type {string} */
    appPackage: string;
    /** @type {import('appium-adb').ADB} */
    adb: import("appium-adb").ADB;
    /** @type {string} */
    tmpDir: string;
    /**@type {boolean} */
    forceEspressoRebuild: boolean;
    log: import("@appium/types").AppiumLogger;
    jwproxy: EspressoProxy;
    proxyReqRes: any;
    proxyCommand: any;
    modServerPath: string;
    showGradleLog: any;
    espressoBuildConfig: any;
    serverLaunchTimeout: any;
    androidInstallTimeout: any;
    disableSuppressAccessibilityService: any;
    signingConfig: {
        zipAlign: boolean;
        keystoreFile: any;
        keystorePassword: any;
        keyAlias: any;
        keyPassword: any;
    } | null;
    isAppPackageChanged(): Promise<boolean>;
    /**
     * Installs Espresso server apk on to the device or emulator.
     * Each adb command uses default timeout by them.
     */
    installServer(): Promise<void>;
    installTestApk(): Promise<void>;
    buildNewModServer(): Promise<void>;
    cleanupSessionLeftovers(): Promise<void>;
    /**
     * @param {string} driverVersion
     * @param {import('@appium/types').StringRecord} serverStatus
     * @returns {Promise<boolean>}
     */
    _verifyServerStatus(driverVersion: string, serverStatus: import("@appium/types").StringRecord): Promise<boolean>;
    startSession(caps: any): Promise<void>;
    instProcess: import("teen_process").SubProcess | undefined;
    recordTargetAppPackage(): Promise<void>;
    deleteSession(): Promise<void>;
}
export const REQUIRED_PARAMS: string[];
export const TEST_APK_PKG: "io.appium.espressoserver.test";
declare class EspressoProxy extends JWProxy {
    /**
     * @type {{crashed: boolean, exited: boolean}}
     */
    instrumentationState: {
        crashed: boolean;
        exited: boolean;
    };
    proxyCommand(url: any, method: any, body?: null): Promise<[import("@appium/types").ProxyResponse<any>, any]>;
}
import { JWProxy } from 'appium/driver';
//# sourceMappingURL=espresso-runner.d.ts.map