/** * 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; /** * Check the status of a specific provider */ checkProviderStatus(providerId: AIProvider): Promise; /** * 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; /** * Display validation results in a formatted way */ displayValidationResults(result: EnvironmentValidationResult): void; /** * Generate configuration report */ generateConfigurationReport(): Promise; } //# sourceMappingURL=environmentSetup.d.ts.map