import { CustomResponse, FetchConfigType, FetchContextType, ImperativeFetch, StaticFetchConfig, StaticFetchConfigNoUrl } from '../types'; /** * Fetch hook */ export declare function useFetch(init: StaticFetchConfig | UrlType | Request, options?: StaticFetchConfigNoUrl): { refresh(): void; resetError(): void; formProps: { action: (form: FormData) => Promise; ref: import("react").RefObject; }; formRef: import("react").RefObject; hasData: boolean; /** * Revalidating means that at least one request has finished succesfuly and a new request is being sent */ revalidating: boolean; success: boolean; loadingFirst: boolean; isLoadingFirst: boolean; expiration: Date; data: 0 extends 1 & TransformData ? FetchDataType : TransformData; isPending?: boolean; loading: boolean; isLoading: boolean; isRevalidating: boolean; error: any; online: boolean; code: number; reFetch: () => Promise; submit: (submitData: any) => Promise; mutate: (update: FetchDataType | ((prev: FetchDataType) => FetchDataType), callback?: (data: FetchDataType, fetcher: ImperativeFetch) => void) => FetchDataType; fetcher: ImperativeFetch; abort: () => void; config: Required> & { baseUrl: string; url: string; rawUrl: string; }; response: CustomResponse; id: any; key: string; responseTime: number; requestStart: Date; requestEnd: Date; }; export declare namespace useFetch { export var get: import("../types").RequestWithBody; var _a: import("../types").RequestWithBody; export var head: import("../types").RequestWithBody; export var options: import("../types").RequestWithBody; export var post: import("../types").RequestWithBody; export var put: import("../types").RequestWithBody; export var patch: import("../types").RequestWithBody; export var purge: import("../types").RequestWithBody; export var link: import("../types").RequestWithBody; export var unlink: import("../types").RequestWithBody; export var extend: (ctx: FetchContextType) => ImperativeFetch; export { _a as delete }; }