import type { Result } from "../core/result.js";
import type { TransportConfig } from "./config.js";
/**
 * Validation error details
 */
export interface ValidationError {
    field: string;
    message: string;
}
/**
 * Transport configuration validator using Zod schemas
 */
export declare class TransportConfigValidator {
    /**
     * Validate a transport configuration
     *
     * @param config - The configuration to validate
     * @returns Result with validated config or validation errors
     */
    static validate(config: unknown): Result<TransportConfig, Error>;
    /**
     * Format Zod validation errors into structured ValidationError objects
     *
     * @param zodError - The Zod validation error
     * @returns Array of structured validation errors
     */
    private static formatZodErrors;
    /**
     * Build a comprehensive error message from validation errors
     *
     * @param errors - Array of validation errors
     * @returns Formatted error message
     */
    private static buildErrorMessage;
    /**
     * Validate and merge with defaults for HTTP transport
     * This is a convenience method for applying default values after validation
     *
     * @param config - The configuration to validate
     * @returns Result with validated and merged config
     */
    static validateAndMergeDefaults(config: unknown): Result<TransportConfig, Error>;
}
