export interface BrowserHandle { /** Remote document — chain DOM calls directly */ document: any; /** Remote window object */ window: any; /** Navigate to a URL (triggers page reload, reconnect after) */ navigate(url: string): Promise<{ navigated: string; }>; /** Convert page/element DOM to markdown with links */ getPageMarkdown(selector?: string): Promise<{ markdown: string; length: number; } | { error: string; }>; /** Get visible text of an element or page */ getVisibleText(selector?: string): Promise<{ text: string; length: number; } | { error: string; }>; /** Take a screenshot. String = selector, object = options (preset, format, quality, scale, maxWidth) */ screenshot(selectorOrOpts?: string | { selector?: string; preset?: 'viewport' | 'element' | 'full' | 'thumb' | 'hd'; format?: 'png' | 'jpeg'; quality?: number; scale?: number; maxWidth?: number; }): Promise<{ data: string; width: number; height: number; } | { error: string; }>; /** Click an element by CSS selector */ click(selector: string): Promise<{ clicked: string; tag: string; } | { error: string; }>; /** Fill an input by CSS selector */ fill(selector: string, value: string): Promise<{ filled: string; value: string; } | { error: string; }>; /** Run JS in the browser via eval */ eval(expression: string): Promise; } export interface GatewayConnection { /** How many browsers are connected */ getBrowserCount(): Promise; /** List connected browsers */ getBrowserList(): Promise>; /** List registered project server IDs */ listProjects(): Promise; /** Get a project-scoped browser handle. No arg = latest project. */ getProject(serverId?: string): BrowserHandle; /** Subscribe to real-time event stream */ subscribeEvents(browserId?: string): Promise; /** Close the connection (no auto-reconnect) */ close(): void; } export declare function connect(url: string): Promise; //# sourceMappingURL=agent-client.d.ts.map