import { o as ColumnDef } from "./types-Cqk1_BXq.cjs"; import { a as ExportViewEntry, i as ExportTable, s as ExportWriter } from "./exportWriter-ox6HPQq3.cjs"; //#region src/export/printLayout.d.ts /** Paper the print stylesheet asks the browser for. */ type PrintPageSize = "a4" | "a4-landscape" | "letter" | "letter-landscape"; /** How groups meet a page boundary. */ type PrintPageBreak = "auto" | "group"; /** Options for the printable document and the print dialog. */ interface PrintLayoutOptions { /** Document title and table caption. */ title?: string; /** Visible caption when it should differ from {@link PrintLayoutOptions.title}. */ caption?: string; /** `lang` on `` when the host knows it. */ lang?: string; /** * Layout direction. Omit it and a browser document inherits * `document.documentElement.dir`, so print matches what the reader sees. */ direction?: "ltr" | "rtl"; /** * Paper size. Defaults to A4 landscape — tables are wide, and a portrait * page clips columns a landscape one still holds. */ pageSize?: PrintPageSize; /** * `"auto"` (default) keeps a group together when it fits and never forces * a page per group. `"group"` starts each top-level group on a new page. */ pageBreak?: PrintPageBreak; /** * A font for the printed document, as the file's bytes. * * The browser already has fonts and shapes text with them, so print * needs nothing here to render Arabic or Chinese correctly — unlike the * PDF writer's `font` option, which is what makes those scripts * possible at all in a downloaded file. Supply it when the printed page * has to match the PDF exactly, or when the machine doing the printing * cannot be assumed to have a face for the script. * * It is embedded whole, as an `@font-face` the document carries with * it. Nothing is subset: the browser needs every glyph it might shape. */ font?: Uint8Array | ArrayBuffer; } /** * The print stylesheet: repeating headers, row/group keep-together, and * column widths the table already decided. * * @param options - Paper size, page-break behaviour, and a font to embed. * @returns A CSS string, ready for a `