@arco-design/web-vue
Version:
Arco Design Vue 2.0: A Vue.js 3 UI Library
1,075 lines (1,074 loc) • 48.7 kB
TypeScript
import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _Table from './table';
import _Thead from './table-thead';
import _Tbody from './table-tbody';
import _Tr from './table-tr';
import _Th from './table-th';
import _Td from './table-td';
import _Column from './table-column';
declare const Table: {
new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
columns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
data: {
type: import("vue").PropType<import("./interface").TableData[]>;
default: () => never[];
};
bordered: {
type: import("vue").PropType<boolean | import("./interface").TableBorder>;
default: boolean;
};
hoverable: {
type: BooleanConstructor;
default: boolean;
};
stripe: {
type: BooleanConstructor;
default: boolean;
};
size: {
type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
default: () => "mini" | "small" | "medium" | "large";
};
tableLayoutFixed: {
type: BooleanConstructor;
default: boolean;
};
loading: {
type: (BooleanConstructor | ObjectConstructor)[];
default: boolean;
};
rowSelection: {
type: import("vue").PropType<import("./interface").TableRowSelection>;
};
expandable: {
type: import("vue").PropType<import("./interface").TableExpandable>;
};
scroll: {
type: import("vue").PropType<{
x?: string | number | undefined;
y?: string | number | undefined;
minWidth?: string | number | undefined;
maxHeight?: string | number | undefined;
}>;
};
pagination: {
type: import("vue").PropType<boolean | import("..").PaginationProps>;
default: boolean;
};
pagePosition: {
type: import("vue").PropType<"br" | "tr" | "top" | "bottom" | "tl" | "bl">;
default: string;
};
indentSize: {
type: NumberConstructor;
default: number;
};
rowKey: {
type: StringConstructor;
default: string;
};
showHeader: {
type: BooleanConstructor;
default: boolean;
};
virtualListProps: {
type: import("vue").PropType<import("../_components/virtual-list-v2/interface").VirtualListProps>;
};
spanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
spanAll: {
type: BooleanConstructor;
default: boolean;
};
components: {
type: import("vue").PropType<import("./interface").TableComponents>;
};
loadMore: {
type: import("vue").PropType<(record: import("./interface").TableData, done: (children?: import("./interface").TableData[] | undefined) => void) => void>;
};
filterIconAlignLeft: {
type: BooleanConstructor;
default: boolean;
};
hideExpandButtonOnEmpty: {
type: BooleanConstructor;
default: boolean;
};
rowClass: {
type: import("vue").PropType<string | any[] | Record<string, any> | ((record: import("./interface").TableData, rowIndex: number) => any)>;
};
draggable: {
type: import("vue").PropType<import("./interface").TableDraggable>;
};
rowNumber: {
type: (BooleanConstructor | ObjectConstructor)[];
};
columnResizable: {
type: BooleanConstructor;
};
summary: {
type: import("vue").PropType<boolean | ((params: {
columns: import("./interface").TableColumnData[];
data: import("./interface").TableData[];
}) => import("./interface").TableData[])>;
};
summaryText: {
type: StringConstructor;
default: string;
};
summarySpanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
selectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultSelectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
expandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandAllRows: {
type: BooleanConstructor;
default: boolean;
};
stickyHeader: {
type: (BooleanConstructor | NumberConstructor)[];
default: boolean;
};
scrollbar: {
type: import("vue").PropType<boolean | import("..").ScrollbarProps>;
default: boolean;
};
showEmptyTree: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
onChange?: ((data: import("./interface").TableData[], extra: import("./interface").TableChangeExtra, currentData: import("./interface").TableData[]) => any) | undefined;
onSelect?: ((rowKeys: (string | number)[], rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onPageChange?: ((page: number) => any) | undefined;
onPageSizeChange?: ((pageSize: number) => any) | undefined;
"onUpdate:selectedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
"onUpdate:expandedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
onExpand?: ((rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onExpandedChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSelectAll?: ((checked: boolean) => any) | undefined;
onSelectionChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSorterChange?: ((dataIndex: string, direction: string) => any) | undefined;
onFilterChange?: ((dataIndex: string, filteredValues: string[]) => any) | undefined;
onCellMouseEnter?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellMouseLeave?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellClick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowClick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onHeaderClick?: ((column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onColumnResize?: ((dataIndex: string, width: number) => any) | undefined;
onRowDblclick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellDblclick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowContextmenu?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellContextmenu?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
}>, {
render: () => import("vue/jsx-runtime").JSX.Element;
selfExpand: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], expanded?: boolean) => void;
selfExpandAll: (expanded?: boolean) => void;
selfSelect: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], checked?: boolean) => void;
selfSelectAll: (checked?: boolean) => void;
selfResetFilters: (dataIndex?: string | string[] | undefined) => void;
selfClearFilters: (dataIndex?: string | string[] | undefined) => void;
selfResetSorters: () => void;
selfClearSorters: () => void;
}, {}, {}, {
selectAll(checked?: boolean | undefined): void;
select(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
expandAll(checked?: boolean | undefined): void;
expand(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
resetFilters(dataIndex?: string | string[] | undefined): void;
clearFilters(dataIndex?: string | string[] | undefined): void;
resetSorters(): void;
clearSorters(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'update:selectedKeys': (rowKeys: (string | number)[]) => true;
'update:expandedKeys': (rowKeys: (string | number)[]) => true;
expand: (rowKey: string | number, record: import("./interface").TableData) => true;
expandedChange: (rowKeys: (string | number)[]) => true;
select: (rowKeys: (string | number)[], rowKey: string | number, record: import("./interface").TableData) => true;
selectAll: (checked: boolean) => true;
selectionChange: (rowKeys: (string | number)[]) => true;
sorterChange: (dataIndex: string, direction: string) => true;
filterChange: (dataIndex: string, filteredValues: string[]) => true;
pageChange: (page: number) => true;
pageSizeChange: (pageSize: number) => true;
change: (data: import("./interface").TableData[], extra: import("./interface").TableChangeExtra, currentData: import("./interface").TableData[]) => true;
cellMouseEnter: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
cellMouseLeave: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
cellClick: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
rowClick: (record: import("./interface").TableData, ev: Event) => true;
headerClick: (column: import("./interface").TableColumnData, ev: Event) => true;
columnResize: (dataIndex: string, width: number) => true;
rowDblclick: (record: import("./interface").TableData, ev: Event) => true;
cellDblclick: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
rowContextmenu: (record: import("./interface").TableData, ev: Event) => true;
cellContextmenu: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
}, import("vue").PublicProps, {
size: "mini" | "small" | "medium" | "large";
data: import("./interface").TableData[];
loading: boolean | Record<string, any>;
bordered: boolean | import("./interface").TableBorder;
scrollbar: boolean | import("..").ScrollbarProps;
columns: import("./interface").TableColumnData[];
hoverable: boolean;
stripe: boolean;
tableLayoutFixed: boolean;
pagination: boolean | import("..").PaginationProps;
pagePosition: "br" | "tr" | "top" | "bottom" | "tl" | "bl";
indentSize: number;
rowKey: string;
showHeader: boolean;
spanAll: boolean;
filterIconAlignLeft: boolean;
hideExpandButtonOnEmpty: boolean;
columnResizable: boolean;
summaryText: string;
defaultExpandAllRows: boolean;
stickyHeader: number | boolean;
showEmptyTree: boolean;
}, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<import("vue").ExtractPropTypes<{
columns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
data: {
type: import("vue").PropType<import("./interface").TableData[]>;
default: () => never[];
};
bordered: {
type: import("vue").PropType<boolean | import("./interface").TableBorder>;
default: boolean;
};
hoverable: {
type: BooleanConstructor;
default: boolean;
};
stripe: {
type: BooleanConstructor;
default: boolean;
};
size: {
type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
default: () => "mini" | "small" | "medium" | "large";
};
tableLayoutFixed: {
type: BooleanConstructor;
default: boolean;
};
loading: {
type: (BooleanConstructor | ObjectConstructor)[];
default: boolean;
};
rowSelection: {
type: import("vue").PropType<import("./interface").TableRowSelection>;
};
expandable: {
type: import("vue").PropType<import("./interface").TableExpandable>;
};
scroll: {
type: import("vue").PropType<{
x?: string | number | undefined;
y?: string | number | undefined;
minWidth?: string | number | undefined;
maxHeight?: string | number | undefined;
}>;
};
pagination: {
type: import("vue").PropType<boolean | import("..").PaginationProps>;
default: boolean;
};
pagePosition: {
type: import("vue").PropType<"br" | "tr" | "top" | "bottom" | "tl" | "bl">;
default: string;
};
indentSize: {
type: NumberConstructor;
default: number;
};
rowKey: {
type: StringConstructor;
default: string;
};
showHeader: {
type: BooleanConstructor;
default: boolean;
};
virtualListProps: {
type: import("vue").PropType<import("../_components/virtual-list-v2/interface").VirtualListProps>;
};
spanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
spanAll: {
type: BooleanConstructor;
default: boolean;
};
components: {
type: import("vue").PropType<import("./interface").TableComponents>;
};
loadMore: {
type: import("vue").PropType<(record: import("./interface").TableData, done: (children?: import("./interface").TableData[] | undefined) => void) => void>;
};
filterIconAlignLeft: {
type: BooleanConstructor;
default: boolean;
};
hideExpandButtonOnEmpty: {
type: BooleanConstructor;
default: boolean;
};
rowClass: {
type: import("vue").PropType<string | any[] | Record<string, any> | ((record: import("./interface").TableData, rowIndex: number) => any)>;
};
draggable: {
type: import("vue").PropType<import("./interface").TableDraggable>;
};
rowNumber: {
type: (BooleanConstructor | ObjectConstructor)[];
};
columnResizable: {
type: BooleanConstructor;
};
summary: {
type: import("vue").PropType<boolean | ((params: {
columns: import("./interface").TableColumnData[];
data: import("./interface").TableData[];
}) => import("./interface").TableData[])>;
};
summaryText: {
type: StringConstructor;
default: string;
};
summarySpanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
selectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultSelectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
expandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandAllRows: {
type: BooleanConstructor;
default: boolean;
};
stickyHeader: {
type: (BooleanConstructor | NumberConstructor)[];
default: boolean;
};
scrollbar: {
type: import("vue").PropType<boolean | import("..").ScrollbarProps>;
default: boolean;
};
showEmptyTree: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
onChange?: ((data: import("./interface").TableData[], extra: import("./interface").TableChangeExtra, currentData: import("./interface").TableData[]) => any) | undefined;
onSelect?: ((rowKeys: (string | number)[], rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onPageChange?: ((page: number) => any) | undefined;
onPageSizeChange?: ((pageSize: number) => any) | undefined;
"onUpdate:selectedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
"onUpdate:expandedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
onExpand?: ((rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onExpandedChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSelectAll?: ((checked: boolean) => any) | undefined;
onSelectionChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSorterChange?: ((dataIndex: string, direction: string) => any) | undefined;
onFilterChange?: ((dataIndex: string, filteredValues: string[]) => any) | undefined;
onCellMouseEnter?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellMouseLeave?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellClick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowClick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onHeaderClick?: ((column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onColumnResize?: ((dataIndex: string, width: number) => any) | undefined;
onRowDblclick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellDblclick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowContextmenu?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellContextmenu?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
}>, {
render: () => import("vue/jsx-runtime").JSX.Element;
selfExpand: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], expanded?: boolean) => void;
selfExpandAll: (expanded?: boolean) => void;
selfSelect: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], checked?: boolean) => void;
selfSelectAll: (checked?: boolean) => void;
selfResetFilters: (dataIndex?: string | string[] | undefined) => void;
selfClearFilters: (dataIndex?: string | string[] | undefined) => void;
selfResetSorters: () => void;
selfClearSorters: () => void;
}, {}, {}, {
selectAll(checked?: boolean | undefined): void;
select(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
expandAll(checked?: boolean | undefined): void;
expand(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
resetFilters(dataIndex?: string | string[] | undefined): void;
clearFilters(dataIndex?: string | string[] | undefined): void;
resetSorters(): void;
clearSorters(): void;
}, {
size: "mini" | "small" | "medium" | "large";
data: import("./interface").TableData[];
loading: boolean | Record<string, any>;
bordered: boolean | import("./interface").TableBorder;
scrollbar: boolean | import("..").ScrollbarProps;
columns: import("./interface").TableColumnData[];
hoverable: boolean;
stripe: boolean;
tableLayoutFixed: boolean;
pagination: boolean | import("..").PaginationProps;
pagePosition: "br" | "tr" | "top" | "bottom" | "tl" | "bl";
indentSize: number;
rowKey: string;
showHeader: boolean;
spanAll: boolean;
filterIconAlignLeft: boolean;
hideExpandButtonOnEmpty: boolean;
columnResizable: boolean;
summaryText: string;
defaultExpandAllRows: boolean;
stickyHeader: number | boolean;
showEmptyTree: boolean;
}>;
__isFragment?: undefined;
__isTeleport?: undefined;
__isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
columns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
data: {
type: import("vue").PropType<import("./interface").TableData[]>;
default: () => never[];
};
bordered: {
type: import("vue").PropType<boolean | import("./interface").TableBorder>;
default: boolean;
};
hoverable: {
type: BooleanConstructor;
default: boolean;
};
stripe: {
type: BooleanConstructor;
default: boolean;
};
size: {
type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
default: () => "mini" | "small" | "medium" | "large";
};
tableLayoutFixed: {
type: BooleanConstructor;
default: boolean;
};
loading: {
type: (BooleanConstructor | ObjectConstructor)[];
default: boolean;
};
rowSelection: {
type: import("vue").PropType<import("./interface").TableRowSelection>;
};
expandable: {
type: import("vue").PropType<import("./interface").TableExpandable>;
};
scroll: {
type: import("vue").PropType<{
x?: string | number | undefined;
y?: string | number | undefined;
minWidth?: string | number | undefined;
maxHeight?: string | number | undefined;
}>;
};
pagination: {
type: import("vue").PropType<boolean | import("..").PaginationProps>;
default: boolean;
};
pagePosition: {
type: import("vue").PropType<"br" | "tr" | "top" | "bottom" | "tl" | "bl">;
default: string;
};
indentSize: {
type: NumberConstructor;
default: number;
};
rowKey: {
type: StringConstructor;
default: string;
};
showHeader: {
type: BooleanConstructor;
default: boolean;
};
virtualListProps: {
type: import("vue").PropType<import("../_components/virtual-list-v2/interface").VirtualListProps>;
};
spanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
spanAll: {
type: BooleanConstructor;
default: boolean;
};
components: {
type: import("vue").PropType<import("./interface").TableComponents>;
};
loadMore: {
type: import("vue").PropType<(record: import("./interface").TableData, done: (children?: import("./interface").TableData[] | undefined) => void) => void>;
};
filterIconAlignLeft: {
type: BooleanConstructor;
default: boolean;
};
hideExpandButtonOnEmpty: {
type: BooleanConstructor;
default: boolean;
};
rowClass: {
type: import("vue").PropType<string | any[] | Record<string, any> | ((record: import("./interface").TableData, rowIndex: number) => any)>;
};
draggable: {
type: import("vue").PropType<import("./interface").TableDraggable>;
};
rowNumber: {
type: (BooleanConstructor | ObjectConstructor)[];
};
columnResizable: {
type: BooleanConstructor;
};
summary: {
type: import("vue").PropType<boolean | ((params: {
columns: import("./interface").TableColumnData[];
data: import("./interface").TableData[];
}) => import("./interface").TableData[])>;
};
summaryText: {
type: StringConstructor;
default: string;
};
summarySpanMethod: {
type: import("vue").PropType<(data: {
record: import("./interface").TableData;
column: import("./interface").TableColumnData | import("./interface").TableOperationColumn;
rowIndex: number;
columnIndex: number;
}) => void | {
rowspan?: number | undefined;
colspan?: number | undefined;
}>;
};
selectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultSelectedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
expandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandedKeys: {
type: import("vue").PropType<(string | number)[]>;
};
defaultExpandAllRows: {
type: BooleanConstructor;
default: boolean;
};
stickyHeader: {
type: (BooleanConstructor | NumberConstructor)[];
default: boolean;
};
scrollbar: {
type: import("vue").PropType<boolean | import("..").ScrollbarProps>;
default: boolean;
};
showEmptyTree: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
onChange?: ((data: import("./interface").TableData[], extra: import("./interface").TableChangeExtra, currentData: import("./interface").TableData[]) => any) | undefined;
onSelect?: ((rowKeys: (string | number)[], rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onPageChange?: ((page: number) => any) | undefined;
onPageSizeChange?: ((pageSize: number) => any) | undefined;
"onUpdate:selectedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
"onUpdate:expandedKeys"?: ((rowKeys: (string | number)[]) => any) | undefined;
onExpand?: ((rowKey: string | number, record: import("./interface").TableData) => any) | undefined;
onExpandedChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSelectAll?: ((checked: boolean) => any) | undefined;
onSelectionChange?: ((rowKeys: (string | number)[]) => any) | undefined;
onSorterChange?: ((dataIndex: string, direction: string) => any) | undefined;
onFilterChange?: ((dataIndex: string, filteredValues: string[]) => any) | undefined;
onCellMouseEnter?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellMouseLeave?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onCellClick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowClick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onHeaderClick?: ((column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onColumnResize?: ((dataIndex: string, width: number) => any) | undefined;
onRowDblclick?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellDblclick?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
onRowContextmenu?: ((record: import("./interface").TableData, ev: Event) => any) | undefined;
onCellContextmenu?: ((record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => any) | undefined;
}>, {
render: () => import("vue/jsx-runtime").JSX.Element;
selfExpand: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], expanded?: boolean) => void;
selfExpandAll: (expanded?: boolean) => void;
selfSelect: (rowKey: import("../_utils/types").BaseType | import("../_utils/types").BaseType[], checked?: boolean) => void;
selfSelectAll: (checked?: boolean) => void;
selfResetFilters: (dataIndex?: string | string[] | undefined) => void;
selfClearFilters: (dataIndex?: string | string[] | undefined) => void;
selfResetSorters: () => void;
selfClearSorters: () => void;
}, {}, {}, {
selectAll(checked?: boolean | undefined): void;
select(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
expandAll(checked?: boolean | undefined): void;
expand(rowKey: string | number | (string | number)[], checked?: boolean | undefined): void;
resetFilters(dataIndex?: string | string[] | undefined): void;
clearFilters(dataIndex?: string | string[] | undefined): void;
resetSorters(): void;
clearSorters(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'update:selectedKeys': (rowKeys: (string | number)[]) => true;
'update:expandedKeys': (rowKeys: (string | number)[]) => true;
expand: (rowKey: string | number, record: import("./interface").TableData) => true;
expandedChange: (rowKeys: (string | number)[]) => true;
select: (rowKeys: (string | number)[], rowKey: string | number, record: import("./interface").TableData) => true;
selectAll: (checked: boolean) => true;
selectionChange: (rowKeys: (string | number)[]) => true;
sorterChange: (dataIndex: string, direction: string) => true;
filterChange: (dataIndex: string, filteredValues: string[]) => true;
pageChange: (page: number) => true;
pageSizeChange: (pageSize: number) => true;
change: (data: import("./interface").TableData[], extra: import("./interface").TableChangeExtra, currentData: import("./interface").TableData[]) => true;
cellMouseEnter: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
cellMouseLeave: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
cellClick: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
rowClick: (record: import("./interface").TableData, ev: Event) => true;
headerClick: (column: import("./interface").TableColumnData, ev: Event) => true;
columnResize: (dataIndex: string, width: number) => true;
rowDblclick: (record: import("./interface").TableData, ev: Event) => true;
cellDblclick: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
rowContextmenu: (record: import("./interface").TableData, ev: Event) => true;
cellContextmenu: (record: import("./interface").TableData, column: import("./interface").TableColumnData, ev: Event) => true;
}, string, {
size: "mini" | "small" | "medium" | "large";
data: import("./interface").TableData[];
loading: boolean | Record<string, any>;
bordered: boolean | import("./interface").TableBorder;
scrollbar: boolean | import("..").ScrollbarProps;
columns: import("./interface").TableColumnData[];
hoverable: boolean;
stripe: boolean;
tableLayoutFixed: boolean;
pagination: boolean | import("..").PaginationProps;
pagePosition: "br" | "tr" | "top" | "bottom" | "tl" | "bl";
indentSize: number;
rowKey: string;
showHeader: boolean;
spanAll: boolean;
filterIconAlignLeft: boolean;
hideExpandButtonOnEmpty: boolean;
columnResizable: boolean;
summaryText: string;
defaultExpandAllRows: boolean;
stickyHeader: number | boolean;
showEmptyTree: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
Thead: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
Tbody: import("vue").DefineComponent<{}, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
Tr: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
expand: {
type: BooleanConstructor;
};
empty: {
type: BooleanConstructor;
};
checked: {
type: BooleanConstructor;
};
rowIndex: NumberConstructor;
record: {
type: import("vue").PropType<import("./interface").TableDataWithRaw>;
default: () => {};
};
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
expand: {
type: BooleanConstructor;
};
empty: {
type: BooleanConstructor;
};
checked: {
type: BooleanConstructor;
};
rowIndex: NumberConstructor;
record: {
type: import("vue").PropType<import("./interface").TableDataWithRaw>;
default: () => {};
};
}>> & Readonly<{}>, {
empty: boolean;
expand: boolean;
checked: boolean;
record: import("./interface").TableDataWithRaw;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
Th: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
column: {
type: import("vue").PropType<import("./interface").TableColumnData>;
default: () => {};
};
operations: {
type: import("vue").PropType<import("./interface").TableOperationColumn[]>;
default: () => never[];
};
dataColumns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
resizable: BooleanConstructor;
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
column: {
type: import("vue").PropType<import("./interface").TableColumnData>;
default: () => {};
};
operations: {
type: import("vue").PropType<import("./interface").TableOperationColumn[]>;
default: () => never[];
};
dataColumns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
resizable: BooleanConstructor;
}>> & Readonly<{}>, {
column: import("./interface").TableColumnData;
operations: import("./interface").TableOperationColumn[];
dataColumns: import("./interface").TableColumnData[];
resizable: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
Td: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
rowIndex: NumberConstructor;
record: {
type: import("vue").PropType<import("./interface").TableDataWithRaw>;
default: () => {};
};
column: {
type: import("vue").PropType<import("./interface").TableColumnData>;
default: () => {};
};
type: {
type: import("vue").PropType<"normal" | "checkbox" | "radio" | "expand" | "operation">;
default: string;
};
operations: {
type: import("vue").PropType<import("./interface").TableOperationColumn[]>;
default: () => never[];
};
dataColumns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
colSpan: {
type: NumberConstructor;
default: number;
};
rowSpan: {
type: NumberConstructor;
default: number;
};
isFixedExpand: {
type: BooleanConstructor;
default: boolean;
};
containerWidth: {
type: NumberConstructor;
};
showExpandBtn: {
type: BooleanConstructor;
default: boolean;
};
indentSize: {
type: NumberConstructor;
default: number;
};
renderExpandBtn: {
type: import("vue").PropType<(record: import("./interface").TableDataWithRaw, stopPropagation?: boolean | undefined) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>>;
};
summary: {
type: BooleanConstructor;
default: boolean;
};
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
rowIndex: NumberConstructor;
record: {
type: import("vue").PropType<import("./interface").TableDataWithRaw>;
default: () => {};
};
column: {
type: import("vue").PropType<import("./interface").TableColumnData>;
default: () => {};
};
type: {
type: import("vue").PropType<"normal" | "checkbox" | "radio" | "expand" | "operation">;
default: string;
};
operations: {
type: import("vue").PropType<import("./interface").TableOperationColumn[]>;
default: () => never[];
};
dataColumns: {
type: import("vue").PropType<import("./interface").TableColumnData[]>;
default: () => never[];
};
colSpan: {
type: NumberConstructor;
default: number;
};
rowSpan: {
type: NumberConstructor;
default: number;
};
isFixedExpand: {
type: BooleanConstructor;
default: boolean;
};
containerWidth: {
type: NumberConstructor;
};
showExpandBtn: {
type: BooleanConstructor;
default: boolean;
};
indentSize: {
type: NumberConstructor;
default: number;
};
renderExpandBtn: {
type: import("vue").PropType<(record: import("./interface").TableDataWithRaw, stopPropagation?: boolean | undefined) => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>>;
};
summary: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{}>, {
type: "normal" | "checkbox" | "radio" | "expand" | "operation";
summary: boolean;
column: import("./interface").TableColumnData;
indentSize: number;
record: import("./interface").TableDataWithRaw;
operations: import("./interface").TableOperationColumn[];
dataColumns: import("./interface").TableColumnData[];
colSpan: number;
rowSpan: number;
isFixedExpand: boolean;
showExpandBtn: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
Column: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
dataIndex: StringConstructor;
title: StringConstructor;
width: NumberConstructor;
minWidth: NumberConstructor;
align: {
type: import("vue").PropType<"center" | "left" | "right" | undefined>;
};
fixed: {
type: import("vue").PropType<"left" | "right" | undefined>;
};
ellipsis: {
type: BooleanConstructor;
default: boolean;
};
sortable: {
type: import("vue").PropType<import("./interface").TableSortable>;
default: undefined;
};
filterable: {
type: import("vue").PropType<import("./interface").TableFilterable>;
default: undefined;
};
cellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName>;
};
headerCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName>;
};
bodyCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName | ((record: import("./interface").TableData) => import("../_utils/types").ClassName)>;
};
summaryCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName | ((record: import("./interface").TableData) => import("../_utils/types").ClassName)>;
};
cellStyle: {
type: import("vue").PropType<import("vue").CSSProperties>;
};
headerCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties>;
};
bodyCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties | ((record: import("./interface").TableData) => import("vue").CSSProperties)>;
};
summaryCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties | ((record: import("./interface").TableData) => import("vue").CSSProperties)>;
};
index: {
type: NumberConstructor;
};
tooltip: {
type: (BooleanConstructor | ObjectConstructor)[];
default: boolean;
};
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
[key: string]: any;
}>[] | undefined, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
dataIndex: StringConstructor;
title: StringConstructor;
width: NumberConstructor;
minWidth: NumberConstructor;
align: {
type: import("vue").PropType<"center" | "left" | "right" | undefined>;
};
fixed: {
type: import("vue").PropType<"left" | "right" | undefined>;
};
ellipsis: {
type: BooleanConstructor;
default: boolean;
};
sortable: {
type: import("vue").PropType<import("./interface").TableSortable>;
default: undefined;
};
filterable: {
type: import("vue").PropType<import("./interface").TableFilterable>;
default: undefined;
};
cellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName>;
};
headerCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName>;
};
bodyCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName | ((record: import("./interface").TableData) => import("../_utils/types").ClassName)>;
};
summaryCellClass: {
type: import("vue").PropType<import("../_utils/types").ClassName | ((record: import("./interface").TableData) => import("../_utils/types").ClassName)>;
};
cellStyle: {
type: import("vue").PropType<import("vue").CSSProperties>;
};
headerCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties>;
};
bodyCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties | ((record: import("./interface").TableData) => import("vue").CSSProperties)>;
};
summaryCellStyle: {
type: import("vue").PropType<import("vue").CSSProperties | ((record: import("./interface").TableData) => import("vue").CSSProperties)>;
};
index: {
type: NumberConstructor;
};
tooltip: {
type: (BooleanConstructor | ObjectConstructor)[];
default: boolean;
};
}>> & Readonly<{}>, {
ellipsis: boolean;
tooltip: boolean | Record<string, any>;
sortable: import("./interface").TableSortable;
filterable: import("./interface").TableFilterable;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type TableInstance = InstanceType<typeof _Table>;
export declare type TheadInstance = InstanceType<typeof _Thead>;
export declare type TbodyInstance = InstanceType<typeof _Tbody>;
export declare type TrInstance = InstanceType<typeof _Tr>;
export declare type ThInstance = InstanceType<typeof _Th>;
export declare type TdInstance = InstanceType<typeof _Td>;
export declare type TableColumnInstance = InstanceType<typeof _Column>;
export type { TableData, TableSortable, TableFilterData, TableFilterable, TableColumnData, TableBorder, TableRowSelection, TableExpandable, TableDraggable, TableChangeExtra, } from './interface';
export { _Thead as Thead, _Tbody as Tbody, _Tr as Tr, _Th as Th, _Td as Td, _Column as TableColumn, };
export default Table;