import { Pagination, BaseResult } from '../types'; import { OneTableProps, TableColumn, LoadMode } from '../Table/index'; export declare enum Format { dateTime = 0, date = 1 } export type UseTableColumn = TableColumn & { defaultValue?: string; rFormat?: Format; hidden?: boolean; }; export type TableState = Pick, 'data'> & Partial, 'loading' | 'selected'>> & { mode: LoadMode; pending: boolean; columns: UseTableColumn[]; }; export interface UseTableOptions { columns: K[]; query?: (p: Pagination) => BaseResult | Promise>; pagination?: Partial; mode?: LoadMode; mapColumn?: (i: K) => K; } export declare const formatToDatetime: (val: any) => any; export declare const formatToDate: (val: any) => any; export declare const defaultFormatter: (cellValue: any, format?: Format, defaultValue?: string) => any; export declare const useTable: = UseTableColumn>(opts: UseTableOptions) => { tableState: TableState; pagination: Pagination; table: import("vue").ShallowRef<({ $: import("vue").ComponentInternalInstance; $data: {}; $props: Partial<{ style: import("vue").CSSProperties; className: string; border: boolean; tableLayout: "fixed" | "auto"; data: any[]; fit: boolean; lazy: boolean; scrollbarAlwaysOn: boolean; stripe: boolean; treeProps: { hasChildren?: string | undefined; children?: string | undefined; } | undefined; showHeader: boolean; showSummary: boolean; highlightCurrentRow: boolean; defaultExpandAll: boolean; selectOnIndeterminate: boolean; indent: number; flexible: boolean; }> & Omit; default: () => never[]; }; size: { readonly type: import("vue").PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; width: (StringConstructor | NumberConstructor)[]; height: (StringConstructor | NumberConstructor)[]; maxHeight: (StringConstructor | NumberConstructor)[]; fit: { type: BooleanConstructor; default: boolean; }; stripe: BooleanConstructor; border: BooleanConstructor; rowKey: import("vue").PropType string) | undefined>; showHeader: { type: BooleanConstructor; default: boolean; }; showSummary: BooleanConstructor; sumText: StringConstructor; summaryMethod: import("vue").PropType | undefined>; rowClassName: import("vue").PropType | undefined>; rowStyle: import("vue").PropType | undefined>; cellClassName: import("vue").PropType | undefined>; cellStyle: import("vue").PropType | undefined>; headerRowClassName: import("vue").PropType | undefined>; headerRowStyle: import("vue").PropType | undefined>; headerCellClassName: import("vue").PropType | undefined>; headerCellStyle: import("vue").PropType | undefined>; highlightCurrentRow: BooleanConstructor; currentRowKey: (StringConstructor | NumberConstructor)[]; emptyText: StringConstructor; expandRowKeys: import("vue").PropType; defaultExpandAll: BooleanConstructor; defaultSort: import("vue").PropType; tooltipEffect: StringConstructor; tooltipOptions: import("vue").PropType> | undefined>; spanMethod: import("vue").PropType<((data: { row: any; rowIndex: number; column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx; columnIndex: number; }) => number[] | { rowspan: number; colspan: number; } | undefined) | undefined>; selectOnIndeterminate: { type: BooleanConstructor; default: boolean; }; indent: { type: NumberConstructor; default: number; }; treeProps: { type: import("vue").PropType<{ hasChildren?: string | undefined; children?: string | undefined; } | undefined>; default: () => { hasChildren: string; children: string; }; }; lazy: BooleanConstructor; load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults").TreeNode, resolve: (data: any[]) => void) => void) | undefined>; style: { type: import("vue").PropType; default: () => {}; }; className: { type: StringConstructor; default: string; }; tableLayout: { type: import("vue").PropType<"fixed" | "auto">; default: string; }; scrollbarAlwaysOn: { type: BooleanConstructor; default: boolean; }; flexible: BooleanConstructor; }>> & { onSelect?: ((...args: any[]) => any) | undefined; "onExpand-change"?: ((...args: any[]) => any) | undefined; "onCurrent-change"?: ((...args: any[]) => any) | undefined; "onSelect-all"?: ((...args: any[]) => any) | undefined; "onSelection-change"?: ((...args: any[]) => any) | undefined; "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined; "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined; "onCell-contextmenu"?: ((...args: any[]) => any) | undefined; "onCell-click"?: ((...args: any[]) => any) | undefined; "onCell-dblclick"?: ((...args: any[]) => any) | undefined; "onRow-click"?: ((...args: any[]) => any) | undefined; "onRow-contextmenu"?: ((...args: any[]) => any) | undefined; "onRow-dblclick"?: ((...args: any[]) => any) | undefined; "onHeader-click"?: ((...args: any[]) => any) | undefined; "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined; "onSort-change"?: ((...args: any[]) => any) | undefined; "onFilter-change"?: ((...args: any[]) => any) | undefined; "onHeader-dragend"?: ((...args: any[]) => any) | undefined; } & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, "data" | "fit" | "stripe" | "border" | "showHeader" | "showSummary" | "highlightCurrentRow" | "defaultExpandAll" | "selectOnIndeterminate" | "indent" | "treeProps" | "lazy" | "className" | "style" | "tableLayout" | "scrollbarAlwaysOn" | "flexible">; $attrs: { [x: string]: unknown; }; $refs: { [x: string]: unknown; }; $slots: Readonly<{ [name: string]: import("vue").Slot | undefined; }>; $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}> | null; $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}> | null; $emit: (event: "select-all" | "expand-change" | "current-change" | "select" | "selection-change" | "cell-mouse-enter" | "cell-mouse-leave" | "cell-contextmenu" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-click" | "header-contextmenu" | "sort-change" | "filter-change" | "header-dragend", ...args: any[]) => void; $el: any; $options: import("vue").ComponentOptionsBase; default: () => never[]; }; size: { readonly type: import("vue").PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; width: (StringConstructor | NumberConstructor)[]; height: (StringConstructor | NumberConstructor)[]; maxHeight: (StringConstructor | NumberConstructor)[]; fit: { type: BooleanConstructor; default: boolean; }; stripe: BooleanConstructor; border: BooleanConstructor; rowKey: import("vue").PropType string) | undefined>; showHeader: { type: BooleanConstructor; default: boolean; }; showSummary: BooleanConstructor; sumText: StringConstructor; summaryMethod: import("vue").PropType | undefined>; rowClassName: import("vue").PropType | undefined>; rowStyle: import("vue").PropType | undefined>; cellClassName: import("vue").PropType | undefined>; cellStyle: import("vue").PropType | undefined>; headerRowClassName: import("vue").PropType | undefined>; headerRowStyle: import("vue").PropType | undefined>; headerCellClassName: import("vue").PropType | undefined>; headerCellStyle: import("vue").PropType | undefined>; highlightCurrentRow: BooleanConstructor; currentRowKey: (StringConstructor | NumberConstructor)[]; emptyText: StringConstructor; expandRowKeys: import("vue").PropType; defaultExpandAll: BooleanConstructor; defaultSort: import("vue").PropType; tooltipEffect: StringConstructor; tooltipOptions: import("vue").PropType> | undefined>; spanMethod: import("vue").PropType<((data: { row: any; rowIndex: number; column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx; columnIndex: number; }) => number[] | { rowspan: number; colspan: number; } | undefined) | undefined>; selectOnIndeterminate: { type: BooleanConstructor; default: boolean; }; indent: { type: NumberConstructor; default: number; }; treeProps: { type: import("vue").PropType<{ hasChildren?: string | undefined; children?: string | undefined; } | undefined>; default: () => { hasChildren: string; children: string; }; }; lazy: BooleanConstructor; load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults").TreeNode, resolve: (data: any[]) => void) => void) | undefined>; style: { type: import("vue").PropType; default: () => {}; }; className: { type: StringConstructor; default: string; }; tableLayout: { type: import("vue").PropType<"fixed" | "auto">; default: string; }; scrollbarAlwaysOn: { type: BooleanConstructor; default: boolean; }; flexible: BooleanConstructor; }>> & { onSelect?: ((...args: any[]) => any) | undefined; "onExpand-change"?: ((...args: any[]) => any) | undefined; "onCurrent-change"?: ((...args: any[]) => any) | undefined; "onSelect-all"?: ((...args: any[]) => any) | undefined; "onSelection-change"?: ((...args: any[]) => any) | undefined; "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined; "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined; "onCell-contextmenu"?: ((...args: any[]) => any) | undefined; "onCell-click"?: ((...args: any[]) => any) | undefined; "onCell-dblclick"?: ((...args: any[]) => any) | undefined; "onRow-click"?: ((...args: any[]) => any) | undefined; "onRow-contextmenu"?: ((...args: any[]) => any) | undefined; "onRow-dblclick"?: ((...args: any[]) => any) | undefined; "onHeader-click"?: ((...args: any[]) => any) | undefined; "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined; "onSort-change"?: ((...args: any[]) => any) | undefined; "onFilter-change"?: ((...args: any[]) => any) | undefined; "onHeader-dragend"?: ((...args: any[]) => any) | undefined; }, { ns: { namespace: import("vue").ComputedRef; b: (blockSuffix?: string | undefined) => string; e: (element?: string | undefined) => string; m: (modifier?: string | undefined) => string; be: (blockSuffix?: string | undefined, element?: string | undefined) => string; em: (element?: string | undefined, modifier?: string | undefined) => string; bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string; bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; layout: import("element-plus/es/components/table/src/table-layout").default; store: any; handleHeaderFooterMousewheel: (event: any, data: any) => void; handleMouseLeave: () => void; tableId: string; tableSize: import("vue").ComputedRef<"" | "default" | "small" | "large">; isHidden: import("vue").Ref; isEmpty: import("vue").ComputedRef; renderExpanded: import("vue").Ref; resizeProxyVisible: import("vue").Ref; resizeState: import("vue").Ref<{ width: number | null; height: number | null; headerHeight: number | null; }>; isGroup: import("vue").Ref; bodyWidth: import("vue").ComputedRef; tableBodyStyles: import("vue").ComputedRef<{ width: string; }>; emptyBlockStyle: import("vue").ComputedRef<{ width: string; height: string; } | null>; debouncedUpdateLayout: import("lodash-es").DebouncedFunc<() => void>; handleFixedMousewheel: (event: any, data: any) => void; setCurrentRow: (row: any) => void; getSelectionRows: () => any; toggleRowSelection: (row: any, selected: boolean) => void; clearSelection: () => void; clearFilter: (columnKeys: string[]) => void; toggleAllSelection: () => void; toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void; clearSort: () => void; doLayout: () => void; sort: (prop: string, order: string) => void; t: import("element-plus").Translator; setDragVisible: (visible: boolean) => void; context: import("element-plus/es/components/table/src/table/defaults").Table; computedSumText: import("vue").ComputedRef; computedEmptyText: import("vue").ComputedRef; tableLayout: import("vue").ComputedRef<"fixed" | "auto" | undefined>; scrollbarViewStyle: { display: string; verticalAlign: string; }; tableInnerStyle: import("vue").ComputedRef<{ height: string | number; maxHeight?: undefined; } | { maxHeight: string | number; height?: undefined; } | { height?: undefined; maxHeight?: undefined; }>; scrollbarStyle: import("vue").ComputedRef<{ height: string; maxHeight?: undefined; } | { maxHeight: string; height?: undefined; } | { height?: undefined; maxHeight?: undefined; }>; scrollBarRef: import("vue").Ref; scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void; setScrollLeft: (left?: number | undefined) => void; setScrollTop: (top?: number | undefined) => void; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select-all" | "expand-change" | "current-change" | "select" | "selection-change" | "cell-mouse-enter" | "cell-mouse-leave" | "cell-contextmenu" | "cell-click" | "cell-dblclick" | "row-click" | "row-contextmenu" | "row-dblclick" | "header-click" | "header-contextmenu" | "sort-change" | "filter-change" | "header-dragend")[], string, { style: import("vue").CSSProperties; className: string; border: boolean; tableLayout: "fixed" | "auto"; data: any[]; fit: boolean; lazy: boolean; scrollbarAlwaysOn: boolean; stripe: boolean; treeProps: { hasChildren?: string | undefined; children?: string | undefined; } | undefined; showHeader: boolean; showSummary: boolean; highlightCurrentRow: boolean; defaultExpandAll: boolean; selectOnIndeterminate: boolean; indent: number; flexible: boolean; }, {}, string> & { beforeCreate?: ((() => void) | (() => void)[]) | undefined; created?: ((() => void) | (() => void)[]) | undefined; beforeMount?: ((() => void) | (() => void)[]) | undefined; mounted?: ((() => void) | (() => void)[]) | undefined; beforeUpdate?: ((() => void) | (() => void)[]) | undefined; updated?: ((() => void) | (() => void)[]) | undefined; activated?: ((() => void) | (() => void)[]) | undefined; deactivated?: ((() => void) | (() => void)[]) | undefined; beforeDestroy?: ((() => void) | (() => void)[]) | undefined; beforeUnmount?: ((() => void) | (() => void)[]) | undefined; destroyed?: ((() => void) | (() => void)[]) | undefined; unmounted?: ((() => void) | (() => void)[]) | undefined; renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined; errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase, {}> | null, info: string) => boolean | void)[]) | undefined; }; $forceUpdate: () => void; $nextTick: typeof import("vue").nextTick; $watch any)>(source: T_1, cb: T_1 extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions | undefined): import("vue").WatchStopHandle; } & Readonly; default: () => never[]; }; size: { readonly type: import("vue").PropType>; readonly required: false; readonly validator: ((val: unknown) => boolean) | undefined; __epPropKey: true; }; width: (StringConstructor | NumberConstructor)[]; height: (StringConstructor | NumberConstructor)[]; maxHeight: (StringConstructor | NumberConstructor)[]; fit: { type: BooleanConstructor; default: boolean; }; stripe: BooleanConstructor; border: BooleanConstructor; rowKey: import("vue").PropType string) | undefined>; showHeader: { type: BooleanConstructor; default: boolean; }; showSummary: BooleanConstructor; sumText: StringConstructor; summaryMethod: import("vue").PropType | undefined>; rowClassName: import("vue").PropType | undefined>; rowStyle: import("vue").PropType | undefined>; cellClassName: import("vue").PropType | undefined>; cellStyle: import("vue").PropType | undefined>; headerRowClassName: import("vue").PropType | undefined>; headerRowStyle: import("vue").PropType | undefined>; headerCellClassName: import("vue").PropType | undefined>; headerCellStyle: import("vue").PropType | undefined>; highlightCurrentRow: BooleanConstructor; currentRowKey: (StringConstructor | NumberConstructor)[]; emptyText: StringConstructor; expandRowKeys: import("vue").PropType; defaultExpandAll: BooleanConstructor; defaultSort: import("vue").PropType; tooltipEffect: StringConstructor; tooltipOptions: import("vue").PropType> | undefined>; spanMethod: import("vue").PropType<((data: { row: any; rowIndex: number; column: import("element-plus/es/components/table/src/table-column/defaults").TableColumnCtx; columnIndex: number; }) => number[] | { rowspan: number; colspan: number; } | undefined) | undefined>; selectOnIndeterminate: { type: BooleanConstructor; default: boolean; }; indent: { type: NumberConstructor; default: number; }; treeProps: { type: import("vue").PropType<{ hasChildren?: string | undefined; children?: string | undefined; } | undefined>; default: () => { hasChildren: string; children: string; }; }; lazy: BooleanConstructor; load: import("vue").PropType<((row: any, treeNode: import("element-plus/es/components/table/src/table/defaults").TreeNode, resolve: (data: any[]) => void) => void) | undefined>; style: { type: import("vue").PropType; default: () => {}; }; className: { type: StringConstructor; default: string; }; tableLayout: { type: import("vue").PropType<"fixed" | "auto">; default: string; }; scrollbarAlwaysOn: { type: BooleanConstructor; default: boolean; }; flexible: BooleanConstructor; }>> & { onSelect?: ((...args: any[]) => any) | undefined; "onExpand-change"?: ((...args: any[]) => any) | undefined; "onCurrent-change"?: ((...args: any[]) => any) | undefined; "onSelect-all"?: ((...args: any[]) => any) | undefined; "onSelection-change"?: ((...args: any[]) => any) | undefined; "onCell-mouse-enter"?: ((...args: any[]) => any) | undefined; "onCell-mouse-leave"?: ((...args: any[]) => any) | undefined; "onCell-contextmenu"?: ((...args: any[]) => any) | undefined; "onCell-click"?: ((...args: any[]) => any) | undefined; "onCell-dblclick"?: ((...args: any[]) => any) | undefined; "onRow-click"?: ((...args: any[]) => any) | undefined; "onRow-contextmenu"?: ((...args: any[]) => any) | undefined; "onRow-dblclick"?: ((...args: any[]) => any) | undefined; "onHeader-click"?: ((...args: any[]) => any) | undefined; "onHeader-contextmenu"?: ((...args: any[]) => any) | undefined; "onSort-change"?: ((...args: any[]) => any) | undefined; "onFilter-change"?: ((...args: any[]) => any) | undefined; "onHeader-dragend"?: ((...args: any[]) => any) | undefined; } & import("vue").ShallowUnwrapRef<{ ns: { namespace: import("vue").ComputedRef; b: (blockSuffix?: string | undefined) => string; e: (element?: string | undefined) => string; m: (modifier?: string | undefined) => string; be: (blockSuffix?: string | undefined, element?: string | undefined) => string; em: (element?: string | undefined, modifier?: string | undefined) => string; bm: (blockSuffix?: string | undefined, modifier?: string | undefined) => string; bem: (blockSuffix?: string | undefined, element?: string | undefined, modifier?: string | undefined) => string; is: { (name: string, state: boolean | undefined): string; (name: string): string; }; cssVar: (object: Record) => Record; cssVarName: (name: string) => string; cssVarBlock: (object: Record) => Record; cssVarBlockName: (name: string) => string; }; layout: import("element-plus/es/components/table/src/table-layout").default; store: any; handleHeaderFooterMousewheel: (event: any, data: any) => void; handleMouseLeave: () => void; tableId: string; tableSize: import("vue").ComputedRef<"" | "default" | "small" | "large">; isHidden: import("vue").Ref; isEmpty: import("vue").ComputedRef; renderExpanded: import("vue").Ref; resizeProxyVisible: import("vue").Ref; resizeState: import("vue").Ref<{ width: number | null; height: number | null; headerHeight: number | null; }>; isGroup: import("vue").Ref; bodyWidth: import("vue").ComputedRef; tableBodyStyles: import("vue").ComputedRef<{ width: string; }>; emptyBlockStyle: import("vue").ComputedRef<{ width: string; height: string; } | null>; debouncedUpdateLayout: import("lodash-es").DebouncedFunc<() => void>; handleFixedMousewheel: (event: any, data: any) => void; setCurrentRow: (row: any) => void; getSelectionRows: () => any; toggleRowSelection: (row: any, selected: boolean) => void; clearSelection: () => void; clearFilter: (columnKeys: string[]) => void; toggleAllSelection: () => void; toggleRowExpansion: (row: any, expanded?: boolean | undefined) => void; clearSort: () => void; doLayout: () => void; sort: (prop: string, order: string) => void; t: import("element-plus").Translator; setDragVisible: (visible: boolean) => void; context: import("element-plus/es/components/table/src/table/defaults").Table; computedSumText: import("vue").ComputedRef; computedEmptyText: import("vue").ComputedRef; tableLayout: import("vue").ComputedRef<"fixed" | "auto" | undefined>; scrollbarViewStyle: { display: string; verticalAlign: string; }; tableInnerStyle: import("vue").ComputedRef<{ height: string | number; maxHeight?: undefined; } | { maxHeight: string | number; height?: undefined; } | { height?: undefined; maxHeight?: undefined; }>; scrollbarStyle: import("vue").ComputedRef<{ height: string; maxHeight?: undefined; } | { maxHeight: string; height?: undefined; } | { height?: undefined; maxHeight?: undefined; }>; scrollBarRef: import("vue").Ref; scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void; setScrollLeft: (left?: number | undefined) => void; setScrollTop: (top?: number | undefined) => void; }> & {} & import("vue").ComponentCustomProperties & {}) | null>; handleQuery: (disabledLoading?: boolean) => Promise; handleNext: () => void; setState: (obj: Partial, "data" | "loading" | "selected" | "mode"> & { columns: K[]; }>) => void; toggleColumn: (prop: K["prop"] | Record, boolean> | K["prop"][], show?: boolean) => void; };