/// <reference types="node" />
import { EventEmitter } from 'events';
import { TrojanHorse } from '../index';
import { AnalyticsManager, AnalyticsConfig } from '../analytics/RealTimeAnalytics';
import { EnterpriseAuthManager, AuthenticationConfig } from '../auth/EnterpriseAuth';
export interface EnterpriseConfig {
    apiKeys: Record<string, string>;
    security?: {
        mode: 'standard' | 'enhanced' | 'fort-knox';
        encryption: boolean;
        audit: boolean;
    };
    analytics?: AnalyticsConfig;
    authentication?: AuthenticationConfig;
    deployment?: {
        mode: 'standalone' | 'cluster' | 'cloud';
        replicas?: number;
        autoScale?: boolean;
    };
    enterprise?: {
        licenseKey: string;
        maxNodes: number;
        features: string[];
    };
}
declare class TrojanHorseEnterprise extends EventEmitter {
    private config;
    private core;
    private authManager?;
    private analyticsManager?;
    private initialized;
    constructor(config: EnterpriseConfig);
    private initializeComponents;
    private setupEventHandlers;
    scanTarget(target: string, options?: any): Promise<any[]>;
    authenticate(method: 'oauth2' | 'saml', credentials: any): Promise<any>;
    createAlert(alert: any): string;
    getMetrics(query: any): any[];
    getStatus(): any;
    getCore(): TrojanHorse;
    getAuthManager(): EnterpriseAuthManager | undefined;
    getAnalyticsManager(): AnalyticsManager | undefined;
    private detectTargetType;
}
export { TrojanHorseEnterprise };
//# sourceMappingURL=TrojanHorseEnterprise.d.ts.map