/**
 * @module @arcis/node/stores/memory
 * In-memory rate limit store
 */
import type { RateLimitStore, RateLimitEntry } from '../core/types';
export declare class MemoryStore implements RateLimitStore {
    private store;
    private cleanupInterval;
    private windowMs;
    private maxSize;
    constructor(windowMs?: number, maxSize?: number);
    /**
     * Start the cleanup interval to remove expired entries.
     */
    private startCleanup;
    get(key: string): Promise<RateLimitEntry | null>;
    set(key: string, entry: RateLimitEntry): Promise<void>;
    increment(key: string): Promise<number>;
    /** Eagerly remove expired entries to reclaim capacity. */
    private evictExpired;
    decrement(key: string): Promise<void>;
    reset(key: string): Promise<void>;
    close(): Promise<void>;
    /**
     * Get current store size (for monitoring).
     */
    get size(): number;
}
//# sourceMappingURL=memory.d.ts.map