import { type ComputedRef, type Ref } from "vue"; import type { FetchStatus, Nullable, ResponseBody } from "../typings/common"; import type { Scopes } from "../typings/user"; export type ResourceRef = { data: Ref; meta: Ref; loading: ComputedRef; errorMessage: Ref>; error: Ref; status: Ref; }; export type ResourceHookReturnType = [ RequestParams extends undefined ? () => Promise : (params: RequestParams) => Promise, ResourceRef ]; export declare function useResource(params: { fetchResource: RequestParams extends undefined ? () => Promise> : (params: RequestParams) => Promise>; initialValue: Data; resourceName?: string | undefined; scopes?: Scopes; }): ResourceHookReturnType;