/**
 * ML-Based Threat Detection
 * Uses machine learning for advanced threat detection
 */
import { EventEmitter } from 'events';
export interface ThreatDetectorConfig {
    modelPath?: string;
    sensitivity: 'low' | 'medium' | 'high';
    realtimeAnalysis: boolean;
    anomalyThreshold: number;
}
export interface ThreatEvent {
    id: string;
    type: ThreatType;
    severity: 'low' | 'medium' | 'high' | 'critical';
    confidence: number;
    source: string;
    timestamp: Date;
    indicators: string[];
    recommendation: string;
}
export declare enum ThreatType {
    SQL_INJECTION = "sql_injection",
    XSS = "xss",
    BRUTE_FORCE = "brute_force",
    ANOMALOUS_BEHAVIOR = "anomalous_behavior",
    DATA_EXFILTRATION = "data_exfiltration",
    PRIVILEGE_ESCALATION = "privilege_escalation",
    MALWARE = "malware",
    DDoS = "ddos"
}
export declare class MLThreatDetector extends EventEmitter {
    private model?;
    private config;
    private behaviorBaseline;
    constructor(_config: ThreatDetectorConfig);
    initialize(): Promise<void>;
    /**
     * Analyze request for threats
     */
    analyzeRequest(request: {
        method: string;
        path: string;
        headers: Record<string, string>;
        body?: unknown;
        ip: string;
        userId?: string;
    }): Promise<ThreatEvent[]>;
    /**
     * Extract features for ML model
     */
    private extractFeatures;
    /**
     * ML prediction
     */
    private predict;
    /**
     * Rule-based threat detection
     */
    private runRuleBasedChecks;
    /**
     * Behavioral analysis using UEBA
     */
    private analyzeBehavior;
    /**
     * Create default ML model
     */
    private createDefaultModel;
    /**
     * Helper methods
     */
    private createThreat;
    private generateThreatId;
    private encodeMethod;
    private countSuspiciousPatterns;
    private calculateEntropy;
    private indexToThreatType;
    private extractIndicators;
    private calculateSeverity;
    private getRecommendation;
    private createBehaviorProfile;
}
//# sourceMappingURL=ml-threat-detector.d.ts.map