/**
 * Anomaly Detectors Index
 *
 * Exports all anomaly detectors for the UEBA (User and Entity Behavior Analytics) system.
 *
 * Core Detectors (existing):
 * - GeographicDetector: Impossible travel and location anomalies
 * - TemporalDetector: Unusual access time patterns
 * - VolumeDetector: Request volume spikes
 *
 * UEBA Detectors (new):
 * - PrivilegeEscalationDetector: Permission grants and role changes
 * - DataExfiltrationDetector: Bulk exports and unusual data access
 * - LateralMovementDetector: System-to-system movement patterns
 * - AccountCompromiseDetector: Multi-signal compromise detection
 *
 * @packageDocumentation
 * @module security/anomaly/detectors
 */
export { GeographicDetector, createGeographicDetector, calculateHaversineDistance, calculateTravelSpeed, } from './geographic.js';
export { TemporalDetector, createTemporalDetector, } from './temporal.js';
export { VolumeDetector, createVolumeDetector, } from './volume.js';
export { PrivilegeEscalationDetector, createPrivilegeEscalationDetector, type PrivilegeEscalationDetectorConfig, DEFAULT_PRIVILEGE_ESCALATION_CONFIG, } from './privilege-escalation.js';
export { DataExfiltrationDetector, createDataExfiltrationDetector, type DataExfiltrationDetectorConfig, DEFAULT_DATA_EXFILTRATION_CONFIG, } from './data-exfiltration.js';
export { LateralMovementDetector, createLateralMovementDetector, type LateralMovementDetectorConfig, DEFAULT_LATERAL_MOVEMENT_CONFIG, } from './lateral-movement.js';
export { AccountCompromiseDetector, createAccountCompromiseDetector, type AccountCompromiseDetectorConfig, DEFAULT_ACCOUNT_COMPROMISE_CONFIG, } from './account-compromise.js';
import type { Detector } from '../types.js';
/**
 * All available detector types
 */
export declare const DetectorType: {
    readonly GEOGRAPHIC: "geographic";
    readonly TEMPORAL: "temporal";
    readonly VOLUME: "volume";
    readonly PRIVILEGE_ESCALATION: "privilege-escalation";
    readonly DATA_EXFILTRATION: "data-exfiltration";
    readonly LATERAL_MOVEMENT: "lateral-movement";
    readonly ACCOUNT_COMPROMISE: "account-compromise";
};
export type DetectorType = (typeof DetectorType)[keyof typeof DetectorType];
/**
 * Detector constructor type for registry
 */
type DetectorConstructor = new (...args: any[]) => Detector;
/**
 * Registry of all available detectors
 */
export declare const detectorRegistry: Record<DetectorType, DetectorConstructor>;
/**
 * Create a detector instance by type
 *
 * @param type - The detector type to create
 * @param config - Optional configuration for the detector
 * @returns A new detector instance
 *
 * @example
 * ```typescript
 * const detector = createDetector('privilege-escalation', {
 *   maxDailyGrants: 10,
 * });
 * ```
 */
export declare function createDetector(type: DetectorType, config?: Record<string, unknown>): Detector;
/**
 * Create all UEBA detectors with default configurations
 *
 * @returns Array of all UEBA detector instances
 *
 * @example
 * ```typescript
 * const detectors = createAllUEBADetectors();
 * for (const detector of detectors) {
 *   anomalyEngine.registerDetector(detector);
 * }
 * ```
 */
export declare function createAllUEBADetectors(): Detector[];
/**
 * Get list of all available detector types
 */
export declare function getAvailableDetectorTypes(): DetectorType[];
/**
 * Check if a detector type is valid
 */
export declare function isValidDetectorType(type: string): type is DetectorType;
//# sourceMappingURL=index.d.ts.map