@developers-joyride/rate-limiter
Version:
A flexible rate limiting library with TypeScript support, Express middleware, and NestJS guard/interceptor capabilities
14 lines (13 loc) • 633 B
TypeScript
import { CacheProvider, CacheProviderConfig } from "../interfaces/cache-provider.interface";
import { RateLimitResult, RateLimitInfo } from "../interfaces/rate-limiter.interface";
export declare class MongoDBCacheProvider implements CacheProvider {
private config;
private isConnected;
constructor(config: CacheProviderConfig);
initialize(): Promise<void>;
checkLimit(key: string, maxRequests: number, windowMs: number): Promise<RateLimitResult>;
resetLimit(key: string): Promise<void>;
getLimitInfo(key: string): Promise<RateLimitInfo | null>;
private ensureConnection;
close(): Promise<void>;
}