import { NormalizedQuery } from './normalizer';
/**
 * Main cache service — orchestrates normalization, safety checks,
 * TTL computation, similarity matching, and storage.
 */
export interface CacheLookupResult {
    hit: boolean;
    response: string | null;
    matchType: 'exact' | 'fuzzy' | 'none';
    similarityScore: number;
    entryId: string | null;
    normalized: NormalizedQuery | null;
    latencyMs: number;
}
export interface CacheStoreResult {
    stored: boolean;
    entryId: string | null;
    reason?: string;
}
/**
 * Get circuit breaker status for dashboard monitoring.
 */
export declare function getBreakerStatus(): {
    state: string;
    failures: number;
    lastTrip: number;
};
/**
 * Look up a query in the cache.
 * Returns the cached response if found, or null to indicate a miss.
 * Circuit breaker bypasses cache during systemic failures.
 */
export declare function lookupCache(rawQuery: string, agent: string): Promise<CacheLookupResult>;
/**
 * Store a query/response pair in the cache after a cache miss.
 * Performs safety check on the response and computes appropriate TTL.
 */
export declare function storeInCache(normalized: NormalizedQuery, agent: string, responsePayload: string, options?: {
    modelUsed?: string;
    tokensIn?: number;
    tokensOut?: number;
    source?: 'live' | 'warm';
    gameState?: string;
}): Promise<CacheStoreResult>;
//# sourceMappingURL=cache-service.d.ts.map