import { type Ref } from 'vue'; import { Pagination, Payload, SearchPage } from '@dao-style/extend'; export type LazyLoadQueryParams = { page?: number; pageSize?: number; [key: string]: any; }; interface TemplateAny { (payload: Payload): Promise>; } export type LazyLoadQueryReturn> = { items?: T[]; pagination?: Pagination; }; export declare function useLazyLoadList[0], ReturnValue extends Awaited>, ItemTypeArray extends ReturnValue['items'], FilterData extends Omit, ItemType = ItemTypeArray extends Array ? T : never>(api: Service, defaultQueryParams?: Omit, options?: { searchKey?: string; pageSize?: number; errorHandle?: ((e: Error, req: Parameters[0]) => void | Error); immediate?: boolean; }): { isLoading: Ref; isOptionLoading: Ref; list: Ref; pagination: Ref; filterData: FilterData; handleSearch: (...payload: any[]) => void; resetFetchList: (isSearching?: boolean) => Promise; handleRefresh: () => Promise; loadMore: () => Promise; [key: string]: unknown; }; export {};