limiter.js
Version:
limiter.js is a Node.js/TypeScript library that provides simple Rate limiter protection for Express applications. It tracks requests per IP address and enforces rate limits within a sliding time window. If an IP exceeds the allowed requests, limiter.js ca
17 lines (16 loc) • 473 B
TypeScript
import { RateLimiter } from "./RateLimiter";
import { IPTracker } from "./IPTracker";
import { Config } from "../config/Config";
export declare class Detector {
ipMap: Map<string, IPTracker>;
rateLimiter: RateLimiter;
banDurationMs: number;
permanentBanThreshold?: number;
constructor(config: Config);
logStatus(): void;
logIPStatus(ip: string): void;
handleRequest(ip: string): {
blocked: boolean;
reason?: string;
};
}