import type { FetchError, FetchOptions, ResponseType as _ResponseType } from 'ofetch'; import type { NitroFetchRequest, TypedInternalResponse, AvailableRouterMethod as _AvailableRouterMethod } from 'nitropack/types'; import type { MaybeRefOrGetter, Ref } from 'vue'; import type { AsyncData, AsyncDataOptions, KeysOf, MultiWatchSources, PickFrom } from './asyncData.js'; type AvailableRouterMethod = _AvailableRouterMethod | Uppercase<_AvailableRouterMethod>; export type FetchResult> = TypedInternalResponse>; type ComputedOptions> = { [K in keyof T]: T[K] extends Function ? T[K] : ComputedOptions | Ref | T[K]; }; interface NitroFetchOptions = AvailableRouterMethod, DataT = any> extends FetchOptions<_ResponseType, DataT> { method?: M; } type ComputedFetchOptions, DataT = any> = ComputedOptions>; export interface UseFetchOptions = KeysOf, DefaultT = undefined, R extends NitroFetchRequest = string & {}, M extends AvailableRouterMethod = AvailableRouterMethod> extends Omit, 'watch'>, Omit, 'timeout'> { key?: MaybeRefOrGetter; $fetch?: typeof globalThis.$fetch; watch?: MultiWatchSources | false; } /** * A factory function to create a custom `useFetch` composable with pre-defined default options. * @since 4.2.0 */ export declare const createUseFetch: = FResT extends void ? "get" extends AvailableRouterMethod ? "get" : AvailableRouterMethod : AvailableRouterMethod, F_ResT = FResT extends void ? FReqT extends string ? import("nitropack/types").MiddlewareOf> extends never ? import("nitropack/types").MiddlewareOf extends never ? unknown : import("nitropack/types").MiddlewareOf : import("nitropack/types").MiddlewareOf> : unknown : FResT, FDataT = F_ResT, FPickKeys extends KeysOf = KeysOf, FDefaultT = undefined>(options?: Partial> | ((currentOptions: UseFetchOptions) => Partial>)) => { , ReqT extends NitroFetchRequest = NitroFetchRequest, Method extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT = ResT extends void ? ReqT extends string ? import("nitropack/types").MiddlewareOf> extends never ? import("nitropack/types").MiddlewareOf extends never ? unknown : import("nitropack/types").MiddlewareOf : import("nitropack/types").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = undefined>(request: Ref | ReqT | (() => ReqT), opts?: UseFetchOptions<_ResT, DataT, PickKeys, DefaultT, ReqT, Method>): AsyncData | DefaultT, ErrorT | undefined>; , ReqT_1 extends NitroFetchRequest = NitroFetchRequest, Method_1 extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT_1 = ResT extends void ? ReqT_1 extends string ? import("nitropack/types").MiddlewareOf> extends never ? import("nitropack/types").MiddlewareOf extends never ? unknown : import("nitropack/types").MiddlewareOf : import("nitropack/types").MiddlewareOf> : unknown : ResT, DataT_1 = _ResT_1, PickKeys_1 extends KeysOf = KeysOf, DefaultT_1 = DataT_1>(request: Ref | ReqT_1 | (() => ReqT_1), opts?: UseFetchOptions<_ResT_1, DataT_1, PickKeys_1, DefaultT_1, ReqT_1, Method_1>): AsyncData | DefaultT_1, ErrorT_1 | undefined>; }; export declare const useFetch: { , ReqT extends NitroFetchRequest = NitroFetchRequest, Method extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? AvailableRouterMethod & "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT = ResT extends void ? ReqT extends string ? import("nitropack/types").MiddlewareOf> extends never ? import("nitropack/types").MiddlewareOf extends never ? unknown : import("nitropack/types").MiddlewareOf : import("nitropack/types").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = undefined>(request: ReqT | Ref | (() => ReqT), opts?: UseFetchOptions<_ResT, DataT, PickKeys, DefaultT, ReqT, Method> | undefined): AsyncData, ErrorT | undefined>; , ReqT extends NitroFetchRequest = NitroFetchRequest, Method extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? AvailableRouterMethod & "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT = ResT extends void ? ReqT extends string ? import("nitropack/types").MiddlewareOf> extends never ? import("nitropack/types").MiddlewareOf extends never ? unknown : import("nitropack/types").MiddlewareOf : import("nitropack/types").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = DataT>(request: ReqT | Ref | (() => ReqT), opts?: UseFetchOptions<_ResT, DataT, PickKeys, DefaultT, ReqT, Method> | undefined): AsyncData, ErrorT | undefined>; }; export declare const useLazyFetch: ReturnType; export {};