tdesign-vue
Version:
486 lines (485 loc) • 14.2 kB
TypeScript
import { PropType } from '@vue/composition-api';
import { RowAndColFixedPosition, ThRowspanAndColspan } from './interface';
import { BaseTableCol, TableRowData, TdBaseTableProps } from './type';
import { AttachNode } from '../common';
export interface TheadProps {
classPrefix?: string;
ellipsisOverlayClassName?: string;
isFixedHeader?: boolean;
maxHeight?: TdBaseTableProps['maxHeight'];
height?: TdBaseTableProps['height'];
rowAndColFixedPosition?: RowAndColFixedPosition;
thWidthList?: {
[colKey: string]: number;
};
bordered?: boolean;
isMultipleHeader?: boolean;
thDraggable?: boolean;
spansAndLeafNodes?: {
rowspanAndColspanMap: ThRowspanAndColspan;
leafColumns: BaseTableCol<TableRowData>[];
};
thList?: BaseTableCol<TableRowData>[][];
columnResizeParams?: {
onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
};
resizable?: Boolean;
attach?: AttachNode;
showColumnShadow?: {
left: boolean;
right: boolean;
};
}
declare const _default: import("vue").ComponentOptions<import("vue").default, import("@vue/composition-api").ShallowUnwrapRef<{
colspanSkipMap: import("@vue/composition-api").ComputedRef<{
[key: string]: boolean;
}>;
theadRef: import("@vue/composition-api").Ref<HTMLHeadElement>;
theadClasses: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
slots: Readonly<{
[name: string]: (...args: any[]) => import("vue").VNode[];
}>;
getTableNode: (thead: HTMLElement) => HTMLElement;
classPrefix: string;
tableBaseClass: {
table: (string | {
[x: string]: boolean;
})[];
columnResizableTable: string;
overflowVisible: string;
body: string;
content: string;
topContent: string;
bottomContent: string;
paginationWrap: string;
tdLastRow: string;
tdFirstCol: string;
thCellInner: string;
tableRowEdit: string;
cellEditable: string;
cellEditWrap: string;
bordered: string;
striped: string;
hover: string;
loading: string;
rowspanAndColspan: string;
empty: string;
emptyRow: string;
headerFixed: string;
columnFixed: string;
widthOverflow: string;
multipleHeader: string;
footerAffixed: string;
horizontalBarAffixed: string;
affixedHeader: string;
affixedHeaderElm: string;
affixedFooterElm: string;
affixedFooterWrap: string;
scrollbarDivider: string;
fullHeight: string;
resizeLine: string;
obviousScrollbar: string;
affixedHeaderWrap: string;
};
tdAlignClasses: {
left: string;
right: string;
center: string;
};
tableHeaderClasses: {
header: string;
thBordered: string;
fixed: string;
multipleHeader: string;
};
tableFooterClasses: {
footer: string;
footerSummary: string;
fixed: string;
};
tableAlignClasses: {
top: string;
middle: string;
bottom: string;
};
tableRowFixedClasses: {
top: string;
bottom: string;
firstBottom: string;
withoutBorderBottom: string;
};
tableColFixedClasses: {
left: string;
right: string;
lastLeft: string;
firstRight: string;
leftShadow: string;
rightShadow: string;
};
tableLayoutClasses: {
auto: string;
fixed: string;
};
tdEllipsisClass: string;
tableFullRowClasses: {
base: string;
innerFullRow: string;
innerFullElement: string;
firstFullRow: string;
lastFullRow: string;
};
tableExpandClasses: {
iconBox: string;
iconCell: string;
rowExpanded: string;
rowFolded: string;
row: string;
rowInner: string;
expanded: string;
collapsed: string;
};
tableSortClasses: {
sortable: string;
sortColumn: string;
title: string;
trigger: string;
doubleIcon: string;
sortIcon: string;
iconDirection: {
asc: string;
desc: string;
};
iconActive: string;
iconDefault: string;
};
tableSelectedClasses: {
selected: string;
disabled: string;
checkCell: string;
};
tableFilterClasses: {
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
iconWrap: string;
inputFilter: string;
};
asyncLoadingClass: string;
isFocusClass: string;
isLoadingClass: string;
isLoadMoreClass: string;
tableTreeClasses: {
col: string;
inlineCol: string;
icon: string;
leafNode: string;
};
tableDraggableClasses: {
rowDraggable: string;
rowHandlerDraggable: string;
colDraggable: string;
handle: string;
ghost: string;
chosen: string;
dragging: string;
dragSortTh: string;
};
virtualScrollClasses: {
cursor: string;
header: string;
};
positiveRotate90: string;
negativeRotate180: string;
}> & import("@vue/composition-api").Data, {}, {}, {
ellipsisOverlayClassName: StringConstructor;
isFixedHeader: BooleanConstructor;
thDraggable: BooleanConstructor;
maxHeight: PropType<string | number>;
height: PropType<string | number>;
rowAndColFixedPosition: PropType<RowAndColFixedPosition>;
thWidthList: PropType<{
[colKey: string]: number;
}>;
bordered: BooleanConstructor;
isMultipleHeader: BooleanConstructor;
resizable: BooleanConstructor;
spansAndLeafNodes: PropType<{
rowspanAndColspanMap: ThRowspanAndColspan;
leafColumns: BaseTableCol<TableRowData>[];
}>;
thList: PropType<BaseTableCol<TableRowData>[][]>;
columnResizeParams: PropType<{
onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
}>;
attach: PropType<AttachNode>;
showColumnShadow: PropType<{
left: boolean;
right: boolean;
}>;
}, import("@vue/composition-api").ExtractPropTypes<{
ellipsisOverlayClassName: StringConstructor;
isFixedHeader: BooleanConstructor;
thDraggable: BooleanConstructor;
maxHeight: PropType<string | number>;
height: PropType<string | number>;
rowAndColFixedPosition: PropType<RowAndColFixedPosition>;
thWidthList: PropType<{
[colKey: string]: number;
}>;
bordered: BooleanConstructor;
isMultipleHeader: BooleanConstructor;
resizable: BooleanConstructor;
spansAndLeafNodes: PropType<{
rowspanAndColspanMap: ThRowspanAndColspan;
leafColumns: BaseTableCol<TableRowData>[];
}>;
thList: PropType<BaseTableCol<TableRowData>[][]>;
columnResizeParams: PropType<{
onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
}>;
attach: PropType<AttachNode>;
showColumnShadow: PropType<{
left: boolean;
right: boolean;
}>;
}>> & Omit<import("vue").VueConstructor<import("vue").default>, never> & (new (...args: any[]) => import("@vue/composition-api").ComponentRenderProxy<{
bordered: boolean;
resizable: boolean;
thDraggable: boolean;
isFixedHeader: boolean;
isMultipleHeader: boolean;
} & {
height?: string | number;
maxHeight?: string | number;
attach?: AttachNode;
showColumnShadow?: {
left: boolean;
right: boolean;
};
ellipsisOverlayClassName?: string;
rowAndColFixedPosition?: RowAndColFixedPosition;
thWidthList?: {
[colKey: string]: number;
};
spansAndLeafNodes?: {
rowspanAndColspanMap: ThRowspanAndColspan;
leafColumns: BaseTableCol<TableRowData>[];
};
thList?: BaseTableCol<TableRowData>[][];
columnResizeParams?: {
onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
};
}, import("@vue/composition-api").ShallowUnwrapRef<{
colspanSkipMap: import("@vue/composition-api").ComputedRef<{
[key: string]: boolean;
}>;
theadRef: import("@vue/composition-api").Ref<HTMLHeadElement>;
theadClasses: import("@vue/composition-api").ComputedRef<(string | {
[x: string]: boolean;
})[]>;
slots: Readonly<{
[name: string]: (...args: any[]) => import("vue").VNode[];
}>;
getTableNode: (thead: HTMLElement) => HTMLElement;
classPrefix: string;
tableBaseClass: {
table: (string | {
[x: string]: boolean;
})[];
columnResizableTable: string;
overflowVisible: string;
body: string;
content: string;
topContent: string;
bottomContent: string;
paginationWrap: string;
tdLastRow: string;
tdFirstCol: string;
thCellInner: string;
tableRowEdit: string;
cellEditable: string;
cellEditWrap: string;
bordered: string;
striped: string;
hover: string;
loading: string;
rowspanAndColspan: string;
empty: string;
emptyRow: string;
headerFixed: string;
columnFixed: string;
widthOverflow: string;
multipleHeader: string;
footerAffixed: string;
horizontalBarAffixed: string;
affixedHeader: string;
affixedHeaderElm: string;
affixedFooterElm: string;
affixedFooterWrap: string;
scrollbarDivider: string;
fullHeight: string;
resizeLine: string;
obviousScrollbar: string;
affixedHeaderWrap: string;
};
tdAlignClasses: {
left: string;
right: string;
center: string;
};
tableHeaderClasses: {
header: string;
thBordered: string;
fixed: string;
multipleHeader: string;
};
tableFooterClasses: {
footer: string;
footerSummary: string;
fixed: string;
};
tableAlignClasses: {
top: string;
middle: string;
bottom: string;
};
tableRowFixedClasses: {
top: string;
bottom: string;
firstBottom: string;
withoutBorderBottom: string;
};
tableColFixedClasses: {
left: string;
right: string;
lastLeft: string;
firstRight: string;
leftShadow: string;
rightShadow: string;
};
tableLayoutClasses: {
auto: string;
fixed: string;
};
tdEllipsisClass: string;
tableFullRowClasses: {
base: string;
innerFullRow: string;
innerFullElement: string;
firstFullRow: string;
lastFullRow: string;
};
tableExpandClasses: {
iconBox: string;
iconCell: string;
rowExpanded: string;
rowFolded: string;
row: string;
rowInner: string;
expanded: string;
collapsed: string;
};
tableSortClasses: {
sortable: string;
sortColumn: string;
title: string;
trigger: string;
doubleIcon: string;
sortIcon: string;
iconDirection: {
asc: string;
desc: string;
};
iconActive: string;
iconDefault: string;
};
tableSelectedClasses: {
selected: string;
disabled: string;
checkCell: string;
};
tableFilterClasses: {
filterable: string;
popup: string;
icon: string;
popupContent: string;
result: string;
inner: string;
bottomButtons: string;
contentInner: string;
iconWrap: string;
inputFilter: string;
};
asyncLoadingClass: string;
isFocusClass: string;
isLoadingClass: string;
isLoadMoreClass: string;
tableTreeClasses: {
col: string;
inlineCol: string;
icon: string;
leafNode: string;
};
tableDraggableClasses: {
rowDraggable: string;
rowHandlerDraggable: string;
colDraggable: string;
handle: string;
ghost: string;
chosen: string;
dragging: string;
dragSortTh: string;
};
virtualScrollClasses: {
cursor: string;
header: string;
};
positiveRotate90: string;
negativeRotate180: string;
}>, import("@vue/composition-api").Data, {}, {}, {}, {}, {}, {
bordered: boolean;
resizable: boolean;
thDraggable: boolean;
isFixedHeader: boolean;
isMultipleHeader: boolean;
} & {
height?: string | number;
maxHeight?: string | number;
attach?: AttachNode;
showColumnShadow?: {
left: boolean;
right: boolean;
};
ellipsisOverlayClassName?: string;
rowAndColFixedPosition?: RowAndColFixedPosition;
thWidthList?: {
[colKey: string]: number;
};
spansAndLeafNodes?: {
rowspanAndColspanMap: ThRowspanAndColspan;
leafColumns: BaseTableCol<TableRowData>[];
};
thList?: BaseTableCol<TableRowData>[][];
columnResizeParams?: {
onColumnMouseover: (e: MouseEvent, col: BaseTableCol<TableRowData>) => void;
onColumnMousedown: (e: MouseEvent, col: BaseTableCol<TableRowData>, index: number) => void;
};
}, {
bordered: boolean;
resizable: boolean;
thDraggable: boolean;
isFixedHeader: boolean;
isMultipleHeader: boolean;
}, true>);
export default _default;