UNPKG

623 BTypeScriptView Raw
1export declare type RequestHandlerOutput<ResponseType> = {
2 response: ResponseType;
3};
4export interface RequestHandler<RequestType, ResponseType, HandlerOptions = {}> {
5 /**
6 * metadata contains information of a handler. For example
7 * 'h2' refers this handler is for handling HTTP/2 requests,
8 * whereas 'h1' refers handling HTTP1 requests
9 */
10 metadata?: RequestHandlerMetadata;
11 destroy?: () => void;
12 handle: (request: RequestType, handlerOptions?: HandlerOptions) => Promise<RequestHandlerOutput<ResponseType>>;
13}
14export interface RequestHandlerMetadata {
15 handlerProtocol: string;
16}