import { Table, type ParagraphChild } from "docx"; import type { BlockBorders, BlockLayout, DocxBlock, RunTypography } from "./types.js"; export declare function visibleCellBorders(borders?: BlockBorders): { top: { style: "none"; size: number; color: string; } | { style: "single"; size: number; color: string; space: number; }; right: { style: "none"; size: number; color: string; } | { style: "single"; size: number; color: string; space: number; }; bottom: { style: "none"; size: number; color: string; } | { style: "single"; size: number; color: string; space: number; }; left: { style: "none"; size: number; color: string; } | { style: "single"; size: number; color: string; space: number; }; }; /** Multi-side borders break OOXML element order on Paragraph — use a table wrapper instead. */ export declare function shouldUseBorderedTable(layout: BlockLayout): boolean; /** Shaded blocks with borders use a table cell — paragraph border + shading order is fragile. */ export declare function needsShadedTableWrapper(layout: BlockLayout): boolean; export declare function makeBorderedTableBlock(runs: ParagraphChild[], layout: BlockLayout, typography: RunTypography): Table; /** Single-border shaded block (e.g. border-left callout) — table cell for fill + border. */ export declare function makeShadedBlockTable(runs: ParagraphChild[], layout: BlockLayout, typography?: RunTypography): Table; /** One cell, borderless table — continuous background for block children inside a shaded `