import { EnhancedDatabaseHealthReport } from './enhanced-database-auditor';
import { ConfigManager, SqlAnalyzerConfig, configPresets } from './config';
export interface AnalysisOptions {
    format?: 'cli' | 'html' | 'json' | 'md';
    outputPath?: string;
    includeAI?: boolean;
    preset?: keyof typeof configPresets;
    customConfig?: Partial<SqlAnalyzerConfig>;
}
export declare class EnhancedSQLAnalyzer {
    private configManager;
    private client;
    private auditor;
    private reportGenerator;
    constructor(connectionConfig: any, options?: AnalysisOptions);
    /**
     * Perform comprehensive database analysis
     */
    analyze(): Promise<EnhancedDatabaseHealthReport>;
    /**
     * Generate and save report
     */
    generateReport(report: EnhancedDatabaseHealthReport): Promise<string>;
    /**
     * Analyze and generate report in one step
     */
    analyzeAndReport(options?: {
        returnReport?: boolean;
        skipSave?: boolean;
        exportSql?: boolean;
        onProgress?: (step: string, progress: number) => void;
    }): Promise<{
        reportPath?: string;
        report?: EnhancedDatabaseHealthReport;
        summary: AnalysisSummary;
    }>;
    /**
     * Generate executive summary
     */
    generateSummary(report: EnhancedDatabaseHealthReport): AnalysisSummary;
    /**
     * Get configuration for easy access
     */
    getConfig(): SqlAnalyzerConfig;
    /**
     * Update configuration
     */
    updateConfig(updates: Partial<SqlAnalyzerConfig>): void;
    private getConnectionConfig;
    private ensureDirectoryExists;
    private getTimestamp;
    private calculateSecurityRisk;
    private calculatePerformanceRisk;
    private calculateOverallRisk;
    private getTopRecommendations;
    private collectSqlFixes;
    private estimateImplementationTime;
    /**
     * Static method to quickly analyze a database with minimal setup
     */
    static quickAnalysis(connectionString: string, options?: {
        format?: 'cli' | 'html' | 'json';
        includeAI?: boolean;
        outputPath?: string;
    }): Promise<AnalysisSummary>;
    /**
     * Static method for CI/CD environments
     */
    static ciAnalysis(connectionString: string): Promise<{
        passed: boolean;
        score: number;
        criticalIssues: number;
        reportPath: string;
    }>;
}
export interface AnalysisSummary {
    overallScore: number;
    totalIssues: number;
    criticalIssues: number;
    securityRisk: 'low' | 'medium' | 'high' | 'critical';
    performanceRisk: 'low' | 'medium' | 'high' | 'critical';
    costSavingsPotential: number;
    topRecommendations: string[];
    estimatedImplementationTime: string;
    riskLevel: 'low' | 'medium' | 'high' | 'critical';
}
export default EnhancedSQLAnalyzer;
export { ConfigManager, configPresets, type SqlAnalyzerConfig };
//# sourceMappingURL=enhanced-sql-analyzer.d.ts.map