/**
 * 🚀 STRICT MODE CLI HANDLER - ENHANCED AUDIT VALIDATION
 *
 * Diese CLI-Integration aktiviert das neue strikte Validierungssystem,
 * das vollständige Datenerfassung und konsistente Reports garantiert.
 *
 * Flags:
 * --strict-validation: Aktiviert strikte Validierung (fail-fast bei fehlenden Daten)
 * --strict-reports: Generiert Reports nur aus vollständig validierten Daten
 * --validation-level: Setzt das Validierungslevel (basic|standard|strict)
 */
import { Command } from 'commander';
import { StrictAuditData } from '../types/strict-audit-types';
import { AuditResult } from '../adapters/audit-data-adapter';
export interface StrictModeConfig {
    /** Aktiviert strikte Validierung */
    enabled: boolean;
    /** Validierungslevel */
    level: 'basic' | 'standard' | 'strict';
    /** Ob Reports bei unvollständigen Daten generiert werden sollen */
    tolerateMissingData: boolean;
    /** Erforderliche Analyse-Typen */
    requiredAnalyses: string[];
    /** Ausgabe-Formate für strikte Reports */
    outputFormats: string[];
    /** Diagnose-Modus (detaillierte Validierungsausgabe) */
    diagnosticMode: boolean;
    /** Exit-Code bei Validierungsfehlern */
    failOnValidationErrors: boolean;
}
export declare const DEFAULT_STRICT_CONFIG: StrictModeConfig;
export declare function addStrictModeOptions(program: Command): void;
export declare class StrictModeHandler {
    private config;
    constructor(options: any);
    /**
     * Parse CLI options to strict mode configuration
     */
    private parseStrictOptions;
    /**
     * Main handler: Process audit results with strict validation
     */
    handleStrictProcessing(auditResult: AuditResult, outputPath?: string): Promise<{
        success: boolean;
        strictData?: StrictAuditData;
        generatedFiles: string[];
        diagnostics: string[];
        exitCode: number;
    }>;
    /**
     * Validate audit data and return diagnostics
     */
    private diagnoseAuditData;
    /**
     * Generate strict report in specified format
     */
    private generateStrictReport;
    /**
     * Convert strict data back to legacy format
     */
    private convertStrictDataToLegacy;
    /**
     * Display strict mode configuration
     */
    private displayStrictConfiguration;
    /**
     * Display detailed diagnostics
     */
    private displayDiagnostics;
    /**
     * Display final results
     */
    private displayResults;
}
/**
 * High-level function to handle strict mode processing
 */
export declare function handleStrictMode(auditResult: AuditResult, cliOptions: any, outputPath?: string): Promise<number>;
/**
 * Check if strict mode is enabled based on CLI options
 */
export declare function isStrictModeEnabled(options: any): boolean;
/**
 * Validate-only mode: Just validate data without generating reports
 */
export declare function validateOnlyMode(auditResult: AuditResult, options: any): Promise<number>;
//# sourceMappingURL=strict-mode-handler.d.ts.map