declare const RESERVED_ENGINE_KEYWORDS: Set; export { RESERVED_ENGINE_KEYWORDS, parseSurfaceRef, reinterpretForSessions, ensureSurfaceState, syncHandles, seedWindowLead, deregisterHandle, registerOpenedHandle, resolveWindowTarget, switchToSurface, closeHandle, resolveCloseTargets, }; export type ParsedSurface = { kind: "none"; } | { kind: "process"; name: string; explicit?: boolean; } | { kind: "browser"; engine?: string; name?: string; window?: any; tab?: any; } | { kind: "unsupported"; }; declare function parseSurfaceRef(surface: any): ParsedSurface; declare function reinterpretForSessions(driver: any, ref: ParsedSurface): ParsedSurface; export interface WindowEntry { handle: string; order: number; isWindowLead: boolean; parentWindow?: string; windowName?: string; tabName?: string; internal?: boolean; } export interface SurfaceState { windows: WindowEntry[]; nextOrder: number; } declare function ensureSurfaceState(driver: any): SurfaceState; declare function syncHandles(driver: any): Promise; declare function seedWindowLead(driver: any, handle: string): WindowEntry; declare function deregisterHandle(driver: any, handle: string): void; declare function registerOpenedHandle(driver: any, entry: { handle: string; isWindowLead?: boolean; parentWindow?: string; windowName?: string; tabName?: string; internal?: boolean; }): WindowEntry; type Resolution = { ok: true; handle: string; driver?: any; } | { ok: false; message: string; }; export interface SurfaceResolveOptions { maxWaitMs?: number; pollIntervalMs?: number; allowOpen?: boolean; } declare function resolveWindowTarget(driver: any, ref: ParsedSurface, opts?: SurfaceResolveOptions): Promise; declare function switchToSurface(driver: any, surface: any, opts?: SurfaceResolveOptions): Promise; declare function closeHandle(driver: any, handle: string): Promise<{ ok: true; handle: string; } | { ok: false; message: string; }>; declare function resolveCloseTargets(driver: any, ref: ParsedSurface, opts?: SurfaceResolveOptions): Promise<{ ok: true; handles: string[]; } | { ok: false; message: string; }>; //# sourceMappingURL=browserSurface.d.ts.map