import { Request, Response } from 'express'; import { IRateLimitStore, RateLimitBucket, RateLimitBucketConfig, RateLimitHit } from '../interfaces/rate-limit.interface'; export declare const DEFAULT_RATE_LIMIT_BUCKETS: Record; export declare class MemoryRateLimitStore implements IRateLimitStore { private readonly map; private sweepCounter; increment(key: string, windowMs: number): RateLimitHit; private maybeSweep; } export declare class RateLimitService { private readonly memoryStore; private cfg; isEnabled(): boolean; private store; private bucketConfig; enforce(bucket: RateLimitBucket, req: Request, res?: Response): Promise; enforceAlways(bucket: RateLimitBucket, req: Request, res?: Response): Promise; private enforceBucket; private clientIp; private identifier; } //# sourceMappingURL=rate-limit.service.d.ts.map