///
import { BrowserLauncher, TestRunnerCoreConfig } from '@web/test-runner-core';
import { Capabilities } from '@wdio/types';
type MouseButton = 'left' | 'middle' | 'right';
export declare class WebdriverLauncher implements BrowserLauncher {
private options;
name: string;
type: string;
private config?;
private driver?;
private debugDriver;
private driverManager?;
private __managerPromise?;
private isIE;
private pendingHeartbeat?;
constructor(options: Capabilities.WebdriverIOConfig);
initialize(config: TestRunnerCoreConfig): Promise;
stop(): Promise;
startSession(id: string, url: string): Promise;
isActive(id: string): boolean;
getBrowserUrl(sessionId: string): Promise;
stopSession(id: string): Promise<{
testCoverage: import("istanbul-lib-coverage").CoverageMapData | undefined;
}>;
startDebugSession(_: string, url: string): Promise;
private ensureManagerInitialized;
private createDriverManager;
/**
* Sets up a heartbeat to avoid the session from expiring due to
* inactivity because of a long running test.
*/
private setupHeartbeat;
sendMouseMove(sessionId: string, x: number, y: number): Promise;
sendMouseClick(sessionId: string, x: number, y: number, button?: MouseButton): Promise;
sendMouseDown(sessionId: string, button?: MouseButton): Promise;
sendMouseUp(sessionId: string, button?: MouseButton): Promise;
resetMouse(sessionId: string): Promise;
sendKeys(sessionId: string, keys: string[]): Promise;
takeScreenshot(sessionId: string, locator: string): Promise;
}
export declare function webdriverLauncher(options: Capabilities.WebdriverIOConfig): WebdriverLauncher;
export {};
//# sourceMappingURL=webdriverLauncher.d.ts.map