export interface JsonRpcProviderMessage { type: string; data: T; } export interface RequestArguments { method: string; params?: T; id?: number; } export interface JsonRpcRequest extends Required> { id: number; jsonrpc: string; } export interface JsonRpcResult { id: number; jsonrpc: string; result: T; } export interface JsonRpcError { id: number; jsonrpc: string; error: ErrorResponse; } export interface ErrorResponse { code: number; message: string; data?: string; } export type JsonRpcResponse = JsonRpcResult | JsonRpcError; export type JsonRpcPayload

= JsonRpcRequest

| JsonRpcResponse; export declare function isJsonRpcPayload(payload: any): payload is JsonRpcPayload; export declare function isJsonRpcRequest(payload: JsonRpcPayload): payload is JsonRpcRequest; export declare function isJsonRpcResponse(payload: JsonRpcPayload): payload is JsonRpcResponse; export declare function isJsonRpcResult(payload: JsonRpcPayload): payload is JsonRpcResult; export declare function isJsonRpcError(payload: JsonRpcPayload): payload is JsonRpcError; export declare function payloadId(): number; export declare function getBigIntRpcId(): bigint; export declare function formatJsonRpcRequest(method: string, params: T, id?: number): JsonRpcRequest; export declare function formatJsonRpcResult(id: number, result: T): JsonRpcResult; export declare function formatJsonRpcError(id: number, error?: string | ErrorResponse, data?: string): JsonRpcError; export declare function isReservedErrorCode(code: number): boolean; export declare function getError(type: string): ErrorResponse; export declare function getErrorByCode(code: number): ErrorResponse; export declare function formatErrorMessage(error?: string | ErrorResponse, data?: string): ErrorResponse; export declare function isHttpUrl(url: string): boolean; export declare function isWsUrl(url: string): boolean; export declare function parseConnectionError(e: Error, url: string, type: string): Error;