webpack-dev-server 4.7.2 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -26,11 +26,12 @@ declare class Server {
26
26
  /** @typedef {import("express").NextFunction} NextFunction */
27
27
  /** @typedef {import("express").RequestHandler} ExpressRequestHandler */
28
28
  /** @typedef {import("express").ErrorRequestHandler} ExpressErrorRequestHandler */
29
+ /** @typedef {import("anymatch").Matcher} AnymatchMatcher */
29
30
  /** @typedef {import("chokidar").WatchOptions} WatchOptions */
30
31
  /** @typedef {import("chokidar").FSWatcher} FSWatcher */
31
32
  /** @typedef {import("connect-history-api-fallback").Options} ConnectHistoryApiFallbackOptions */
32
- /** @typedef {import("bonjour").Bonjour} Bonjour */
33
- /** @typedef {import("bonjour").BonjourOptions} BonjourOptions */
33
+ /** @typedef {import("bonjour-service").Bonjour} Bonjour */
34
+ /** @typedef {import("bonjour-service").Service} BonjourOptions */
34
35
  /** @typedef {import("http-proxy-middleware").RequestHandler} RequestHandler */
35
36
  /** @typedef {import("http-proxy-middleware").Options} HttpProxyMiddlewareOptions */
36
37
  /** @typedef {import("http-proxy-middleware").Filter} HttpProxyMiddlewareOptionsFilter */
@@ -59,7 +60,7 @@ declare class Server {
59
60
  /**
60
61
  * @typedef {Object} WatchFiles
61
62
  * @property {string | string[]} paths
62
- * @property {WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [options]
63
+ * @property {WatchOptions & { aggregateTimeout?: number, ignored?: AnymatchMatcher | string[], poll?: number | boolean }} [options]
63
64
  */
64
65
  /**
65
66
  * @typedef {Object} Static
@@ -67,7 +68,7 @@ declare class Server {
67
68
  * @property {string | string[]} [publicPath]
68
69
  * @property {boolean | ServeIndexOptions} [serveIndex]
69
70
  * @property {ServeStaticOptions} [staticOptions]
70
- * @property {boolean | WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [watch]
71
+ * @property {boolean | WatchOptions & { aggregateTimeout?: number, ignored?: AnymatchMatcher | string[], poll?: number | boolean }} [watch]
71
72
  */
72
73
  /**
73
74
  * @typedef {Object} NormalizedStatic
@@ -97,19 +98,19 @@ declare class Server {
97
98
  * @typedef {{ implementation: WebSocketServer, clients: ClientConnection[] }} WebSocketServerImplementation
98
99
  */
99
100
  /**
100
- * @typedef {{ [url: string]: string | HttpProxyMiddlewareOptions }} ProxyConfigMap
101
+ * @callback ByPass
102
+ * @param {Request} req
103
+ * @param {Response} res
104
+ * @param {ProxyConfigArrayItem} proxyConfig
101
105
  */
102
106
  /**
103
- * @typedef {HttpProxyMiddlewareOptions[]} ProxyArray
107
+ * @typedef {{ path?: HttpProxyMiddlewareOptionsFilter | undefined, context?: HttpProxyMiddlewareOptionsFilter | undefined } & { bypass?: ByPass } & HttpProxyMiddlewareOptions } ProxyConfigArrayItem
104
108
  */
105
109
  /**
106
- * @callback ByPass
107
- * @param {Request} req
108
- * @param {Response} res
109
- * @param {ProxyConfigArray} proxyConfig
110
+ * @typedef {(ProxyConfigArrayItem | ((req?: Request | undefined, res?: Response | undefined, next?: NextFunction | undefined) => ProxyConfigArrayItem))[]} ProxyConfigArray
110
111
  */
111
112
  /**
112
- * @typedef {{ path?: string | string[] | undefined, context?: string | string[] | HttpProxyMiddlewareOptionsFilter | undefined } & HttpProxyMiddlewareOptions & ByPass} ProxyConfigArray
113
+ * @typedef {{ [url: string]: string | ProxyConfigArrayItem }} ProxyConfigMap
113
114
  */
114
115
  /**
115
116
  * @typedef {Object} OpenApp
@@ -163,14 +164,14 @@ declare class Server {
163
164
  * @property {"auto" | "all" | string | string[]} [allowedHosts]
164
165
  * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
165
166
  * @property {boolean} [setupExitSignals]
166
- * @property {boolean | BonjourOptions} [bonjour]
167
+ * @property {boolean | Record<string, never> | BonjourOptions} [bonjour]
167
168
  * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
168
169
  * @property {boolean | string | Static | Array<string | Static>} [static]
169
170
  * @property {boolean | ServerOptions} [https]
170
171
  * @property {boolean} [http2]
171
172
  * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
172
173
  * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
173
- * @property {ProxyConfigMap | ProxyConfigArray | ProxyArray} [proxy]
174
+ * @property {ProxyConfigMap | ProxyConfigArrayItem | ProxyConfigArray} [proxy]
174
175
  * @property {boolean | string | Open | Array<string | Open>} [open]
175
176
  * @property {boolean} [setupExitSignals]
176
177
  * @property {boolean | ClientConfiguration} [client]
@@ -199,160 +200,22 @@ declare class Server {
199
200
  type: string;
200
201
  multiple: boolean;
201
202
  description: string;
203
+ negatedDescription: string;
202
204
  path: string;
203
205
  }[];
204
206
  description: string;
205
- negatedDescription: string;
206
207
  simpleType: string;
207
208
  multiple: boolean;
208
209
  };
209
210
  client: {
210
211
  configs: {
211
212
  description: string;
213
+ negatedDescription: string;
212
214
  multiple: boolean;
213
215
  path: string;
214
216
  type: string;
215
217
  values: boolean[];
216
218
  }[];
217
- /** @typedef {import("https").ServerOptions & { spdy?: { plain?: boolean | undefined, ssl?: boolean | undefined, 'x-forwarded-for'?: string | undefined, protocol?: string | undefined, protocols?: string[] | undefined }}} ServerOptions */
218
- /**
219
- * @template Request, Response
220
- * @typedef {import("webpack-dev-middleware").Options<Request, Response>} DevMiddlewareOptions
221
- */
222
- /**
223
- * @template Request, Response
224
- * @typedef {import("webpack-dev-middleware").Context<Request, Response>} DevMiddlewareContext
225
- */
226
- /**
227
- * @typedef {"local-ip" | "local-ipv4" | "local-ipv6" | string} Host
228
- */
229
- /**
230
- * @typedef {number | string | "auto"} Port
231
- */
232
- /**
233
- * @typedef {Object} WatchFiles
234
- * @property {string | string[]} paths
235
- * @property {WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [options]
236
- */
237
- /**
238
- * @typedef {Object} Static
239
- * @property {string} [directory]
240
- * @property {string | string[]} [publicPath]
241
- * @property {boolean | ServeIndexOptions} [serveIndex]
242
- * @property {ServeStaticOptions} [staticOptions]
243
- * @property {boolean | WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [watch]
244
- */
245
- /**
246
- * @typedef {Object} NormalizedStatic
247
- * @property {string} directory
248
- * @property {string[]} publicPath
249
- * @property {false | ServeIndexOptions} serveIndex
250
- * @property {ServeStaticOptions} staticOptions
251
- * @property {false | WatchOptions} watch
252
- */
253
- /**
254
- * @typedef {Object} ServerConfiguration
255
- * @property {"http" | "https" | "spdy" | string} [type]
256
- * @property {ServerOptions} [options]
257
- */
258
- /**
259
- * @typedef {Object} WebSocketServerConfiguration
260
- * @property {"sockjs" | "ws" | string | Function} [type]
261
- * @property {Record<string, any>} [options]
262
- */
263
- /**
264
- * @typedef {(import("ws").WebSocket | import("sockjs").Connection & { send: import("ws").WebSocket["send"], terminate: import("ws").WebSocket["terminate"], ping: import("ws").WebSocket["ping"] }) & { isAlive?: boolean }} ClientConnection
265
- */
266
- /**
267
- * @typedef {import("ws").WebSocketServer | import("sockjs").Server & { close: import("ws").WebSocketServer["close"] }} WebSocketServer
268
- */
269
- /**
270
- * @typedef {{ implementation: WebSocketServer, clients: ClientConnection[] }} WebSocketServerImplementation
271
- */
272
- /**
273
- * @typedef {{ [url: string]: string | HttpProxyMiddlewareOptions }} ProxyConfigMap
274
- */
275
- /**
276
- * @typedef {HttpProxyMiddlewareOptions[]} ProxyArray
277
- */
278
- /**
279
- * @callback ByPass
280
- * @param {Request} req
281
- * @param {Response} res
282
- * @param {ProxyConfigArray} proxyConfig
283
- */
284
- /**
285
- * @typedef {{ path?: string | string[] | undefined, context?: string | string[] | HttpProxyMiddlewareOptionsFilter | undefined } & HttpProxyMiddlewareOptions & ByPass} ProxyConfigArray
286
- */
287
- /**
288
- * @typedef {Object} OpenApp
289
- * @property {string} [name]
290
- * @property {string[]} [arguments]
291
- */
292
- /**
293
- * @typedef {Object} Open
294
- * @property {string | string[] | OpenApp} [app]
295
- * @property {string | string[]} [target]
296
- */
297
- /**
298
- * @typedef {Object} NormalizedOpen
299
- * @property {string} target
300
- * @property {import("open").Options} options
301
- */
302
- /**
303
- * @typedef {Object} WebSocketURL
304
- * @property {string} [hostname]
305
- * @property {string} [password]
306
- * @property {string} [pathname]
307
- * @property {number | string} [port]
308
- * @property {string} [protocol]
309
- * @property {string} [username]
310
- */
311
- /**
312
- * @typedef {Object} ClientConfiguration
313
- * @property {"log" | "info" | "warn" | "error" | "none" | "verbose"} [logging]
314
- * @property {boolean | { warnings?: boolean, errors?: boolean }} [overlay]
315
- * @property {boolean} [progress]
316
- * @property {boolean | number} [reconnect]
317
- * @property {"ws" | "sockjs" | string} [webSocketTransport]
318
- * @property {string | WebSocketURL} [webSocketURL]
319
- */
320
- /**
321
- * @typedef {Array<{ key: string; value: string }> | Record<string, string | string[]>} Headers
322
- */
323
- /**
324
- * @typedef {{ name?: string, path?: string, middleware: ExpressRequestHandler | ExpressErrorRequestHandler } | ExpressRequestHandler | ExpressErrorRequestHandler} Middleware
325
- */
326
- /**
327
- * @typedef {Object} Configuration
328
- * @property {boolean | string} [ipc]
329
- * @property {Host} [host]
330
- * @property {Port} [port]
331
- * @property {boolean | "only"} [hot]
332
- * @property {boolean} [liveReload]
333
- * @property {DevMiddlewareOptions<Request, Response>} [devMiddleware]
334
- * @property {boolean} [compress]
335
- * @property {boolean} [magicHtml]
336
- * @property {"auto" | "all" | string | string[]} [allowedHosts]
337
- * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
338
- * @property {boolean} [setupExitSignals]
339
- * @property {boolean | BonjourOptions} [bonjour]
340
- * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
341
- * @property {boolean | string | Static | Array<string | Static>} [static]
342
- * @property {boolean | ServerOptions} [https]
343
- * @property {boolean} [http2]
344
- * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
345
- * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
346
- * @property {ProxyConfigMap | ProxyConfigArray | ProxyArray} [proxy]
347
- * @property {boolean | string | Open | Array<string | Open>} [open]
348
- * @property {boolean} [setupExitSignals]
349
- * @property {boolean | ClientConfiguration} [client]
350
- * @property {Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response>) => Headers)} [headers]
351
- * @property {(devServer: Server) => void} [onAfterSetupMiddleware]
352
- * @property {(devServer: Server) => void} [onBeforeSetupMiddleware]
353
- * @property {(devServer: Server) => void} [onListening]
354
- * @property {(middlewares: Middleware[], devServer: Server) => Middleware[]} [setupMiddlewares]
355
- */
356
219
  description: string;
357
220
  multiple: boolean;
358
221
  simpleType: string;
@@ -371,13 +234,140 @@ declare class Server {
371
234
  };
372
235
  "client-overlay": {
373
236
  configs: {
374
- type: string;
375
- multiple: boolean;
376
- description: string;
237
+ /**
238
+ * @typedef {number | string | "auto"} Port
239
+ */
240
+ /**
241
+ * @typedef {Object} WatchFiles
242
+ * @property {string | string[]} paths
243
+ * @property {WatchOptions & { aggregateTimeout?: number, ignored?: AnymatchMatcher | string[], poll?: number | boolean }} [options]
244
+ */
245
+ /**
246
+ * @typedef {Object} Static
247
+ * @property {string} [directory]
248
+ * @property {string | string[]} [publicPath]
249
+ * @property {boolean | ServeIndexOptions} [serveIndex]
250
+ * @property {ServeStaticOptions} [staticOptions]
251
+ * @property {boolean | WatchOptions & { aggregateTimeout?: number, ignored?: AnymatchMatcher | string[], poll?: number | boolean }} [watch]
252
+ */
253
+ /**
254
+ * @typedef {Object} NormalizedStatic
255
+ * @property {string} directory
256
+ * @property {string[]} publicPath
257
+ * @property {false | ServeIndexOptions} serveIndex
258
+ * @property {ServeStaticOptions} staticOptions
259
+ * @property {false | WatchOptions} watch
260
+ */
261
+ /**
262
+ * @typedef {Object} ServerConfiguration
263
+ * @property {"http" | "https" | "spdy" | string} [type]
264
+ * @property {ServerOptions} [options]
265
+ */
266
+ /**
267
+ * @typedef {Object} WebSocketServerConfiguration
268
+ * @property {"sockjs" | "ws" | string | Function} [type]
269
+ * @property {Record<string, any>} [options]
270
+ */
271
+ /**
272
+ * @typedef {(import("ws").WebSocket | import("sockjs").Connection & { send: import("ws").WebSocket["send"], terminate: import("ws").WebSocket["terminate"], ping: import("ws").WebSocket["ping"] }) & { isAlive?: boolean }} ClientConnection
273
+ */
274
+ /**
275
+ * @typedef {import("ws").WebSocketServer | import("sockjs").Server & { close: import("ws").WebSocketServer["close"] }} WebSocketServer
276
+ */
277
+ /**
278
+ * @typedef {{ implementation: WebSocketServer, clients: ClientConnection[] }} WebSocketServerImplementation
279
+ */
280
+ /**
281
+ * @callback ByPass
282
+ * @param {Request} req
283
+ * @param {Response} res
284
+ * @param {ProxyConfigArrayItem} proxyConfig
285
+ */
286
+ /**
287
+ * @typedef {{ path?: HttpProxyMiddlewareOptionsFilter | undefined, context?: HttpProxyMiddlewareOptionsFilter | undefined } & { bypass?: ByPass } & HttpProxyMiddlewareOptions } ProxyConfigArrayItem
288
+ */
289
+ /**
290
+ * @typedef {(ProxyConfigArrayItem | ((req?: Request | undefined, res?: Response | undefined, next?: NextFunction | undefined) => ProxyConfigArrayItem))[]} ProxyConfigArray
291
+ */
292
+ /**
293
+ * @typedef {{ [url: string]: string | ProxyConfigArrayItem }} ProxyConfigMap
294
+ */
295
+ /**
296
+ * @typedef {Object} OpenApp
297
+ * @property {string} [name]
298
+ * @property {string[]} [arguments]
299
+ */
300
+ /**
301
+ * @typedef {Object} Open
302
+ * @property {string | string[] | OpenApp} [app]
303
+ * @property {string | string[]} [target]
304
+ */
305
+ /**
306
+ * @typedef {Object} NormalizedOpen
307
+ * @property {string} target
308
+ * @property {import("open").Options} options
309
+ */
310
+ /**
311
+ * @typedef {Object} WebSocketURL
312
+ * @property {string} [hostname]
313
+ * @property {string} [password]
314
+ * @property {string} [pathname]
315
+ * @property {number | string} [port]
316
+ * @property {string} [protocol]
317
+ * @property {string} [username]
318
+ */
319
+ /**
320
+ * @typedef {Object} ClientConfiguration
321
+ * @property {"log" | "info" | "warn" | "error" | "none" | "verbose"} [logging]
322
+ * @property {boolean | { warnings?: boolean, errors?: boolean }} [overlay]
323
+ * @property {boolean} [progress]
324
+ * @property {boolean | number} [reconnect]
325
+ * @property {"ws" | "sockjs" | string} [webSocketTransport]
326
+ * @property {string | WebSocketURL} [webSocketURL]
327
+ */
328
+ /**
329
+ * @typedef {Array<{ key: string; value: string }> | Record<string, string | string[]>} Headers
330
+ */
331
+ /**
332
+ * @typedef {{ name?: string, path?: string, middleware: ExpressRequestHandler | ExpressErrorRequestHandler } | ExpressRequestHandler | ExpressErrorRequestHandler} Middleware
333
+ */
334
+ /**
335
+ * @typedef {Object} Configuration
336
+ * @property {boolean | string} [ipc]
337
+ * @property {Host} [host]
338
+ * @property {Port} [port]
339
+ * @property {boolean | "only"} [hot]
340
+ * @property {boolean} [liveReload]
341
+ * @property {DevMiddlewareOptions<Request, Response>} [devMiddleware]
342
+ * @property {boolean} [compress]
343
+ * @property {boolean} [magicHtml]
344
+ * @property {"auto" | "all" | string | string[]} [allowedHosts]
345
+ * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
346
+ * @property {boolean} [setupExitSignals]
347
+ * @property {boolean | Record<string, never> | BonjourOptions} [bonjour]
348
+ * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
349
+ * @property {boolean | string | Static | Array<string | Static>} [static]
350
+ * @property {boolean | ServerOptions} [https]
351
+ * @property {boolean} [http2]
352
+ * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
353
+ * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
354
+ * @property {ProxyConfigMap | ProxyConfigArrayItem | ProxyConfigArray} [proxy]
355
+ * @property {boolean | string | Open | Array<string | Open>} [open]
356
+ * @property {boolean} [setupExitSignals]
357
+ * @property {boolean | ClientConfiguration} [client]
358
+ * @property {Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response>) => Headers)} [headers]
359
+ * @property {(devServer: Server) => void} [onAfterSetupMiddleware]
360
+ * @property {(devServer: Server) => void} [onBeforeSetupMiddleware]
361
+ * @property {(devServer: Server) => void} [onListening]
362
+ * @property {(middlewares: Middleware[], devServer: Server) => Middleware[]} [setupMiddlewares]
363
+ */
364
+ type: string;
365
+ multiple: boolean;
366
+ description: string;
367
+ negatedDescription: string;
377
368
  path: string;
378
369
  }[];
379
370
  description: string;
380
- negatedDescription: string;
381
371
  simpleType: string;
382
372
  multiple: boolean;
383
373
  };
@@ -386,6 +376,7 @@ declare class Server {
386
376
  type: string;
387
377
  multiple: boolean;
388
378
  description: string;
379
+ negatedDescription: string;
389
380
  path: string;
390
381
  }[];
391
382
  description: string;
@@ -397,6 +388,7 @@ declare class Server {
397
388
  type: string;
398
389
  multiple: boolean;
399
390
  description: string;
391
+ negatedDescription: string;
400
392
  path: string;
401
393
  }[];
402
394
  description: string;
@@ -408,22 +400,30 @@ declare class Server {
408
400
  type: string;
409
401
  multiple: boolean;
410
402
  description: string;
403
+ negatedDescription: string;
411
404
  path: string;
412
405
  }[];
413
406
  description: string;
414
- negatedDescription: string;
415
407
  simpleType: string;
416
408
  multiple: boolean;
417
409
  };
418
410
  "client-reconnect": {
419
- configs: {
420
- type: string;
421
- multiple: boolean;
422
- description: string;
423
- path: string;
424
- }[];
411
+ configs: (
412
+ | {
413
+ type: string;
414
+ multiple: boolean;
415
+ description: string;
416
+ negatedDescription: string;
417
+ path: string;
418
+ }
419
+ | {
420
+ type: string;
421
+ multiple: boolean;
422
+ description: string;
423
+ path: string;
424
+ }
425
+ )[];
425
426
  description: string;
426
- negatedDescription: string;
427
427
  simpleType: string;
428
428
  multiple: boolean;
429
429
  };
@@ -508,7 +508,7 @@ declare class Server {
508
508
  description: string;
509
509
  multiple: boolean;
510
510
  path: string;
511
- type: string;
511
+ /** @type {Compiler | MultiCompiler} */ type: string;
512
512
  values: string[];
513
513
  }
514
514
  | {
@@ -524,16 +524,23 @@ declare class Server {
524
524
  };
525
525
  "client-web-socket-url-username": {
526
526
  configs: {
527
+ /**
528
+ * @private
529
+ * @type {RequestHandler[]}
530
+ */
527
531
  type: string;
528
532
  multiple: boolean;
529
533
  description: string;
534
+ /**
535
+ * @type {Socket[]}
536
+ */
530
537
  path: string;
531
538
  }[];
532
- description: string;
533
539
  /**
534
540
  * @private
535
541
  * @type {string | undefined}
536
542
  */
543
+ description: string;
537
544
  simpleType: string;
538
545
  multiple: boolean;
539
546
  };
@@ -542,10 +549,10 @@ declare class Server {
542
549
  type: string;
543
550
  multiple: boolean;
544
551
  description: string;
552
+ negatedDescription: string;
545
553
  path: string;
546
554
  }[];
547
555
  description: string;
548
- negatedDescription: string;
549
556
  simpleType: string;
550
557
  multiple: boolean;
551
558
  };
@@ -554,6 +561,7 @@ declare class Server {
554
561
  type: string;
555
562
  multiple: boolean;
556
563
  description: string;
564
+ negatedDescription: string;
557
565
  path: string;
558
566
  }[];
559
567
  description: string;
@@ -586,6 +594,7 @@ declare class Server {
586
594
  type: string;
587
595
  multiple: boolean;
588
596
  description: string;
597
+ negatedDescription: string;
589
598
  path: string;
590
599
  }
591
600
  | {
@@ -597,7 +606,6 @@ declare class Server {
597
606
  }
598
607
  )[];
599
608
  description: string;
600
- negatedDescription: string;
601
609
  simpleType: string;
602
610
  multiple: boolean;
603
611
  };
