UNPKG

trpc-webrtc

Version:

A set of TRPC adapters for communication via RTCDataChannel in the browser

25 lines (24 loc) 1.03 kB
import { AnyRouter, ProcedureType, inferRouterContext, TRPCError, CombinedDataTransformer } from "@trpc/server"; import { TRPCClientOutgoingMessage } from "@trpc/server/rpc"; export declare function parseMessage(obj: unknown, transformer: CombinedDataTransformer): TRPCClientOutgoingMessage; /** * Data channel "server" handler */ export type DataChannelHandlerOptions<TRouter extends AnyRouter> = { onError?: (opts: { error: TRPCError; type: ProcedureType | "unknown"; path: string | undefined; input: unknown; ctx: undefined | inferRouterContext<TRouter>; }) => void; createContext?: () => inferRouterContext<TRouter> | Promise<inferRouterContext<TRouter>>; router: TRouter; dataChannel: RTCDataChannel; }; export declare function applyDataChannelHandler<TRouter extends AnyRouter>(opts: DataChannelHandlerOptions<TRouter>): { /** * Don't use this, data channels can't be automatically reconnected. */ broadcastReconnectNotification: () => never; };