@jsonjoy.com/reactive-rpc
Version:
Reactive-RPC is a library for building reactive APIs over WebSocket, HTTP, and other RPCs.
13 lines (12 loc) • 2.8 kB
TypeScript
import { type ResolveType, TypeSystem } from '@jsonjoy.com/json-type';
export declare const system: TypeSystem;
export declare const JsonRpc2Id: import("@jsonjoy.com/json-type").NumberType;
export declare const JsonRpc2Notification: import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"jsonrpc", import("@jsonjoy.com/json-type").ConstType<"2.0">>, import("@jsonjoy.com/json-type").ObjectFieldType<"method", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectOptionalFieldType<"params", import("@jsonjoy.com/json-type").AnyType>]>;
export declare const JsonRpc2Request: import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"jsonrpc", import("@jsonjoy.com/json-type").ConstType<"2.0">>, import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").RefType<import("@jsonjoy.com/json-type").NumberType>>, import("@jsonjoy.com/json-type").ObjectFieldType<"method", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectOptionalFieldType<"params", import("@jsonjoy.com/json-type").AnyType>]>;
export declare const JsonRpc2Response: import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"jsonrpc", import("@jsonjoy.com/json-type").ConstType<"2.0">>, import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").RefType<import("@jsonjoy.com/json-type").NumberType>>, import("@jsonjoy.com/json-type").ObjectFieldType<"result", import("@jsonjoy.com/json-type").AnyType>]>;
export declare const JsonRpc2Error: import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"jsonrpc", import("@jsonjoy.com/json-type").ConstType<"2.0">>, import("@jsonjoy.com/json-type").ObjectFieldType<"id", import("@jsonjoy.com/json-type").RefType<import("@jsonjoy.com/json-type").NumberType>>, import("@jsonjoy.com/json-type").ObjectFieldType<"error", import("@jsonjoy.com/json-type").ObjectType<[import("@jsonjoy.com/json-type").ObjectFieldType<"message", import("@jsonjoy.com/json-type").StringType>, import("@jsonjoy.com/json-type").ObjectFieldType<"code", import("@jsonjoy.com/json-type").NumberType>, import("@jsonjoy.com/json-type").ObjectOptionalFieldType<"data", import("@jsonjoy.com/json-type").AnyType>]>>]>;
export type JsonRpc2NotificationMessage = ResolveType<typeof JsonRpc2Notification>;
export type JsonRpc2RequestMessage = ResolveType<typeof JsonRpc2Request>;
export type JsonRpc2ResponseMessage = ResolveType<typeof JsonRpc2Response>;
export type JsonRpc2ErrorMessage = ResolveType<typeof JsonRpc2Error>;
export type JsonRpc2Message = JsonRpc2NotificationMessage | JsonRpc2RequestMessage | JsonRpc2ResponseMessage | JsonRpc2ErrorMessage;