import type { TableColumn, TableData, TableOptionsArg } from '../type'; import type { SpanCollector } from './cell-span'; export type HeaderCell = { colspan: number; rowspan: number; depth: number; isLeaf: boolean; original: TableColumn; fixed: 'none' | 'left' | 'right'; indexPath: number[]; presetWidth?: number; presetMinWidth?: number; left?: number; right?: number; }; export type BodyCell = { original: TableColumn; fixed: 'none' | 'left' | 'right'; }; export declare function buildHeaderRows(columns: TableColumn[]): { columns: TableColumn[]; maxDepth: number; headerRows: HeaderCell[][]; leafColumns: BodyCell[]; }; export declare const EMPTY_COL: { key: symbol; }; export type BodyCellWrapper = { cell: BodyCell; spanData: { colspan?: number; rowspan?: number; }; originColIndex: number; originRowIndex: number; presetWidth?: number; presetMinWidth?: number; left?: number; right?: number; }; export declare const buildCommonRows: (cellDataArr: BodyCell[], data: TableData[], spanCollector: SpanCollector, spanMethod?: ({ rowIndex, colIndex, record, column }: TableOptionsArg) => void | { colspan?: number; rowspan?: number; } | null) => BodyCellWrapper[][]; export declare const getMinWidthOfTable: (cellRow: BodyCell[]) => number;