xdesign-vue-next
Version:
XDesign Component for vue-next
584 lines (583 loc) • 25.1 kB
TypeScript
/// <reference types="sortablejs" />
import { h } from 'vue';
import { PrimaryTableCol, TableRowData } from './type';
import { PageInfo } from '../pagination';
export { BASE_TABLE_ALL_EVENTS } from './base-table';
declare const _default: import("vue").DefineComponent<{
asyncLoading: {
type: import("vue").PropType<"loading" | ((h: typeof h) => import("..").SlotReturnValue) | "load-more">;
};
columnController: {
type: import("vue").PropType<import("./type").TableColumnController>;
};
columnControllerVisible: {
type: BooleanConstructor;
default: any;
};
defaultColumnControllerVisible: {
type: BooleanConstructor;
default: any;
};
columns: {
type: import("vue").PropType<PrimaryTableCol<TableRowData>[]>;
default: () => PrimaryTableCol<TableRowData>[];
};
displayColumns: {
type: import("vue").PropType<import("..").CheckboxGroupValue>;
default: import("..").CheckboxGroupValue;
};
defaultDisplayColumns: {
type: import("vue").PropType<import("..").CheckboxGroupValue>;
};
dragSort: {
type: import("vue").PropType<"col" | "row" | "row-handler" | "row-handler-col" | "drag-col">;
validator(val: "col" | "row" | "row-handler" | "row-handler-col" | "drag-col"): boolean;
};
dragSortOptions: {
type: import("vue").PropType<import("sortablejs").SortableOptions>;
};
editableCellState: {
type: import("vue").PropType<import("./type").EditableCellType<TableRowData>>;
};
editableRowKeys: {
type: import("vue").PropType<(string | number)[]>;
};
expandIcon: {
type: import("vue").PropType<boolean | ((h: typeof h, props: import("./type").ExpandArrowRenderParams<TableRowData>) => import("..").SlotReturnValue)>;
default: boolean | ((h: typeof h, props: import("./type").ExpandArrowRenderParams<TableRowData>) => import("..").SlotReturnValue);
};
expandOnRowClick: BooleanConstructor;
expandedRow: {
type: import("vue").PropType<(h: typeof h, props: import("./type").TableExpandedRowParams<TableRowData>) => import("..").SlotReturnValue>;
};
expandedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: (string | number)[];
};
defaultExpandedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: () => (string | number)[];
};
filterIcon: {
type: import("vue").PropType<(h: typeof h, props: {
col: PrimaryTableCol<TableRowData>;
colIndex: number;
}) => import("..").SlotReturnValue>;
};
filterRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
filterValue: {
type: import("vue").PropType<import("./type").FilterValue>;
default: import("./type").FilterValue;
};
defaultFilterValue: {
type: import("vue").PropType<import("./type").FilterValue>;
};
hideSortTips: BooleanConstructor;
indeterminateSelectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
};
multipleSort: BooleanConstructor;
reserveSelectedRowOnPaginate: {
type: BooleanConstructor;
default: boolean;
};
selectOnRowClick: BooleanConstructor;
selectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: (string | number)[];
};
defaultSelectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: () => (string | number)[];
};
showSortColumnBgColor: BooleanConstructor;
sort: {
type: import("vue").PropType<import("./type").TableSort>;
default: import("./type").TableSort;
};
defaultSort: {
type: import("vue").PropType<import("./type").TableSort>;
};
sortIcon: {
type: import("vue").PropType<(h: typeof h) => import("..").SlotReturnValue>;
};
sortOnRowDraggable: BooleanConstructor;
onAsyncLoadingClick: import("vue").PropType<(context: {
status: "loading" | "load-more";
}) => void>;
onCellClick: import("vue").PropType<(context: import("./type").PrimaryTableCellEventContext<TableRowData>) => void>;
onChange: import("vue").PropType<(data: import("./type").TableChangeData, context: import("./type").TableChangeContext<TableRowData>) => void>;
onColumnChange: import("vue").PropType<(context: import("./type").PrimaryTableColumnChange<TableRowData>) => void>;
onColumnControllerVisibleChange: import("vue").PropType<(visible: boolean, context: {
trigger: "cancel" | "confirm";
}) => void>;
onDataChange: import("vue").PropType<(data: TableRowData[], context: import("./type").TableDataChangeContext) => void>;
onDisplayColumnsChange: import("vue").PropType<(value: import("..").CheckboxGroupValue) => void>;
onDragSort: import("vue").PropType<(context: import("./type").DragSortContext<TableRowData>) => void>;
onExpandChange: import("vue").PropType<(expandedRowKeys: (string | number)[], options: import("./type").ExpandOptions<TableRowData>) => void>;
onFilterChange: import("vue").PropType<(filterValue: import("./type").FilterValue, context: {
col?: PrimaryTableCol<TableRowData>;
}) => void>;
onRowEdit: import("vue").PropType<(context: import("./type").PrimaryTableRowEditContext<TableRowData>) => void>;
onRowValidate: import("vue").PropType<(context: import("./type").PrimaryTableRowValidateContext<TableRowData>) => void>;
onSelectChange: import("vue").PropType<(selectedRowKeys: (string | number)[], options: import("./type").SelectOptions<TableRowData>) => void>;
onSortChange: import("vue").PropType<(sort: import("./type").TableSort, options: import("./type").SortOptions<TableRowData>) => void>;
onValidate: import("vue").PropType<(context: import("./type").PrimaryTableValidateContext) => void>;
allowResizeColumnWidth: {
type: BooleanConstructor;
default: any;
};
attach: {
type: import("vue").PropType<import("..").AttachNode>;
};
bordered: BooleanConstructor;
bottomContent: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
cellEmptyContent: {
type: import("vue").PropType<string | ((h: typeof h, props: import("./type").BaseTableCellParams<TableRowData>) => import("..").SlotReturnValue)>;
};
data: {
type: import("vue").PropType<TableRowData[]>;
default: () => TableRowData[];
};
disableDataPage: BooleanConstructor;
empty: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
default: string | ((h: typeof h) => import("..").SlotReturnValue);
};
firstFullRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
fixedRows: {
type: import("vue").PropType<number[]>;
};
footData: {
type: import("vue").PropType<TableRowData[]>;
default: () => TableRowData[];
};
footerAffixProps: {
type: import("vue").PropType<Partial<import("..").TdAffixProps>>;
};
footerAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
default: boolean | Partial<import("..").TdAffixProps>;
};
footerSummary: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
headerAffixProps: {
type: import("vue").PropType<Partial<import("..").TdAffixProps>>;
};
headerAffixedTop: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
default: boolean | Partial<import("..").TdAffixProps>;
};
height: {
type: import("vue").PropType<string | number>;
};
horizontalScrollAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
};
hover: BooleanConstructor;
lastFullRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
lazyLoad: BooleanConstructor;
loading: {
type: import("vue").PropType<boolean | ((h: typeof h) => import("..").SlotReturnValue)>;
default: boolean | ((h: typeof h) => import("..").SlotReturnValue);
};
loadingProps: {
type: import("vue").PropType<Partial<import("..").TdLoadingProps>>;
};
maxHeight: {
type: import("vue").PropType<string | number>;
};
pagination: {
type: import("vue").PropType<import("../pagination").TdPaginationProps>;
};
paginationAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
};
resizable: BooleanConstructor;
rowAttributes: {
type: import("vue").PropType<import("./type").TableRowAttributes<TableRowData>>;
};
rowClassName: {
type: import("vue").PropType<import("..").ClassName | ((params: import("./type").RowClassNameParams<TableRowData>) => import("..").ClassName)>;
};
rowKey: {
type: StringConstructor;
default: string;
required: boolean;
};
rowspanAndColspan: {
type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
};
rowspanAndColspanInFooter: {
type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
};
scroll: {
type: import("vue").PropType<import("..").TScroll>;
};
showHeader: {
type: BooleanConstructor;
default: boolean;
};
size: {
type: import("vue").PropType<import("..").SizeEnum>;
default: import("..").SizeEnum;
validator(val: import("..").SizeEnum): boolean;
};
stripe: BooleanConstructor;
tableContentWidth: {
type: StringConstructor;
default: string;
};
tableLayout: {
type: import("vue").PropType<"fixed" | "auto">;
default: "fixed" | "auto";
validator(val: "fixed" | "auto"): boolean;
};
topContent: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
verticalAlign: {
type: import("vue").PropType<"top" | "bottom" | "middle">;
default: "top" | "bottom" | "middle";
validator(val: "top" | "bottom" | "middle"): boolean;
};
onColumnResizeChange: import("vue").PropType<(context: {
columnsWidth: {
[colKey: string]: number;
};
}) => void>;
onPageChange: import("vue").PropType<(pageInfo: PageInfo, newDataSource: TableRowData[]) => void>;
onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onScroll: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
onScrollX: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
onScrollY: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
asyncLoading: {
type: import("vue").PropType<"loading" | ((h: typeof h) => import("..").SlotReturnValue) | "load-more">;
};
columnController: {
type: import("vue").PropType<import("./type").TableColumnController>;
};
columnControllerVisible: {
type: BooleanConstructor;
default: any;
};
defaultColumnControllerVisible: {
type: BooleanConstructor;
default: any;
};
columns: {
type: import("vue").PropType<PrimaryTableCol<TableRowData>[]>;
default: () => PrimaryTableCol<TableRowData>[];
};
displayColumns: {
type: import("vue").PropType<import("..").CheckboxGroupValue>;
default: import("..").CheckboxGroupValue;
};
defaultDisplayColumns: {
type: import("vue").PropType<import("..").CheckboxGroupValue>;
};
dragSort: {
type: import("vue").PropType<"col" | "row" | "row-handler" | "row-handler-col" | "drag-col">;
validator(val: "col" | "row" | "row-handler" | "row-handler-col" | "drag-col"): boolean;
};
dragSortOptions: {
type: import("vue").PropType<import("sortablejs").SortableOptions>;
};
editableCellState: {
type: import("vue").PropType<import("./type").EditableCellType<TableRowData>>;
};
editableRowKeys: {
type: import("vue").PropType<(string | number)[]>;
};
expandIcon: {
type: import("vue").PropType<boolean | ((h: typeof h, props: import("./type").ExpandArrowRenderParams<TableRowData>) => import("..").SlotReturnValue)>;
default: boolean | ((h: typeof h, props: import("./type").ExpandArrowRenderParams<TableRowData>) => import("..").SlotReturnValue);
};
expandOnRowClick: BooleanConstructor;
expandedRow: {
type: import("vue").PropType<(h: typeof h, props: import("./type").TableExpandedRowParams<TableRowData>) => import("..").SlotReturnValue>;
};
expandedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: (string | number)[];
};
defaultExpandedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: () => (string | number)[];
};
filterIcon: {
type: import("vue").PropType<(h: typeof h, props: {
col: PrimaryTableCol<TableRowData>;
colIndex: number;
}) => import("..").SlotReturnValue>;
};
filterRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
filterValue: {
type: import("vue").PropType<import("./type").FilterValue>;
default: import("./type").FilterValue;
};
defaultFilterValue: {
type: import("vue").PropType<import("./type").FilterValue>;
};
hideSortTips: BooleanConstructor;
indeterminateSelectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
};
multipleSort: BooleanConstructor;
reserveSelectedRowOnPaginate: {
type: BooleanConstructor;
default: boolean;
};
selectOnRowClick: BooleanConstructor;
selectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: (string | number)[];
};
defaultSelectedRowKeys: {
type: import("vue").PropType<(string | number)[]>;
default: () => (string | number)[];
};
showSortColumnBgColor: BooleanConstructor;
sort: {
type: import("vue").PropType<import("./type").TableSort>;
default: import("./type").TableSort;
};
defaultSort: {
type: import("vue").PropType<import("./type").TableSort>;
};
sortIcon: {
type: import("vue").PropType<(h: typeof h) => import("..").SlotReturnValue>;
};
sortOnRowDraggable: BooleanConstructor;
onAsyncLoadingClick: import("vue").PropType<(context: {
status: "loading" | "load-more";
}) => void>;
onCellClick: import("vue").PropType<(context: import("./type").PrimaryTableCellEventContext<TableRowData>) => void>;
onChange: import("vue").PropType<(data: import("./type").TableChangeData, context: import("./type").TableChangeContext<TableRowData>) => void>;
onColumnChange: import("vue").PropType<(context: import("./type").PrimaryTableColumnChange<TableRowData>) => void>;
onColumnControllerVisibleChange: import("vue").PropType<(visible: boolean, context: {
trigger: "cancel" | "confirm";
}) => void>;
onDataChange: import("vue").PropType<(data: TableRowData[], context: import("./type").TableDataChangeContext) => void>;
onDisplayColumnsChange: import("vue").PropType<(value: import("..").CheckboxGroupValue) => void>;
onDragSort: import("vue").PropType<(context: import("./type").DragSortContext<TableRowData>) => void>;
onExpandChange: import("vue").PropType<(expandedRowKeys: (string | number)[], options: import("./type").ExpandOptions<TableRowData>) => void>;
onFilterChange: import("vue").PropType<(filterValue: import("./type").FilterValue, context: {
col?: PrimaryTableCol<TableRowData>;
}) => void>;
onRowEdit: import("vue").PropType<(context: import("./type").PrimaryTableRowEditContext<TableRowData>) => void>;
onRowValidate: import("vue").PropType<(context: import("./type").PrimaryTableRowValidateContext<TableRowData>) => void>;
onSelectChange: import("vue").PropType<(selectedRowKeys: (string | number)[], options: import("./type").SelectOptions<TableRowData>) => void>;
onSortChange: import("vue").PropType<(sort: import("./type").TableSort, options: import("./type").SortOptions<TableRowData>) => void>;
onValidate: import("vue").PropType<(context: import("./type").PrimaryTableValidateContext) => void>;
allowResizeColumnWidth: {
type: BooleanConstructor;
default: any;
};
attach: {
type: import("vue").PropType<import("..").AttachNode>;
};
bordered: BooleanConstructor;
bottomContent: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
cellEmptyContent: {
type: import("vue").PropType<string | ((h: typeof h, props: import("./type").BaseTableCellParams<TableRowData>) => import("..").SlotReturnValue)>;
};
data: {
type: import("vue").PropType<TableRowData[]>;
default: () => TableRowData[];
};
disableDataPage: BooleanConstructor;
empty: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
default: string | ((h: typeof h) => import("..").SlotReturnValue);
};
firstFullRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
fixedRows: {
type: import("vue").PropType<number[]>;
};
footData: {
type: import("vue").PropType<TableRowData[]>;
default: () => TableRowData[];
};
footerAffixProps: {
type: import("vue").PropType<Partial<import("..").TdAffixProps>>;
};
footerAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
default: boolean | Partial<import("..").TdAffixProps>;
};
footerSummary: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
headerAffixProps: {
type: import("vue").PropType<Partial<import("..").TdAffixProps>>;
};
headerAffixedTop: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
default: boolean | Partial<import("..").TdAffixProps>;
};
height: {
type: import("vue").PropType<string | number>;
};
horizontalScrollAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
};
hover: BooleanConstructor;
lastFullRow: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
lazyLoad: BooleanConstructor;
loading: {
type: import("vue").PropType<boolean | ((h: typeof h) => import("..").SlotReturnValue)>;
default: boolean | ((h: typeof h) => import("..").SlotReturnValue);
};
loadingProps: {
type: import("vue").PropType<Partial<import("..").TdLoadingProps>>;
};
maxHeight: {
type: import("vue").PropType<string | number>;
};
pagination: {
type: import("vue").PropType<import("../pagination").TdPaginationProps>;
};
paginationAffixedBottom: {
type: import("vue").PropType<boolean | Partial<import("..").TdAffixProps>>;
};
resizable: BooleanConstructor;
rowAttributes: {
type: import("vue").PropType<import("./type").TableRowAttributes<TableRowData>>;
};
rowClassName: {
type: import("vue").PropType<import("..").ClassName | ((params: import("./type").RowClassNameParams<TableRowData>) => import("..").ClassName)>;
};
rowKey: {
type: StringConstructor;
default: string;
required: boolean;
};
rowspanAndColspan: {
type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
};
rowspanAndColspanInFooter: {
type: import("vue").PropType<import("./type").TableRowspanAndColspanFunc<TableRowData>>;
};
scroll: {
type: import("vue").PropType<import("..").TScroll>;
};
showHeader: {
type: BooleanConstructor;
default: boolean;
};
size: {
type: import("vue").PropType<import("..").SizeEnum>;
default: import("..").SizeEnum;
validator(val: import("..").SizeEnum): boolean;
};
stripe: BooleanConstructor;
tableContentWidth: {
type: StringConstructor;
default: string;
};
tableLayout: {
type: import("vue").PropType<"fixed" | "auto">;
default: "fixed" | "auto";
validator(val: "fixed" | "auto"): boolean;
};
topContent: {
type: import("vue").PropType<string | ((h: typeof h) => import("..").SlotReturnValue)>;
};
verticalAlign: {
type: import("vue").PropType<"top" | "bottom" | "middle">;
default: "top" | "bottom" | "middle";
validator(val: "top" | "bottom" | "middle"): boolean;
};
onColumnResizeChange: import("vue").PropType<(context: {
columnsWidth: {
[colKey: string]: number;
};
}) => void>;
onPageChange: import("vue").PropType<(pageInfo: PageInfo, newDataSource: TableRowData[]) => void>;
onRowClick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowDblclick: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMousedown: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseenter: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseleave: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseover: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onRowMouseup: import("vue").PropType<(context: import("./type").RowEventContext<TableRowData>) => void>;
onScroll: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
onScrollX: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
onScrollY: import("vue").PropType<(params: {
e: WheelEvent;
}) => void>;
}>>, {
sort: import("./type").TableSort;
data: TableRowData[];
columns: PrimaryTableCol<TableRowData>[];
tableLayout: "fixed" | "auto";
verticalAlign: "top" | "bottom" | "middle";
loading: boolean | ((h: typeof h) => import("..").SlotReturnValue);
size: import("..").SizeEnum;
empty: string | ((h: typeof h) => import("..").SlotReturnValue);
hover: boolean;
lazyLoad: boolean;
bordered: boolean;
stripe: boolean;
allowResizeColumnWidth: boolean;
disableDataPage: boolean;
footData: TableRowData[];
footerAffixedBottom: boolean | Partial<import("..").TdAffixProps>;
headerAffixedTop: boolean | Partial<import("..").TdAffixProps>;
resizable: boolean;
rowKey: string;
showHeader: boolean;
tableContentWidth: string;
columnControllerVisible: boolean;
defaultColumnControllerVisible: boolean;
displayColumns: import("..").CheckboxGroupValue;
expandIcon: boolean | ((h: typeof h, props: import("./type").ExpandArrowRenderParams<TableRowData>) => import("..").SlotReturnValue);
expandOnRowClick: boolean;
expandedRowKeys: (string | number)[];
defaultExpandedRowKeys: (string | number)[];
filterValue: import("./type").FilterValue;
hideSortTips: boolean;
multipleSort: boolean;
reserveSelectedRowOnPaginate: boolean;
selectOnRowClick: boolean;
selectedRowKeys: (string | number)[];
defaultSelectedRowKeys: (string | number)[];
showSortColumnBgColor: boolean;
sortOnRowDraggable: boolean;
}, {}>;
export default _default;