import type { ChildProcess } from "node:child_process"; export interface ChromeDevToolsClient { send(method: string, params?: Record): Promise; close(): void; } export interface PrintUrlToPdfOptions { root: string; url: string; outPath: string; chrome?: string; waitForReady?: (client: ChromeDevToolsClient) => Promise; printOptions?: Record; debuggingPortBase?: number; debuggingPortRange?: number; profilePrefix?: string; } export interface EvaluateUrlWithChromeOptions { root: string; url: string; chrome?: string; evaluate: (client: ChromeDevToolsClient) => Promise; emulatedMedia?: "screen" | "print" | "none"; debuggingPortBase?: number; debuggingPortRange?: number; profilePrefix?: string; } export function printUrlToPdf(options: PrintUrlToPdfOptions): Promise; export function evaluateUrlWithChrome(options: EvaluateUrlWithChromeOptions): Promise; export function waitForPrintReady(client: ChromeDevToolsClient): Promise; export function stopChildProcess(child: ChildProcess): Promise;