@@ -606,14 +614,10 @@ declare class Server {
606
614
  type: string;
607
615
  multiple: boolean;
608
616
  description: string;
617
+ negatedDescription: string;
609
618
  path: string;
610
619
  }[];
611
- /**
612
- * @param {Host} hostname
613
- * @returns {Promise<string>}
614
- */
615
620
  description: string;
616
- negatedDescription: string;
617
621
  simpleType: string;
618
622
  multiple: boolean;
619
623
  };
@@ -622,10 +626,10 @@ declare class Server {
622
626
  type: string;
623
627
  multiple: boolean;
624
628
  description: string;
629
+ negatedDescription: string;
625
630
  path: string;
626
631
  }[];
627
632
  description: string;
628
- negatedDescription: string;
629
633
  simpleType: string;
630
634
  multiple: boolean;
631
635
  };
@@ -659,9 +663,6 @@ declare class Server {
659
663
  path: string;
660
664
  }[];
661
665
  description: string;
662
- /**
663
- * @type {string[]}
664
- */
665
666
  simpleType: string;
666
667
  multiple: boolean;
667
668
  };
@@ -674,12 +675,13 @@ declare class Server {
674
675
  }[];
675
676
  description: string;
676
677
  multiple: boolean;
678
+ /** @type {{ type: WebSocketServerConfiguration["type"], options: NonNullable<WebSocketServerConfiguration["options"]> }} */
677
679
  simpleType: string;
