import * as _tanstack_vue_query from '@tanstack/vue-query'; import { UseQueryOptions, UseInfiniteQueryOptions, InfiniteData, UseMutationOptions } from '@tanstack/vue-query'; import { ModelMeta } from '@zenstackhq/runtime/cross'; import { MaybeRefOrGetter, ComputedRef } from 'vue'; import { A as APIContext, F as FetchFn, a as ExtraQueryOptions, E as ExtraMutationOptions } from './common-CXlL7vTW.js'; declare const VueQueryContextKey = "zenstack-vue-query-context"; /** * Provide context for the generated TanStack Query hooks. */ declare function provideHooksContext(context: APIContext): void; /** * Hooks context. */ declare function getHooksContext(): { fetch?: FetchFn; logging?: boolean; endpoint: string; }; /** * Creates a vue-query query. * * @param model The name of the model under query. * @param url The request URL. * @param args The request args object, URL-encoded and appended as "?q=" parameter * @param options The vue-query options object * @param fetch The fetch function to use for sending the HTTP request * @returns useQuery hook */ declare function useModelQuery(model: string, url: string, args?: MaybeRefOrGetter | ComputedRef, options?: MaybeRefOrGetter, 'queryKey'> & ExtraQueryOptions> | ComputedRef, 'queryKey'> & ExtraQueryOptions>, fetch?: FetchFn): _tanstack_vue_query.UseQueryReturnType; /** * Creates a vue-query infinite query. * * @param model The name of the model under query. * @param url The request URL. * @param args The initial request args object, URL-encoded and appended as "?q=" parameter * @param options The vue-query infinite query options object * @param fetch The fetch function to use for sending the HTTP request * @returns useInfiniteQuery hook */ declare function useInfiniteModelQuery(model: string, url: string, args?: MaybeRefOrGetter | ComputedRef, options?: MaybeRefOrGetter>, 'queryKey' | 'initialPageParam'>> | ComputedRef>, 'queryKey' | 'initialPageParam'>>, fetch?: FetchFn): _tanstack_vue_query.UseInfiniteQueryReturnType; /** * Creates a mutation with vue-query. * * @param model The name of the model under mutation. * @param method The HTTP method. * @param modelMeta The model metadata. * @param url The request URL. * @param options The vue-query options. * @param fetch The fetch function to use for sending the HTTP request * @param checkReadBack Whether to check for read back errors and return undefined if found. * @returns useMutation hooks */ declare function useModelMutation(model: string, method: 'POST' | 'PUT' | 'DELETE', url: string, modelMeta: ModelMeta, options?: MaybeRefOrGetter, 'mutationFn'> & ExtraMutationOptions> | ComputedRef, 'mutationFn'> & ExtraMutationOptions>, fetch?: FetchFn, checkReadBack?: C): _tanstack_vue_query.UseMutationReturnType, "mutate" | "reset"> | Omit<_tanstack_vue_query.MutationObserverLoadingResult, "mutate" | "reset"> | Omit<_tanstack_vue_query.MutationObserverErrorResult, "mutate" | "reset"> | Omit<_tanstack_vue_query.MutationObserverSuccessResult, "mutate" | "reset">>; export { APIContext as RequestHandlerContext, VueQueryContextKey, getHooksContext, provideHooksContext, useInfiniteModelQuery, useModelMutation, useModelQuery };