/**
 * Multi-Agent Cache Manager
 *
 * Implements shared KV cache with Byzantine consensus.
 */
export interface CacheEntry {
    direction: number[];
    magnitudes: number[];
    retained: Map<number, number[]>;
    indices: number[];
}
export interface AgentDelta {
    layerIndex: number;
    delta: number[];
    timestamp: number;
}
export declare class CacheManager {
    private sharedCache;
    private agentDeltas;
    private version;
    private locks;
    private syncInterval;
    private compressionThreshold;
    /**
     * Initialize shared cache for a layer
     */
    initLayer(layerIndex: number, kvCache: number[][]): void;
    /**
     * Compress KV cache using SLERP-inspired merge
     */
    private compress;
    /**
     * SLERP-inspired merge
     */
    private slerpMerge;
    /**
     * Acquire read lock (non-blocking)
     */
    acquireReadLock(layerIndex: number): boolean;
    /**
     * Acquire write lock
     */
    acquireWriteLock(layerIndex: number): boolean;
    /**
     * Release lock
     */
    releaseLock(layerIndex: number): void;
    /**
     * Get cache entry for agent
     */
    getForAgent(agentId: string, layerIndex: number): number[];
    /**
     * Update agent delta
     */
    updateDelta(agentId: string, layerIndex: number, delta: number[]): void;
    /**
     * Sync agent delta to shared cache
     */
    syncToShared(agentId: string, layerIndex: number): void;
    /**
     * Get cache statistics
     */
    getStats(): {
        layers: number;
        agents: number;
        version: number;
        compressionRatio: number;
    };
    private magnitude;
    private normalize;
    private dotProduct;
    private cosineSimilarity;
}
export declare const createCacheManager: () => CacheManager;
