/** * Table emitter. * * Compiles TableSpec nodes into w:tbl structures: table-level properties and * the column grid, then rows and cells. Cell content reuses the paragraph * emitter, and nested tables recurse through buildTable. Two invariants are * enforced by construction rather than checked after the fact: * * - every cell ends with a w:p (readers treat a cell whose last block is a * table as corrupt), and * - cell widths always come from somewhere deterministic — an explicit * widthTwips, or the sum of the grid columns the cell spans. */ import type { BlockSpec, TableSpec } from '../types.js'; import type { BlockEmitContext } from './emit-context.js'; /** * Build the w:tbl element for a table block. * * @conformance ECMA-376 edition 5, Part 1 § 17.4.37 * @conformance ECMA-376 edition 5, Part 1 § 17.4.59 * @conformance ECMA-376 edition 5, Part 1 § 17.4.48 */ export declare function buildTable(doc: Document, table: TableSpec, ctx?: BlockEmitContext): Element; /** Dispatch a block-level spec node to its emitter (cells hold both kinds). */ export declare function buildBlock(doc: Document, block: BlockSpec, ctx?: BlockEmitContext): Element; //# sourceMappingURL=table.d.ts.map