@orpc/react 0.16.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -496,10 +496,10 @@ function createProcedureUtils(options) {
496
496
  function createORPCHooks(options) {
497
497
  const path = options.path ?? [];
498
498
  const generalHooks = createGeneralHooks({ context: options.context, path });
499
- const procedureHooks = path.length ? createProcedureHooks({
499
+ const procedureHooks = createProcedureHooks({
500
500
  context: options.context,
501
501
  path
502
- }) : {};
502
+ });
503
503
  return new Proxy(
504
504
  {
505
505
  [orpcPathSymbol]: path,
@@ -575,9 +575,7 @@ function createORPCUtils(options) {
575
575
  }
576
576
 
577
577
  // src/use-queries/hook.ts
578
- import {
579
- useQueries
580
- } from "@tanstack/react-query";
578
+ import { useQueries } from "@tanstack/react-query";
581
579
 
582
580
  // src/use-queries/builder.ts
583
581
  function createUseQueriesBuilder(options) {
@@ -1,14 +1,13 @@
1
- import type { Schema, SchemaInput, SchemaOutput } from '@orpc/contract';
2
1
  import type { PartialDeep, SetOptional } from '@orpc/shared';
3
2
  import type { ORPCQueryFilters } from './tanstack-query';
4
3
  import { type DefaultError, type Mutation, type MutationFilters, type MutationState } from '@tanstack/react-query';
5
4
  import { type ORPCContext } from './react-context';
6
- export interface GeneralHooks<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
7
- useIsFetching: (filers?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>) => number;
5
+ export interface GeneralHooks<TInput, TOutput> {
6
+ useIsFetching: (filers?: ORPCQueryFilters<PartialDeep<TInput>>) => number;
8
7
  useIsMutating: (filters?: SetOptional<MutationFilters, 'mutationKey'>) => number;
9
- useMutationState: <UResult = MutationState<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>>(options?: {
8
+ useMutationState: <UResult = MutationState<TOutput, DefaultError, TInput>>(options?: {
10
9
  filters?: SetOptional<MutationFilters, 'mutationKey'>;
11
- select?: (mutation: Mutation<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>) => UResult;
10
+ select?: (mutation: Mutation<TOutput, DefaultError, TInput>) => UResult;
12
11
  }) => UResult[];
13
12
  }
14
13
  export interface CreateGeneralHooksOptions {
@@ -20,5 +19,5 @@ export interface CreateGeneralHooksOptions {
20
19
  */
21
20
  path: string[];
22
21
  }
23
- export declare function createGeneralHooks<TInputSchema extends Schema = undefined, TOutputSchema extends Schema = undefined, TFuncOutput extends SchemaOutput<TOutputSchema> = SchemaOutput<TOutputSchema>>(options: CreateGeneralHooksOptions): GeneralHooks<TInputSchema, TOutputSchema, TFuncOutput>;
22
+ export declare function createGeneralHooks<TInput, TOutput>(options: CreateGeneralHooksOptions): GeneralHooks<TInput, TOutput>;
24
23
  //# sourceMappingURL=general-hooks.d.ts.map
@@ -1,32 +1,31 @@
1
- import type { Schema, SchemaInput, SchemaOutput } from '@orpc/contract';
2
1
  import type { PartialDeep, SetOptional } from '@orpc/shared';
3
2
  import type { CancelOptions, DefaultError, InfiniteData, InvalidateOptions, MutationFilters, MutationObserverOptions, OmitKeyof, QueryClient, QueryKey, QueryObserverOptions, RefetchOptions, ResetOptions, SetDataOptions, Updater } from '@tanstack/react-query';
4
3
  import type { ORPCInvalidateQueryFilters, ORPCQueryFilters } from './tanstack-query';
5
4
  import type { InferCursor, SchemaInputForInfiniteQuery } from './types';
6
- export interface GeneralUtils<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
7
- getQueriesData: (filters?: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, 'queryType'>) => [QueryKey, SchemaOutput<TOutputSchema, TFuncOutput> | undefined][];
8
- getInfiniteQueriesData: (filters?: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInputSchema>>>, 'queryType'>) => [
5
+ export interface GeneralUtils<TInput, TOutput> {
6
+ getQueriesData: (filters?: OmitKeyof<ORPCQueryFilters<PartialDeep<TInput>>, 'queryType'>) => [QueryKey, TOutput | undefined][];
7
+ getInfiniteQueriesData: (filters?: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInput>>>, 'queryType'>) => [
9
8
  QueryKey,
10
- undefined | InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>
9
+ undefined | InfiniteData<TOutput, InferCursor<TInput>>
11
10
  ][];
12
- setQueriesData: (filters: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, 'queryType'>, updater: Updater<SchemaOutput<TOutputSchema, TFuncOutput> | undefined, SchemaOutput<TOutputSchema, TFuncOutput> | undefined>, options?: SetDataOptions) => [QueryKey, SchemaOutput<TOutputSchema, TFuncOutput> | undefined][];
13
- setInfiniteQueriesData: (filters: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInputSchema>>>, 'queryType'>, updater: Updater<InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined, InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined>, options?: SetDataOptions) => [
11
+ setQueriesData: (filters: OmitKeyof<ORPCQueryFilters<PartialDeep<TInput>>, 'queryType'>, updater: Updater<TOutput | undefined, TOutput | undefined>, options?: SetDataOptions) => [QueryKey, TOutput | undefined][];
12
+ setInfiniteQueriesData: (filters: OmitKeyof<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInput>>>, 'queryType'>, updater: Updater<InfiniteData<TOutput, InferCursor<TInput>> | undefined, InfiniteData<TOutput, InferCursor<TInput>> | undefined>, options?: SetDataOptions) => [
14
13
  QueryKey,
15
- undefined | InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>
14
+ undefined | InfiniteData<TOutput, InferCursor<TInput>>
16
15
  ][];
17
- invalidate: (filters?: ORPCInvalidateQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, options?: InvalidateOptions) => Promise<void>;
18
- refetch: (filters?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, options?: RefetchOptions) => Promise<void>;
19
- cancel: (filters?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, options?: CancelOptions) => Promise<void>;
20
- remove: (filters?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>) => void;
21
- reset: (filters?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, options?: ResetOptions) => Promise<void>;
22
- isFetching: (filters?: ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>) => number;
16
+ invalidate: (filters?: ORPCInvalidateQueryFilters<PartialDeep<TInput>>, options?: InvalidateOptions) => Promise<void>;
17
+ refetch: (filters?: ORPCQueryFilters<PartialDeep<TInput>>, options?: RefetchOptions) => Promise<void>;
18
+ cancel: (filters?: ORPCQueryFilters<PartialDeep<TInput>>, options?: CancelOptions) => Promise<void>;
19
+ remove: (filters?: ORPCQueryFilters<PartialDeep<TInput>>) => void;
20
+ reset: (filters?: ORPCQueryFilters<PartialDeep<TInput>>, options?: ResetOptions) => Promise<void>;
21
+ isFetching: (filters?: ORPCQueryFilters<PartialDeep<TInput>>) => number;
23
22
  isMutating: (filters?: SetOptional<MutationFilters, 'mutationKey'>) => number;
24
- getQueryDefaults: (filters?: Pick<ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, 'input' | 'queryKey'>) => OmitKeyof<QueryObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryKey'>;
25
- getInfiniteQueryDefaults: (filters?: Pick<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInputSchema>>>, 'input' | 'queryKey'>) => OmitKeyof<QueryObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>>, QueryKey, InferCursor<TInputSchema>>, 'queryKey'>;
26
- setQueryDefaults: (options: Partial<OmitKeyof<QueryObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryKey'>>, filters?: Pick<ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, 'input' | 'queryKey'>) => void;
27
- setInfiniteQueryDefaults: (options: Partial<OmitKeyof<QueryObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>>, QueryKey, InferCursor<TInputSchema>>, 'queryKey'>>, filters?: Pick<ORPCQueryFilters<PartialDeep<SchemaInput<TInputSchema>>>, 'input' | 'queryKey'>) => void;
28
- getMutationDefaults: (filters?: Pick<MutationFilters, 'mutationKey'>) => MutationObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>;
29
- setMutationDefaults: (options: OmitKeyof<MutationObserverOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>, 'mutationKey'>, filters?: Pick<MutationFilters, 'mutationKey'>) => void;
23
+ getQueryDefaults: (filters?: Pick<ORPCQueryFilters<PartialDeep<TInput>>, 'input' | 'queryKey'>) => OmitKeyof<QueryObserverOptions<TOutput>, 'queryKey'>;
24
+ getInfiniteQueryDefaults: (filters?: Pick<ORPCQueryFilters<PartialDeep<SchemaInputForInfiniteQuery<TInput>>>, 'input' | 'queryKey'>) => OmitKeyof<QueryObserverOptions<TOutput, DefaultError, TOutput, InfiniteData<TOutput>, QueryKey, InferCursor<TInput>>, 'queryKey'>;
25
+ setQueryDefaults: (options: Partial<OmitKeyof<QueryObserverOptions<TOutput>, 'queryKey'>>, filters?: Pick<ORPCQueryFilters<PartialDeep<TInput>>, 'input' | 'queryKey'>) => void;
26
+ setInfiniteQueryDefaults: (options: Partial<OmitKeyof<QueryObserverOptions<TOutput, DefaultError, TOutput, InfiniteData<TOutput>, QueryKey, InferCursor<TInput>>, 'queryKey'>>, filters?: Pick<ORPCQueryFilters<PartialDeep<TInput>>, 'input' | 'queryKey'>) => void;
27
+ getMutationDefaults: (filters?: Pick<MutationFilters, 'mutationKey'>) => MutationObserverOptions<TOutput, DefaultError, TInput>;
28
+ setMutationDefaults: (options: OmitKeyof<MutationObserverOptions<TOutput, DefaultError, TInput>, 'mutationKey'>, filters?: Pick<MutationFilters, 'mutationKey'>) => void;
30
29
  }
31
30
  export interface CreateGeneralUtilsOptions {
32
31
  queryClient: QueryClient;
@@ -37,5 +36,5 @@ export interface CreateGeneralUtilsOptions {
37
36
  */
38
37
  path: string[];
39
38
  }
40
- export declare function createGeneralUtils<TInputSchema extends Schema = undefined, TOutputSchema extends Schema = undefined, TFuncOutput extends SchemaOutput<TOutputSchema> = SchemaOutput<TOutputSchema>>(options: CreateGeneralUtilsOptions): GeneralUtils<TInputSchema, TOutputSchema, TFuncOutput>;
39
+ export declare function createGeneralUtils<TInput, TOutput>(options: CreateGeneralUtilsOptions): GeneralUtils<TInput, TOutput>;
41
40
  //# sourceMappingURL=general-utils.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import type { ProcedureHooks } from './procedure-hooks';
2
- import type { ORPCHooksWithContractRouter, ORPCHooksWithRouter } from './react-hooks';
2
+ import type { ORPCHooks } from './react-hooks';
3
3
  export declare const orpcPathSymbol: unique symbol;
4
- export declare function getORPCPath(orpc: ORPCHooksWithContractRouter<any> | ORPCHooksWithRouter<any> | ProcedureHooks<any, any, any>): string[];
4
+ export declare function getORPCPath(orpc: ORPCHooks<any> | ProcedureHooks<any, any>): string[];
5
5
  //# sourceMappingURL=orpc-path.d.ts.map
@@ -1,22 +1,21 @@
1
- import type { Schema, SchemaInput, SchemaOutput } from '@orpc/contract';
2
1
  import type { InferCursor, SchemaInputForInfiniteQuery } from './types';
3
2
  import { type PartialOnUndefinedDeep, type SetOptional } from '@orpc/shared';
4
3
  import { type DefaultError, type FetchInfiniteQueryOptions, type FetchQueryOptions, type InfiniteData, type QueryKey, type UseInfiniteQueryOptions, type UseInfiniteQueryResult, type UseMutationOptions, type UseMutationResult, type UseQueryOptions, type UseQueryResult, type UseSuspenseInfiniteQueryOptions, type UseSuspenseInfiniteQueryResult, type UseSuspenseQueryOptions, type UseSuspenseQueryResult } from '@tanstack/react-query';
5
4
  import { type ORPCContext } from './react-context';
6
- export interface ProcedureHooks<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
7
- useQuery: <USelectData = SchemaOutput<TOutputSchema, TFuncOutput>>(input: SchemaInput<TInputSchema>, options?: SetOptional<UseQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, USelectData>, 'queryFn' | 'queryKey'>) => UseQueryResult<USelectData>;
8
- useInfiniteQuery: <USelectData = InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>>(options: PartialOnUndefinedDeep<SetOptional<UseInfiniteQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, USelectData, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryFn' | 'queryKey'> & {
9
- input: SchemaInputForInfiniteQuery<TInputSchema>;
5
+ export interface ProcedureHooks<TInput, TOutput> {
6
+ useQuery: <USelectData = TOutput>(input: TInput, options?: SetOptional<UseQueryOptions<TOutput, DefaultError, USelectData>, 'queryFn' | 'queryKey'>) => UseQueryResult<USelectData>;
7
+ useInfiniteQuery: <USelectData = InfiniteData<TOutput, InferCursor<TInput>>>(options: PartialOnUndefinedDeep<SetOptional<UseInfiniteQueryOptions<TOutput, DefaultError, USelectData, TOutput, QueryKey, InferCursor<TInput>>, 'queryFn' | 'queryKey'> & {
8
+ input: SchemaInputForInfiniteQuery<TInput>;
10
9
  }>) => UseInfiniteQueryResult<USelectData>;
11
- useSuspenseQuery: <USelectData = SchemaOutput<TOutputSchema, TFuncOutput>>(input: SchemaInput<TInputSchema>, options?: SetOptional<UseSuspenseQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, USelectData>, 'queryFn' | 'queryKey'>) => UseSuspenseQueryResult<USelectData>;
12
- useSuspenseInfiniteQuery: <USelectData = InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>>(options: PartialOnUndefinedDeep<SetOptional<UseSuspenseInfiniteQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, USelectData, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryFn' | 'queryKey'> & {
13
- input: SchemaInputForInfiniteQuery<TInputSchema>;
10
+ useSuspenseQuery: <USelectData = TOutput>(input: TInput, options?: SetOptional<UseSuspenseQueryOptions<TOutput, DefaultError, USelectData>, 'queryFn' | 'queryKey'>) => UseSuspenseQueryResult<USelectData>;
11
+ useSuspenseInfiniteQuery: <USelectData = InfiniteData<TOutput, InferCursor<TInput>>>(options: PartialOnUndefinedDeep<SetOptional<UseSuspenseInfiniteQueryOptions<TOutput, DefaultError, USelectData, TOutput, QueryKey, InferCursor<TInput>>, 'queryFn' | 'queryKey'> & {
12
+ input: SchemaInputForInfiniteQuery<TInput>;
14
13
  }>) => UseSuspenseInfiniteQueryResult<USelectData>;
15
- usePrefetchQuery: (input: SchemaInput<TInputSchema>, options?: FetchQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>>) => void;
16
- usePrefetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryKey' | 'queryFn'> & {
17
- input: SchemaInputForInfiniteQuery<TInputSchema>;
14
+ usePrefetchQuery: (input: TInput, options?: FetchQueryOptions<TOutput>) => void;
15
+ usePrefetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<TOutput, DefaultError, TOutput, QueryKey, InferCursor<TInput>>, 'queryKey' | 'queryFn'> & {
16
+ input: SchemaInputForInfiniteQuery<TInput>;
18
17
  }>) => void;
19
- useMutation: (options?: SetOptional<UseMutationOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>, 'mutationFn' | 'mutationKey'>) => UseMutationResult<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaInput<TInputSchema>>;
18
+ useMutation: (options?: SetOptional<UseMutationOptions<TOutput, DefaultError, TInput>, 'mutationFn' | 'mutationKey'>) => UseMutationResult<TOutput, DefaultError, TInput>;
20
19
  }
21
20
  export interface CreateProcedureHooksOptions {
22
21
  context: ORPCContext<any>;
@@ -27,5 +26,5 @@ export interface CreateProcedureHooksOptions {
27
26
  */
28
27
  path: string[];
29
28
  }
30
- export declare function createProcedureHooks<TInputSchema extends Schema = undefined, TOutputSchema extends Schema = undefined, TFuncOutput extends SchemaOutput<TOutputSchema> = SchemaOutput<TOutputSchema>>(options: CreateProcedureHooksOptions): ProcedureHooks<TInputSchema, TOutputSchema, TFuncOutput>;
29
+ export declare function createProcedureHooks<TInput, TOutput>(options: CreateProcedureHooksOptions): ProcedureHooks<TInput, TOutput>;
31
30
  //# sourceMappingURL=procedure-hooks.d.ts.map
@@ -1,35 +1,34 @@
1
- import type { Schema, SchemaInput, SchemaOutput } from '@orpc/contract';
2
- import type { Caller } from '@orpc/server';
1
+ import type { ProcedureClient } from '@orpc/server';
3
2
  import type { PartialOnUndefinedDeep, SetOptional } from '@orpc/shared';
4
3
  import type { DefaultError, EnsureInfiniteQueryDataOptions, EnsureQueryDataOptions, FetchInfiniteQueryOptions, FetchQueryOptions, InfiniteData, QueryClient, QueryKey, QueryState, SetDataOptions, Updater } from '@tanstack/react-query';
5
4
  import type { InferCursor, SchemaInputForInfiniteQuery } from './types';
6
- export interface ProcedureUtils<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
7
- fetchQuery: (input: SchemaInput<TInputSchema>, options?: SetOptional<FetchQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryKey' | 'queryFn'>) => Promise<SchemaOutput<TOutputSchema, TFuncOutput>>;
8
- fetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryKey' | 'queryFn'> & {
9
- input: SchemaInputForInfiniteQuery<TInputSchema>;
10
- }>) => Promise<InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>>;
11
- prefetchQuery: (input: SchemaInput<TInputSchema>, options?: SetOptional<FetchQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryKey' | 'queryFn'>) => Promise<void>;
12
- prefetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryKey' | 'queryFn'> & {
13
- input: SchemaInputForInfiniteQuery<TInputSchema>;
5
+ export interface ProcedureUtils<TInput, TOutput> {
6
+ fetchQuery: (input: TInput, options?: SetOptional<FetchQueryOptions<TOutput>, 'queryKey' | 'queryFn'>) => Promise<TOutput>;
7
+ fetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<TOutput, DefaultError, TOutput, QueryKey, InferCursor<TInput>>, 'queryKey' | 'queryFn'> & {
8
+ input: SchemaInputForInfiniteQuery<TInput>;
9
+ }>) => Promise<InfiniteData<TOutput, InferCursor<TInput>>>;
10
+ prefetchQuery: (input: TInput, options?: SetOptional<FetchQueryOptions<TOutput>, 'queryKey' | 'queryFn'>) => Promise<void>;
11
+ prefetchInfiniteQuery: (options: PartialOnUndefinedDeep<SetOptional<FetchInfiniteQueryOptions<TOutput, DefaultError, TOutput, QueryKey, InferCursor<TInput>>, 'queryKey' | 'queryFn'> & {
12
+ input: SchemaInputForInfiniteQuery<TInput>;
14
13
  }>) => Promise<void>;
15
- getQueryData: (input: SchemaInput<TInputSchema>) => SchemaOutput<TOutputSchema, TFuncOutput> | undefined;
16
- getInfiniteQueryData: (input: SchemaInputForInfiniteQuery<TInputSchema>) => InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined;
17
- ensureQueryData: (input: SchemaInput<TInputSchema>, options?: SetOptional<EnsureQueryDataOptions<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryFn' | 'queryKey'>) => Promise<SchemaOutput<TOutputSchema, TFuncOutput>>;
18
- ensureInfiniteQueryData: (options: PartialOnUndefinedDeep<SetOptional<EnsureInfiniteQueryDataOptions<SchemaOutput<TOutputSchema, TFuncOutput>, DefaultError, SchemaOutput<TOutputSchema, TFuncOutput>, QueryKey, InferCursor<TInputSchema>>, 'queryKey' | 'queryFn'> & {
19
- input: SchemaInputForInfiniteQuery<TInputSchema>;
20
- }>) => Promise<InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>>;
21
- getQueryState: (input: SchemaInput<TInputSchema>) => QueryState<SchemaOutput<TOutputSchema, TFuncOutput>> | undefined;
22
- getInfiniteQueryState: (input: SchemaInputForInfiniteQuery<TInputSchema>) => QueryState<InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>>> | undefined;
23
- setQueryData: (input: SchemaInput<TInputSchema>, updater: Updater<SchemaOutput<TOutputSchema, TFuncOutput> | undefined, SchemaOutput<TOutputSchema, TFuncOutput> | undefined>, options?: SetDataOptions) => SchemaOutput<TOutputSchema, TFuncOutput> | undefined;
24
- setInfiniteQueryData: (input: SchemaInputForInfiniteQuery<TInputSchema>, updater: Updater<InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined, InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined>, options?: SetDataOptions) => InfiniteData<SchemaOutput<TOutputSchema, TFuncOutput>, InferCursor<TInputSchema>> | undefined;
14
+ getQueryData: (input: TInput) => TOutput | undefined;
15
+ getInfiniteQueryData: (input: SchemaInputForInfiniteQuery<TInput>) => InfiniteData<TOutput, InferCursor<TInput>> | undefined;
16
+ ensureQueryData: (input: TInput, options?: SetOptional<EnsureQueryDataOptions<TOutput>, 'queryFn' | 'queryKey'>) => Promise<TOutput>;
17
+ ensureInfiniteQueryData: (options: PartialOnUndefinedDeep<SetOptional<EnsureInfiniteQueryDataOptions<TOutput, DefaultError, TOutput, QueryKey, InferCursor<TInput>>, 'queryKey' | 'queryFn'> & {
18
+ input: SchemaInputForInfiniteQuery<TInput>;
19
+ }>) => Promise<InfiniteData<TOutput, InferCursor<TInput>>>;
20
+ getQueryState: (input: TInput) => QueryState<TOutput> | undefined;
21
+ getInfiniteQueryState: (input: SchemaInputForInfiniteQuery<TInput>) => QueryState<InfiniteData<TOutput, InferCursor<TInput>>> | undefined;
22
+ setQueryData: (input: TInput, updater: Updater<TOutput | undefined, TOutput | undefined>, options?: SetDataOptions) => TOutput | undefined;
23
+ setInfiniteQueryData: (input: SchemaInputForInfiniteQuery<TInput>, updater: Updater<InfiniteData<TOutput, InferCursor<TInput>> | undefined, InfiniteData<TOutput, InferCursor<TInput>> | undefined>, options?: SetDataOptions) => InfiniteData<TOutput, InferCursor<TInput>> | undefined;
25
24
  }
26
- export interface CreateProcedureUtilsOptions<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput> {
27
- client: Caller<SchemaInput<TInputSchema>, SchemaOutput<TOutputSchema, TFuncOutput>>;
25
+ export interface CreateProcedureUtilsOptions<TInput, TOutput> {
26
+ client: ProcedureClient<TInput, TOutput>;
28
27
  queryClient: QueryClient;
29
28
  /**
30
29
  * The path of procedure on sever
31
30
  */
32
31
  path: string[];
33
32
  }
34
- export declare function createProcedureUtils<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>>(options: CreateProcedureUtilsOptions<TInputSchema, TOutputSchema, TFuncOutput>): ProcedureUtils<TInputSchema, TOutputSchema, TFuncOutput>;
33
+ export declare function createProcedureUtils<TInput, TOutput>(options: CreateProcedureUtilsOptions<TInput, TOutput>): ProcedureUtils<TInput, TOutput>;
35
34
  //# sourceMappingURL=procedure-utils.d.ts.map
@@ -1,13 +1,11 @@
1
- import type { RouterClient } from '@orpc/client';
2
- import type { ContractRouter } from '@orpc/contract';
3
- import type { Router } from '@orpc/server';
1
+ import type { RouterClient } from '@orpc/server';
4
2
  import type { QueryClient } from '@tanstack/react-query';
5
3
  import { type Context } from 'react';
6
- export interface ORPCContextValue<TRouter extends ContractRouter | Router<any>> {
7
- client: RouterClient<TRouter>;
4
+ export interface ORPCContextValue<T extends RouterClient<any>> {
5
+ client: T;
8
6
  queryClient: QueryClient;
9
7
  }
10
- export type ORPCContext<TRouter extends ContractRouter | Router<any>> = Context<ORPCContextValue<TRouter> | undefined>;
11
- export declare function createORPCContext<TRouter extends ContractRouter | Router<any>>(): ORPCContext<TRouter>;
12
- export declare function useORPCContext<TRouter extends ContractRouter | Router<any>>(context: ORPCContext<TRouter>): ORPCContextValue<TRouter>;
8
+ export type ORPCContext<T extends RouterClient<any>> = Context<ORPCContextValue<T> | undefined>;
9
+ export declare function createORPCContext<T extends RouterClient<any>>(): ORPCContext<T>;
10
+ export declare function useORPCContext<T extends RouterClient<any>>(context: ORPCContext<T>): ORPCContextValue<T>;
13
11
  //# sourceMappingURL=react-context.d.ts.map
@@ -1,16 +1,12 @@
1
- import type { ContractProcedure, ContractRouter, SchemaOutput } from '@orpc/contract';
2
- import type { Lazy, Procedure, Router } from '@orpc/server';
1
+ import type { ProcedureClient, RouterClient } from '@orpc/server';
3
2
  import type { ORPCContext } from './react-context';
4
3
  import { type GeneralHooks } from './general-hooks';
5
4
  import { type ProcedureHooks } from './procedure-hooks';
6
- export type ORPCHooksWithContractRouter<TRouter extends ContractRouter> = {
7
- [K in keyof TRouter]: TRouter[K] extends ContractProcedure<infer UInputSchema, infer UOutputSchema> ? ProcedureHooks<UInputSchema, UOutputSchema, SchemaOutput<UOutputSchema>> & GeneralHooks<UInputSchema, UOutputSchema, SchemaOutput<UOutputSchema>> : TRouter[K] extends ContractRouter ? ORPCHooksWithContractRouter<TRouter[K]> : never;
8
- } & GeneralHooks<undefined, undefined, unknown>;
9
- export type ORPCHooksWithRouter<TRouter extends Router<any>> = {
10
- [K in keyof TRouter]: TRouter[K] extends Procedure<any, any, infer UInputSchema, infer UOutputSchema, infer UFuncOutput> | Lazy<Procedure<any, any, infer UInputSchema, infer UOutputSchema, infer UFuncOutput>> ? ProcedureHooks<UInputSchema, UOutputSchema, UFuncOutput> & GeneralHooks<UInputSchema, UOutputSchema, UFuncOutput> : TRouter[K] extends Router<any> ? ORPCHooksWithRouter<TRouter[K]> : never;
11
- } & GeneralHooks<undefined, undefined, unknown>;
12
- export interface CreateORPCHooksOptions<TRouter extends ContractRouter | Router<any>> {
13
- context: ORPCContext<TRouter>;
5
+ export type ORPCHooks<T extends RouterClient<any>> = T extends ProcedureClient<infer TInput, infer TOutput> ? ProcedureHooks<TInput, TOutput> & GeneralHooks<TInput, TOutput> : {
6
+ [K in keyof T]: T[K] extends RouterClient<any> ? ORPCHooks<T[K]> : never;
7
+ } & GeneralHooks<unknown, unknown>;
8
+ export interface CreateORPCHooksOptions<T extends RouterClient<any>> {
9
+ context: ORPCContext<T>;
14
10
  /**
15
11
  * The path of the router.
16
12
  *
@@ -18,5 +14,5 @@ export interface CreateORPCHooksOptions<TRouter extends ContractRouter | Router<
18
14
  */
19
15
  path?: string[];
20
16
  }
21
- export declare function createORPCHooks<TRouter extends ContractRouter | Router<any>>(options: CreateORPCHooksOptions<TRouter>): TRouter extends Router<any> ? ORPCHooksWithRouter<TRouter> : TRouter extends ContractRouter ? ORPCHooksWithContractRouter<TRouter> : never;
17
+ export declare function createORPCHooks<T extends RouterClient<any>>(options: CreateORPCHooksOptions<T>): ORPCHooks<T>;
22
18
  //# sourceMappingURL=react-hooks.d.ts.map
@@ -1,16 +1,12 @@
1
- import type { ContractProcedure, ContractRouter, SchemaOutput } from '@orpc/contract';
2
- import type { Lazy, Procedure, Router } from '@orpc/server';
1
+ import type { ProcedureClient, RouterClient } from '@orpc/server';
3
2
  import type { ORPCContextValue } from './react-context';
4
3
  import { type GeneralUtils } from './general-utils';
5
4
  import { type ProcedureUtils } from './procedure-utils';
6
- export type ORPCUtilsWithContractRouter<TRouter extends ContractRouter> = {
7
- [K in keyof TRouter]: TRouter[K] extends ContractProcedure<infer UInputSchema, infer UOutputSchema> ? ProcedureUtils<UInputSchema, UOutputSchema, SchemaOutput<UOutputSchema>> & GeneralUtils<UInputSchema, UOutputSchema, SchemaOutput<UOutputSchema>> : TRouter[K] extends ContractRouter ? ORPCUtilsWithContractRouter<TRouter[K]> : never;
8
- } & GeneralUtils<undefined, undefined, unknown>;
9
- export type ORPCUtilsWithRouter<TRouter extends Router<any>> = {
10
- [K in keyof TRouter]: TRouter[K] extends Procedure<any, any, infer UInputSchema, infer UOutputSchema, infer UFuncOutput> | Lazy<Procedure<any, any, infer UInputSchema, infer UOutputSchema, infer UFuncOutput>> ? ProcedureUtils<UInputSchema, UOutputSchema, UFuncOutput> & GeneralUtils<UInputSchema, UOutputSchema, UFuncOutput> : TRouter[K] extends Router<any> ? ORPCUtilsWithRouter<TRouter[K]> : never;
11
- } & GeneralUtils<undefined, undefined, unknown>;
12
- export interface CreateORPCUtilsOptions<TRouter extends ContractRouter | Router<any>> {
13
- contextValue: ORPCContextValue<TRouter>;
5
+ export type ORPCUtils<T extends RouterClient<any>> = T extends ProcedureClient<infer TInput, infer TOutput> ? ProcedureUtils<TInput, TOutput> & GeneralUtils<TInput, TOutput> : {
6
+ [K in keyof T]: T[K] extends RouterClient<any> ? ORPCUtils<T[K]> : never;
7
+ } & GeneralUtils<unknown, unknown>;
8
+ export interface CreateORPCUtilsOptions<T extends RouterClient<any>> {
9
+ contextValue: ORPCContextValue<T>;
14
10
  /**
15
11
  * The path of the router.
16
12
  *
@@ -18,5 +14,5 @@ export interface CreateORPCUtilsOptions<TRouter extends ContractRouter | Router<
18
14
  */
19
15
  path?: string[];
20
16
  }
21
- export declare function createORPCUtils<TRouter extends ContractRouter | Router<any>>(options: CreateORPCUtilsOptions<TRouter>): TRouter extends Router<any> ? ORPCUtilsWithRouter<TRouter> : TRouter extends ContractRouter ? ORPCUtilsWithContractRouter<TRouter> : never;
17
+ export declare function createORPCUtils<T extends RouterClient<any>>(options: CreateORPCUtilsOptions<T>): ORPCUtils<T>;
22
18
  //# sourceMappingURL=react-utils.d.ts.map
@@ -1,21 +1,15 @@
1
- import type { ContractRouter } from '@orpc/contract';
2
- import type { Router } from '@orpc/server';
3
- import { type ORPCContext, type ORPCContextValue } from './react-context';
4
- import { type ORPCHooksWithContractRouter, type ORPCHooksWithRouter } from './react-hooks';
5
- import { type ORPCUtilsWithContractRouter, type ORPCUtilsWithRouter } from './react-utils';
6
- import { type UseQueriesWithContractRouter, type UseQueriesWithRouter } from './use-queries/hook';
7
- export type ORPCReactWithContractRouter<TRouter extends ContractRouter> = ORPCHooksWithContractRouter<TRouter> & {
8
- useContext: () => ORPCContextValue<TRouter>;
9
- useUtils: () => ORPCUtilsWithContractRouter<TRouter>;
10
- useQueries: UseQueriesWithContractRouter<TRouter>;
1
+ import type { RouterClient } from '@orpc/server';
2
+ import type { ORPCContext, ORPCContextValue } from './react-context';
3
+ import type { ORPCHooks } from './react-hooks';
4
+ import type { ORPCUtils } from './react-utils';
5
+ import type { UseQueries } from './use-queries/hook';
6
+ export type ORPCReact<T extends RouterClient<any>> = ORPCHooks<T> & {
7
+ useContext: () => ORPCContextValue<T>;
8
+ useUtils: () => ORPCUtils<T>;
9
+ useQueries: UseQueries<T>;
11
10
  };
12
- export type ORPCReactWithRouter<TRouter extends Router<any>> = ORPCHooksWithRouter<TRouter> & {
13
- useContext: () => ORPCContextValue<TRouter>;
14
- useUtils: () => ORPCUtilsWithRouter<TRouter>;
15
- useQueries: UseQueriesWithRouter<TRouter>;
16
- };
17
- export declare function createORPCReact<TRouter extends ContractRouter | Router<any>>(): {
18
- orpc: TRouter extends Router<any> ? ORPCReactWithRouter<TRouter> : TRouter extends ContractRouter ? ORPCReactWithContractRouter<TRouter> : never;
19
- ORPCContext: ORPCContext<TRouter>;
11
+ export declare function createORPCReact<T extends RouterClient<any>>(): {
12
+ orpc: ORPCReact<T>;
13
+ ORPCContext: ORPCContext<T>;
20
14
  };
21
15
  //# sourceMappingURL=react.d.ts.map
@@ -1,15 +1,14 @@
1
- import type { SchemaInput } from '@orpc/contract';
2
1
  import type { PartialDeep } from '@orpc/shared';
3
2
  import type { MutationKey, QueryKey } from '@tanstack/react-query';
4
3
  import type { ProcedureHooks } from './procedure-hooks';
5
- import type { ORPCHooksWithContractRouter, ORPCHooksWithRouter } from './react-hooks';
4
+ import type { ORPCHooks } from './react-hooks';
6
5
  export type QueryType = 'query' | 'infinite' | undefined;
7
6
  export interface GetQueryKeyOptions<TInput> {
8
7
  input?: TInput;
9
8
  type?: QueryType;
10
9
  }
11
- export declare function getQueryKey<T extends ORPCHooksWithContractRouter<any> | ORPCHooksWithRouter<any> | ProcedureHooks<any, any, any>>(orpc: T, options?: GetQueryKeyOptions<T extends ProcedureHooks<infer UInputSchema, any, any> ? PartialDeep<SchemaInput<UInputSchema>> : unknown>): QueryKey;
10
+ export declare function getQueryKey<T extends ORPCHooks<any> | ProcedureHooks<any, any>>(orpc: T, options?: GetQueryKeyOptions<T extends ProcedureHooks<infer UInput, any> ? PartialDeep<UInput> : unknown>): QueryKey;
12
11
  export declare function getQueryKeyFromPath(path: string[], options?: GetQueryKeyOptions<unknown>): QueryKey;
13
- export declare function getMutationKey<T extends ORPCHooksWithContractRouter<any> | ORPCHooksWithRouter<any> | ProcedureHooks<any, any, any>>(orpc: T): MutationKey;
12
+ export declare function getMutationKey<T extends ORPCHooks<any> | ProcedureHooks<any, any>>(orpc: T): MutationKey;
14
13
  export declare function getMutationKeyFromPath(path: string[]): MutationKey;
15
14
  //# sourceMappingURL=tanstack-key.d.ts.map
@@ -1,6 +1,5 @@
1
- import type { Schema, SchemaInput } from '@orpc/contract';
2
- export type SchemaInputForInfiniteQuery<TInputSchema extends Schema> = Omit<SchemaInput<TInputSchema>, 'cursor'>;
3
- export type InferCursor<TInputSchema extends Schema> = SchemaInput<TInputSchema> extends {
1
+ export type SchemaInputForInfiniteQuery<TInput> = Omit<TInput, 'cursor'>;
2
+ export type InferCursor<TInput> = TInput extends {
4
3
  cursor?: any;
5
- } ? SchemaInput<TInputSchema>['cursor'] : never;
4
+ } ? TInput['cursor'] : never;
6
5
  //# sourceMappingURL=types.d.ts.map
@@ -1,20 +1,19 @@
1
- import type { Schema, SchemaInput, SchemaOutput } from '@orpc/contract';
2
- import type { Caller } from '@orpc/server';
1
+ import type { ProcedureClient } from '@orpc/server';
3
2
  import type { SetOptional } from '@orpc/shared';
4
3
  import type { DefaultError, OmitKeyof, QueriesPlaceholderDataFunction, QueryKey, UseQueryOptions } from '@tanstack/react-query';
5
4
  type UseQueryOptionsForUseQueries<TQueryFnData, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey> = OmitKeyof<UseQueryOptions<TQueryFnData, TError, TData, TQueryKey>, 'placeholderData'> & {
6
5
  placeholderData?: TQueryFnData | QueriesPlaceholderDataFunction<TQueryFnData>;
7
6
  };
8
- export interface UseQueriesBuilder<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
9
- (input: SchemaInput<TInputSchema>, options?: SetOptional<UseQueryOptionsForUseQueries<SchemaOutput<TOutputSchema, TFuncOutput>>, 'queryFn' | 'queryKey'>): UseQueryOptionsForUseQueries<SchemaOutput<TOutputSchema, TFuncOutput>>;
7
+ export interface UseQueriesBuilder<TInput, TOutput> {
8
+ (input: TInput, options?: SetOptional<UseQueryOptionsForUseQueries<TOutput>, 'queryFn' | 'queryKey'>): UseQueryOptionsForUseQueries<TOutput>;
10
9
  }
11
- export interface CreateUseQueriesBuilderOptions<TInputSchema extends Schema, TOutputSchema extends Schema, TFuncOutput extends SchemaOutput<TOutputSchema>> {
12
- client: Caller<SchemaInput<TInputSchema>, SchemaOutput<TOutputSchema, TFuncOutput>>;
10
+ export interface CreateUseQueriesBuilderOptions<TInput, TOutput> {
11
+ client: ProcedureClient<TInput, TOutput>;
13
12
  /**
14
13
  * The path of procedure on server
15
14
  */
16
15
  path: string[];
17
16
  }
18
- export declare function createUseQueriesBuilder<TInputSchema extends Schema = undefined, TOutputSchema extends Schema = undefined, TFuncOutput extends SchemaOutput<TOutputSchema> = SchemaOutput<TOutputSchema>>(options: CreateUseQueriesBuilderOptions<TInputSchema, TOutputSchema, TFuncOutput>): UseQueriesBuilder<TInputSchema, TOutputSchema, TFuncOutput>;
17
+ export declare function createUseQueriesBuilder<TInput, TOutput>(options: CreateUseQueriesBuilderOptions<TInput, TOutput>): UseQueriesBuilder<TInput, TOutput>;
19
18
  export {};
20
19
  //# sourceMappingURL=builder.d.ts.map
@@ -1,19 +1,14 @@
1
- import type { RouterClient } from '@orpc/client';
2
- import type { ContractProcedure, ContractRouter, SchemaOutput } from '@orpc/contract';
3
- import type { Procedure, Router } from '@orpc/server';
1
+ import type { ProcedureClient, RouterClient } from '@orpc/server';
4
2
  import { type UseQueriesBuilder } from './builder';
5
- export type UseQueriesBuildersWithContractRouter<TRouter extends ContractRouter> = {
6
- [K in keyof TRouter]: TRouter[K] extends ContractProcedure<infer UInputSchema, infer UOutputSchema> ? UseQueriesBuilder<UInputSchema, UOutputSchema, SchemaOutput<UOutputSchema>> : TRouter[K] extends ContractRouter ? UseQueriesBuildersWithContractRouter<TRouter[K]> : never;
3
+ export type UseQueriesBuilders<T extends RouterClient<any>> = T extends ProcedureClient<infer UInput, infer UOutput> ? UseQueriesBuilder<UInput, UOutput> : {
4
+ [K in keyof T]: T[K] extends RouterClient<any> ? UseQueriesBuilders<T[K]> : never;
7
5
  };
8
- export type UseQueriesBuildersWithRouter<TRouter extends Router<any>> = {
9
- [K in keyof TRouter]: TRouter[K] extends Procedure<any, any, infer UInputSchema, infer UOutputSchema, infer UFuncOutput> ? UseQueriesBuilder<UInputSchema, UOutputSchema, UFuncOutput> : TRouter[K] extends Router<any> ? UseQueriesBuildersWithRouter<TRouter[K]> : never;
10
- };
11
- export interface CreateUseQueriesBuildersOptions<TRouter extends Router<any> | ContractRouter> {
12
- client: RouterClient<TRouter>;
6
+ export interface CreateUseQueriesBuildersOptions<T extends RouterClient<any>> {
7
+ client: T;
13
8
  /**
14
9
  * The path of router on server
15
10
  */
16
11
  path?: string[];
17
12
  }
18
- export declare function createUseQueriesBuilders<TRouter extends Router<any> | ContractRouter>(options: CreateUseQueriesBuildersOptions<TRouter>): TRouter extends Router<any> ? UseQueriesBuildersWithRouter<TRouter> : TRouter extends ContractRouter ? UseQueriesBuildersWithContractRouter<TRouter> : never;
13
+ export declare function createUseQueriesBuilders<T extends RouterClient<any>>(options: CreateUseQueriesBuildersOptions<T>): UseQueriesBuilders<T>;
19
14
  //# sourceMappingURL=builders.d.ts.map
@@ -1,16 +1,12 @@
1
- import type { ContractRouter } from '@orpc/contract';
2
- import type { Router } from '@orpc/server';
3
- import { type QueriesOptions, type QueriesResults } from '@tanstack/react-query';
4
- import { type ORPCContext } from '../react-context';
5
- import { type UseQueriesBuildersWithContractRouter, type UseQueriesBuildersWithRouter } from './builders';
6
- export interface UseQueriesWithContractRouter<TRouter extends ContractRouter> {
7
- <T extends Array<any> = [], TCombinedResult = QueriesResults<T>>(build: (builders: UseQueriesBuildersWithContractRouter<TRouter>) => [...QueriesOptions<T>], combine?: (result: QueriesResults<T>) => TCombinedResult): TCombinedResult;
1
+ import type { RouterClient } from '@orpc/server';
2
+ import type { QueriesOptions, QueriesResults } from '@tanstack/react-query';
3
+ import type { ORPCContext } from '../react-context';
4
+ import type { UseQueriesBuilders } from './builders';
5
+ export interface UseQueries<T extends RouterClient<any>> {
6
+ <U extends Array<any> = [], UCombinedResult = QueriesResults<U>>(build: (builders: UseQueriesBuilders<T>) => [...QueriesOptions<U>], combine?: (result: QueriesResults<U>) => UCombinedResult): UCombinedResult;
8
7
  }
9
- export interface UseQueriesWithRouter<TRouter extends Router<any>> {
10
- <T extends Array<any> = [], TCombinedResult = QueriesResults<T>>(build: (builders: UseQueriesBuildersWithRouter<TRouter>) => [...QueriesOptions<T>], combine?: (result: QueriesResults<T>) => TCombinedResult): TCombinedResult;
8
+ export interface UseQueriesFactoryOptions<T extends RouterClient<any>> {
9
+ context: ORPCContext<T>;
11
10
  }
12
- export interface UseQueriesFactoryOptions<TRouter extends Router<any> | ContractRouter> {
13
- context: ORPCContext<TRouter>;
14
- }
15
- export declare function useQueriesFactory<TRouter extends Router<any> | ContractRouter>(options: UseQueriesFactoryOptions<TRouter>): TRouter extends Router<any> ? UseQueriesWithRouter<TRouter> : TRouter extends ContractRouter ? UseQueriesWithContractRouter<TRouter> : never;
11
+ export declare function useQueriesFactory<T extends RouterClient<any>>(options: UseQueriesFactoryOptions<T>): UseQueries<T>;
16
12
  //# sourceMappingURL=hook.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@orpc/react",
3
3
  "type": "module",
4
- "version": "0.16.0",
4
+ "version": "0.17.0",
5
5
  "license": "MIT",
6
6
  "homepage": "https://orpc.unnoq.com",
7
7
  "repository": {
@@ -31,12 +31,12 @@
31
31
  "peerDependencies": {
32
32
  "@tanstack/react-query": ">=5.55.0",
33
33
  "react": ">=18.3.0",
34
- "@orpc/client": "0.16.0",
35
- "@orpc/server": "0.16.0",
36
- "@orpc/contract": "0.16.0"
34
+ "@orpc/server": "0.17.0",
35
+ "@orpc/client": "0.17.0",
36
+ "@orpc/contract": "0.17.0"
37
37
  },
38
38
  "dependencies": {
39
- "@orpc/shared": "0.16.0"
39
+ "@orpc/shared": "0.17.0"
40
40
  },
41
41
  "devDependencies": {
42
42
  "zod": "^3.24.1"