# Type Alias: TRPCClient<TRouter>

> 

> **TRPCClient**\<`TRouter`\>: `DecoratedProcedureRecord`\<\{ `errorShape`: `TRouter`\[`"_def"`\]\[`"_config"`\]\[`"$types"`\]\[`"errorShape"`\]; `transformer`: `TRouter`\[`"_def"`\]\[`"_config"`\]\[`"$types"`\]\[`"transformer"`\]; \}, `TRouter`\[`"_def"`\]\[`"record"`\]\> & `object`

Defined in: packages/client/dist/index.d.mts:177

A typed client for a router, as `createTRPCClient` returns it. Each
procedure has `.query()`, `.mutate()` or `.subscribe()`.

## Type declaration

### \[untypedClientSymbol\]

> **\[untypedClientSymbol\]**: [`TRPCUntypedClient`](https://trpc.io/docs/typedoc/react-query/index/classes/TRPCUntypedClient.md)\<`TRouter`\>

## Type Parameters

| Type Parameter |
| ------ |
| `TRouter` *extends* `AnyRouter` |

## See

https://trpc.io/docs/client/vanilla/infer-types
