/**
 * 统一配置验证模块
 * 项目所有者: Jason Zhang
 *
 * 提供零fallback的配置验证，确保所有配置都是明确的
 * 遵循零硬编码、零Fallback、零静默失败原则
 */
import { ProviderConfig } from '@/types';
/**
 * 配置验证错误类型
 */
export declare class ConfigValidationError extends Error {
    readonly providerId: string;
    readonly configField: string;
    constructor(message: string, providerId: string, configField: string);
}
/**
 * 🚨 严格验证API Key - 零fallback原则
 */
export declare function validateApiKey(config: ProviderConfig, providerId: string): string;
/**
 * 🚨 严格验证Base URL - 零fallback原则
 */
export declare function validateBaseURL(config: ProviderConfig, providerId: string): string;
/**
 * 🚨 严格验证端口配置 - 零fallback原则
 */
export declare function validatePortConfiguration(config: ProviderConfig, providerId: string): number;
/**
 * 🚨 严格验证默认模型 - 零fallback原则
 */
export declare function validateDefaultModel(config: ProviderConfig, providerId: string): string;
/**
 * 验证SDK选项配置
 */
export declare function validateSDKOptions(options?: any): Required<{
    timeout: number;
    maxRetries: number;
    defaultHeaders: Record<string, string>;
}>;
/**
 * 综合配置验证 - 一次性验证所有必需配置
 */
export interface ValidatedConfig {
    apiKey: string;
    baseURL: string;
    port: number;
    defaultModel: string;
    sdkOptions: ReturnType<typeof validateSDKOptions>;
    httpOptions?: {
        timeout?: number;
        maxRetries?: number;
        defaultHeaders?: Record<string, string>;
    };
}
export declare function validateProviderConfig(config: ProviderConfig, providerId: string, sdkOptions?: any): ValidatedConfig;
//# sourceMappingURL=config-validation.d.ts.map