import { Browser as PlaywrightBrowser } from "playwright"; import { BrowserContext, BrowserContextConfig } from "./context"; interface ProxySettings { server: string; bypass?: string; username?: string; password?: string; } export declare class BrowserConfig { headless: boolean; disableSecurity: boolean; extraChromiumArgs: string[]; chromeInstancePath?: string; userDataDir?: string; channel?: "chrome" | "msedge"; wssUrl?: string; cdpUrl?: string; proxy?: ProxySettings; newContextConfig: BrowserContextConfig; _forceKeepBrowserAlive: boolean; constructor(config?: Partial); } /** * 增强版Playwright浏览器 * * 这是一个持久性浏览器工厂,可以生成多个浏览器上下文。 * 建议每个应用程序只使用一个Browser实例(否则RAM使用量会增长)。 */ export declare class Browser { config: BrowserConfig; playwright: any | null; playwrightBrowser: PlaywrightBrowser | null; disableSecurityArgs: string[]; /** * 创建Browser实例 * @param config 浏览器配置 */ constructor(config?: BrowserConfig); newContext(config?: BrowserContextConfig): Promise; /** * 获取Playwright浏览器实例 */ getPlaywrightBrowser(): Promise; private _init; private _setupCdp; private _setupWss; private _setupBrowserWithInstance; /** * 设置标准浏览器 */ private _setupStandardBrowser; /** * 设置浏览器 */ private _setupBrowser; /** * 关闭浏览器 */ close(): Promise; } export {};