import { RPCMiddleware } from "./createRPCMiddleware"; import { ErrorLike } from "./lib/isErrorLike"; export type Procedures = Record | Record | Record | Record | Record>>>>>; export type Procedure = (...args: TArgs) => unknown | Promise; export type ProcedureCallServerArgs = { procedurePath: string[]; procedureArgs: unknown[]; }; export type ProcedureCallServerResponse = { data?: unknown; } | { error: unknown; }; export type ExtractProcedures> = TRPCMiddleware extends RPCMiddleware ? TProcedures : never; export type OnErrorEventHandler = (args: { error: ErrorLike; } & ProcedureCallServerArgs) => Promise | void;