import { ChildProcess } from 'child_process'; /** * Finds an unused port dynamically on localhost. */ export declare function getFreePort(): Promise; export interface BrowserInfo { name: string; path: string; type: 'chrome' | 'edge' | 'brave' | 'chromium'; } /** * Detects chromium-based browsers installed on the system. */ export declare function getAvailableBrowsers(): BrowserInfo[]; /** * Creates a clean temporary directory for the browser profile. */ export declare function createTempProfileDir(): string; /** * Launches a browser in the background with remote debugging enabled. */ export declare function launchBrowser(browserPath: string, port: number, tempDir: string, startUrl?: string): ChildProcess; /** * Connects to the browser via CDP on the given port and waits for the REVEL_SESSION cookie. */ export declare function waitForLoginCookie(port: number, childProc?: ChildProcess, timeoutMs?: number): Promise;