import { Browser, BrowserContext, BrowserContextOptions, LaunchOptions } from "playwright";
export type BrowserOptions = ({
    instance: Browser;
} | {
    cdp: string;
} | {
    launchOptions?: LaunchOptions;
}) & {
    contextOptions?: BrowserContextOptions;
};
export declare class BrowserProvider {
    private activeBrowsers;
    private logger;
    private constructor();
    static getInstance(): BrowserProvider;
    private _launchOrReuseBrowser;
    _createAndTrackContext(options: BrowserOptions): Promise<BrowserContext>;
    newContext(options?: BrowserOptions): Promise<BrowserContext>;
    private _applyEmulationSettings;
}
