import { IncomingMessage, ServerResponse } from 'http';
import { Provider, Router, Transport } from '../../models';
import { HttpRequestContext } from './context';
import { HttpExecutor } from './executor';
export * from './executor';
export * from './context';
export declare const buildHttpListener: <T extends HttpRequestContext["TContext"]>(router: Router<T>) => (request: IncomingMessage, response: ServerResponse) => Promise<ServerResponse<IncomingMessage> | null | undefined>;
export declare class HttpTransport extends Transport<HttpExecutor> {
    executor: HttpExecutor;
    compileContext(provider: Provider<HttpTransport['TContext']>, request: IncomingMessage, response: ServerResponse): Promise<HttpRequestContext>;
}
//# sourceMappingURL=index.d.ts.map