import type { Store } from './types.js'; import type { RateLimitResult, AlgorithmType } from '../types/index.js'; import { RedisStore } from './redisStore.js'; import { MemoryStore } from './memoryStore.js'; export interface HybridStoreOptions { redis: RedisStore; memory: MemoryStore; failStrategy?: 'fail-open' | 'fail-closed' | 'fallback-to-memory'; } export declare class HybridStore implements Store { private redisStore; private memoryStore; private failStrategy; constructor(options: HybridStoreOptions); consume(key: string, window: number, max: number, algorithm?: AlgorithmType, burst?: number): Promise; peek(key: string, window: number, max: number, algorithm?: AlgorithmType): Promise; reset(key?: string): Promise; getStats(): Record; destroy(): void; }