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, _Transform } 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 Omit, 'cache'> { method?: M; cache?: FetchOptions<_ResponseType, DataT>['cache'] | false; } 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; } export interface UseFetchOptionsWithTransform = KeysOf, DefaultT = undefined, R extends NitroFetchRequest = string & {}, M extends AvailableRouterMethod = AvailableRouterMethod> extends Omit, 'transform'> { transform: _Transform; } /** * 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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : FResT, FDataT = F_ResT, FPickKeys extends KeysOf = KeysOf, FDefaultT = undefined>(options?: Partial> | ((callerOptions: 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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = [undefined] extends [FDefaultT] ? undefined : FDefaultT>(request: Ref | ReqT | (() => ReqT), opts: UseFetchOptionsWithTransform<_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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT_1 = _ResT_1, PickKeys_1 extends KeysOf = KeysOf, DefaultT_1 = [undefined] extends [FDefaultT] ? DataT_1 : FDefaultT>(request: Ref | ReqT_1 | (() => ReqT_1), opts: UseFetchOptionsWithTransform<_ResT_1, DataT_1, PickKeys_1, DefaultT_1, ReqT_1, Method_1>): AsyncData | DefaultT_1, ErrorT_1 | undefined>; , ReqT_2 extends NitroFetchRequest = NitroFetchRequest, Method_2 extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT_2 = ResT extends void ? ReqT_2 extends string ? import("nitropack").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT_2 = [unknown] extends [FDataT] ? _ResT_2 : FDataT, PickKeys_2 extends KeysOf = KeysOf, DefaultT_2 = [undefined] extends [FDefaultT] ? undefined : FDefaultT>(request: Ref | ReqT_2 | (() => ReqT_2), opts?: UseFetchOptions<_ResT_2, DataT_2, PickKeys_2, DefaultT_2, ReqT_2, Method_2>): AsyncData] extends [FPickKeys] ? PickKeys_2 : FPickKeys & KeysOf> | DefaultT_2, ErrorT_2 | undefined>; , ReqT_3 extends NitroFetchRequest = NitroFetchRequest, Method_3 extends AvailableRouterMethod = ResT extends void ? "get" extends AvailableRouterMethod ? "get" : AvailableRouterMethod : AvailableRouterMethod, _ResT_3 = ResT extends void ? ReqT_3 extends string ? import("nitropack").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT_3 = [unknown] extends [FDataT] ? _ResT_3 : FDataT, PickKeys_3 extends KeysOf = KeysOf, DefaultT_3 = [undefined] extends [FDefaultT] ? DataT_3 : FDefaultT>(request: Ref | ReqT_3 | (() => ReqT_3), opts?: UseFetchOptions<_ResT_3, DataT_3, PickKeys_3, DefaultT_3, ReqT_3, Method_3>): AsyncData] extends [FPickKeys] ? PickKeys_3 : FPickKeys & KeysOf> | DefaultT_3, ErrorT_3 | 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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = undefined>(request: ReqT | Ref | (() => ReqT), opts: UseFetchOptionsWithTransform<_ResT, DataT, PickKeys, DefaultT, ReqT, Method>): 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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").MiddlewareOf> : unknown : ResT, DataT = _ResT, PickKeys extends KeysOf = KeysOf, DefaultT = DataT>(request: ReqT | Ref | (() => ReqT), opts: UseFetchOptionsWithTransform<_ResT, DataT, PickKeys, DefaultT, ReqT, Method>): 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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").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").MiddlewareOf> extends never ? import("nitropack").MiddlewareOf extends never ? unknown : import("nitropack").MiddlewareOf : import("nitropack").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 {};