/**
 * Environment Setup and Configuration Validation Utility
 *
 * Provides comprehensive environment configuration validation, setup guidance,
 * and automatic configuration optimization for AI providers.
 *
 * @version 1.0.0
 * @author Requirements Gathering Agent Team
 * @created 2024
 *
 * Key Features:
 * - Environment validation and setup
 * - Provider configuration verification
 * - Automatic optimization recommendations
 * - Interactive setup wizard
 * - Configuration health monitoring
 *
 * @filepath src/utils/environmentSetup.ts
 */
import { AIProvider } from '../modules/ai/types.js';
export interface EnvironmentValidationResult {
    isValid: boolean;
    configuredProviders: AIProvider[];
    availableProviders: AIProvider[];
    missingRequiredVars: string[];
    recommendations: string[];
    warnings: string[];
    errors: string[];
    optimizations: string[];
}
export interface ProviderSetupStatus {
    provider: AIProvider;
    configured: boolean;
    available: boolean;
    connected: boolean;
    missingVars: string[];
    setupComplexity: 'easy' | 'medium' | 'advanced';
    estimatedSetupTime: string;
    recommendation: string;
}
export declare class EnvironmentSetup {
    private static instance;
    private constructor();
    static getInstance(): EnvironmentSetup;
    /**
     * Validate the current environment configuration
     */
    validateEnvironment(): Promise<EnvironmentValidationResult>;
    /**
     * Check the status of a specific provider
     */
    checkProviderStatus(providerId: AIProvider): Promise<ProviderSetupStatus>;
    /**
     * Generate setup recommendations based on current configuration
     */
    private generateRecommendations;
    /**
     * Generate warnings based on current configuration
     */
    private generateWarnings;
    /**
     * Generate errors based on current configuration
     */
    private generateErrors;
    /**
     * Generate optimization suggestions
     */
    private generateOptimizations;
    /**
     * Get optimal provider order based on performance characteristics
     */
    private getOptimalProviderOrder;
    /**
     * Create environment file from template
     */
    createEnvironmentFile(template?: 'production' | 'development', outputPath?: string): void;
    /**
     * Interactive setup wizard
     */
    runSetupWizard(): Promise<void>;
    /**
     * Display validation results in a formatted way
     */
    displayValidationResults(result: EnvironmentValidationResult): void;
    /**
     * Generate configuration report
     */
    generateConfigurationReport(): Promise<string>;
}
//# sourceMappingURL=environmentSetup.d.ts.map