1 | export declare type RequestHandlerOutput<ResponseType> = {
|
2 | response: ResponseType;
|
3 | };
|
4 | export 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 | }
|
14 | export interface RequestHandlerMetadata {
|
15 | handlerProtocol: string;
|
16 | }
|