/** * @import { OptionPlugins } from "./ghost.js" */ /** * @typedef {import("playwright").Page} Page * @typedef {import("playwright").Frame} Frame * @typedef {import("playwright").BrowserContext} BrowserContext * @typedef {import("playwright").Browser} Browser * @typedef {import("playwright").Worker} Worker * @typedef {import("playwright").JSHandle} JSHandle * @typedef {import("playwright").ElementHandle} ElementHandle * @typedef {import("playwright").Locator} Locator * @typedef {import("playwright").CDPSession} CDPSession * @typedef {import("playwright").WebSocketRoute} WebSocketRoute * @typedef {import("playwright").Screencast} Screencast * @typedef {import("playwright").ElectronApplication} ElectronApplication * @typedef {import("playwright").AndroidElementInfo} AndroidElementInfo * @typedef {import("playwright").AndroidSelector} AndroidSelector * @typedef {import("playwright").AndroidKey} AndroidKey * @typedef {import("playwright").APIRequest} APIRequest * @typedef {import("playwright").APIRequestContext} APIRequestContext * @typedef {import("playwright").APIResponse} APIResponse * @typedef {import("playwright").BrowserServer} BrowserServer * @typedef {import("playwright").Clock} Clock * @typedef {import("playwright").ConsoleMessage} ConsoleMessage * @typedef {import("playwright").Coverage} Coverage * @typedef {import("playwright").Debugger} Debugger * @typedef {import("playwright").Dialog} Dialog * @typedef {import("playwright").Disposable} Disposable * @typedef {import("playwright").Download} Download * @typedef {import("playwright").FileChooser} FileChooser * @typedef {import("playwright").FrameLocator} FrameLocator * @typedef {import("playwright").Keyboard} Keyboard * @typedef {import("playwright").Logger} Logger * @typedef {import("playwright").Mouse} Mouse * @typedef {import("playwright").Request} Request * @typedef {import("playwright").Response} Response * @typedef {import("playwright").Route} Route * @typedef {import("playwright").Selectors} Selectors * @typedef {import("playwright").Touchscreen} Touchscreen * @typedef {import("playwright").Tracing} Tracing * @typedef {import("playwright").Video} Video * @typedef {import("playwright").WebError} WebError * @typedef {import("playwright").WebSocket} WebSocket * @typedef {import("playwright").Electron} Electron * @typedef {import("playwright").Android} Android * @typedef {import("playwright").AndroidDevice} AndroidDevice * @typedef {import("playwright").AndroidInput} AndroidInput * @typedef {import("playwright").AndroidSocket} AndroidSocket * @typedef {import("playwright").AndroidWebView} AndroidWebView * @typedef {import("playwright").LocatorScreenshotOptions} LocatorScreenshotOptions * @typedef {import("playwright").BrowserContextOptions} BrowserContextOptions * @typedef {import("playwright").ViewportSize} ViewportSize * @typedef {import("playwright").HTTPCredentials} HTTPCredentials * @typedef {import("playwright").Geolocation} Geolocation * @typedef {import("playwright").Cookie} Cookie * @typedef {import("playwright").PageScreenshotOptions} PageScreenshotOptions * @typedef {import("playwright").ChromiumBrowserContext} ChromiumBrowserContext * @typedef {import("playwright").ChromiumBrowser} ChromiumBrowser * @typedef {import("playwright").FirefoxBrowser} FirefoxBrowser * @typedef {import("playwright").WebKitBrowser} WebKitBrowser * @typedef {import("playwright").ChromiumCoverage} ChromiumCoverage */ /** * @typedef {Ghost} BrowserType */ /** * @typedef {import("playwright").LaunchOptions & OptionPlugins} LaunchOptions * @typedef {import("playwright").ConnectOverCDPOptions & OptionPlugins} ConnectOverCDPOptions * @typedef {import("playwright").ConnectOptions & OptionPlugins} ConnectOptions */ /** * @type {BrowserType} */ export const chromium: BrowserType; /** * @type {BrowserType} */ export const firefox: BrowserType; /** * @type {BrowserType} */ export const webkit: BrowserType; export const selectors: pw.Selectors; export const devices: { [key: string]: { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Blackberry PlayBook": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Blackberry PlayBook landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "BlackBerry Z30": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "BlackBerry Z30 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note 3": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note 3 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note II": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note II landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S III": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S III landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S8": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S8 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S9+": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S9+ landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S24": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S24 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy A55": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy A55 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S9": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S9 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 5)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 5) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 6)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 6) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 7)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 7) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 11)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 11) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Pro 11": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Pro 11 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE (3rd gen)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE (3rd gen) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone X": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone X landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone XR": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone XR landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Kindle Fire HDX": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Kindle Fire HDX landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "LG Optimus L70": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "LG Optimus L70 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 550": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 550 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 950": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 950 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 10": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 10 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5X": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5X landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6P": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6P landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia Lumia 520": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia Lumia 520 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia N9": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia N9 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 XL": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 XL landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 3": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 3 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4a (5G)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4a (5G) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Moto G4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Moto G4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Chrome HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Edge HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Firefox HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Safari": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Chrome": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Edge": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Firefox": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; }; export const errors: typeof pw.errors; export const request: pw.APIRequest; export const _electron: pw.Electron; export const _android: pw.Android; export default playwright; export type Page = import("playwright").Page; export type Frame = import("playwright").Frame; export type BrowserContext = import("playwright").BrowserContext; export type Browser = import("playwright").Browser; export type Worker = import("playwright").Worker; export type JSHandle = import("playwright").JSHandle; export type ElementHandle = import("playwright").ElementHandle; export type Locator = import("playwright").Locator; export type CDPSession = import("playwright").CDPSession; export type WebSocketRoute = import("playwright").WebSocketRoute; export type Screencast = import("playwright").Screencast; export type ElectronApplication = import("playwright").ElectronApplication; export type AndroidElementInfo = import("playwright").AndroidElementInfo; export type AndroidSelector = import("playwright").AndroidSelector; export type AndroidKey = import("playwright").AndroidKey; export type APIRequest = import("playwright").APIRequest; export type APIRequestContext = import("playwright").APIRequestContext; export type APIResponse = import("playwright").APIResponse; export type BrowserServer = import("playwright").BrowserServer; export type Clock = import("playwright").Clock; export type ConsoleMessage = import("playwright").ConsoleMessage; export type Coverage = import("playwright").Coverage; export type Debugger = import("playwright").Debugger; export type Dialog = import("playwright").Dialog; export type Disposable = import("playwright").Disposable; export type Download = import("playwright").Download; export type FileChooser = import("playwright").FileChooser; export type FrameLocator = import("playwright").FrameLocator; export type Keyboard = import("playwright").Keyboard; export type Logger = import("playwright").Logger; export type Mouse = import("playwright").Mouse; export type Request = import("playwright").Request; export type Response = import("playwright").Response; export type Route = import("playwright").Route; export type Selectors = import("playwright").Selectors; export type Touchscreen = import("playwright").Touchscreen; export type Tracing = import("playwright").Tracing; export type Video = import("playwright").Video; export type WebError = import("playwright").WebError; export type WebSocket = import("playwright").WebSocket; export type Electron = import("playwright").Electron; export type Android = import("playwright").Android; export type AndroidDevice = import("playwright").AndroidDevice; export type AndroidInput = import("playwright").AndroidInput; export type AndroidSocket = import("playwright").AndroidSocket; export type AndroidWebView = import("playwright").AndroidWebView; export type LocatorScreenshotOptions = import("playwright").LocatorScreenshotOptions; export type BrowserContextOptions = import("playwright").BrowserContextOptions; export type ViewportSize = import("playwright").ViewportSize; export type HTTPCredentials = import("playwright").HTTPCredentials; export type Geolocation = import("playwright").Geolocation; export type Cookie = import("playwright").Cookie; export type PageScreenshotOptions = import("playwright").PageScreenshotOptions; export type ChromiumBrowserContext = import("playwright").ChromiumBrowserContext; export type ChromiumBrowser = import("playwright").ChromiumBrowser; export type FirefoxBrowser = import("playwright").FirefoxBrowser; export type WebKitBrowser = import("playwright").WebKitBrowser; export type ChromiumCoverage = import("playwright").ChromiumCoverage; export type BrowserType = Ghost; export type LaunchOptions = import("playwright").LaunchOptions & OptionPlugins; export type ConnectOverCDPOptions = import("playwright").ConnectOverCDPOptions & OptionPlugins; export type ConnectOptions = import("playwright").ConnectOptions & OptionPlugins; import pw from "playwright"; declare const playwright: { chromium: BrowserType; firefox: BrowserType; webkit: BrowserType; errors: typeof pw.errors; devices: { [key: string]: { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Blackberry PlayBook": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Blackberry PlayBook landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "BlackBerry Z30": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "BlackBerry Z30 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note 3": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note 3 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note II": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Note II landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S III": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S III landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S8": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S8 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S9+": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S9+ landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S24": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy S24 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy A55": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy A55 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S9": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Galaxy Tab S9 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 5)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 5) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 6)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 6) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 7)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 7) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 11)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad (gen 11) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Pro 11": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPad Pro 11 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 6 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 7 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 8 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE (3rd gen)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone SE (3rd gen) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone X": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone X landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone XR": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone XR landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 11 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 12 Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Mini": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 13 Mini landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 14 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Plus": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Plus landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro Max": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "iPhone 15 Pro Max landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Kindle Fire HDX": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Kindle Fire HDX landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "LG Optimus L70": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "LG Optimus L70 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 550": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 550 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 950": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Microsoft Lumia 950 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 10": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 10 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5X": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 5X landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6P": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 6P landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nexus 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia Lumia 520": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia Lumia 520 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia N9": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Nokia N9 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 XL": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 2 XL landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 3": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 3 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4a (5G)": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 4a (5G) landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 5": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 5 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 7": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Pixel 7 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Moto G4": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Moto G4 landscape": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Chrome HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Edge HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Firefox HiDPI": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Safari": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Chrome": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Edge": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; "Desktop Firefox": { viewport: pw.ViewportSize; userAgent: string; deviceScaleFactor: number; isMobile: boolean; hasTouch: boolean; defaultBrowserType: "chromium" | "firefox" | "webkit"; }; }; _electron: pw.Electron; _android: pw.Android; request: pw.APIRequest; selectors: pw.Selectors; }; import Ghost from "./ghost.js"; import type { OptionPlugins } from "./ghost.js";