import type { EmptyToVoid, InferRouteError, InferRouteOptions, InferRouteOutput, } from '@aydee-app/eden' import type { UseSuspenseQueryOptions, UseSuspenseQueryResult } from '@tanstack/react-query' import type { RouteSchema } from 'elysia' import type { DistributiveOmit } from '../../utils/types' import type { EdenQueryBaseOptions } from '../internal/query-base-options' import type { WithEdenQueryExtension } from '../internal/query-hook-extension' export interface EdenUseSuspenseQueryOptions extends DistributiveOmit, 'queryKey'>, EdenQueryBaseOptions {} /** * @internal */ export type EdenUseSuspenseQueryResult = [ TData, WithEdenQueryExtension>, ] export type EdenUseSuspenseQuery< TRoute extends RouteSchema, _TPath extends any[] = [], TInput = InferRouteOptions['query'], TOutput = InferRouteOutput, TError = InferRouteError, > = ( input: EmptyToVoid, options?: EdenUseSuspenseQueryOptions, ) => EdenUseSuspenseQueryResult