xdesign-vue-next
Version:
XDesign Component for vue-next
48 lines (47 loc) • 1.6 kB
TypeScript
import { TNodeReturnValue } from '../common';
import { TdBaseTableProps, TableExpandedRowParams, TableRowData, TdPrimaryTableProps, TdEnhancedTableProps, RowspanColspan, BaseTableCol } from './type';
export interface BaseTableProps extends TdBaseTableProps {
renderExpandedRow?: (params: TableExpandedRowParams<TableRowData>) => TNodeReturnValue;
onLeafColumnsChange?: (columns: BaseTableColumns) => void;
thDraggable?: boolean;
}
export declare type PrimaryTableProps = TdPrimaryTableProps;
export declare type EnhancedTableProps = TdEnhancedTableProps;
export declare type TableProps = PrimaryTableProps;
export declare type ThRowspanAndColspan = Map<any, RowspanColspan>;
export declare type BaseTableColumns = BaseTableCol<TableRowData>[];
export interface ColumnStickyLeftAndRight {
left: number[];
right: number[];
top: number[];
bottom?: number[];
}
export interface TableColFixedClasses {
left: string;
right: string;
lastLeft: string;
firstRight: string;
leftShadow: string;
rightShadow: string;
}
export interface TableRowFixedClasses {
top: string;
bottom: string;
firstBottom: string;
withoutBorderBottom: string;
}
export interface FixedColumnInfo {
left?: number;
right?: number;
top?: number;
bottom?: number;
parent?: FixedColumnInfo;
children?: string[];
width?: number;
height?: number;
col?: BaseTableCol;
index?: number;
lastLeftFixedCol?: boolean;
firstRightFixedCol?: boolean;
}
export declare type RowAndColFixedPosition = Map<string | number, FixedColumnInfo>;