RpcClient
tipo
Cliente RPC tipado: un árbol de funciones según el ID de cada procedimiento
(rpc.users.get(input, { signal })), que devuelven su salida o rechazan con ClientError.
ts
import type { RpcClient } from "@meekojs/meeko/framework";Código fuente src/shared/clients.ts:276
Declaración #
ts
type RpcClient<Contract extends Record<string, RpcOperation>> = Intersection<
{
[Key in keyof Contract & string]: Nest<Key, (input: Contract[Key]['input'], options?: RequestOptions) => Promise<Contract[Key]['output']>>
}[keyof Contract & string]
>Parámetros de tipo #
-
Contractextends Record<string, RpcOperation> Contrato
RpcContractgenerado, indexado por ID de procedimiento.
Ejemplo #
ts
import type { RpcClient, RpcOperation } from "@meekojs/meeko/framework";
declare const rpc: RpcClient<{ "users.get": RpcOperation<{ id: string }, { name: string }> }>;
const user = await rpc.users.get({ id: "123" }, { signal: AbortSignal.timeout(5_000) });Véase también #
- API y RPC Framework full-stack