/** * Returns a per-key rate-limit function. Each call returns `{ allowed, retryAfterMs }`. * Timestamps older than `windowMs` are pruned on every check, so the limit is * enforced over a rolling window rather than a fixed clock interval. */ export declare function createRateLimiter(maxCalls: number, windowMs: number): (key: string) => { allowed: boolean; retryAfterMs: number; };