UNPKG

@hazae41/jsonrpc

Version:

Rust-like JSON-RPC for TypeScript

23 lines (20 loc) 639 B
import { Ok } from '@hazae41/result'; import { RpcId } from './request.js'; interface RpcOkInit<T = unknown> { readonly jsonrpc: "2.0"; readonly id: RpcId; readonly result: T; } declare namespace RpcOkInit { function from<T>(response: RpcOk<T>): RpcOkInit<T>; } declare class RpcOk<T = unknown> extends Ok<T> { readonly id: RpcId; readonly result: T; readonly jsonrpc = "2.0"; constructor(id: RpcId, result: T); static from<T>(init: RpcOkInit<T>): RpcOk<T>; static rewrap<T extends Ok.Infer<T>>(id: RpcId, result: T): RpcOk<Ok.Inner<T>>; toJSON(): RpcOkInit<T>; } export { RpcOk, RpcOkInit };