export type BrowserSessionMode = 'fresh' | 'persistent' | 'existing'; export interface PageHandle { id: string; url?: string; title?: string; } export interface BrowserStatus { mode: BrowserSessionMode; state: string; profile: string; execution: string; } export interface BrowserSession { readonly mode: BrowserSessionMode; ensureReady(): Promise; openPage(url: string): Promise; listPages(): Promise; closePage(page: PageHandle): Promise; requestVisibleBrowser(reason: string): Promise; getStatus(): Promise; shutdown(): Promise; } export declare class BrowserAuthRequired extends Error { readonly provider: string; readonly url?: string; constructor(options: { provider: string; url?: string; message?: string; }); } export type PersistentExecutionMode = 'headless' | 'headed-background'; export type PersistentState = 'UNINITIALIZED' | 'SETUP_REQUIRED' | 'SETUP_HEADFUL' | 'READY' | 'AUTOMATING_HEADLESS' | 'AUTOMATING_HEADFUL' | 'REAUTH_REQUIRED' | 'REAUTH_HEADFUL'; export interface PersistentBrowserMetadata { initialized: boolean; profilePath: string; lastSuccessfulMode?: 'headless' | 'headed'; lastBootstrapAt?: string; } export interface SiteBrowserPreference { origin: string; executionMode: PersistentExecutionMode; } export interface BrowserCapabilityRequest { persistence?: boolean; authentication?: string; visibility?: 'prefer-headless' | 'require-headless' | 'allow-visible'; supportsExisting?: boolean; } //# sourceMappingURL=session.d.ts.map