/** * Local browser watchdog for managing browser subprocess lifecycle * * Simplified TypeScript implementation that works with Playwright's browser management. * Handles browser process monitoring and cleanup. */ import { BaseWatchdog } from './base'; import { BrowserSession } from '../session'; import { BrowserLaunchEvent, BrowserKillEvent, BrowserStopEvent } from '../events-classes'; export interface LocalBrowserWatchdogConfig { enabled?: boolean; maxRetries?: number; } export declare class LocalBrowserWatchdog extends BaseWatchdog { static readonly LISTENS_TO: (typeof BrowserLaunchEvent)[]; static readonly EMITS: never[]; private browserPid; private ownsBrowserResources; private tempDirsToCleanup; private originalUserDataDir; constructor(browserSession: BrowserSession, config?: LocalBrowserWatchdogConfig); onBrowserLaunchEvent(event: BrowserLaunchEvent): Promise<{ cdpUrl: string; }>; onBrowserKillEvent(event: BrowserKillEvent): Promise; onBrowserStopEvent(event: BrowserStopEvent): Promise; private cleanupTempDirectories; private cleanupTempDir; private createTempUserDataDir; /** * Get the browser process ID if available */ getBrowserPid(): number | null; /** * Check if this watchdog owns the browser resources */ get ownsBrowser(): boolean; /** * Find a free port for debugging interface */ private static findFreePort; /** * Wait for CDP endpoint to be available */ private static waitForCdpUrl; cleanup(): Promise; } //# sourceMappingURL=localbrowser.d.ts.map