import { type ShallowRef } from 'vue'; export interface UseFetchOptions { onSuccess?: (data: T) => void; onError?: (err: any) => void; onFinally?: () => void; immediate?: boolean; initialData?: T; stale?: any; } interface UseFetchStale { isFetching: ShallowRef; data: ShallowRef; error: ShallowRef; promise: ShallowRef>; } interface UseFetchResult extends UseFetchStale { execute: (params?: U | undefined) => Promise; } export declare function useFetch(fetcher: (params: U) => Promise | T, options?: UseFetchOptions): UseFetchResult; export {};