import { Readable } from "svelte/store"; import { MutateOptions, QueryObserverOptions, QueryObserverResult, QueryFunction, QueryKey, MutationStatus, MutationKey, MutationFunction, InfiniteQueryObserverOptions, InfiniteQueryObserverResult } from "./queryCore"; import { RetryDelayValue, RetryValue } from "./queryCore/core/retryer"; export interface UseQueryStoreResult extends Readable> { setOptions: { (options: UseQueryOptions): any; (queryKey: QueryKey, options?: UseQueryOptions): any; (queryKey: QueryKey, queryFn: QueryFunction, options?: UseQueryOptions): any; }; } export interface UseQueryOptions extends QueryObserverOptions { } export declare type UseQueryResult = QueryObserverResult; export interface UseInfiniteQueryStoreResult extends Readable> { setOptions: { (options: UseInfiniteQueryOptions): any; (queryKey: QueryKey, options?: UseInfiniteQueryOptions): any; (queryKey: QueryKey, queryFn: QueryFunction, options?: UseInfiniteQueryOptions): any; }; } export interface UseInfiniteQueryOptions extends InfiniteQueryObserverOptions { } export declare type UseInfiniteQueryResult = InfiniteQueryObserverResult; export interface MutationStoreResult extends Readable> { setOptions: { (options: UseMutationOptions): any; (mutationKey: MutationKey, options?: UseMutationOptions): any; (mutationKey: MutationKey, mutationFn?: MutationFunction, options?: UseMutationOptions): any; (mutationFn?: MutationFunction, options?: UseMutationOptions): any; }; } export interface UseMutationOptions { mutationKey?: string | unknown[]; onMutate?: (variables: TVariables) => Promise | TContext; onSuccess?: (data: TData, variables: TVariables, context: TContext | undefined) => Promise | void; onError?: (error: TError, variables: TVariables, context: TContext | undefined) => Promise | void; onSettled?: (data: TData | undefined, error: TError | null, variables: TVariables, context: TContext | undefined) => Promise | void; retry?: RetryValue; retryDelay?: RetryDelayValue; useErrorBoundary?: boolean; } export declare type UseMutateFunction = (variables: TVariables, options?: MutateOptions) => void; export declare type UseMutateAsyncFunction = (variables: TVariables, options?: MutateOptions) => Promise; export interface UseMutationResult { context: TContext | undefined; data: TData | undefined; error: TError | null; failureCount: number; isError: boolean; isIdle: boolean; isLoading: boolean; isPaused: boolean; isSuccess: boolean; mutate: UseMutateFunction; mutateAsync: UseMutateAsyncFunction; reset: () => void; status: MutationStatus; variables: TVariables | undefined; }