import { ProColumn, ProTableProps, TableActionType, FetchSetting, FetchParams } from './types'; declare function __VLS_template(): { tableTitle?(_: {}): any; toolbar?(_: {}): any; "toolbar-right"?(_: {}): any; action?(_: { row: any; record: any; column: Partial; index: any; }): any; }; declare const __VLS_component: import('vue').DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<{ columns?: ProColumn[]; dataSource?: Record[]; api?: (params: Record) => Promise<{ list?: unknown[]; items?: unknown[]; total?: number; }>; rowKey?: string; title?: string; titleHelpMessage?: string | string[]; bordered?: boolean; striped?: boolean; size?: "medium" | "small" | "large"; loading?: boolean; maxHeight?: number | string; height?: number | string; ellipsis?: boolean; showIndexColumn?: boolean; indexColumnProps?: Partial; actionColumn?: Partial; rowSelection?: { type?: "checkbox" | "radio"; width?: number; fixed?: "left" | "right"; getCheckboxProps?: (r: Record) => { disabled?: boolean; }; getRadioProps?: (r: Record) => { disabled?: boolean; }; }; clearSelectOnPageChange?: boolean; pagination?: false | { pageSize?: number; pageSizes?: number[]; layout?: string; small?: boolean; background?: boolean; props?: Record; } | Record; tableSetting?: { redo?: boolean; size?: boolean; setting?: boolean; fullScreen?: boolean; }; fetchSetting?: FetchSetting; beforeFetch?: (params: Record) => Record; afterFetch?: (data: unknown) => unknown; immediate?: boolean; searchInfo?: Record; defaultSort?: { prop: string; order: "ascending" | "descending"; }; tableProps?: Record; rowClassName?: string | ((params: { row: Record; rowIndex: number; }) => string); spanMethod?: (params: { row: Record; column: Record; rowIndex: number; columnIndex: number; }) => [number, number] | { rowspan: number; colspan: number; }; treeProps?: { hasChildren?: string; children?: string; }; defaultExpandAll?: boolean; expandRowKeys?: (string | number)[]; lazy?: boolean; load?: (row: Record, treeNode: { level: number; expanded: boolean; loaded: boolean; }, resolve: (data: Record[]) => void) => void; }>, { rowKey: string; clearSelectOnPageChange: boolean; bordered: boolean; striped: boolean; size: string; loading: boolean; ellipsis: boolean; showIndexColumn: boolean; pagination: () => { pageSize: number; pageSizes: number[]; }; tableSetting: () => { redo: boolean; }; fetchSetting: () => { pageField: string; sizeField: string; listField: string; totalField: string; }; immediate: boolean; }>, { setProps: (props: Partial) => void; reload: (opt?: FetchParams) => Promise; redoHeight: () => void; setLoading: (loading: boolean) => void; getDataSource: () => Record[]; getRawDataSource: () => Record; setTableData: (data: Record[]) => void; getColumns: () => ProColumn[]; setColumns: (columns: ProColumn[] | string[]) => void; setPagination: (info: Partial<{ page: number; pageSize: number; total: number; }>) => void; getSelectRowKeys: () => (string | number)[]; getSelectRows: () => Record[]; clearSelectedRowKeys: () => void; setSelectedRowKeys: (keys: (string | number)[]) => void; deleteSelectRowByKey: (key: string | number) => void; updateTableData: (index: number, key: string, value: unknown) => void; updateTableDataRecord: (rowKey: string | number, record: Record) => Record | void; deleteTableDataRecord: (rowKey: string | number | (string | number)[]) => void; insertTableDataRecord: (record: Record, index?: number) => Record | void; getPaginationRef: () => { page: number; pageSize: number; total: number; } | false; getShowPagination: () => boolean; setShowPagination: (show: boolean) => void | Promise; getRowSelection: () => import('./types').TableRowSelection; expandAll?: () => void; collapseAll?: () => void; scrollToColumn: (column: string | number) => void; }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { register: (action: TableActionType) => void; "fetch-success": (data: { items: unknown[]; total: number; }) => void; "fetch-error": (error: unknown) => void; "selection-change": (data: { keys: (string | number)[]; rows: Record[]; }) => void; "row-click": (record: Record, event: Event) => void; "row-dblclick": (record: Record, event: Event) => void; "sort-change": (sortInfo: { prop: string; order: string; }) => void; "expand-change": (row: Record, expanded: boolean | Record[]) => void; }, string, Readonly[]; api?: (params: Record) => Promise<{ list?: unknown[]; items?: unknown[]; total?: number; }>; rowKey?: string; title?: string; titleHelpMessage?: string | string[]; bordered?: boolean; striped?: boolean; size?: "medium" | "small" | "large"; loading?: boolean; maxHeight?: number | string; height?: number | string; ellipsis?: boolean; showIndexColumn?: boolean; indexColumnProps?: Partial; actionColumn?: Partial; rowSelection?: { type?: "checkbox" | "radio"; width?: number; fixed?: "left" | "right"; getCheckboxProps?: (r: Record) => { disabled?: boolean; }; getRadioProps?: (r: Record) => { disabled?: boolean; }; }; clearSelectOnPageChange?: boolean; pagination?: false | { pageSize?: number; pageSizes?: number[]; layout?: string; small?: boolean; background?: boolean; props?: Record; } | Record; tableSetting?: { redo?: boolean; size?: boolean; setting?: boolean; fullScreen?: boolean; }; fetchSetting?: FetchSetting; beforeFetch?: (params: Record) => Record; afterFetch?: (data: unknown) => unknown; immediate?: boolean; searchInfo?: Record; defaultSort?: { prop: string; order: "ascending" | "descending"; }; tableProps?: Record; rowClassName?: string | ((params: { row: Record; rowIndex: number; }) => string); spanMethod?: (params: { row: Record; column: Record; rowIndex: number; columnIndex: number; }) => [number, number] | { rowspan: number; colspan: number; }; treeProps?: { hasChildren?: string; children?: string; }; defaultExpandAll?: boolean; expandRowKeys?: (string | number)[]; lazy?: boolean; load?: (row: Record, treeNode: { level: number; expanded: boolean; loaded: boolean; }, resolve: (data: Record[]) => void) => void; }>, { rowKey: string; clearSelectOnPageChange: boolean; bordered: boolean; striped: boolean; size: string; loading: boolean; ellipsis: boolean; showIndexColumn: boolean; pagination: () => { pageSize: number; pageSizes: number[]; }; tableSetting: () => { redo: boolean; }; fetchSetting: () => { pageField: string; sizeField: string; listField: string; totalField: string; }; immediate: boolean; }>>>, { loading: boolean; size: "medium" | "small" | "large"; bordered: boolean; immediate: boolean; rowKey: string; striped: boolean; ellipsis: boolean; showIndexColumn: boolean; clearSelectOnPageChange: boolean; pagination: false | { pageSize?: number; pageSizes?: number[]; layout?: string; small?: boolean; background?: boolean; props?: Record; } | Record; fetchSetting: FetchSetting; tableSetting: { redo?: boolean; size?: boolean; setting?: boolean; fullScreen?: boolean; }; }>; declare const _default: __VLS_WithTemplateSlots>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $scopedSlots: S; }; };