/** * JSON-RPC 2.0 protocol types */ /** * JSON-RPC message ID - can be string, number, or null */ export type JsonRpcId = string | number | null; /** * JSON-RPC error object */ export interface JsonRpcError { code: number; message: string; data?: unknown; } /** * JSON-RPC request message */ export interface JsonRpcRequest { jsonrpc: "2.0"; id: JsonRpcId; method: string; params?: unknown; } /** * JSON-RPC notification message (request without id) */ export interface JsonRpcNotification { jsonrpc: "2.0"; method: string; params?: unknown; } /** * JSON-RPC success response */ export interface JsonRpcSuccessResponse { jsonrpc: "2.0"; id: JsonRpcId; result: unknown; } /** * JSON-RPC error response */ export interface JsonRpcErrorResponse { jsonrpc: "2.0"; id: JsonRpcId; error: JsonRpcError; } /** * JSON-RPC response (success or error) */ export type JsonRpcResponse = JsonRpcSuccessResponse | JsonRpcErrorResponse; /** * Any JSON-RPC message */ export type JsonRpcMessage = JsonRpcRequest | JsonRpcNotification | JsonRpcResponse; /** * Type guard for JSON-RPC request */ export declare function isJsonRpcRequest(message: JsonRpcMessage): message is JsonRpcRequest; /** * Type guard for JSON-RPC notification */ export declare function isJsonRpcNotification(message: JsonRpcMessage): message is JsonRpcNotification; /** * Type guard for JSON-RPC response */ export declare function isJsonRpcResponse(message: JsonRpcMessage): message is JsonRpcResponse; /** * Type guard for JSON-RPC success response */ export declare function isJsonRpcSuccessResponse(message: JsonRpcMessage): message is JsonRpcSuccessResponse; /** * Type guard for JSON-RPC error response */ export declare function isJsonRpcErrorResponse(message: JsonRpcMessage): message is JsonRpcErrorResponse; /** * Standard JSON-RPC error codes */ export declare const JsonRpcErrorCodes: { readonly PARSE_ERROR: -32700; readonly INVALID_REQUEST: -32600; readonly METHOD_NOT_FOUND: -32601; readonly INVALID_PARAMS: -32602; readonly INTERNAL_ERROR: -32603; }; /** * Create a JSON-RPC request */ export declare function createRequest(id: JsonRpcId, method: string, params?: unknown): JsonRpcRequest; /** * Create a JSON-RPC notification */ export declare function createNotification(method: string, params?: unknown): JsonRpcNotification; /** * Create a JSON-RPC success response */ export declare function createSuccessResponse(id: JsonRpcId, result: unknown): JsonRpcSuccessResponse; /** * Create a JSON-RPC error response */ export declare function createErrorResponse(id: JsonRpcId, error: JsonRpcError): JsonRpcErrorResponse; //# sourceMappingURL=json-rpc.d.ts.map