import { type BrowserContext } from "playwright"; export declare function getBrowserCacheDir(): string; export declare function getSystemChromePath(): string | null; export declare function getDownloadedChromiumPath(): string | null; export declare function isSystemChrome(browserPath: string | null): boolean; export declare function getChromeProfileDir(chromeRoot: string): string | null; export declare function supportsSystemChromeCookieImport(): boolean; export declare function importChromeCookies(userDataDir: string, browserPath: string | null): void; export declare function resolveBrowserPath(): string; /** * The pid still holding a Chromium profile, or null when nothing holds it. * * Chromium writes `SingletonLock` as a symlink whose target is * `-`, and the hostname itself may contain dashes, so only the * final segment is the pid. A lock pointing at a dead process is stale. */ export declare function readProfileLockOwner(lockPath: string, isRunning?: (pid: number) => boolean): number | null; /** * The major version of the browser at `browserPath`, or null when it cannot * be read. `--version` prints e.g. `Google Chrome 153.0.8010.48`; on Windows * it prints nothing, so an undetectable version is an expected outcome. */ export declare function readBrowserMajorVersion(browserPath: string | null, readVersion?: (executable: string) => string): number | null; /** * The user agent to present, or undefined to leave the browser's own. * * Headless Chromium announces itself as `HeadlessChrome`, which sites block, * so the user agent is overridden. The override must carry the version of the * browser actually running: sites that enforce a supported-browser floor * (Slack answers 403 "your browser is not supported") reject a stale one, and * a version that disagrees with the client hints is itself a bot signal. The * string follows Chrome's reduced format, where only the major version varies. */ export declare function buildUserAgent(majorVersion: number | null, headless: boolean, platform?: NodeJS.Platform): string | undefined; export declare function launchPersistentContext(userDataDir: string, headless: boolean, browserPath: string | null): Promise; export declare function getDefaultUserDataDir(slug: string): string; //# sourceMappingURL=browser.d.ts.map