'use client' import { InfiniteQueryObserver } from '@tanstack/query-core' import { useBaseQuery } from './useBaseQuery' import { defaultThrowOnError } from './suspense' import type { InfiniteQueryObserverSuccessResult, QueryObserver, } from '@tanstack/query-core' import type { DefaultError, InfiniteData, QueryClient, QueryKey, } from '@tanstack/query-core' import type { UseSuspenseInfiniteQueryOptions, UseSuspenseInfiniteQueryResult, } from './types' export function useSuspenseInfiniteQuery< TQueryFnData, TError = DefaultError, TData = InfiniteData, TQueryKey extends QueryKey = QueryKey, TPageParam = unknown, >( options: UseSuspenseInfiniteQueryOptions< TQueryFnData, TError, TData, TQueryFnData, TQueryKey, TPageParam >, queryClient?: QueryClient, ): UseSuspenseInfiniteQueryResult { return useBaseQuery( { ...options, enabled: true, suspense: true, throwOnError: defaultThrowOnError, }, InfiniteQueryObserver as typeof QueryObserver, queryClient, ) as InfiniteQueryObserverSuccessResult }