11import http = require( "http" ) ;
22import type { Server as HTTPSServer } from "https" ;
3+ import type { Http2SecureServer } from "http2" ;
34import { createReadStream } from "fs" ;
45import { createDeflate , createGzip , createBrotliCompress } from "zlib" ;
56import accepts = require( "accepts" ) ;
@@ -155,7 +156,7 @@ export class Server<
155156 * @private
156157 */
157158 _connectTimeout : number ;
158- private httpServer : http . Server | HTTPSServer ;
159+ private httpServer : http . Server | HTTPSServer | Http2SecureServer ;
159160
160161 /**
161162 * Server constructor.
@@ -165,7 +166,7 @@ export class Server<
165166 */
166167 constructor ( opts ?: Partial < ServerOptions > ) ;
167168 constructor (
168- srv ?: http . Server | HTTPSServer | number ,
169+ srv ?: http . Server | HTTPSServer | Http2SecureServer | number ,
169170 opts ?: Partial < ServerOptions >
170171 ) ;
171172 constructor (
@@ -174,6 +175,7 @@ export class Server<
174175 | Partial < ServerOptions >
175176 | http . Server
176177 | HTTPSServer
178+ | Http2SecureServer
177179 | number ,
178180 opts ?: Partial < ServerOptions >
179181 ) ;
@@ -183,6 +185,7 @@ export class Server<
183185 | Partial < ServerOptions >
184186 | http . Server
185187 | HTTPSServer
188+ | Http2SecureServer
186189 | number ,
187190 opts : Partial < ServerOptions > = { }
188191 ) {
@@ -204,7 +207,9 @@ export class Server<
204207 this . sockets = this . of ( "/" ) ;
205208 this . opts = opts ;
206209 if ( srv || typeof srv == "number" )
207- this . attach ( srv as http . Server | HTTPSServer | number ) ;
210+ this . attach (
211+ srv as http . Server | HTTPSServer | Http2SecureServer | number
212+ ) ;
208213 }
209214
210215 /**
@@ -332,7 +337,7 @@ export class Server<
332337 * @return self
333338 */
334339 public listen (
335- srv : http . Server | HTTPSServer | number ,
340+ srv : http . Server | HTTPSServer | Http2SecureServer | number ,
336341 opts : Partial < ServerOptions > = { }
337342 ) : this {
338343 return this . attach ( srv , opts ) ;
@@ -346,7 +351,7 @@ export class Server<
346351 * @return self
347352 */
348353 public attach (
349- srv : http . Server | HTTPSServer | number ,
354+ srv : http . Server | HTTPSServer | Http2SecureServer | number ,
350355 opts : Partial < ServerOptions > = { }
351356 ) : this {
352357 if ( "function" == typeof srv ) {
@@ -452,7 +457,7 @@ export class Server<
452457 * @private
453458 */
454459 private initEngine (
455- srv : http . Server | HTTPSServer ,
460+ srv : http . Server | HTTPSServer | Http2SecureServer ,
456461 opts : EngineOptions & AttachOptions
457462 ) : void {
458463 // initialize engine
@@ -475,7 +480,9 @@ export class Server<
475480 * @param srv http server
476481 * @private
477482 */
478- private attachServe ( srv : http . Server | HTTPSServer ) : void {
483+ private attachServe (
484+ srv : http . Server | HTTPSServer | Http2SecureServer
485+ ) : void {
479486 debug ( "attaching client serving req handler" ) ;
480487
481488 const evs = srv . listeners ( "request" ) . slice ( 0 ) ;
0 commit comments