import type { MiddlewareHandler } from "./types.js"; /** * Rate limit configuration */ export interface RateLimitConfig { /** Enable rate limiting */ enabled: boolean; /** Global IP rate: requests per minute */ globalIpLimit: number; /** Authenticated client rate: requests per minute */ clientLimit: number; /** Authenticated client burst capacity */ clientBurst: number; /** Pairing endpoint rate: requests per 5 minutes per IP */ pairLimit: number; /** MCP endpoint rate: requests per minute per session */ mcpLimit: number; /** Cleanup interval for stale entries (ms) */ cleanupInterval: number; } /** * Rate limiter middleware * Implements hybrid token bucket + sliding window approach */ export declare function rateLimiter(config?: Partial): MiddlewareHandler;