UNPKG

puppeteer-core

Version:

A high-level API to control headless Chrome over the DevTools Protocol

96 lines 3.1 kB
import { launch } from '@puppeteer/browsers'; import type { Browser, BrowserCloseCallback } from '../api/Browser.js'; import { Connection } from '../cdp/Connection.js'; import type { SupportedBrowser } from '../common/SupportedBrowser.js'; import type { Viewport } from '../common/Viewport.js'; import type { ChromeReleaseChannel, LaunchOptions } from './LaunchOptions.js'; import type { PuppeteerNode } from './PuppeteerNode.js'; /** * @internal */ export interface ResolvedLaunchArgs { isTempUserDataDir: boolean; userDataDir: string; executablePath: string; args: string[]; } /** * Describes a launcher - a class that is able to create and launch a browser instance. * * @public */ export declare abstract class BrowserLauncher { #private; /** * @internal */ puppeteer: PuppeteerNode; /** * @internal */ constructor(puppeteer: PuppeteerNode, browser: SupportedBrowser); get browser(): SupportedBrowser; launch(options?: LaunchOptions): Promise<Browser>; abstract executablePath(channel?: ChromeReleaseChannel, validatePath?: boolean): string; abstract defaultArgs(object: LaunchOptions): string[]; /** * @internal */ protected abstract computeLaunchArguments(options: LaunchOptions): Promise<ResolvedLaunchArgs>; /** * @internal */ protected abstract cleanUserDataDir(path: string, opts: { isTemp: boolean; }): Promise<void>; /** * @internal */ protected closeBrowser(browserProcess: ReturnType<typeof launch>, cdpConnection?: Connection): Promise<void>; /** * @internal */ protected waitForPageTarget(browser: Browser, timeout: number): Promise<void>; /** * @internal */ protected createCdpSocketConnection(browserProcess: ReturnType<typeof launch>, opts: { timeout: number; protocolTimeout: number | undefined; slowMo: number; }): Promise<Connection>; /** * @internal */ protected createCdpPipeConnection(browserProcess: ReturnType<typeof launch>, opts: { timeout: number; protocolTimeout: number | undefined; slowMo: number; }): Promise<Connection>; /** * @internal */ protected createBiDiOverCdpBrowser(browserProcess: ReturnType<typeof launch>, connection: Connection, closeCallback: BrowserCloseCallback, opts: { defaultViewport: Viewport | null; acceptInsecureCerts?: boolean; }): Promise<Browser>; /** * @internal */ protected createBiDiBrowser(browserProcess: ReturnType<typeof launch>, closeCallback: BrowserCloseCallback, opts: { timeout: number; protocolTimeout: number | undefined; slowMo: number; defaultViewport: Viewport | null; acceptInsecureCerts?: boolean; }): Promise<Browser>; /** * @internal */ protected getProfilePath(): string; /** * @internal */ resolveExecutablePath(headless?: boolean | 'shell', validatePath?: boolean): string; } //# sourceMappingURL=BrowserLauncher.d.ts.map