import { UseMutationOptions, DefaultOptions, QueryClient, } from '@tanstack/react-query'; export const queryConfig = { queries: { // throwOnError: true, refetchOnWindowFocus: false, retry: false, staleTime: 1000 * 60, }, } satisfies DefaultOptions; export const queryClient = new QueryClient({ defaultOptions: queryConfig, }); export type ApiFnReturnType Promise> = Awaited>; export type QueryConfig any> = Omit< ReturnType, 'queryKey' | 'queryFn' >; export type MutationConfig< MutationFnType extends (...args: any) => Promise, > = UseMutationOptions< ApiFnReturnType, Error, Parameters[0] >;