import { HyperShieldConfig } from './core/types/config';
import { CacheManager } from './domains/cache/cacheManager';
export type HyperShieldEvent = {
    type: 'cache:hit' | 'cache:miss' | 'cache:set' | 'cache:error';
    key?: string;
    error?: Error;
    timestamp: number;
};
export declare class HyperShield {
    private config;
    private eventBus;
    private cacheManager;
    constructor(config: HyperShieldConfig);
    initialize(): void;
    onEvent(event: string, handler: (data: HyperShieldEvent) => void): void;
    getFromCache<T>(key: string): Promise<T | null>;
    getCacheManager(): CacheManager;
}
export * from './core/types/config';
export * from './domains/cache/cacheManager';
export * from './core/events/eventBus';
//# sourceMappingURL=index.d.ts.map