import { CombineService, PaginatedParams, BasePaginatedOptions, PaginatedOptionsWithFormat, PaginatedFormatReturn, PaginatedResult } from "@ahooksjs/use-request/lib/types"; export { CombineService, PaginatedParams, BasePaginatedOptions, PaginatedOptionsWithFormat, PaginatedFormatReturn, PaginatedResult, }; export interface Store { [name: string]: any; } export interface Field { getFieldInstance?: (name: string) => {}; setValues: (value: Store) => void; getValues: (...args: any) => Store; reset: (...args: any) => void; validate: (callback: (errors: any, values: any) => void) => void; [key: string]: any; } export interface Result extends Omit, "tableProps"> { paginationProps: { onChange: (current: number) => void; onPageSizeChange: (size: number) => void; current: number; pageSize: number; total: number; }; tableProps: { dataSource: Item[]; loading: boolean; onSort: (dataIndex: String, order: String) => void; onFilter: (filterParams: Object) => void; }; search: { type: "simple" | "advance"; changeType: () => void; submit: (notResetCurrent?: boolean) => void; reset: () => void; }; } export interface BaseOptions extends Omit, "paginated"> { field?: Field; defaultType?: "simple" | "advance"; } export interface OptionsWithFormat extends Omit, "paginated"> { field?: Field; defaultType?: "simple" | "advance"; } declare function useFusionTable(service: CombineService, options: OptionsWithFormat): Result; declare function useFusionTable(service: CombineService, PaginatedParams>, options: BaseOptions): Result; export default useFusionTable;