opnet
Version:
The perfect library for building Bitcoin-based applications.
52 lines (51 loc) • 1.81 kB
TypeScript
import { JSONRpcMethods } from './JSONRpcMethods.js';
export interface JSONRpc2ResultData<T extends JSONRpcMethods> {
}
export declare enum JSONRPCErrorCode {
PARSE_ERROR = -32700,
INVALID_REQUEST = -32600,
METHOD_NOT_FOUND = -32601,
INVALID_PARAMS = -32602,
INTERNAL_ERROR = -32603,
SERVER_ERROR = -32000,
APPLICATION_ERROR = -32099,
SYSTEM_ERROR = -32098,
TRANSPORT_ERROR = -32097,
GENERIC_ERROR = -32096
}
export declare enum JSONRPCErrorHttpCodes {
PARSE_ERROR = 500,
INVALID_REQUEST = 400,
METHOD_NOT_FOUND = 404,
INVALID_PARAMS = 400,
INTERNAL_ERROR = 500,
SERVER_ERROR = 500,
APPLICATION_ERROR = 500,
SYSTEM_ERROR = 500,
TRANSPORT_ERROR = 500,
GENERIC_ERROR = 500
}
export interface JSONRpcErrorData<T extends JSONRpcMethods> {
}
export interface JSONRpcResultError<T extends JSONRpcMethods> {
readonly code: JSONRPCErrorCode;
readonly message: string;
readonly data?: JSONRpcErrorData<T>;
}
interface JSONRpc2ResultBase<T extends JSONRpcMethods> {
readonly jsonrpc: '2.0';
readonly id: number | string | null;
readonly result?: JSONRpc2ResultData<T>;
readonly error?: JSONRpcResultError<T>;
}
export interface JSONRpc2ResponseResult<T extends JSONRpcMethods> extends JSONRpc2ResultBase<T> {
readonly result: JSONRpc2ResultData<T>;
}
export interface JSONRpc2ResponseError<T extends JSONRpcMethods> extends JSONRpc2ResultBase<T> {
readonly error: JSONRpcResultError<T>;
}
export type JsonRpcError = JSONRpc2ResponseError<JSONRpcMethods>;
export type JsonRpcResult = JSONRpc2ResponseResult<JSONRpcMethods>;
export type JSONRpc2Result<T extends JSONRpcMethods> = JSONRpc2ResponseResult<T> | JSONRpc2ResponseError<T>;
export type JsonRpcCallResult = (JsonRpcResult | JsonRpcError)[];
export {};