import * as z from "zod/v3";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
/**
 * Request id (arbitrary JSON scalar)
 */
export type Id = {};
/**
 * Method parameters (arbitrary JSON)
 */
export type Params = {};
export type JsonRpcMessageDto = {
    /**
     * Request id (arbitrary JSON scalar)
     */
    id?: Id | undefined;
    /**
     * JSON-RPC protocol version
     */
    jsonrpc: string;
    /**
     * JSON-RPC method name
     */
    method: string;
    /**
     * Method parameters (arbitrary JSON)
     */
    params?: Params | undefined;
};
/** @internal */
export declare const Id$inboundSchema: z.ZodType<Id, z.ZodTypeDef, unknown>;
/** @internal */
export type Id$Outbound = {};
/** @internal */
export declare const Id$outboundSchema: z.ZodType<Id$Outbound, z.ZodTypeDef, Id>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Id$ {
    /** @deprecated use `Id$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Id, z.ZodTypeDef, unknown>;
    /** @deprecated use `Id$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Id$Outbound, z.ZodTypeDef, Id>;
    /** @deprecated use `Id$Outbound` instead. */
    type Outbound = Id$Outbound;
}
export declare function idToJSON(id: Id): string;
export declare function idFromJSON(jsonString: string): SafeParseResult<Id, SDKValidationError>;
/** @internal */
export declare const Params$inboundSchema: z.ZodType<Params, z.ZodTypeDef, unknown>;
/** @internal */
export type Params$Outbound = {};
/** @internal */
export declare const Params$outboundSchema: z.ZodType<Params$Outbound, z.ZodTypeDef, Params>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Params$ {
    /** @deprecated use `Params$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Params, z.ZodTypeDef, unknown>;
    /** @deprecated use `Params$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Params$Outbound, z.ZodTypeDef, Params>;
    /** @deprecated use `Params$Outbound` instead. */
    type Outbound = Params$Outbound;
}
export declare function paramsToJSON(params: Params): string;
export declare function paramsFromJSON(jsonString: string): SafeParseResult<Params, SDKValidationError>;
/** @internal */
export declare const JsonRpcMessageDto$inboundSchema: z.ZodType<JsonRpcMessageDto, z.ZodTypeDef, unknown>;
/** @internal */
export type JsonRpcMessageDto$Outbound = {
    id?: Id$Outbound | undefined;
    jsonrpc: string;
    method: string;
    params?: Params$Outbound | undefined;
};
/** @internal */
export declare const JsonRpcMessageDto$outboundSchema: z.ZodType<JsonRpcMessageDto$Outbound, z.ZodTypeDef, JsonRpcMessageDto>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace JsonRpcMessageDto$ {
    /** @deprecated use `JsonRpcMessageDto$inboundSchema` instead. */
    const inboundSchema: z.ZodType<JsonRpcMessageDto, z.ZodTypeDef, unknown>;
    /** @deprecated use `JsonRpcMessageDto$outboundSchema` instead. */
    const outboundSchema: z.ZodType<JsonRpcMessageDto$Outbound, z.ZodTypeDef, JsonRpcMessageDto>;
    /** @deprecated use `JsonRpcMessageDto$Outbound` instead. */
    type Outbound = JsonRpcMessageDto$Outbound;
}
export declare function jsonRpcMessageDtoToJSON(jsonRpcMessageDto: JsonRpcMessageDto): string;
export declare function jsonRpcMessageDtoFromJSON(jsonString: string): SafeParseResult<JsonRpcMessageDto, SDKValidationError>;
//# sourceMappingURL=jsonrpcmessagedto.d.ts.map