/// <reference types="node" />
import { ChildProcess } from 'child_process';
export declare class ChromeLauncher {
    childProcess: ChildProcess | null;
    options: ChromeLauncherOptions;
    constructor(options?: Partial<ChromeLauncherOptions>);
    getDefaultArgs(): string[];
    getEffectiveArgs(): string[];
    launch(): Promise<void>;
    stop(): void;
    shutdown(timeout: number): Promise<void>;
    waitForPort(): Promise<void>;
    tryConnect(): Promise<void>;
    mergeArgs(...argsList: string[][]): string[];
    protected argsToObject(args: string[]): any;
    protected objectToArgs(obj: Record<string, any>): string[];
}
interface ChromeLauncherOptions {
    chromePath: string;
    chromeAddress: string;
    chromePort: number;
    userDataDir: string;
    cacheDir: string;
    stdio: any;
    args: Array<string | null>;
    noDefaultArgs: boolean;
    terminateProcessOnExit: boolean;
    connectionTimeout: number;
    chromeExtensions: string[];
}
export {};
//# sourceMappingURL=launcher.d.ts.map