import { Key } from 'react'; import { DataTableColumnsType, DataTableRenderExpandedRow, DataTableRowType, DataTableSelectableRows } from './types'; export interface UseTableColumnsProps { columns: DataTableColumnsType; } /** * 컬럼/그룹 컬럼을 평탄화해 colgroup 렌더용 `{ id?, width?, minWidth? }` 배열로 반환한다. * - 그룹 컬럼은 하위 컬럼으로 펼치고, 일반 컬럼은 그대로 매핑한다. */ export declare function getColGroup({ columns, }: UseTableColumnsProps): Array<{ id?: string; width?: number; minWidth?: number; }>; export declare function getGroupColumns({ columns }: UseTableColumnsProps): DataTableColumnsType; export declare function getFlattenColumns({ columns, }: UseTableColumnsProps): DataTableColumnsType; interface GetTotalColumnCountProps extends UseTableColumnsProps { selectableRows?: DataTableSelectableRows; expandableButton?: boolean; renderExpandedRow?: DataTableRenderExpandedRow; } export declare function getTotalColumnCount({ columns, selectableRows, expandableButton, renderExpandedRow, }: GetTotalColumnCountProps): number; export declare function getFixedMergeColumn(columns: DataTableColumnsType, selectableRows: boolean, columnCount: number, renderExpandedRow: boolean): number; export declare function defaultRowSelectionKeyExtractor(row: DataTableRowType): Key; export declare function defaultRowKeyExtractor(row: DataTableRowType, rowIndex: number): Key; export {};