/** * Simple in-memory sliding-window rate limiter for login throttling. */ export declare class MemoryRateLimiter { private readonly attempts; /** * @param key - Unique throttle key (e.g. IP + email). * @param maxAttempts - Maximum attempts allowed in the window. * @returns True when the key is locked out. */ tooManyAttempts(key: string, maxAttempts: number): boolean; /** * @param key - Throttle key. * @param decaySeconds - Window length in seconds. */ hit(key: string, decaySeconds: number): void; /** * Clears attempts for a key after successful login. * * @param key - Throttle key. */ clear(key: string): void; /** * @param key - Throttle key. * @returns Seconds until retry, or 0 when not locked. */ availableIn(key: string): number; } //# sourceMappingURL=MemoryRateLimiter.d.ts.map