'use client' import { QueryObserver, skipToken } from '@tanstack/query-core' import { useBaseQuery } from './useBaseQuery' import { defaultThrowOnError } from './suspense' import type { UseSuspenseQueryOptions, UseSuspenseQueryResult } from './types' import type { DefaultError, QueryClient, QueryKey } from '@tanstack/query-core' export function useSuspenseQuery< TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, >( options: UseSuspenseQueryOptions, queryClient?: QueryClient, ): UseSuspenseQueryResult { if (process.env.NODE_ENV !== 'production') { if (options.queryFn === skipToken) { console.error('skipToken is not allowed for useSuspenseQuery') } } return useBaseQuery( { ...options, enabled: true, suspense: true, throwOnError: defaultThrowOnError, placeholderData: undefined, }, QueryObserver, queryClient, ) as UseSuspenseQueryResult }