678
680
  };
679
681
  "https-cert": {
680
682
  configs: {
681
683
  type: string;
682
- /** @type {ClientConfiguration} */ multiple: boolean;
684
+ multiple: boolean;
683
685
  description: string;
684
686
  path: string;
685
687
  }[];
@@ -687,6 +689,7 @@ declare class Server {
687
689
  simpleType: string;
688
690
  multiple: boolean;
689
691
  };
692
+ /** @type {ServerConfiguration} */
690
693
  "https-cert-reset": {
691
694
  configs: {
692
695
  description: string;
@@ -713,7 +716,7 @@ declare class Server {
713
716
  configs: {
714
717
  description: string;
715
718
  multiple: boolean;
716
- path: string;
719
+ /** @type {number | string} */ path: string;
717
720
  type: string;
718
721
  }[];
719
722
  description: string;
@@ -735,7 +738,7 @@ declare class Server {
735
738
  configs: {
736
739
  description: string;
737
740
  multiple: boolean;
738
- path: string;
741
+ /** @type {string} */ path: string;
739
742
  type: string;
740
743
  }[];
741
744
  description: string;
@@ -780,10 +783,10 @@ declare class Server {
780
783
  type: string;
781
784
  multiple: boolean;
782
785
  description: string;
786
+ negatedDescription: string;
783
787
  path: string;
784
788
  }[];
785
789
  description: string;
786
- negatedDescription: string;
787
790
  simpleType: string;
788
791
  multiple: boolean;
789
792
  };
@@ -810,36 +813,44 @@ declare class Server {
810
813
  "live-reload": {
811
814
  configs: {
812
815
  type: string;
813
- /** @type {Object<string,string>} */ multiple: boolean;
816
+ multiple: boolean;
814
817
  description: string;
818
+ negatedDescription: string;
815
819
  path: string;
816
820
  }[];
817
821
  description: string;
818
- negatedDescription: string;
819
822
  simpleType: string;
820
- multiple: boolean /** @type {any} */;
823
+ multiple: boolean;
821
824
  };
822
825
  "magic-html": {
823
826
  configs: {
824
827
  type: string;
825
828
  multiple: boolean;
826
829
  description: string;
830
+ negatedDescription: string;
827
831
  path: string;
828
832
  }[];
829
833
  description: string;
830
- negatedDescription: string;
831
- simpleType: string;
834
+ /** @type {MultiCompiler} */ simpleType: string;
832
835
  multiple: boolean;
833
836
  };
834
837
  open: {
835
- configs: {
836
- type: string;
837
- multiple: boolean;
838
- description: string;
839
- path: string;
840
- }[];
838
+ configs: (
839
+ | {
840
+ type: string;
841
+ multiple: boolean;
842
+ description: string;
843
+ path: string;
844
+ }
845
+ | {
846
+ type: string;
847
+ multiple: boolean;
848
+ description: string;
849
+ negatedDescription: string;
850
+ path: string;
851
+ }
852
+ )[];
841
853
  description: string;
842
- negatedDescription: string;
843
854
  simpleType: string;
844
855
  multiple: boolean;
845
856
  };
@@ -854,6 +865,10 @@ declare class Server {
854
865
  simpleType: string;
855
866
  multiple: boolean;
856
867
  };
868
+ /**
869
+ * @private
870
+ * @returns {Promise<void>}
871
+ */
857
872
  "open-app-name": {
858
873
  configs: {
859
874
  type: string;
@@ -895,7 +910,6 @@ declare class Server {
895
910
  path: string;
896
911
  }[];
897
912
  description: string;
898
- negatedDescription: string;
899
913
  simpleType: string;
900
914
  multiple: boolean;
901
915
  };
@@ -914,7 +928,7 @@ declare class Server {
914
928
  configs: (
915
929
  | {
916
930
  type: string;
917
- multiple: boolean;
931
+ /** @type {NormalizedStatic} */ multiple: boolean;
918
932
  description: string;
919
933
  path: string;
920
934
  }
@@ -1076,6 +1090,7 @@ declare class Server {
1076
1090
  "server-options-request-cert": {
1077
1091
  configs: {
1078
1092
  description: string;
1093
+ negatedDescription: string;
1079
1094
  multiple: boolean;
1080
1095
  path: string;
1081
1096
  type: string;
@@ -1094,19 +1109,30 @@ declare class Server {
1094
1109
  }[];
1095
1110
  description: string;
1096
1111
  multiple: boolean;
1097
- simpleType: string;
1112
+ simpleType: string /** @type {Array<keyof ServerOptions>} */;
1098
1113
  };
1114
+ /** @type {Array<keyof ServerOptions>} */
1099
1115
  static: {
1100
- configs: {
1101
- type: string;
1102
- multiple: boolean;
1103
- description: string;
1104
- path: string;
1105
- }[];
1116
+ configs: (
1117
+ | {
1118
+ type: string;
1119
+ multiple: boolean;
1120
+ description: string;
1121
+ path: string;
1122
+ }
1123
+ | {
1124
+ type: string;
1125
+ multiple: boolean;
1126
+ description: string;
1127
+ negatedDescription: string;
1128
+ path: string;
1129
+ }
1130
+ )[];
1106
1131
  description: string;
1107
- simpleType: string;
1108
- multiple: boolean;
1132
+ /** @type {any} */ simpleType: string;
1133
+ multiple: boolean /** @type {ServerOptions} */;
1109
1134
  };
1135
+ /** @type {ServerOptions} */
1110
1136
  "static-directory": {
1111
1137
  configs: {
1112
1138
  type: string;
@@ -1115,7 +1141,6 @@ declare class Server {
1115
1141
  path: string;
1116
1142
  }[];
1117
1143
  description: string;
1118
- /** @type {any} */
1119
1144
  simpleType: string;
1120
1145
  multiple: boolean;
1121
1146
  };
@@ -1134,7 +1159,7 @@ declare class Server {
1134
1159
  configs: {
1135
1160
  type: string;
1136
1161
  multiple: boolean;
1137
- description: string;
1162
+ /** @type {ServerOptions} */ description: string;
1138
1163
  path: string;
1139
1164
  }[];
1140
1165
  description: string;
@@ -1157,10 +1182,10 @@ declare class Server {
1157
1182
  type: string;
1158
1183
  multiple: boolean;
1159
1184
  description: string;
1185
+ negatedDescription: string;
1160
1186
  path: string;
1161
1187
  }[];
1162
1188
  description: string;
1163
- negatedDescription: string;
1164
1189
  simpleType: string;
1165
1190
  multiple: boolean;
1166
1191
  };
@@ -1169,10 +1194,10 @@ declare class Server {
1169
1194
  type: string;
1170
1195
  multiple: boolean;
1171
1196
  description: string;
1197
+ negatedDescription: string;
1172
1198
  path: string;
1173
1199
  }[];
1174
1200
  description: string;
1175
- negatedDescription: string;
1176
1201
  simpleType: string;
1177
1202
  multiple: boolean;
1178
1203
  };
@@ -1202,6 +1227,7 @@ declare class Server {
1202
1227
  configs: (
1203
1228
  | {
1204
1229
  description: string;
1230
+ negatedDescription: string;
1205
1231
  multiple: boolean;
1206
1232
  path: string;
1207
1233
  type: string;
@@ -1218,6 +1244,7 @@ declare class Server {
1218
1244
  description: string;
1219
1245
  multiple: boolean;
1220
1246
  path: string;
1247
+ /** @type {ServerOptions & { cacert?: ServerOptions["ca"] }} */
1221
1248
  type: string;
1222
1249
  }
1223
1250
  )[];
@@ -1300,6 +1327,9 @@ declare class Server {
1300
1327
  anyOf: (
1301
1328
  | {
1302
1329
  type: string;
1330
+ cli: {
1331
+ negatedDescription: string;
1332
+ } /** @typedef {import("express").Request} Request */;
1303
1333
  description?: undefined;
1304
1334
  link?: undefined;
1305
1335
  }
@@ -1307,6 +1337,7 @@ declare class Server {
1307
1337
  type: string;
1308
1338
  description: string;
1309
1339
  link: string;
1340
+ cli?: undefined /** @typedef {import("express").Request} Request */;
1310
1341
  }
1311
1342
  )[];
1312
1343
  description: string;
@@ -1318,6 +1349,9 @@ declare class Server {
1318
1349
  anyOf: (
1319
1350
  | {
1320
1351
  enum: boolean[];
1352
+ cli: {
1353
+ negatedDescription: string;
1354
+ };
1321
1355
  type?: undefined;
1322
1356
  additionalProperties?: undefined;
1323
1357
  properties?: undefined;
@@ -1346,150 +1380,12 @@ declare class Server {
1346
1380
  };
1347
1381
  };
1348
1382
  enum?: undefined;
1383
+ cli?: undefined /** @typedef {import("express").Request} Request */;
1349
1384
  }
1350
1385
  )[];
1351
1386
  };
1352
1387
  ClientLogging: {
1353
1388
  enum: string[];
1354
- /** @typedef {import("https").ServerOptions & { spdy?: { plain?: boolean | undefined, ssl?: boolean | undefined, 'x-forwarded-for'?: string | undefined, protocol?: string | undefined, protocols?: string[] | undefined }}} ServerOptions */
1355
- /**
1356
- * @template Request, Response
1357
- * @typedef {import("webpack-dev-middleware").Options<Request, Response>} DevMiddlewareOptions
1358
- */
1359
- /**
1360
- * @template Request, Response
1361
- * @typedef {import("webpack-dev-middleware").Context<Request, Response>} DevMiddlewareContext
1362
- */
1363
- /**
1364
- * @typedef {"local-ip" | "local-ipv4" | "local-ipv6" | string} Host
1365
- */
1366
- /**
1367
- * @typedef {number | string | "auto"} Port
1368
- */
1369
- /**
1370
- * @typedef {Object} WatchFiles
1371
- * @property {string | string[]} paths
1372
- * @property {WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [options]
1373
- */
1374
- /**
1375
- * @typedef {Object} Static
1376
- * @property {string} [directory]
1377
- * @property {string | string[]} [publicPath]
1378
- * @property {boolean | ServeIndexOptions} [serveIndex]
1379
- * @property {ServeStaticOptions} [staticOptions]
1380
- * @property {boolean | WatchOptions & { aggregateTimeout?: number, ignored?: string | RegExp | string[], poll?: number | boolean }} [watch]
1381
- */
1382
- /**
1383
- * @typedef {Object} NormalizedStatic
1384
- * @property {string} directory
1385
- * @property {string[]} publicPath
1386
- * @property {false | ServeIndexOptions} serveIndex
1387
- * @property {ServeStaticOptions} staticOptions
1388
- * @property {false | WatchOptions} watch
1389
- */
1390
- /**
1391
- * @typedef {Object} ServerConfiguration
1392
- * @property {"http" | "https" | "spdy" | string} [type]
1393
- * @property {ServerOptions} [options]
1394
- */
1395
- /**
1396
- * @typedef {Object} WebSocketServerConfiguration
1397
- * @property {"sockjs" | "ws" | string | Function} [type]
1398
- * @property {Record<string, any>} [options]
1399
- */
1400
- /**
1401
- * @typedef {(import("ws").WebSocket | import("sockjs").Connection & { send: import("ws").WebSocket["send"], terminate: import("ws").WebSocket["terminate"], ping: import("ws").WebSocket["ping"] }) & { isAlive?: boolean }} ClientConnection
1402
- */
1403
- /**
1404
- * @typedef {import("ws").WebSocketServer | import("sockjs").Server & { close: import("ws").WebSocketServer["close"] }} WebSocketServer
1405
- */
1406
- /**
1407
- * @typedef {{ implementation: WebSocketServer, clients: ClientConnection[] }} WebSocketServerImplementation
1408
- */
1409
- /**
1410
- * @typedef {{ [url: string]: string | HttpProxyMiddlewareOptions }} ProxyConfigMap
1411
- */
1412
- /**
1413
- * @typedef {HttpProxyMiddlewareOptions[]} ProxyArray
1414
- */
1415
- /**
1416
- * @callback ByPass
1417
- * @param {Request} req
1418
- * @param {Response} res
1419
- * @param {ProxyConfigArray} proxyConfig
1420
- */
1421
- /**
1422
- * @typedef {{ path?: string | string[] | undefined, context?: string | string[] | HttpProxyMiddlewareOptionsFilter | undefined } & HttpProxyMiddlewareOptions & ByPass} ProxyConfigArray
1423
- */
1424
- /**
1425
- * @typedef {Object} OpenApp
1426
- * @property {string} [name]
1427
- * @property {string[]} [arguments]
1428
- */
1429
- /**
1430
- * @typedef {Object} Open
1431
- * @property {string | string[] | OpenApp} [app]
1432
- * @property {string | string[]} [target]
1433
- */
1434
- /**
1435
- * @typedef {Object} NormalizedOpen
1436
- * @property {string} target
1437
- * @property {import("open").Options} options
1438
- */
1439
- /**
1440
- * @typedef {Object} WebSocketURL
1441
- * @property {string} [hostname]
1442
- * @property {string} [password]
1443
- * @property {string} [pathname]
1444
- * @property {number | string} [port]
1445
- * @property {string} [protocol]
1446
- * @property {string} [username]
1447
- */
1448
- /**
1449
- * @typedef {Object} ClientConfiguration
1450
- * @property {"log" | "info" | "warn" | "error" | "none" | "verbose"} [logging]
1451
- * @property {boolean | { warnings?: boolean, errors?: boolean }} [overlay]
1452
- * @property {boolean} [progress]
1453
- * @property {boolean | number} [reconnect]
1454
- * @property {"ws" | "sockjs" | string} [webSocketTransport]
1455
- * @property {string | WebSocketURL} [webSocketURL]
1456
- */
1457
- /**
1458
- * @typedef {Array<{ key: string; value: string }> | Record<string, string | string[]>} Headers
1459
- */
1460
- /**
1461
- * @typedef {{ name?: string, path?: string, middleware: ExpressRequestHandler | ExpressErrorRequestHandler } | ExpressRequestHandler | ExpressErrorRequestHandler} Middleware
1462
- */
1463
- /**
1464
- * @typedef {Object} Configuration
1465
- * @property {boolean | string} [ipc]
1466
- * @property {Host} [host]
1467
- * @property {Port} [port]
1468
- * @property {boolean | "only"} [hot]
1469
- * @property {boolean} [liveReload]
1470
- * @property {DevMiddlewareOptions<Request, Response>} [devMiddleware]
1471
- * @property {boolean} [compress]
1472
- * @property {boolean} [magicHtml]
1473
- * @property {"auto" | "all" | string | string[]} [allowedHosts]
1474
- * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
1475
- * @property {boolean} [setupExitSignals]
1476
- * @property {boolean | BonjourOptions} [bonjour]
1477
- * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
1478
- * @property {boolean | string | Static | Array<string | Static>} [static]
1479
- * @property {boolean | ServerOptions} [https]
1480
- * @property {boolean} [http2]
1481
- * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
1482
- * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
1483
- * @property {ProxyConfigMap | ProxyConfigArray | ProxyArray} [proxy]
1484
- * @property {boolean | string | Open | Array<string | Open>} [open]
1485
- * @property {boolean} [setupExitSignals]
1486
- * @property {boolean | ClientConfiguration} [client]
1487
- * @property {Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response>) => Headers)} [headers]
1488
- * @property {(devServer: Server) => void} [onAfterSetupMiddleware]
1489
- * @property {(devServer: Server) => void} [onBeforeSetupMiddleware]
1490
- * @property {(devServer: Server) => void} [onListening]
1491
- * @property {(middlewares: Middleware[], devServer: Server) => Middleware[]} [setupMiddlewares]
1492
- */
1493
1389
  description: string;
1494
1390
  link: string;
1495
1391
  };
@@ -1499,6 +1395,9 @@ declare class Server {
1499
1395
  description: string;
1500
1396
  link: string;
1501
1397
  type: string;
1398
+ cli: {
1399
+ negatedDescription: string;
1400
+ };
1502
1401
  additionalProperties?: undefined;
1503
1402
  properties?: undefined;
1504
1403
  }
@@ -1509,14 +1408,132 @@ declare class Server {
1509
1408
  errors: {
1510
1409
  description: string;
1511
1410
  type: string;
1411
+ cli: {
1412
+ negatedDescription: string;
1413
+ };
1512
1414
  };
1513
1415
  warnings: {
1416
+ /**
1417
+ * @typedef {Object} NormalizedStatic
1418
+ * @property {string} directory
1419
+ * @property {string[]} publicPath
1420
+ * @property {false | ServeIndexOptions} serveIndex
1421
+ * @property {ServeStaticOptions} staticOptions
1422
+ * @property {false | WatchOptions} watch
1423
+ */
1424
+ /**
1425
+ * @typedef {Object} ServerConfiguration
1426
+ * @property {"http" | "https" | "spdy" | string} [type]
1427
+ * @property {ServerOptions} [options]
1428
+ */
1429
+ /**
1430
+ * @typedef {Object} WebSocketServerConfiguration
1431
+ * @property {"sockjs" | "ws" | string | Function} [type]
1432
+ * @property {Record<string, any>} [options]
1433
+ */
1434
+ /**
1435
+ * @typedef {(import("ws").WebSocket | import("sockjs").Connection & { send: import("ws").WebSocket["send"], terminate: import("ws").WebSocket["terminate"], ping: import("ws").WebSocket["ping"] }) & { isAlive?: boolean }} ClientConnection
1436
+ */
1437
+ /**
1438
+ * @typedef {import("ws").WebSocketServer | import("sockjs").Server & { close: import("ws").WebSocketServer["close"] }} WebSocketServer
1439
+ */
1440
+ /**
1441
+ * @typedef {{ implementation: WebSocketServer, clients: ClientConnection[] }} WebSocketServerImplementation
1442
+ */
1443
+ /**
1444
+ * @callback ByPass
1445
+ * @param {Request} req
1446
+ * @param {Response} res
1447
+ * @param {ProxyConfigArrayItem} proxyConfig
1448
+ */
1449
+ /**
1450
+ * @typedef {{ path?: HttpProxyMiddlewareOptionsFilter | undefined, context?: HttpProxyMiddlewareOptionsFilter | undefined } & { bypass?: ByPass } & HttpProxyMiddlewareOptions } ProxyConfigArrayItem
1451
+ */
1452
+ /**
1453
+ * @typedef {(ProxyConfigArrayItem | ((req?: Request | undefined, res?: Response | undefined, next?: NextFunction | undefined) => ProxyConfigArrayItem))[]} ProxyConfigArray
1454
+ */
1455
+ /**
1456
+ * @typedef {{ [url: string]: string | ProxyConfigArrayItem }} ProxyConfigMap
1457
+ */
1458
+ /**
1459
+ * @typedef {Object} OpenApp
1460
+ * @property {string} [name]
1461
+ * @property {string[]} [arguments]
1462
+ */
1463
+ /**
1464
+ * @typedef {Object} Open
1465
+ * @property {string | string[] | OpenApp} [app]
1466
+ * @property {string | string[]} [target]
1467
+ */
1468
+ /**
1469
+ * @typedef {Object} NormalizedOpen
1470
+ * @property {string} target
1471
+ * @property {import("open").Options} options
1472
+ */
1473
+ /**
1474
+ * @typedef {Object} WebSocketURL
1475
+ * @property {string} [hostname]
1476
+ * @property {string} [password]
1477
+ * @property {string} [pathname]
1478
+ * @property {number | string} [port]
1479
+ * @property {string} [protocol]
1480
+ * @property {string} [username]
1481
+ */
1482
+ /**
1483
+ * @typedef {Object} ClientConfiguration
1484
+ * @property {"log" | "info" | "warn" | "error" | "none" | "verbose"} [logging]
1485
+ * @property {boolean | { warnings?: boolean, errors?: boolean }} [overlay]
1486
+ * @property {boolean} [progress]
1487
+ * @property {boolean | number} [reconnect]
1488
+ * @property {"ws" | "sockjs" | string} [webSocketTransport]
1489
+ * @property {string | WebSocketURL} [webSocketURL]
1490
+ */
1491
+ /**
1492
+ * @typedef {Array<{ key: string; value: string }> | Record<string, string | string[]>} Headers
1493
+ */
1494
+ /**
1495
+ * @typedef {{ name?: string, path?: string, middleware: ExpressRequestHandler | ExpressErrorRequestHandler } | ExpressRequestHandler | ExpressErrorRequestHandler} Middleware
1496
+ */
1497
+ /**
1498
+ * @typedef {Object} Configuration
1499
+ * @property {boolean | string} [ipc]
1500
+ * @property {Host} [host]
1501
+ * @property {Port} [port]
1502
+ * @property {boolean | "only"} [hot]
1503
+ * @property {boolean} [liveReload]
1504
+ * @property {DevMiddlewareOptions<Request, Response>} [devMiddleware]
1505
+ * @property {boolean} [compress]
1506
+ * @property {boolean} [magicHtml]
1507
+ * @property {"auto" | "all" | string | string[]} [allowedHosts]
1508
+ * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
1509
+ * @property {boolean} [setupExitSignals]
1510
+ * @property {boolean | Record<string, never> | BonjourOptions} [bonjour]
1511
+ * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
1512
+ * @property {boolean | string | Static | Array<string | Static>} [static]
1513
+ * @property {boolean | ServerOptions} [https]
1514
+ * @property {boolean} [http2]
1515
+ * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
1516
+ * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
1517
+ * @property {ProxyConfigMap | ProxyConfigArrayItem | ProxyConfigArray} [proxy]
1518
+ * @property {boolean | string | Open | Array<string | Open>} [open]
1519
+ * @property {boolean} [setupExitSignals]
1520
+ * @property {boolean | ClientConfiguration} [client]
1521
+ * @property {Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response>) => Headers)} [headers]
1522
+ * @property {(devServer: Server) => void} [onAfterSetupMiddleware]
1523
+ * @property {(devServer: Server) => void} [onBeforeSetupMiddleware]
1524
+ * @property {(devServer: Server) => void} [onListening]
1525
+ * @property {(middlewares: Middleware[], devServer: Server) => Middleware[]} [setupMiddlewares]
1526
+ */
1514
1527
  description: string;
1515
1528
  type: string;
1529
+ cli: {
1530
+ negatedDescription: string;
1531
+ };
1516
1532
  };
1517
1533
  };
1518
1534
  description?: undefined;
1519
1535
  link?: undefined;
1536
+ cli?: undefined /** @typedef {import("express").Request} Request */;
1520
1537
  }
1521
1538
  )[];
1522
1539
  };
@@ -1524,6 +1541,9 @@ declare class Server {
1524
1541
  description: string;
1525
1542
  link: string;
1526
1543
  type: string;
1544
+ cli: {
1545
+ negatedDescription: string;
1546
+ };
1527
1547
  };
1528
1548
  ClientReconnect: {
1529
1549
  description: string;
@@ -1531,11 +1551,15 @@ declare class Server {
1531
1551
  anyOf: (
1532
1552
  | {
1533
1553
  type: string;
1554
+ cli: {
1555
+ negatedDescription: string;
1556
+ };
1534
1557
  minimum?: undefined;
1535
1558
  }
1536
1559
  | {
1537
1560
  type: string;
1538
1561
  minimum: number;
1562
+ cli?: undefined /** @typedef {import("express").Request} Request */;
1539
1563
  }
1540
1564
  )[];
1541
1565
  };
@@ -1558,87 +1582,6 @@ declare class Server {
1558
1582
  link: string;
1559
1583
  anyOf: (
1560
1584
  | {
1561
- /**
1562
- * @typedef {HttpProxyMiddlewareOptions[]} ProxyArray
1563
- */
1564
- /**
1565
- * @callback ByPass
1566
- * @param {Request} req
1567
- * @param {Response} res
1568
- * @param {ProxyConfigArray} proxyConfig
1569
- */
1570
- /**
1571
- * @typedef {{ path?: string | string[] | undefined, context?: string | string[] | HttpProxyMiddlewareOptionsFilter | undefined } & HttpProxyMiddlewareOptions & ByPass} ProxyConfigArray
1572
- */
1573
- /**
1574
- * @typedef {Object} OpenApp
1575
- * @property {string} [name]
1576
- * @property {string[]} [arguments]
1577
- */
1578
- /**
1579
- * @typedef {Object} Open
1580
- * @property {string | string[] | OpenApp} [app]
1581
- * @property {string | string[]} [target]
1582
- */
1583
- /**
1584
- * @typedef {Object} NormalizedOpen
1585
- * @property {string} target
1586
- * @property {import("open").Options} options
1587
- */
1588
- /**
1589
- * @typedef {Object} WebSocketURL
1590
- * @property {string} [hostname]
1591
- * @property {string} [password]
1592
- * @property {string} [pathname]
1593
- * @property {number | string} [port]
1594
- * @property {string} [protocol]
1595
- * @property {string} [username]
1596
- */
1597
- /**
1598
- * @typedef {Object} ClientConfiguration
1599
- * @property {"log" | "info" | "warn" | "error" | "none" | "verbose"} [logging]
1600
- * @property {boolean | { warnings?: boolean, errors?: boolean }} [overlay]
1601
- * @property {boolean} [progress]
1602
- * @property {boolean | number} [reconnect]
1603
- * @property {"ws" | "sockjs" | string} [webSocketTransport]
1604
- * @property {string | WebSocketURL} [webSocketURL]
1605
- */
1606
- /**
1607
- * @typedef {Array<{ key: string; value: string }> | Record<string, string | string[]>} Headers
1608
- */
1609
- /**
1610
- * @typedef {{ name?: string, path?: string, middleware: ExpressRequestHandler | ExpressErrorRequestHandler } | ExpressRequestHandler | ExpressErrorRequestHandler} Middleware
1611
- */
1612
- /**
1613
- * @typedef {Object} Configuration
1614
- * @property {boolean | string} [ipc]
1615
- * @property {Host} [host]
1616
- * @property {Port} [port]
1617
- * @property {boolean | "only"} [hot]
1618
- * @property {boolean} [liveReload]
1619
- * @property {DevMiddlewareOptions<Request, Response>} [devMiddleware]
1620
- * @property {boolean} [compress]
1621
- * @property {boolean} [magicHtml]
1622
- * @property {"auto" | "all" | string | string[]} [allowedHosts]
1623
- * @property {boolean | ConnectHistoryApiFallbackOptions} [historyApiFallback]
1624
- * @property {boolean} [setupExitSignals]
1625
- * @property {boolean | BonjourOptions} [bonjour]
1626
- * @property {string | string[] | WatchFiles | Array<string | WatchFiles>} [watchFiles]
1627
- * @property {boolean | string | Static | Array<string | Static>} [static]
1628
- * @property {boolean | ServerOptions} [https]
1629
- * @property {boolean} [http2]
1630
- * @property {"http" | "https" | "spdy" | string | ServerConfiguration} [server]
1631
- * @property {boolean | "sockjs" | "ws" | string | WebSocketServerConfiguration} [webSocketServer]
1632
- * @property {ProxyConfigMap | ProxyConfigArray | ProxyArray} [proxy]
1633
- * @property {boolean | string | Open | Array<string | Open>} [open]
1634
- * @property {boolean} [setupExitSignals]
1635
- * @property {boolean | ClientConfiguration} [client]
1636
- * @property {Headers | ((req: Request, res: Response, context: DevMiddlewareContext<Request, Response>) => Headers)} [headers]
1637
- * @property {(devServer: Server) => void} [onAfterSetupMiddleware]
1638
- * @property {(devServer: Server) => void} [onBeforeSetupMiddleware]
1639
- * @property {(devServer: Server) => void} [onListening]
1640
- * @property {(middlewares: Middleware[], devServer: Server) => Middleware[]} [setupMiddlewares]
1641
- */
1642
1585
  type: string;
1643
1586
  minLength: number;
1644
1587
  additionalProperties?: undefined;
@@ -1702,6 +1645,9 @@ declare class Server {
1702
1645
  type: string;
1703
1646
  description: string;
1704
1647
  link: string;
1648
+ cli: {
1649
+ negatedDescription: string;
1650
+ };
1705
1651
  };
1706
1652
  DevMiddleware: {
1707
1653
  description: string;
@@ -1713,11 +1659,17 @@ declare class Server {
1713
1659
  type: string;
1714
1660
  description: string;
1715
1661
  link: string;
1662
+ cli: {
1663
+ negatedDescription: string;
1664
+ };
1716
1665
  };
1717
1666
  HTTPS: {
1718
1667
  anyOf: (
1719
1668
  | {
1720
1669
  type: string;
1670
+ cli: {
1671
+ negatedDescription: string;
1672
+ };
1721
1673
  additionalProperties?: undefined;
1722
1674
  properties?: undefined;
1723
1675
  }
@@ -1732,6 +1684,9 @@ declare class Server {
1732
1684
  requestCert: {
1733
1685
  type: string;
1734
1686
  description: string;
1687
+ cli: {
1688
+ negatedDescription: string;
1689
+ };
1735
1690
  };
1736
1691
  ca: {
1737
1692
  anyOf: (
@@ -1815,9 +1770,6 @@ declare class Server {
1815
1770
  }
1816
1771
  | {
1817
1772
  type: string;
1818
- /**
1819
- * @type {Socket[]}
1820
- */
1821
1773
  items?: undefined;
1822
1774
  instanceof?: undefined;
1823
1775
  }
@@ -1840,11 +1792,6 @@ declare class Server {
1840
1792
  instanceof?: undefined;
1841
1793
  }
1842
1794
  | {
1843
- /**
1844
- * @private
1845
- * @returns {StatsOptions}
1846
- * @constructor
1847
- */
1848
1795
  instanceof: string;
1849
1796
  type?: undefined;
1850
1797
  }
@@ -1863,6 +1810,10 @@ declare class Server {
1863
1810
  items?: undefined;
1864
1811
  }
1865
1812
  )[];
1813
+ /**
1814
+ * @param {"v4" | "v6"} family
1815
+ * @returns {string | undefined}
1816
+ */
1866
1817
  description: string;
1867
1818
  };
1868
1819
  key: {
@@ -1883,7 +1834,6 @@ declare class Server {
1883
1834
  }
1884
1835
  | {
1885
1836
  type: string;
1886
- /** @type {NetworkInterfaceInfo[]} */
1887
1837
  additionalProperties: boolean;
1888
1838
  instanceof?: undefined;
1889
1839
  }
@@ -1922,10 +1872,6 @@ declare class Server {
1922
1872
  }
1923
1873
  | {
1924
1874
  type: string;
1925
- /**
1926
- * @param {Host} hostname
1927
- * @returns {Promise<string>}
1928
- */
1929
1875
  additionalProperties: boolean;
1930
1876
  instanceof?: undefined;
1931
1877
  }
@@ -1947,6 +1893,7 @@ declare class Server {
1947
1893
  description: string;
1948
1894
  };
1949
1895
  };
1896
+ cli?: undefined /** @typedef {import("express").Request} Request */;
1950
1897
  }
1951
1898
  )[];
1952
1899
  description: string;
@@ -1972,6 +1919,9 @@ declare class Server {
1972
1919
  Headers: {
1973
1920
  anyOf: (
1974
1921
  | {
1922
+ /**
1923
+ * @type {string[]}
1924
+ */
1975
1925
  type: string;
1976
1926
  items: {
1977
1927
  $ref: string;
@@ -1999,13 +1949,17 @@ declare class Server {
1999
1949
  anyOf: (
2000
1950
  | {
2001
1951
  type: string;
1952
+ cli: {
1953
+ negatedDescription: string;
1954
+ };
2002
1955
  description?: undefined;
2003
1956
  link?: undefined;
2004
1957
  }
2005
1958
  | {
2006
1959
  type: string;
2007
- description: string;
1960
+ /** @type {WebSocketURL} */ description: string;
2008
1961
  link: string;
1962
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2009
1963
  }
2010
1964
  )[];
2011
1965
  description: string;
@@ -2017,7 +1971,7 @@ declare class Server {
2017
1971
  anyOf: (
2018
1972
  | {
2019
1973
  enum: string[];
2020
- type?: undefined;
1974
+ /** @type {ServerConfiguration} */ type?: undefined;
2021
1975
  minLength?: undefined;
2022
1976
  }
2023
1977
  | {
@@ -2031,11 +1985,15 @@ declare class Server {
2031
1985
  anyOf: (
2032
1986
  | {
2033
1987
  type: string;
1988
+ cli: {
1989
+ negatedDescription: string;
1990
+ };
2034
1991
  enum?: undefined;
2035
1992
  }
2036
1993
  | {
2037
1994
  enum: string[];
2038
1995
  type?: undefined;
1996
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2039
1997
  }
2040
1998
  )[];
2041
1999
  description: string;
@@ -2060,12 +2018,17 @@ declare class Server {
2060
2018
  LiveReload: {
2061
2019
  type: string;
2062
2020
  description: string;
2063
- /** @type {{ type: WebSocketServerConfiguration["type"], options: NonNullable<WebSocketServerConfiguration["options"]> }} */
2021
+ cli: {
2022
+ negatedDescription: string;
2023
+ };
2064
2024
  link: string;
2065
2025
  };
2066
2026
  MagicHTML: {
2067
2027
  type: string;
2068
2028
  description: string;
2029
+ cli: {
2030
+ negatedDescription: string;
2031
+ };
2069
2032
  link: string;
2070
2033
  };
2071
2034
  OnAfterSetupMiddleware: {
@@ -2105,6 +2068,9 @@ declare class Server {
2105
2068
  };
2106
2069
  OpenBoolean: {
2107
2070
  type: string;
2071
+ cli: {
2072
+ negatedDescription: string;
2073
+ };
2108
2074
  };
2109
2075
  OpenObject: {
2110
2076
  type: string;
@@ -2144,6 +2110,12 @@ declare class Server {
2144
2110
  }
2145
2111
  | {
2146
2112
  type: string;
2113
+ /**
2114
+ * prependEntry Method for webpack 4
2115
+ * @param {any} originalEntry
2116
+ * @param {any} newAdditionalEntries
2117
+ * @returns {any}
2118
+ */
2147
2119
  minLength: number;
2148
2120
  items?: undefined;
2149
2121
  minItems?: undefined;
@@ -2159,11 +2131,16 @@ declare class Server {
2159
2131
  };
2160
2132
  minLength?: undefined;
2161
2133
  description?: undefined;
2134
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2162
2135
  }
2163
2136
  | {
2164
2137
  type: string;
2165
2138
  minLength: number;
2166
2139
  description: string;
2140
+ cli: {
2141
+ description: string;
2142
+ };
2143
+ /** @type {Object<string,string>} */
2167
2144
  additionalProperties?: undefined;
2168
2145
  properties?: undefined;
2169
2146
  }
@@ -2265,18 +2242,20 @@ declare class Server {
2265
2242
  };
2266
2243
  additionalProperties: boolean;
2267
2244
  };
2268
- /** @type {any} */
2269
2245
  ServerOptions: {
2270
2246
  type: string;
2271
2247
  additionalProperties: boolean;
2272
2248
  properties: {
2273
2249
  passphrase: {
2274
2250
  type: string;
2275
- description: string;
2251
+ /** @type {MultiCompiler} */ description: string;
2276
2252
  };
2277
2253
  requestCert: {
2278
2254
  type: string;
2279
2255
  description: string;
2256
+ cli: {
2257
+ negatedDescription: string;
2258
+ };
2280
2259
  };
2281
2260
  ca: {
2282
2261
  anyOf: (
@@ -2294,10 +2273,6 @@ declare class Server {
2294
2273
  }
2295
2274
  )[];
2296
2275
  };
2297
- /**
2298
- * @private
2299
- * @returns {Compiler["options"]}
2300
- */
2301
2276
  instanceof?: undefined;
2302
2277
  }
2303
2278
  | {
@@ -2400,7 +2375,7 @@ declare class Server {
2400
2375
  }
2401
2376
  | {
2402
2377
  instanceof: string;
2403
- type?: undefined;
2378
+ /** @type {NormalizedStatic} */ type?: undefined;
2404
2379
  items?: undefined;
2405
2380
  }
2406
2381
  )[];
@@ -2506,10 +2481,14 @@ declare class Server {
2506
2481
  $ref: string;
2507
2482
  }[];
2508
2483
  };
2484
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2509
2485
  $ref?: undefined;
2510
2486
  }
2511
2487
  | {
2512
2488
  type: string;
2489
+ cli: {
2490
+ negatedDescription: string;
2491
+ };
2513
2492
  items?: undefined;
2514
2493
  $ref?: undefined;
2515
2494
  }
@@ -2517,6 +2496,7 @@ declare class Server {
2517
2496
  $ref: string;
2518
2497
  type?: undefined;
2519
2498
  items?: undefined;
2499
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2520
2500
  }
2521
2501
  )[];
2522
2502
  description: string;
@@ -2559,11 +2539,15 @@ declare class Server {
2559
2539
  anyOf: (
2560
2540
  | {
2561
2541
  type: string;
2542
+ cli: {
2543
+ negatedDescription: string;
2544
+ };
2562
2545
  additionalProperties?: undefined;
2563
2546
  }
2564
2547
  | {
2565
2548
  type: string;
2566
2549
  additionalProperties: boolean;
2550
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2567
2551
  }
2568
2552
  )[];
2569
2553
  description: string;
@@ -2573,6 +2557,9 @@ declare class Server {
2573
2557
  anyOf: (
2574
2558
  | {
2575
2559
  type: string;
2560
+ cli: {
2561
+ negatedDescription: string;
2562
+ };
2576
2563
  description?: undefined;
2577
2564
  link?: undefined;
2578
2565
  }
@@ -2580,6 +2567,7 @@ declare class Server {
2580
2567
  type: string;
2581
2568
  description: string;
2582
2569
  link: string;
2570
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2583
2571
  }
2584
2572
  )[];
2585
2573
  description: string;
@@ -2653,7 +2641,7 @@ declare class Server {
2653
2641
  $ref: string;
2654
2642
  }[];
2655
2643
  description: string;
2656
- link: string;
2644
+ link: string /** @type {Array<keyof ServerOptions>} */;
2657
2645
  };
2658
2646
  WebSocketServerType: {
2659
2647
  enum: string[];
@@ -2662,14 +2650,20 @@ declare class Server {
2662
2650
  anyOf: (
2663
2651
  | {
2664
2652
  enum: boolean[];
2653
+ cli: {
2654
+ negatedDescription: string;
2655
+ };
2665
2656
  $ref?: undefined;
2666
2657
  }
2667
2658
  | {
2668
2659
  $ref: string;
2669
2660
  enum?: undefined;
2661
+ cli?: undefined /** @typedef {import("express").Request} Request */;
2670
2662
  }
2671
2663
  )[];
2672
- description: string;
2664
+ cli: {
2665
+ description: string;
2666
+ };
2673
2667
  };
2674
2668
  WebSocketServerFunction: {
2675
2669
  instanceof: string;
@@ -2754,7 +2748,7 @@ declare class Server {
2754
2748
  $ref: string;
2755
2749
  };
2756
2750
  port: {
2757
- $ref: string /** @type {Array<keyof ServerOptions>} */;
2751
+ $ref: string;
2758
2752
  };
2759
2753
  proxy: {
2760
2754
  $ref: string;
@@ -2982,7 +2976,7 @@ declare class Server {
2982
2976
  private runBonjour;
2983
2977
  /**
2984
2978
  * @private
2985
- * @type {import("bonjour").Bonjour | undefined}
2979
+ * @type {Bonjour | undefined}
2986
2980
  */
2987
2981
  private bonjour;
2988
2982
  /**
@@ -3104,6 +3098,7 @@ declare namespace Server {
3104
3098
  NextFunction,
3105
3099
  ExpressRequestHandler,
3106
3100
  ExpressErrorRequestHandler,
3101
+ AnymatchMatcher,
3107
3102
  WatchOptions,
3108
3103
  FSWatcher,
3109
3104
  ConnectHistoryApiFallbackOptions,
@@ -3132,10 +3127,10 @@ declare namespace Server {
3132
3127
  ClientConnection,
3133
3128
  WebSocketServer,
3134
3129
  WebSocketServerImplementation,
3135
- ProxyConfigMap,
3136
- ProxyArray,
3137
3130
  ByPass,
3131
+ ProxyConfigArrayItem,
3138
3132
  ProxyConfigArray,
3133
+ ProxyConfigMap,
3139
3134
  OpenApp,
3140
3135
  Open,
3141
3136
  NormalizedOpen,
@@ -3173,7 +3168,11 @@ type Configuration = {
3173
3168
  | import("connect-history-api-fallback").Options
3174
3169
  | undefined;
3175
3170
  setupExitSignals?: boolean | undefined;
3176
- bonjour?: boolean | import("bonjour").BonjourOptions | undefined;
3171
+ bonjour?:
3172
+ | boolean
3173
+ | Record<string, never>
3174
+ | import("bonjour-service").Service
3175
+ | undefined;
3177
3176
  watchFiles?:
3178
3177
  | string
3179
3178
  | string[]
@@ -3185,7 +3184,7 @@ type Configuration = {
3185
3184
  http2?: boolean | undefined;
3186
3185
  server?: string | ServerConfiguration | undefined;
3187
3186
  webSocketServer?: string | boolean | WebSocketServerConfiguration | undefined;
3188
- proxy?: ProxyConfigMap | ProxyConfigArray | ProxyArray | undefined;
3187
+ proxy?: ProxyConfigArrayItem | ProxyConfigMap | ProxyConfigArray | undefined;
3189
3188
  open?: string | boolean | Open | (string | Open)[] | undefined;
3190
3189
  client?: boolean | ClientConfiguration | undefined;
3191
3190
  headers?:
@@ -3238,11 +3237,12 @@ type Response = import("express").Response;
3238
3237
  type NextFunction = import("express").NextFunction;
3239
3238
  type ExpressRequestHandler = import("express").RequestHandler;
3240
3239
  type ExpressErrorRequestHandler = import("express").ErrorRequestHandler;
3240
+ type AnymatchMatcher = import("anymatch").Matcher;
3241
3241
  type WatchOptions = import("chokidar").WatchOptions;
3242
3242
  type ConnectHistoryApiFallbackOptions =
3243
3243
  import("connect-history-api-fallback").Options;
3244
- type Bonjour = import("bonjour").Bonjour;
3245
- type BonjourOptions = import("bonjour").BonjourOptions;
3244
+ type Bonjour = import("bonjour-service").Bonjour;
3245
+ type BonjourOptions = import("bonjour-service").Service;
3246
3246
  type RequestHandler = import("http-proxy-middleware").RequestHandler;
3247
3247
  type HttpProxyMiddlewareOptions = import("http-proxy-middleware").Options;
3248
3248
  type HttpProxyMiddlewareOptionsFilter = import("http-proxy-middleware").Filter;
@@ -3262,15 +3262,15 @@ type ServerOptions = import("https").ServerOptions & {
3262
3262
  };
3263
3263
  };
3264
3264
  type DevMiddlewareOptions<Request_1, Response_1> =
3265
- import("webpack-dev-middleware").Options<Request_1, Response_1>;
3265
+ import("webpack-dev-middleware").Options<Request, Response>;
3266
3266
  type DevMiddlewareContext<Request_1, Response_1> =
3267
- import("webpack-dev-middleware").Context<Request_1, Response_1>;
3267
+ import("webpack-dev-middleware").Context<Request, Response>;
3268
3268
  type WatchFiles = {
3269
3269
  paths: string | string[];
3270
3270
  options?:
3271
3271
  | (import("chokidar").WatchOptions & {
3272
3272
  aggregateTimeout?: number | undefined;
3273
- ignored?: string | RegExp | string[] | undefined;
3273
+ ignored?: string[] | import("anymatch").Matcher | undefined;
3274
3274
  poll?: number | boolean | undefined;
3275
3275
  })
3276
3276
  | undefined;
@@ -3286,7 +3286,7 @@ type Static = {
3286
3286
  | boolean
3287
3287
  | (import("chokidar").WatchOptions & {
3288
3288
  aggregateTimeout?: number | undefined;
3289
- ignored?: string | RegExp | string[] | undefined;
3289
+ ignored?: string[] | import("anymatch").Matcher | undefined;
3290
3290
  poll?: number | boolean | undefined;
3291
3291
  })
3292
3292
  | undefined;
@@ -3311,20 +3311,28 @@ type WebSocketServer =
3311
3311
  | (import("sockjs").Server & {
3312
3312
  close: import("ws").WebSocketServer["close"];
3313
3313
  });
3314
- type ProxyConfigMap = {
3315
- [url: string]: string | import("http-proxy-middleware").Options;
3316
- };
3317
- type ProxyArray = HttpProxyMiddlewareOptions[];
3318
3314
  type ByPass = (
3319
3315
  req: Request,
3320
3316
  res: Response,
3321
- proxyConfig: ProxyConfigArray
3317
+ proxyConfig: ProxyConfigArrayItem
3322
3318
  ) => any;
3323
- type ProxyConfigArray = {
3324
- path?: string | string[] | undefined;
3325
- context?: string | string[] | HttpProxyMiddlewareOptionsFilter | undefined;
3326
- } & HttpProxyMiddlewareOptions &
3327
- ByPass;
3319
+ type ProxyConfigArrayItem = {
3320
+ path?: HttpProxyMiddlewareOptionsFilter | undefined;
3321
+ context?: HttpProxyMiddlewareOptionsFilter | undefined;
3322
+ } & {
3323
+ bypass?: ByPass;
3324
+ } & HttpProxyMiddlewareOptions;
3325
+ type ProxyConfigArray = (
3326
+ | ProxyConfigArrayItem
3327
+ | ((
3328
+ req?: Request | undefined,
3329
+ res?: Response | undefined,
3330
+ next?: NextFunction | undefined
3331
+ ) => ProxyConfigArrayItem)
3332
+ )[];
3333
+ type ProxyConfigMap = {
3334
+ [url: string]: string | ProxyConfigArrayItem;
3335
+ };
3328
3336
  type OpenApp = {
3329
3337
  name?: string | undefined;
3330
3338
  arguments?: string[] | undefined;