import { Ref, ShallowRef } from 'vue'; export type AsyncDataProps

= { /** * 异步获取数据方法 * @param params */ fetcher: (params: P) => D | Promise; /** * 获取数据方法的参数 */ params?: (P | (() => P)); /** * 异步数据数据方法返回的默认值 */ defaultData?: D; }; export type AsyncDataPropsEmits = { /** * 获取成功事件 * @param error */ error: [error: any]; /** * 获取失败事件 * @param data */ success: [data: D]; }; export type AsyncDataPropsExpose = { /** * 串行获取数据 * @param params 可以重新传递参数 */ refresh: (params?: T) => Promise; }; type UseGetAsyncDataReturnType = { loading: Ref; validating: Ref; error: Ref; data: ShallowRef; mutate: (data: D) => void; refresh: (params?: P) => Promise; }; export declare const useGetAsyncData:

(params: (P | (() => P)), fetcher: (params: P) => D | Promise, options?: { defaultData?: D; onError?: (error: any) => void; onSuccess?: (data: D) => void; }) => UseGetAsyncDataReturnType; export {};