import type { Handler } from "../types"; export interface RateLimitOptions { windowMs?: number; max?: number; message?: string | object; statusCode?: number; headers?: boolean; keyGenerator?: (req: { ip: string; path: string; method: string; }) => string; skip?: (req: { ip: string; path: string; method: string; }) => boolean; onLimitReached?: (req: { ip: string; path: string; method: string; }) => void; } export interface RateLimitHandler extends Handler { /** Clear the cleanup interval and reset the store */ reset: () => void; /** Get the current store size (for monitoring) */ readonly size: number; } export declare function rateLimit(options?: RateLimitOptions): RateLimitHandler; //# sourceMappingURL=rate-limit.d.ts.map