Interface: TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut, TCaller, TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:198
Type Parameters
| Type Parameter | Default type |
|---|---|
TContext | - |
TMeta | - |
TContextOverrides | - |
TInputIn | - |
TInputOut | - |
TOutputIn | - |
TOutputOut | - |
TCaller extends boolean | - |
TErrorShape | unknown |
Methods
concat()
concat<
$Context,$Meta,$ContextOverrides,$InputIn,$InputOut,$OutputIn,$OutputOut,$ErrorShape>(builder):TRPCProcedureBuilder<TContext,TMeta,Overwrite<TContextOverrides,$ContextOverrides>,IntersectIfDefined<TInputIn,$InputIn>,IntersectIfDefined<TInputOut,$InputOut>,IntersectIfDefined<TOutputIn,$OutputIn>,IntersectIfDefined<TOutputOut,$OutputOut>,TCaller,FoldErrorShape<TErrorShape,$ErrorShape>>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:371
Combine two procedure builders
Type Parameters
| Type Parameter |
|---|
$Context |
$Meta |
$ContextOverrides |
$InputIn |
$InputOut |
$OutputIn |
$OutputOut |
$ErrorShape |
Parameters
| Parameter | Type |
|---|---|
builder | Overwrite<TContext, TContextOverrides> extends $Context ? TMeta extends $Meta ? TRPCProcedureBuilder<$Context, $Meta, $ContextOverrides, $InputIn, $InputOut, $OutputIn, $OutputOut, TCaller, $ErrorShape> : TypeError<"Meta mismatch"> : TypeError<"Context mismatch"> |
Returns
TRPCProcedureBuilder<TContext, TMeta, Overwrite<TContextOverrides, $ContextOverrides>, IntersectIfDefined<TInputIn, $InputIn>, IntersectIfDefined<TInputOut, $InputOut>, IntersectIfDefined<TOutputIn, $OutputIn>, IntersectIfDefined<TOutputOut, $OutputOut>, TCaller, FoldErrorShape<TErrorShape, $ErrorShape>>
errors()
errors<
$Shape>(formatter):TRPCProcedureBuilder<TContext,TMeta,TContextOverrides,TInputIn,TInputOut,TOutputIn,TOutputOut,TCaller,FoldErrorShape<TErrorShape,$Shape>>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:284
Add per procedure error formatters.
An error will bubble until a .errors() handler returns a shape
or it reaches the global errorFormatter
Type Parameters
| Type Parameter |
|---|
$Shape extends undefined | void | TRPCErrorShape<object> |
Parameters
| Parameter | Type |
|---|---|
formatter | ProcedureErrorFormatter<TContext, TContextOverrides, $Shape> |
Returns
TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut, TCaller, FoldErrorShape<TErrorShape, $Shape>>
See
https://trpc.io/docs/v11/server/error-formatting
experimental_caller()
experimental_caller(
caller):TRPCProcedureBuilder<TContext,TMeta,TContextOverrides,TInputIn,TInputOut,TOutputIn,TOutputOut,true,TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:502
Overrides the way a procedure is invoked Do not use this unless you know what you're doing - this is an experimental API
Parameters
| Parameter | Type |
|---|---|
caller | CallerOverride<TContext> |
Returns
TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut, true, TErrorShape>
input()
input<
$Parser>(schema):TRPCProcedureBuilder<TContext,TMeta,TContextOverrides,IntersectIfDefined<TInputIn,inferParser<$Parser>["in"]>,IntersectIfDefined<TInputOut,inferParser<$Parser>["out"]>,TOutputIn,TOutputOut,TCaller,TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:219
Add an input parser to the procedure.
Type Parameters
| Type Parameter |
|---|
$Parser extends Parser |
Parameters
| Parameter | Type |
|---|---|
schema | TInputOut extends UnsetMarker ? $Parser : inferParser<$Parser>["out"] extends undefined | Record<string, unknown> ? TInputOut extends undefined | Record<string, unknown> ? undefined extends any[any] ? undefined extends TInputOut<TInputOut> ? $Parser : TypeError<"Cannot chain an optional parser to a required parser"> : $Parser : TypeError<"All input parsers did not resolve to an object"> : TypeError<"All input parsers did not resolve to an object"> |
Returns
TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, IntersectIfDefined<TInputIn, inferParser<$Parser>["in"]>, IntersectIfDefined<TInputOut, inferParser<$Parser>["out"]>, TOutputIn, TOutputOut, TCaller, TErrorShape>
See
https://trpc.io/docs/v11/server/validators
meta()
meta(
meta):TRPCProcedureBuilder<TContext,TMeta,TContextOverrides,TInputIn,TInputOut,TOutputIn,TOutputOut,TCaller,TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:263
Add a meta data to the procedure.
Parameters
| Parameter | Type |
|---|---|
meta | TMeta |
Returns
TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, TOutputIn, TOutputOut, TCaller, TErrorShape>
See
https://trpc.io/docs/v11/server/metadata
mutation()
mutation<
$Output>(resolver):TCallerextendstrue? (input) =>Promise<DefaultValue<TOutputOut,$Output>> :TRPCMutationProcedure<{errorShape:TErrorShape;input:DefaultValue<TInputIn,void>;meta:TMeta;output:DefaultValue<TOutputOut,$Output>; }>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:435
Mutation procedure
Type Parameters
| Type Parameter |
|---|
$Output |
Parameters
| Parameter | Type |
|---|---|
resolver | ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output> |
Returns
TCaller extends true ? (input) => Promise<DefaultValue<TOutputOut, $Output>> : TRPCMutationProcedure<{ errorShape: TErrorShape; input: DefaultValue<TInputIn, void>; meta: TMeta; output: DefaultValue<TOutputOut, $Output>; }>
See
https://trpc.io/docs/v11/concepts#vocabulary
output()
output<
$Parser>(schema):TRPCProcedureBuilder<TContext,TMeta,TContextOverrides,TInputIn,TInputOut,IntersectIfDefined<TOutputIn,inferParser<$Parser>["in"]>,IntersectIfDefined<TOutputOut,inferParser<$Parser>["out"]>,TCaller,TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:246
Add an output parser to the procedure.
Type Parameters
| Type Parameter |
|---|
$Parser extends Parser |
Parameters
| Parameter | Type |
|---|---|
schema | $Parser |
Returns
TRPCProcedureBuilder<TContext, TMeta, TContextOverrides, TInputIn, TInputOut, IntersectIfDefined<TOutputIn, inferParser<$Parser>["in"]>, IntersectIfDefined<TOutputOut, inferParser<$Parser>["out"]>, TCaller, TErrorShape>
See
https://trpc.io/docs/v11/server/validators
query()
query<
$Output>(resolver):TCallerextendstrue? (input) =>Promise<DefaultValue<TOutputOut,$Output>> :TRPCQueryProcedure<{errorShape:TErrorShape;input:DefaultValue<TInputIn,void>;meta:TMeta;output:DefaultValue<TOutputOut,$Output>; }>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:411
Query procedure
Type Parameters
| Type Parameter |
|---|
$Output |
Parameters
| Parameter | Type |
|---|---|
resolver | ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output> |
Returns
TCaller extends true ? (input) => Promise<DefaultValue<TOutputOut, $Output>> : TRPCQueryProcedure<{ errorShape: TErrorShape; input: DefaultValue<TInputIn, void>; meta: TMeta; output: DefaultValue<TOutputOut, $Output>; }>
See
https://trpc.io/docs/v11/concepts#vocabulary
subscription()
Call Signature
subscription<
$Output>(resolver):TCallerextendstrue?TypeError<"Not implemented"> :TRPCSubscriptionProcedure<{errorShape:TErrorShape;input:DefaultValue<TInputIn,void>;meta:TMeta;output:inferSubscriptionOutput<DefaultValue<TOutputOut,$Output>>; }>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:459
Subscription procedure
Type Parameters
| Type Parameter |
|---|
$Output extends AsyncIterable<any, void, any> |
Parameters
| Parameter | Type |
|---|---|
resolver | ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output> |
Returns
TCaller extends true ? TypeError<"Not implemented"> : TRPCSubscriptionProcedure<{ errorShape: TErrorShape; input: DefaultValue<TInputIn, void>; meta: TMeta; output: inferSubscriptionOutput<DefaultValue<TOutputOut, $Output>>; }>
See
https://trpc.io/docs/v11/server/subscriptions
Call Signature
subscription<
$Output>(resolver):TCallerextendstrue?TypeError<"Not implemented"> :LegacyObservableSubscriptionProcedure<{errorShape:TErrorShape;input:DefaultValue<TInputIn,void>;meta:TMeta;output:inferObservableValue<DefaultValue<TOutputOut,$Output>>; }>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:481
Type Parameters
| Type Parameter |
|---|
$Output extends Observable<any, any> |
Parameters
| Parameter | Type |
|---|---|
resolver | ProcedureResolver<TContext, TMeta, TContextOverrides, TInputOut, TOutputIn, $Output> |
Returns
TCaller extends true ? TypeError<"Not implemented"> : LegacyObservableSubscriptionProcedure<{ errorShape: TErrorShape; input: DefaultValue<TInputIn, void>; meta: TMeta; output: inferObservableValue<DefaultValue<TOutputOut, $Output>>; }>
Deprecated
Using subscriptions with an observable is deprecated. Use an async generator instead. This feature will be removed in v12 of tRPC.
See
https://trpc.io/docs/v11/server/subscriptions
unstable_concat()
unstable_concat<
$Context,$Meta,$ContextOverrides,$InputIn,$InputOut,$OutputIn,$OutputOut,$ErrorShape>(builder):TRPCProcedureBuilder<TContext,TMeta,Overwrite<TContextOverrides,$ContextOverrides>,IntersectIfDefined<TInputIn,$InputIn>,IntersectIfDefined<TInputOut,$InputOut>,IntersectIfDefined<TOutputIn,$OutputIn>,IntersectIfDefined<TOutputOut,$OutputOut>,TCaller,FoldErrorShape<TErrorShape,$ErrorShape>>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:331
Type Parameters
| Type Parameter |
|---|
$Context |
$Meta |
$ContextOverrides |
$InputIn |
$InputOut |
$OutputIn |
$OutputOut |
$ErrorShape |
Parameters
| Parameter | Type |
|---|---|
builder | Overwrite<TContext, TContextOverrides> extends $Context ? TMeta extends $Meta ? TRPCProcedureBuilder<$Context, $Meta, $ContextOverrides, $InputIn, $InputOut, $OutputIn, $OutputOut, TCaller, $ErrorShape> : TypeError<"Meta mismatch"> : TypeError<"Context mismatch"> |
Returns
TRPCProcedureBuilder<TContext, TMeta, Overwrite<TContextOverrides, $ContextOverrides>, IntersectIfDefined<TInputIn, $InputIn>, IntersectIfDefined<TInputOut, $InputOut>, IntersectIfDefined<TOutputIn, $OutputIn>, IntersectIfDefined<TOutputOut, $OutputOut>, TCaller, FoldErrorShape<TErrorShape, $ErrorShape>>
Deprecated
use concat instead
use()
use<
$ContextOverridesOut>(fn):TRPCProcedureBuilder<TContext,TMeta,Overwrite<TContextOverrides,$ContextOverridesOut>,TInputIn,TInputOut,TOutputIn,TOutputOut,TCaller,TErrorShape>
Defined in: packages/server/src/unstable-core-do-not-import/procedureBuilder.ts:301
Add a middleware to the procedure.
Type Parameters
| Type Parameter |
|---|
$ContextOverridesOut |
Parameters
| Parameter | Type |
|---|---|
fn | MiddlewareBuilder<Overwrite<TContext, TContextOverrides>, TMeta, $ContextOverridesOut, TInputOut> | MiddlewareFunction<TContext, TMeta, TContextOverrides, $ContextOverridesOut, TInputOut> |
Returns
TRPCProcedureBuilder<TContext, TMeta, Overwrite<TContextOverrides, $ContextOverridesOut>, TInputIn, TInputOut, TOutputIn, TOutputOut, TCaller, TErrorShape>