import { IncomingMessage, ServerResponse } from 'node:http';
import type { CacheProvider, AuthProvider, AuditSink } from '@mondaydotcomorg/atp-protocol';
import type { RequestContext, Middleware, ToolRulesProvider } from '../core/config.js';
import type { ClientSessionManager } from '../client-sessions.js';
export interface RequestHandlerDeps {
    cacheProvider?: CacheProvider;
    authProvider?: AuthProvider;
    auditSink?: AuditSink;
    customLogger?: any;
    middleware: Middleware[];
    routeHandler: (ctx: RequestContext) => Promise<void>;
    sessionManager?: ClientSessionManager;
    toolRulesProvider?: ToolRulesProvider;
}
export declare function handleHTTPRequest(req: IncomingMessage, res: ServerResponse, deps: RequestHandlerDeps, responseHeaders: Map<IncomingMessage, Map<string, string>>): Promise<void>;
//# sourceMappingURL=request-handler.d.ts.map