const RateLimiter = require('./lib/rateLimiter'); const rateLimiterMiddleware = (options) => { const limiter = new RateLimiter(options); return (req, res, next) => { const clientId = req.ip; const result = limiter.handleRequest(clientId); if (!result.allowed) { return res.status(429).json({ message: 'Too many requests. Please try again later.', retryAfter: result.remainingTime / 1000, }); } next(); }; }; module.exports = rateLimiterMiddleware;