import { ChildProcess } from 'child_process';

export interface DevtoolServerInitOptions {
    port: number;
    autoOpenDevtool?: boolean;
    onConnect?: () => void;
    onClose?: () => void;
}
export declare const toMimeType: (contentType: string) => string;
export interface DevtoolMessageRequest {
    method: string;
    params: Record<string, any>;
}
export interface DevtoolMessageResponse {
    id: string;
    result: any;
    method?: string;
}
export type DevtoolMessage = DevtoolMessageRequest | DevtoolMessageResponse;
export declare class DevtoolServer {
    private server;
    private port;
    private browser;
    private socket;
    timestamp: number;
    private startTime;
    private listeners;
    constructor(props: DevtoolServerInitOptions);
    getTimestamp(): number;
    updateTimestamp(): void;
    open(): Promise<ChildProcess | undefined>;
    close(): void;
    send(message: DevtoolMessage): Promise<void>;
    on(listener: (error: unknown | null, message?: any) => void): void;
}
//# sourceMappingURL=devtool.d.ts.map