import { LoadingProps } from '../loading/index'; import type { ClassName } from '../common/common'; export interface TdBaseTableProps { bordered?: { type: BooleanConstructor; value?: boolean; }; cellEmptyContent?: { type: StringConstructor; value?: string; }; columns?: { type: ArrayConstructor; value?: Array>; }; data?: { type: ArrayConstructor; value?: Array; }; empty?: { type: StringConstructor; value?: string; }; fixedRows?: { type: ArrayConstructor; value?: Array; }; footerSummary?: { type: StringConstructor; value?: string; }; height?: { type: null; value?: string | number; }; loading?: { type: BooleanConstructor; value?: boolean; }; loadingProps?: { type: ObjectConstructor; value?: Partial; }; maxHeight?: { type: null; value?: string | number; }; rowKey: { type: StringConstructor; value?: string; required?: boolean; }; rowspanAndColspan?: { type: undefined; value?: TableRowspanAndColspanFunc; }; showHeader?: { type: BooleanConstructor; value?: boolean; }; stripe?: { type: BooleanConstructor; value?: boolean; }; tableContentWidth?: { type: StringConstructor; value?: string; }; tableLayout?: { type: StringConstructor; value?: 'auto' | 'fixed'; }; verticalAlign?: { type: StringConstructor; value?: 'top' | 'middle' | 'bottom'; }; } export interface BaseTableCol { align?: 'left' | 'right' | 'center'; cell?: string | ((params: BaseTableCellParams) => string); className?: TableColumnClassName | TableColumnClassName[]; colKey?: string; fixed?: 'left' | 'right'; minWidth?: string | number; width?: string | number; } export declare type TableRowspanAndColspanFunc = (params: BaseTableCellParams) => RowspanColspan; export interface RowspanColspan { colspan?: number; rowspan?: number; } export interface TableRowData { [key: string]: any; children?: TableRowData[]; } export interface BaseTableCellParams { row: T; rowIndex: number; col: BaseTableCol; colIndex: number; } export declare type TableColumnClassName = ClassName | ((context: CellData) => ClassName); export interface CellData extends BaseTableCellParams { type: 'th' | 'td'; } export declare type DataType = TableRowData;