import { RequestWsDriverOptions, RequestWsDriverResponse } from "./types";
import { BrowserConfig } from "../../config/browser-config";
export declare class WSDriverRequestAgent {
    private readonly _wsConnection;
    private _clientSupportedCompressionTypes;
    private _serverSupportedCompressionType?;
    private _sessionId;
    private _sessionPrefix;
    private constructor();
    /** @description Creates WSDriverRequestAgent without establishing it */
    static create({ sessionId, sessionCaps, headers, browserConfig, }: {
        sessionId: string;
        sessionCaps: WebdriverIO.Capabilities;
        headers: Record<string, string>;
        browserConfig: BrowserConfig;
    }): WSDriverRequestAgent;
    close(): void;
    private _onMessage;
    private _getRequestCompressionType;
    private _getConnectionProperties;
    /** @description Performs high-level WSDriver request with timeout */
    request(url: URL, options: RequestWsDriverOptions): Promise<RequestWsDriverResponse>;
}
