/** * Les options du plugin `tools.lightpanda`. * * @typedef {Object} ToolsLightpandaOptions * @prop {LightpandaServeOptions} [serveOptions] Les options de la fonction * `serve` de _lightpanda_. * @prop {boolean} [keepalive] La marque pour ne pas arrêter * l'exécutable de _lightpanda_ * après la fermeture du * navigateur. * @prop {AbortSignal} [signal] Le signal pour tuer * l'exécutable de _lightpanda_. */ /** * Crée un plugin pour se connecter à Lightpanda. * * @param {ToolsLightpandaOptions} [options] Les éventuelles options du plugin * `tools.lightpanda`. * @returns {Record>>} Les * crochets * du * plugin. * @see https://lightpanda.io/ * @see https://www.npmjs.com/package/@lightpanda/browser */ export default function utilsLightpandaPlugin(options?: ToolsLightpandaOptions): Record>>; /** * Les options du plugin `tools.lightpanda`. */ export type ToolsLightpandaOptions = { /** * Les options de la fonction * `serve` de _lightpanda_. */ serveOptions?: LightpandaServeOptions | undefined; /** * La marque pour ne pas arrêter * l'exécutable de _lightpanda_ * après la fermeture du * navigateur. */ keepalive?: boolean | undefined; /** * Le signal pour tuer * l'exécutable de _lightpanda_. */ signal?: AbortSignal | undefined; }; /** * Le type d'une instance de _lightpanda_. */ export type InstanceLightpanda = { /** * Le processus exécutant _lightpanda_. */ process: ChildProcess; /** * L'URL du serveur de _lightpanda_. */ wsEndpoint: string; /** * Le nombre de navigateurs utilisant * l'instance ; ou l'infini s'il ne faut pas * arrêter l'exécutable de _lightpanda_ après la * fermeture du navigateur. */ count: number; }; import type { LightpandaServeOptions } from "@lightpanda/browser"; import type { ChildProcess } from "node:child_process";