import EventEmitter from 'node:events'; import { PuppeteerLaunchOptions, Browser, Page, PDFOptions } from 'puppeteer'; export { Browser, PDFOptions, Page, PuppeteerLaunchOptions } from 'puppeteer'; interface PrinterOptions { debug?: boolean; headless?: PuppeteerLaunchOptions["headless"]; allowLocal?: boolean; allowRemote?: boolean; outlineTags?: string[]; additionalScripts?: string[]; allowedPaths?: string[]; allowedDomains?: string[]; ignoreHTTPSErrors?: boolean; browserEndpoint?: string; browserArgs?: string[]; timeout?: number; emulateMedia?: string; additionalStyles?: string[]; enableWarnings?: boolean; outlineContainerSelector?: string; } declare class Printer extends EventEmitter { private debug; private headless; private allowLocal; private outlineTags; private allowRemote; private additionalScripts; private allowedPaths; private allowedDomains; private ignoreHTTPSErrors; private browserWSEndpoint?; private browserArgs; private timeout; private emulateMedia; private additionalStyles; private enableWarnings; private pages; private browser?; private outlineContainerSelector; content?: string; constructor(options?: PrinterOptions); setup(puppeteerLaunchOptions?: PuppeteerLaunchOptions): Promise; createNewPage(input: string): Promise; render(input: string): Promise; pdf(input: string, options?: PDFOptions, pageContainerSelector?: string): Promise; html(input: string): Promise; closePage(input: string): Promise; closeBrowser(): Promise; needsAllowedRules(): boolean; withinAllowedPath(pathname: string): boolean; isAllowedDomain(domain: string): boolean; } export { Printer, type PrinterOptions };