import { EventEmitter } from 'events'; import { Request, RequestHandler, Response } from 'express'; export interface TimeoutConfig { timeout?: number; message?: string; onTimeout?: (req: Request, res: Response) => void; skipPaths?: string[]; dynamicTimeout?: (req: Request) => number; } export declare class TimeoutMiddleware extends EventEmitter { private config; private stats; constructor(config?: TimeoutConfig); middleware(overrideTimeout?: number): RequestHandler; private updateAverageResponseTime; getStats(): { timeoutRate: number; totalRequests: number; timedOutRequests: number; averageResponseTime: number; }; resetStats(): void; } export declare function createTimeoutMiddleware(config?: TimeoutConfig): TimeoutMiddleware; //# sourceMappingURL=timeout-middleware.d.ts.map