import * as z from 'zod';
export declare const JSON_RPC_VERSION_2 = "2.0";
export declare const RpcIdSchema: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
export type RpcId = z.infer<typeof RpcIdSchema>;
export declare const RpcRequestSchema: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "strict", z.ZodTypeAny, {
    id: string | number | null;
    method: string;
    jsonrpc: "2.0";
    params?: any;
}, {
    id: string | number | null;
    method: string;
    jsonrpc: "2.0";
    params?: any;
}>;
export declare const inferRpcRequestWithoutParamsSchema: <M extends string>({ method }: {
    method: M;
}) => z.ZodObject<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method" | "params">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method" | "params">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>>, any> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method" | "params">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>>, any>[k]; } : never, z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method" | "params">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>> extends infer T_1 ? { [k_1 in keyof T_1]: z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method" | "params">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>>[k_1]; } : never>;
export declare const inferRpcRequestWithParamsSchema: <T extends z.ZodTypeAny, M extends string>({ params, method }: {
    params: T;
    method: M;
}) => z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, {
    params: T;
}>, "strip", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, {
    params: T;
}>>, any> extends infer T_1 ? { [k in keyof T_1]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, {
    params: T;
}>>, any>[k]; } : never, z.baseObjectInputType<z.objectUtil.extendShape<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, {
    params: T;
}>> extends infer T_2 ? { [k_1 in keyof T_2]: z.baseObjectInputType<z.objectUtil.extendShape<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "method">, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
    method: z.ZodLiteral<M>;
}>, {
    params: T;
}>>[k_1]; } : never>;
export declare const RpcNotificationSchema: z.ZodObject<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    method: z.ZodString;
    params: z.ZodOptional<z.ZodAny>;
}>, "id">, "strict", z.ZodTypeAny, {
    method: string;
    jsonrpc: "2.0";
    params?: any;
}, {
    method: string;
    jsonrpc: "2.0";
    params?: any;
}>;
export declare enum RpcErrorCode {
    /**
     * Invalid JSON was received by the server.
     * An error occurred on the server while parsing the JSON text.
     */
    PARSE_ERROR = -32700,
    /**
     * The JSON sent is not a valid Request object.
     */
    INVALID_REQUEST = -32600,
    /**
     * The method does not exist / is not available.
     */
    METHOD_NOT_FOUND = -32601,
    /**
     * Invalid method parameter(s).
     */
    INVALID_PARAMS = -32602,
    /**
     * Internal JSON-RPC error.
     */
    INTERNAL_ERROR = -32603,
    /**
     * Reserved for implementation-defined server-errors.
     */
    SERVER_ERROR = -32000
}
declare const RpcResponseErrorCodeSchema: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
export type RpcResponseErrorCode = z.infer<typeof RpcResponseErrorCodeSchema>;
declare const RpcResponseErrorSchema: z.ZodObject<{
    code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
    message: z.ZodString;
    data: z.ZodOptional<z.ZodNever>;
}, "strip", z.ZodTypeAny, {
    code: number;
    message: string;
    data?: undefined;
}, {
    code: number;
    message: string;
    data?: undefined;
}>;
export type RpcResponseError = z.infer<typeof RpcResponseErrorSchema>;
declare const RpcResponseSchema: z.ZodObject<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, "strip", z.ZodTypeAny, {
    id: string | number | null;
    jsonrpc: "2.0";
}, {
    id: string | number | null;
    jsonrpc: "2.0";
}>;
export type RpcResponse = z.infer<typeof RpcResponseSchema>;
export declare const RpcResponseWithErrorSchema: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "strict", z.ZodTypeAny, {
    error: {
        code: number;
        message: string;
        data?: undefined;
    };
    id: string | number | null;
    jsonrpc: "2.0";
}, {
    error: {
        code: number;
        message: string;
        data?: undefined;
    };
    id: string | number | null;
    jsonrpc: "2.0";
}>;
export type RpcResponseWithError = z.infer<typeof RpcResponseWithErrorSchema>;
export declare const inferRpcResponseSchema: <T extends z.ZodTypeAny>(result: T) => z.ZodEffects<z.ZodObject<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>, "strict", z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>, any> extends infer T_1 ? { [k in keyof T_1]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>, any>[k]; } : never, z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>> extends infer T_2 ? { [k_1 in keyof T_2]: z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>[k_1]; } : never>, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>, any> extends infer T_1 ? { [k in keyof T_1]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>, any>[k]; } : never, z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>> extends infer T_2 ? { [k_1 in keyof T_2]: z.baseObjectInputType<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<T>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>>[k_1]; } : never>;
export declare const RpcResponseWithResultOrErrorSchema: z.ZodEffects<z.ZodObject<z.objectUtil.extendShape<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<{
    jsonrpc: z.ZodLiteral<"2.0">;
    id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>>;
}, {
    id: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodNull]>;
}>, {
    error: z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>;
}>, "error">, {
    result: z.ZodOptional<z.ZodAny>;
    error: z.ZodOptional<z.ZodObject<{
        code: z.ZodUnion<[z.ZodNumber, z.ZodNativeEnum<typeof RpcErrorCode>]>;
        message: z.ZodString;
        data: z.ZodOptional<z.ZodNever>;
    }, "strip", z.ZodTypeAny, {
        code: number;
        message: string;
        data?: undefined;
    }, {
        code: number;
        message: string;
        data?: undefined;
    }>>;
}>, "strict", z.ZodTypeAny, {
    id: string | number | null;
    jsonrpc: "2.0";
    error?: {
        code: number;
        message: string;
        data?: undefined;
    } | undefined;
    result?: any;
}, {
    id: string | number | null;
    jsonrpc: "2.0";
    error?: {
        code: number;
        message: string;
        data?: undefined;
    } | undefined;
    result?: any;
}>, {
    id: string | number | null;
    jsonrpc: "2.0";
    error?: {
        code: number;
        message: string;
        data?: undefined;
    } | undefined;
    result?: any;
}, {
    id: string | number | null;
    jsonrpc: "2.0";
    error?: {
        code: number;
        message: string;
        data?: undefined;
    } | undefined;
    result?: any;
}>;
export {};
