import * as puppeteerCore from 'puppeteer-core'; import { Browser, Page, LaunchOptions, BrowserContext } from 'puppeteer-core'; import { BrowserLauncher, TestRunnerCoreConfig } from '@web/test-runner-core'; import { ChromeLauncherPage } from './ChromeLauncherPage.js'; interface CreateArgs { browser: Browser; config: TestRunnerCoreConfig; } export type CreateBrowserContextFn = (args: CreateArgs) => BrowserContext | Promise; export type CreatePageFn = (args: CreateArgs & { context: BrowserContext; }) => Promise; export declare class ChromeLauncher implements BrowserLauncher { name: string; type: string; concurrency?: number; private launchOptions; private customPuppeteer?; private createBrowserContextFn; private createPageFn; private config?; private testFiles?; private browser?; private browserContext?; private debugBrowser?; private debugBrowserContext?; private cachedExecutablePath?; private activePages; private activeDebugPages; private inactivePages; private __startBrowserPromise?; constructor(launchOptions: LaunchOptions, createBrowserContextFn: CreateBrowserContextFn, createPageFn: CreatePageFn, customPuppeteer?: typeof puppeteerCore, concurrency?: number); initialize(config: TestRunnerCoreConfig, testFiles: string[]): Promise; launchBrowser(options?: LaunchOptions): Promise; startBrowser(options?: LaunchOptions): Promise<{ browser: puppeteerCore.Browser; context: puppeteerCore.BrowserContext; }>; stop(): Promise; startSession(sessionId: string, url: string): Promise; isActive(sessionId: string): boolean; getBrowserUrl(sessionId: string): string; startDebugSession(sessionId: string, url: string): Promise; createNewPage(browser: Browser, context: BrowserContext): Promise; stopSession(sessionId: string): Promise; private getOrStartBrowser; getPage(sessionId: string): puppeteerCore.Page; } export {}; //# sourceMappingURL=ChromeLauncher.d.ts.map