export interface WipTargetInfo { targetId: string; type: string; [key: string]: unknown; } type EventHandler = (params: unknown) => void; export declare class WipSession { private ws; private nextOuterId; private nextInnerId; private readonly pending; private readonly events; private readonly targets; private pageTargetId; private pageTargetWaiters; private closed; connect(url: string, timeoutMs?: number): Promise; /** * Wait until a `Target.targetCreated` event with type=page arrives. * Resolves immediately if a page target has already been seen. */ waitForPageTarget(timeoutMs?: number): Promise; /** * Send an inner JSON-RPC request to the page target, wrapped in * Target.sendMessageToTarget. Resolves with the inner result. */ send(method: string, params?: unknown, timeoutMs?: number): Promise; sendToTarget(targetId: string, method: string, params?: unknown, timeoutMs?: number): Promise; /** * Subscribe to a domain event (e.g. `Console.messageAdded`, * `Network.requestWillBeSent`). Handlers receive the inner `params`. */ on(event: string, handler: EventHandler): () => void; close(): void; getTargets(): WipTargetInfo[]; private handleOuter; private handleInner; private dispatchEvent; private handleClose; } export {};