UNPKG

modular-json-rpc

Version:

Modular JSON-RPC 2.0 library that allows easy addition of transports

23 lines (22 loc) 936 B
/// <reference types="node" /> import { RequestMap, RPCClientBase } from './RPCClient'; import { MethodHandler, MethodHandlerMap, RPCServerBase } from './RPCServer'; import { Transport } from './Transport'; import { RPCMessage, RPCRequest, RPCResponse } from './Message'; import { EventEmitter } from 'events'; declare class RPCNode extends EventEmitter implements RPCClientBase, RPCServerBase { requestId: number; requests: RequestMap; requestTimeout: number; call(name: string, ...params: any[]): Promise<{}>; notify(name: string, ...params: any[]): void; handleResponse(res: RPCResponse): void; handlers: MethodHandlerMap; bind(name: string, handler: MethodHandler): void; handleRequest(req: RPCRequest): Promise<void>; private transport; constructor(transport: Transport); parseMessage(data: string): void; send(msg: RPCMessage): void; } export { RPCNode };