import type { Browser, BrowserContext, Page } from 'playwright'; import type { BrowserConfig } from '../types.js'; export declare class BrowserLauncher { private readonly config; private browser; private readonly sessions; private launchPromise; private launchFailure; private shutdownComplete; constructor(config: BrowserConfig); private clearLaunchFailure; private latchLaunchFailure; ensureBrowser(): Promise; isBrowserActive(): boolean; ensureContext(sessionId: string): Promise; ensurePage(sessionId: string): Promise; getPage(sessionId: string): Page | undefined; renderHtml(url: string, opts: { timeoutMs: number; waitUntil: 'load' | 'domcontentloaded' | 'networkidle'; signal?: AbortSignal; requestGuard?: (url: string) => Promise; }): Promise<{ html: string; finalUrl: string; httpStatus: number | null; }>; getConsoleErrorCount(sessionId: string): number; getLastHttpStatus(sessionId: string): number | null; hasOpenDialog(sessionId: string): boolean; dismissDialog(sessionId: string, accept?: boolean): Promise; closeSession(sessionId: string): Promise; shutdown(): Promise; activeSessions(): number; private contextOptions; private loadStorageState; private saveStorageState; }