export interface CacheWatcherConfig {
    enabled: boolean;
    priority?: number;
    tags?: string[];
    dependencies?: string[];
    trackCacheOperations: boolean;
    trackCacheHits: boolean;
    trackCacheMisses: boolean;
    trackCacheEvictions: boolean;
    trackCacheExpiration: boolean;
    trackCacheSize: boolean;
    enablePerformanceTracking: boolean;
    trackExecutionTime: boolean;
    trackMemoryUsage: boolean;
    slowOperationThreshold: number;
    captureKeys: boolean;
    captureValues: boolean;
    captureKeyPatterns: boolean;
    maxValueSize: number;
    maxKeyLength: number;
    trackRedisCommands: boolean;
    trackRedisConnections: boolean;
    trackRedisMemory: boolean;
    trackRedisStats: boolean;
    trackConnectionHealth: boolean;
    trackConnectionMetrics: boolean;
    monitorConnectionEvents: boolean;
    excludeOperations: string[];
    excludeKeyPatterns: string[];
    includeKeyPatterns: string[];
    sampleRate: number;
    sensitiveKeyPatterns: string[];
    sanitizeValues: boolean;
    enableRealTimeAlerts: boolean;
    alertThresholds: {
        hitRate: number;
        missRate: number;
        avgResponseTime: number;
        errorRate: number;
        memoryUsage: number;
        connectionCount: number;
        timeWindow: number;
    };
    redisIntegration?: {
        enabled: boolean;
        autoDiscoverInstances: boolean;
        monitorCommands: boolean;
        trackSlowQueries: boolean;
        slowQueryThreshold: number;
        trackMemoryUsage: boolean;
        trackConnectionPool: boolean;
        instances?: Array<{
            name: string;
            host: string;
            port: number;
            password?: string;
            database?: number;
        }>;
    };
    correlateWithRequests: boolean;
    correlateWithQueries: boolean;
    correlateWithJobs: boolean;
    retentionPeriod: number;
    maxHistorySize: number;
}
export declare const defaultCacheWatcherConfig: CacheWatcherConfig;
