type Options = {
    viewport?: {
        width: number;
        height: number;
    };
    device?: {
        isMobile?: boolean;
        isNative?: boolean;
        name?: string;
    };
    platform?: {
        name?: string;
        version?: string;
    };
    browser?: {
        name?: string;
        version?: string;
    };
    ua?: string;
    driverServerUrl?: string;
    capabilities?: Record<string, any>;
    sessionId?: string;
};
export declare class MockDriver {
    constructor(options?: Options);
    mockScript(scriptMatcher: any, resultGenerator: any): void;
    mockElement(selector: any, state: any): any;
    unmockElement(element: any): void;
    mockElements(nodes: any, { parentId, parentContextId, parentRootId }?: {
        parentId?: null | undefined;
        parentContextId?: null | undefined;
        parentRootId?: null | undefined;
    }): void;
    mockSelector(selector: any, element: any): void;
    unmockSelector(selector: any, element: any): void;
    wrapMethod<TName extends {
        [K in keyof MockDriver]: MockDriver[K] extends (...args: any[]) => any ? K : never;
    }[keyof MockDriver]>(name: TName, wrapper: (method: this[TName], thisArg: this, args: Parameters<this[TName]>) => ReturnType<this[TName]>): void;
    unwrapMethod(name: any): void;
    get environment(): {
        isMobile: boolean;
        isNative: boolean;
        deviceName: any;
        platformName: any;
        platformVersion: any;
        browserName: any;
        browserVersion: any;
    };
    get driverServerUrl(): any;
    get sessionId(): any;
    get capabilities(): any;
    executeScript(script: any, args?: never[]): Promise<any>;
    findElement(selector: any, rootElement?: any): Promise<any>;
    findElements(selector: any, rootElement?: any): Promise<any>;
    switchToFrame(reference: any): Promise<this>;
    switchToParentFrame(): Promise<this>;
    getWindowRect(): Promise<any>;
    setWindowRect(rect: any): Promise<void>;
    getUrl(): Promise<any>;
    getTitle(): Promise<any>;
    visit(url: any): Promise<void>;
    takeScreenshot(): Promise<unknown>;
    toString(): string;
    toJSON(): string;
    getCurrentWorld(): Promise<"NATIVE_APP" | "WEBVIEW_1">;
}
export {};
