/**
 * XLSX converter — licenses report.
 *
 * Produces the 15-column spreadsheet format common to enterprise BOM
 * artifacts (a per-row dependency listing with license + version
 * columns). Header text is byte-identical to the reference sheet,
 * including the quirky `"Component  Name"` double-space and
 * `"Component version "` trailing-space.
 *
 * Drop-in replacement: a reviewer who previously received the hand-built
 * sheet can open a dxkit-generated one and see the same column layout,
 * now with up to 10 columns mechanically populated (vs the 7 a
 * hand-built sheet typically fills). The remaining 5 columns are either
 * vulnerability-derived (11, 12, 13 — filled by `vyuh-dxkit bom`) or
 * human workflow state (5, 14).
 *
 * Status column (5) auto-fills with `"Reported YYYY-MM-DD"` from
 * `report.analyzedAt` — a freshness stamp the reviewer overwrites when
 * they make a fix/accept decision. Strictly additive over the customer's
 * current sheet, which leaves col 5 blank.
 */
import type { LicensesReport } from '../licenses/types';
/**
 * The 15 canonical column headers in benchmark order. Text is preserved
 * byte-identically (note `"Component  Name"` has two spaces and
 * `"Component version "` has a trailing space). Downstream Excel
 * formulas the customer may have referencing these headers stay valid.
 */
export declare const BOM_COLUMNS: ReadonlyArray<string>;
/**
 * Render a `LicensesReport` as an XLSX workbook and return the serialized
 * bytes. Sort is alphabetical by package so repeat runs produce
 * diff-stable output.
 *
 * The return type is `Buffer` for consumers (CLI's writeFileSync).
 * exceljs's `writeBuffer` returns `ArrayBuffer`-ish; wrap in
 * `Buffer.from` at the boundary.
 */
export declare function toLicensesXlsx(report: LicensesReport): Promise<Buffer>;
//# sourceMappingURL=licenses.d.ts.map