import { type ExportDocument } from './anamnesis-export'; export declare const PDF_MIME = "application/pdf"; export type PdfRgb = [number, number, number]; export interface PdfPalette { headerFill: PdfRgb; headerText: PdfRgb; bodyText: PdfRgb; mutedText: PdfRgb; zebraFill: PdfRgb; sectionFill: PdfRgb; } /** The document palette for the theme `scope` is rendered in. Pass the pattern * root; omit it and the fallback greys are used. */ export declare function pdfPalette(scope?: Element | null): PdfPalette; /** True when jsPDF can draw `text` with a built-in face — i.e. it will not be * silently re-encoded as UTF-16. */ export declare function isWinAnsiSafe(text: string): boolean; /** Respell the symbols a standard-14 face cannot draw. Applied at the writer * boundary, so the arrow survives on screen and in the spreadsheet. */ export declare function pdfSafeText(text: string): string; export interface PdfOptions { palette?: PdfPalette; /** Set the PDF's own open action so the viewer raises the print dialog. * This is what the Print item uses; a downloaded PDF leaves it off. */ autoPrint?: boolean; } /** The document as a paged PDF. jspdf + jspdf-autotable are dynamic-imported, * so neither ships to a consumer who never exports. */ export declare function toPdfBlob(document: ExportDocument, options?: PdfOptions): Promise; /** Download the document as a `.pdf`. */ export declare function downloadPdf(document: ExportDocument, options?: PdfOptions): Promise; /** Point an off-screen frame at the document with the print action armed, and * hand the object URL back so the caller can revoke it. `null` means there was * no frame or no `URL.createObjectURL` to build one with. */ export declare function printPdf(document: ExportDocument, frame: HTMLIFrameElement | null, options?: PdfOptions): Promise; //# sourceMappingURL=anamnesis-export-pdf.d.ts.map