import type { ComponentPublicInstance, ShallowRef, Ref } from 'vue'; import type { TableProps, ColumnType } from 'ant-design-vue/es/table'; import type { SortOrder, FilterValue } from 'ant-design-vue/es/table/interface'; import type { CardProps } from 'ant-design-vue'; import type { ListToolBarProps } from './components/ListToolBar'; import type { OptionConfig } from './components/ToolBar'; export declare type Key = number | string; export declare type FixedType = 'left' | 'right' | boolean; export declare type DataIndex = string | number | readonly (string | number)[]; export declare type WithFalse = T | false; export declare type VueInstance = ComponentPublicInstance; export declare type MaybeElement = Element | HTMLElement | VueInstance | undefined; export declare type MaybeRef = T | ShallowRef | Ref; export declare type MaybeElementRef = MaybeRef; export declare type DefaultRecordType = Record; export declare type ProColumnType = ColumnType & { valueType?: 'index' | 'indexBorder' | 'text' | 'select'; search?: boolean; }; export declare type ProColumnGroupType = Omit, 'dataIndex'> & { chilren: ProColumnsType; }; export declare type ProColumnsType = (ProColumnGroupType | ProColumnType)[]; export declare type RequestParams = { current: number; pageSize: number; [key: string]: unknown; }; export declare type ResponseData = { success?: boolean; data: RecordType[]; total?: number; [key: string]: unknown; }; export declare type FetchData = (params: RequestParams, sort?: Record, filter?: Record) => Promise>; export declare type ProTableProps = TableProps & Partial<{ columns: ProColumnsType; request: FetchData; params: Record; cardBordered: boolean | { search?: boolean; table?: boolean; }; cardProps: WithFalse; toolbar: WithFalse; options: WithFalse; }>; export declare type ActionType = { fullScreen: () => void; reload: (resetPageIndex?: boolean) => Promise; }; export declare type SizeType = 'large' | 'middle' | 'small' | undefined; export declare type ColumnState = { show?: boolean; fixed?: FixedType; order?: number; disable?: boolean | { checkbox: boolean; }; };