/** * Fantôme d'un `BrowserType` de Playwright (pour y ajouter des plugins). * * @template {BrowserTypeLight} BrowserType Le type du `BrowserType` de * Playwright. */ export default class Ghost { /** * Crée une version fantôme d'un `BrowserType` de Playwright * * @param {BrowserType} browserType `BrowserType` vanille de Playwright. */ constructor(browserType: BrowserType); /** * Associe un `Browser` fantôme à une instance de navigateur créée via * `BrowserType.launchServer()`. * * @param {string} wsEndpoint Point de terminaison WebSocket de l'instance du navigateur. * @param {Parameters[1] & OptionPlugins} [options] Options de connexion. * @returns {Promise>} Promesse contenant * la version fantôme * du `Browser`. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-connect */ connect(wsEndpoint: string, options?: Parameters[1] & OptionPlugins): Promise>; /** * Associe un `Browser` fantôme à une instance de navigateur en utilisant le * _Chrome DevTools Protocol_ (_CDP_). * * @param {string} wsEndpoint Point de terminaison CDP WebSocket ou URL HTTP de l'instance du navigateur. * @param {Parameters[1] & OptionPlugins} [options] Options de connexion. * @returns {Promise>} Promesse * contenant * la version * fantôme du * `Browser`. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-connect-over-cdp */ connectOverCDP(wsEndpoint: string, options?: Parameters[1] & OptionPlugins): Promise>; /** * Récupère le chemin de l'exécutable du navigateur. * * @returns {string} Chemin de l'exécutable. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-executable-path */ executablePath(): string; /** * Lance une version fantôme d'un `Browser` de Playwright. * * @param {Parameters[0] & OptionPlugins} [options] Options de création d'un `Browser`. * @returns {Promise>} Promesse contenant * la version fantôme * du `Browser`. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-launch */ launch(options?: Parameters[0] & OptionPlugins): Promise>; /** * Lance une version fantôme d'un `BrowserContext` de Playwright. * * @param {string} userDataDir Chemin vers le répertoire des données de session. * @param {Parameters[1] & OptionPlugins} [options] Options de création d'un `Browser` et de son `BrowserContext`. * @returns {Promise>} Promesse * contenant * la * version * fantôme * du * `BrowserContext`. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-launch-persistent-context */ launchPersistentContext(userDataDir: string, options?: Parameters[1] & OptionPlugins): Promise>; /** * Lance un serveur fantôme de Playwright. * * @param {Parameters[0] & OptionPlugins} [options] Options de création d'un `BrowserServer`. * @returns {Promise>} Promesse * contenant la * version * fantôme * du * `BrowserServer`. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-launch-server */ launchServer(options?: Parameters[0] & OptionPlugins): Promise>; /** * Retourne le nom du type de navigateur. Par exemple : `chromium`, `webkit` * ou `firefox`. * * @returns {string} Nom du type de navigateur. * @see https://playwright.dev/docs/api/class-browsertype#browser-type-name */ name(): string; #private; } export type BrowserTypeLight = { /** * La méthode `BrowserType.connect()`. */ connect: (wsEndpoint: string, options?: Record) => Promise; /** * La méthode `BrowserType.connectOverCDP()`. */ connectOverCDP: (wsEndpoint: string, options?: Record) => Promise; /** * La méthode `BrowserType.executablePath()`. */ executablePath: () => string; /** * La méthode `BrowserType.launch()`. */ launch: (options?: Record) => Promise; /** * La méthode `BrowserType.launchPersistentContext()`. */ launchPersistentContext: (userDataDir: string, options?: Record) => Promise; /** * La méthode `BrowserType.launchServer()`. */ launchServer: (options?: Record) => Promise; /** * La méthode `BrowserType.name()`. */ name: () => string; }; /** * Option pour les plugins qui sera ajouté aux options des méthodes. */ export type OptionPlugins = { /** * Liste des plugins. */ plugins?: (Object | Promise)[] | undefined; };