@node-red/editor-client 2.0.4 → 2.1.0-beta.2

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.
Files changed (77) hide show
  1. package/locales/en-US/editor.json +37 -7
  2. package/locales/ko/editor.json +1 -1
  3. package/package.json +2 -2
  4. package/public/red/about +109 -0
  5. package/public/red/images/node-red-256.svg +1 -0
  6. package/public/red/keymap.json +13 -2
  7. package/public/red/red.js +6122 -3663
  8. package/public/red/red.min.js +1 -1
  9. package/public/red/style.min.css +2 -2
  10. package/public/red/tours/first-flow.js +80 -0
  11. package/public/red/tours/welcome.js +135 -0
  12. package/public/tours/first-flow.js +82 -0
  13. package/public/types/node/assert.d.ts +127 -0
  14. package/public/types/node/async_hooks.d.ts +229 -0
  15. package/public/types/node/buffer.d.ts +25 -1
  16. package/public/types/node/child_process.d.ts +514 -6
  17. package/public/types/node/cluster.d.ts +265 -0
  18. package/public/types/node/console.d.ts +136 -1
  19. package/public/types/node/crypto.d.ts +1189 -1
  20. package/public/types/node/dgram.d.ts +144 -1
  21. package/public/types/node/dns.d.ts +383 -10
  22. package/public/types/node/domain.d.ts +27 -1
  23. package/public/types/node/events.d.ts +81 -1
  24. package/public/types/node/fs.d.ts +2273 -1
  25. package/public/types/node/globals.d.ts +616 -1
  26. package/public/types/node/http.d.ts +489 -1
  27. package/public/types/node/http2.d.ts +961 -0
  28. package/public/types/node/https.d.ts +142 -0
  29. package/public/types/node/module.d.ts +55 -0
  30. package/public/types/node/net.d.ts +296 -1
  31. package/public/types/node/os.d.ts +242 -1
  32. package/public/types/node/path.d.ts +156 -1
  33. package/public/types/node/perf_hooks.d.ts +274 -0
  34. package/public/types/node/process.d.ts +412 -1
  35. package/public/types/node/querystring.d.ts +31 -1
  36. package/public/types/node/readline.d.ts +173 -0
  37. package/public/types/node/stream.d.ts +358 -0
  38. package/public/types/node/string_decoder.d.ts +10 -0
  39. package/public/types/node/timers.d.ts +19 -0
  40. package/public/types/node/tls.d.ts +783 -0
  41. package/public/types/node/trace_events.d.ts +64 -0
  42. package/public/types/node/tty.d.ts +69 -0
  43. package/public/types/node/url.d.ts +119 -1
  44. package/public/types/node/util.d.ts +210 -0
  45. package/public/types/node/v8.d.ts +190 -0
  46. package/public/types/node/vm.d.ts +155 -0
  47. package/public/types/node/wasi.d.ts +89 -0
  48. package/public/types/node/worker_threads.d.ts +241 -0
  49. package/public/types/node/zlib.d.ts +364 -0
  50. package/public/types/node-red/func.d.ts +1 -1
  51. package/public/types/node-red/util.d.ts +1 -1
  52. package/public/vendor/ace/worker-jsonata.js +1 -1
  53. package/public/vendor/monaco/dist/ThirdPartyNotices.txt +192 -192
  54. package/public/vendor/monaco/dist/css.worker.js +1 -1
  55. package/public/vendor/monaco/dist/editor.js +2 -2
  56. package/public/vendor/monaco/dist/editor.worker.js +1 -1
  57. package/public/vendor/monaco/dist/html.worker.js +1 -1
  58. package/public/vendor/monaco/dist/json.worker.js +1 -1
  59. package/public/vendor/monaco/dist/locale/cs.js +44 -10
  60. package/public/vendor/monaco/dist/locale/de.js +46 -12
  61. package/public/vendor/monaco/dist/locale/es.js +46 -12
  62. package/public/vendor/monaco/dist/locale/fr.js +43 -9
  63. package/public/vendor/monaco/dist/locale/it.js +45 -11
  64. package/public/vendor/monaco/dist/locale/ja.js +45 -11
  65. package/public/vendor/monaco/dist/locale/ko.js +44 -10
  66. package/public/vendor/monaco/dist/locale/pl.js +42 -8
  67. package/public/vendor/monaco/dist/locale/pt-br.js +49 -15
  68. package/public/vendor/monaco/dist/locale/qps-ploc.js +1445 -0
  69. package/public/vendor/monaco/dist/locale/ru.js +48 -14
  70. package/public/vendor/monaco/dist/locale/tr.js +49 -15
  71. package/public/vendor/monaco/dist/locale/zh-hans.js +48 -14
  72. package/public/vendor/monaco/dist/locale/zh-hant.js +45 -11
  73. package/public/vendor/monaco/dist/theme/monoindustrial.json +228 -0
  74. package/public/vendor/monaco/dist/theme/solarized-dark.json +1082 -0
  75. package/public/vendor/monaco/dist/ts.worker.js +2 -2
  76. package/public/vendor/vendor.js +4 -4
  77. package/templates/index.mst +5 -1
@@ -1 +1,489 @@
1
- declare module'node:http'{export*from'http';}declare module'http'{import*as stream from'node:stream';import{URL}from'node:url';import{Socket,Server as NetServer}from'node:net';interface IncomingHttpHeaders extends NodeJS.Dict<string|string[]>{'accept'?:string;'accept-language'?:string;'accept-patch'?:string;'accept-ranges'?:string;'access-control-allow-credentials'?:string;'access-control-allow-headers'?:string;'access-control-allow-methods'?:string;'access-control-allow-origin'?:string;'access-control-expose-headers'?:string;'access-control-max-age'?:string;'access-control-request-headers'?:string;'access-control-request-method'?:string;'age'?:string;'allow'?:string;'alt-svc'?:string;'authorization'?:string;'cache-control'?:string;'connection'?:string;'content-disposition'?:string;'content-encoding'?:string;'content-language'?:string;'content-length'?:string;'content-location'?:string;'content-range'?:string;'content-type'?:string;'cookie'?:string;'date'?:string;'expect'?:string;'expires'?:string;'forwarded'?:string;'from'?:string;'host'?:string;'if-match'?:string;'if-modified-since'?:string;'if-none-match'?:string;'if-unmodified-since'?:string;'last-modified'?:string;'location'?:string;'origin'?:string;'pragma'?:string;'proxy-authenticate'?:string;'proxy-authorization'?:string;'public-key-pins'?:string;'range'?:string;'referer'?:string;'retry-after'?:string;'sec-websocket-accept'?:string;'sec-websocket-extensions'?:string;'sec-websocket-key'?:string;'sec-websocket-protocol'?:string;'sec-websocket-version'?:string;'set-cookie'?:string[];'strict-transport-security'?:string;'tk'?:string;'trailer'?:string;'transfer-encoding'?:string;'upgrade'?:string;'user-agent'?:string;'vary'?:string;'via'?:string;'warning'?:string;'www-authenticate'?:string;}type OutgoingHttpHeader=number|string|string[];interface OutgoingHttpHeaders extends NodeJS.Dict<OutgoingHttpHeader>{}interface ClientRequestArgs{protocol?:string|null;host?:string|null;hostname?:string|null;family?:number;port?:number|string|null;defaultPort?:number|string;localAddress?:string;socketPath?:string;maxHeaderSize?:number;method?:string;path?:string|null;headers?:OutgoingHttpHeaders;auth?:string|null;agent?:Agent|boolean;_defaultAgent?:Agent;timeout?:number;setHost?:boolean;createConnection?:(options:ClientRequestArgs,oncreate:(err:Error,socket:Socket)=>void)=>Socket;}interface ServerOptions{IncomingMessage?:typeof IncomingMessage;ServerResponse?:typeof ServerResponse;maxHeaderSize?:number;insecureHTTPParser?:boolean;}type RequestListener=(req:IncomingMessage,res:ServerResponse)=>void;interface HttpBase{setTimeout(msecs?:number,callback?:()=>void):this;setTimeout(callback:()=>void):this;maxHeadersCount:number|null;timeout:number;headersTimeout:number;keepAliveTimeout:number;requestTimeout:number;}interface Server extends HttpBase{}class Server extends NetServer{constructor(requestListener?:RequestListener);constructor(options:ServerOptions,requestListener?:RequestListener);}class OutgoingMessage extends stream.Writable{upgrading:boolean;chunkedEncoding:boolean;shouldKeepAlive:boolean;useChunkedEncodingByDefault:boolean;sendDate:boolean;finished:boolean;headersSent:boolean;connection:Socket|null;socket:Socket|null;constructor();setTimeout(msecs:number,callback?:()=>void):this;setHeader(name:string,value:number|string|ReadonlyArray<string>):void;getHeader(name:string):number|string|string[]|undefined;getHeaders():OutgoingHttpHeaders;getHeaderNames():string[];hasHeader(name:string):boolean;removeHeader(name:string):void;addTrailers(headers:OutgoingHttpHeaders|ReadonlyArray<[string,string]>):void;flushHeaders():void;}class ServerResponse extends OutgoingMessage{statusCode:number;statusMessage:string;constructor(req:IncomingMessage);assignSocket(socket:Socket):void;detachSocket(socket:Socket):void;writeContinue(callback?:()=>void):void;writeHead(statusCode:number,reasonPhrase?:string,headers?:OutgoingHttpHeaders|OutgoingHttpHeader[]):this;writeHead(statusCode:number,headers?:OutgoingHttpHeaders|OutgoingHttpHeader[]):this;writeProcessing():void;}interface InformationEvent{statusCode:number;statusMessage:string;httpVersion:string;httpVersionMajor:number;httpVersionMinor:number;headers:IncomingHttpHeaders;rawHeaders:string[];}class ClientRequest extends OutgoingMessage{aborted:boolean;host:string;protocol:string;constructor(url:string|URL|ClientRequestArgs,cb?:(res:IncomingMessage)=>void);method:string;path:string;abort():void;onSocket(socket:Socket):void;setTimeout(timeout:number,callback?:()=>void):this;setNoDelay(noDelay?:boolean):void;setSocketKeepAlive(enable?:boolean,initialDelay?:number):void;addListener(event:'abort',listener:()=>void):this;addListener(event:'connect',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;addListener(event:'continue',listener:()=>void):this;addListener(event:'information',listener:(info:InformationEvent)=>void):this;addListener(event:'response',listener:(response:IncomingMessage)=>void):this;addListener(event:'socket',listener:(socket:Socket)=>void):this;addListener(event:'timeout',listener:()=>void):this;addListener(event:'upgrade',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;addListener(event:'close',listener:()=>void):this;addListener(event:'drain',listener:()=>void):this;addListener(event:'error',listener:(err:Error)=>void):this;addListener(event:'finish',listener:()=>void):this;addListener(event:'pipe',listener:(src:stream.Readable)=>void):this;addListener(event:'unpipe',listener:(src:stream.Readable)=>void):this;addListener(event:string|symbol,listener:(...args:any[])=>void):this;on(event:'abort',listener:()=>void):this;on(event:'connect',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;on(event:'continue',listener:()=>void):this;on(event:'information',listener:(info:InformationEvent)=>void):this;on(event:'response',listener:(response:IncomingMessage)=>void):this;on(event:'socket',listener:(socket:Socket)=>void):this;on(event:'timeout',listener:()=>void):this;on(event:'upgrade',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;on(event:'close',listener:()=>void):this;on(event:'drain',listener:()=>void):this;on(event:'error',listener:(err:Error)=>void):this;on(event:'finish',listener:()=>void):this;on(event:'pipe',listener:(src:stream.Readable)=>void):this;on(event:'unpipe',listener:(src:stream.Readable)=>void):this;on(event:string|symbol,listener:(...args:any[])=>void):this;once(event:'abort',listener:()=>void):this;once(event:'connect',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;once(event:'continue',listener:()=>void):this;once(event:'information',listener:(info:InformationEvent)=>void):this;once(event:'response',listener:(response:IncomingMessage)=>void):this;once(event:'socket',listener:(socket:Socket)=>void):this;once(event:'timeout',listener:()=>void):this;once(event:'upgrade',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;once(event:'close',listener:()=>void):this;once(event:'drain',listener:()=>void):this;once(event:'error',listener:(err:Error)=>void):this;once(event:'finish',listener:()=>void):this;once(event:'pipe',listener:(src:stream.Readable)=>void):this;once(event:'unpipe',listener:(src:stream.Readable)=>void):this;once(event:string|symbol,listener:(...args:any[])=>void):this;prependListener(event:'abort',listener:()=>void):this;prependListener(event:'connect',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;prependListener(event:'continue',listener:()=>void):this;prependListener(event:'information',listener:(info:InformationEvent)=>void):this;prependListener(event:'response',listener:(response:IncomingMessage)=>void):this;prependListener(event:'socket',listener:(socket:Socket)=>void):this;prependListener(event:'timeout',listener:()=>void):this;prependListener(event:'upgrade',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;prependListener(event:'close',listener:()=>void):this;prependListener(event:'drain',listener:()=>void):this;prependListener(event:'error',listener:(err:Error)=>void):this;prependListener(event:'finish',listener:()=>void):this;prependListener(event:'pipe',listener:(src:stream.Readable)=>void):this;prependListener(event:'unpipe',listener:(src:stream.Readable)=>void):this;prependListener(event:string|symbol,listener:(...args:any[])=>void):this;prependOnceListener(event:'abort',listener:()=>void):this;prependOnceListener(event:'connect',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;prependOnceListener(event:'continue',listener:()=>void):this;prependOnceListener(event:'information',listener:(info:InformationEvent)=>void):this;prependOnceListener(event:'response',listener:(response:IncomingMessage)=>void):this;prependOnceListener(event:'socket',listener:(socket:Socket)=>void):this;prependOnceListener(event:'timeout',listener:()=>void):this;prependOnceListener(event:'upgrade',listener:(response:IncomingMessage,socket:Socket,head:Buffer)=>void):this;prependOnceListener(event:'close',listener:()=>void):this;prependOnceListener(event:'drain',listener:()=>void):this;prependOnceListener(event:'error',listener:(err:Error)=>void):this;prependOnceListener(event:'finish',listener:()=>void):this;prependOnceListener(event:'pipe',listener:(src:stream.Readable)=>void):this;prependOnceListener(event:'unpipe',listener:(src:stream.Readable)=>void):this;prependOnceListener(event:string|symbol,listener:(...args:any[])=>void):this;}class IncomingMessage extends stream.Readable{constructor(socket:Socket);aborted:boolean;httpVersion:string;httpVersionMajor:number;httpVersionMinor:number;complete:boolean;connection:Socket;socket:Socket;headers:IncomingHttpHeaders;rawHeaders:string[];trailers:NodeJS.Dict<string>;rawTrailers:string[];setTimeout(msecs:number,callback?:()=>void):this;method?:string;url?:string;statusCode?:number;statusMessage?:string;destroy(error?:Error):void;}interface AgentOptions{keepAlive?:boolean;keepAliveMsecs?:number;maxSockets?:number;maxTotalSockets?:number;maxFreeSockets?:number;timeout?:number;scheduling?:'fifo'|'lifo';}class Agent{maxFreeSockets:number;maxSockets:number;maxTotalSockets:number;readonly freeSockets:NodeJS.ReadOnlyDict<Socket[]>;readonly sockets:NodeJS.ReadOnlyDict<Socket[]>;readonly requests:NodeJS.ReadOnlyDict<IncomingMessage[]>;constructor(opts?:AgentOptions);destroy():void;}const METHODS:string[];const STATUS_CODES:{[errorCode:number]:string|undefined;[errorCode:string]:string|undefined;};function createServer(requestListener?:RequestListener):Server;function createServer(options:ServerOptions,requestListener?:RequestListener):Server;interface RequestOptions extends ClientRequestArgs{}function request(options:RequestOptions|string|URL,callback?:(res:IncomingMessage)=>void):ClientRequest;function request(url:string|URL,options:RequestOptions,callback?:(res:IncomingMessage)=>void):ClientRequest;function get(options:RequestOptions|string|URL,callback?:(res:IncomingMessage)=>void):ClientRequest;function get(url:string|URL,options:RequestOptions,callback?:(res:IncomingMessage)=>void):ClientRequest;let globalAgent:Agent;const maxHeaderSize:number;}
1
+
2
+ /* NOTE: Do not edit directly! This file is generated using `npm run update-types` in https://github.com/node-red/nr-monaco-build */
3
+
4
+ declare module 'http' {
5
+ import * as stream from 'stream';
6
+ import { URL } from 'url';
7
+ import { Socket, Server as NetServer } from 'net';
8
+
9
+ // incoming headers will never contain number
10
+ interface IncomingHttpHeaders extends NodeJS.Dict<string | string[]> {
11
+ 'accept'?: string | undefined;
12
+ 'accept-language'?: string | undefined;
13
+ 'accept-patch'?: string | undefined;
14
+ 'accept-ranges'?: string | undefined;
15
+ 'access-control-allow-credentials'?: string | undefined;
16
+ 'access-control-allow-headers'?: string | undefined;
17
+ 'access-control-allow-methods'?: string | undefined;
18
+ 'access-control-allow-origin'?: string | undefined;
19
+ 'access-control-expose-headers'?: string | undefined;
20
+ 'access-control-max-age'?: string | undefined;
21
+ 'access-control-request-headers'?: string | undefined;
22
+ 'access-control-request-method'?: string | undefined;
23
+ 'age'?: string | undefined;
24
+ 'allow'?: string | undefined;
25
+ 'alt-svc'?: string | undefined;
26
+ 'authorization'?: string | undefined;
27
+ 'cache-control'?: string | undefined;
28
+ 'connection'?: string | undefined;
29
+ 'content-disposition'?: string | undefined;
30
+ 'content-encoding'?: string | undefined;
31
+ 'content-language'?: string | undefined;
32
+ 'content-length'?: string | undefined;
33
+ 'content-location'?: string | undefined;
34
+ 'content-range'?: string | undefined;
35
+ 'content-type'?: string | undefined;
36
+ 'cookie'?: string | undefined;
37
+ 'date'?: string | undefined;
38
+ 'etag'?: string | undefined;
39
+ 'expect'?: string | undefined;
40
+ 'expires'?: string | undefined;
41
+ 'forwarded'?: string | undefined;
42
+ 'from'?: string | undefined;
43
+ 'host'?: string | undefined;
44
+ 'if-match'?: string | undefined;
45
+ 'if-modified-since'?: string | undefined;
46
+ 'if-none-match'?: string | undefined;
47
+ 'if-unmodified-since'?: string | undefined;
48
+ 'last-modified'?: string | undefined;
49
+ 'location'?: string | undefined;
50
+ 'origin'?: string | undefined;
51
+ 'pragma'?: string | undefined;
52
+ 'proxy-authenticate'?: string | undefined;
53
+ 'proxy-authorization'?: string | undefined;
54
+ 'public-key-pins'?: string | undefined;
55
+ 'range'?: string | undefined;
56
+ 'referer'?: string | undefined;
57
+ 'retry-after'?: string | undefined;
58
+ 'sec-websocket-accept'?: string | undefined;
59
+ 'sec-websocket-extensions'?: string | undefined;
60
+ 'sec-websocket-key'?: string | undefined;
61
+ 'sec-websocket-protocol'?: string | undefined;
62
+ 'sec-websocket-version'?: string | undefined;
63
+ 'set-cookie'?: string[] | undefined;
64
+ 'strict-transport-security'?: string | undefined;
65
+ 'tk'?: string | undefined;
66
+ 'trailer'?: string | undefined;
67
+ 'transfer-encoding'?: string | undefined;
68
+ 'upgrade'?: string | undefined;
69
+ 'user-agent'?: string | undefined;
70
+ 'vary'?: string | undefined;
71
+ 'via'?: string | undefined;
72
+ 'warning'?: string | undefined;
73
+ 'www-authenticate'?: string | undefined;
74
+ }
75
+
76
+ // outgoing headers allows numbers (as they are converted internally to strings)
77
+ type OutgoingHttpHeader = number | string | string[];
78
+
79
+ interface OutgoingHttpHeaders extends NodeJS.Dict<OutgoingHttpHeader> {
80
+ }
81
+
82
+ interface ClientRequestArgs {
83
+ protocol?: string | null | undefined;
84
+ host?: string | null | undefined;
85
+ hostname?: string | null | undefined;
86
+ family?: number | undefined;
87
+ port?: number | string | null | undefined;
88
+ defaultPort?: number | string | undefined;
89
+ localAddress?: string | undefined;
90
+ socketPath?: string | undefined;
91
+ /**
92
+ * @default 8192
93
+ */
94
+ maxHeaderSize?: number | undefined;
95
+ method?: string | undefined;
96
+ path?: string | null | undefined;
97
+ headers?: OutgoingHttpHeaders | undefined;
98
+ auth?: string | null | undefined;
99
+ agent?: Agent | boolean | undefined;
100
+ _defaultAgent?: Agent | undefined;
101
+ timeout?: number | undefined;
102
+ setHost?: boolean | undefined;
103
+ // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L278
104
+ createConnection?: ((options: ClientRequestArgs, oncreate: (err: Error, socket: Socket) => void) => Socket) | undefined;
105
+ }
106
+
107
+ interface ServerOptions {
108
+ IncomingMessage?: typeof IncomingMessage | undefined;
109
+ ServerResponse?: typeof ServerResponse | undefined;
110
+ /**
111
+ * Optionally overrides the value of
112
+ * [`--max-http-header-size`][] for requests received by this server, i.e.
113
+ * the maximum length of request headers in bytes.
114
+ * @default 8192
115
+ */
116
+ maxHeaderSize?: number | undefined;
117
+ /**
118
+ * Use an insecure HTTP parser that accepts invalid HTTP headers when true.
119
+ * Using the insecure parser should be avoided.
120
+ * See --insecure-http-parser for more information.
121
+ * @default false
122
+ */
123
+ insecureHTTPParser?: boolean | undefined;
124
+ }
125
+
126
+ type RequestListener = (req: IncomingMessage, res: ServerResponse) => void;
127
+
128
+ class Server extends NetServer {
129
+ constructor(requestListener?: RequestListener);
130
+ constructor(options: ServerOptions, requestListener?: RequestListener);
131
+ setTimeout(msecs?: number, callback?: () => void): this;
132
+ setTimeout(callback: () => void): this;
133
+ /**
134
+ * Limits maximum incoming headers count. If set to 0, no limit will be applied.
135
+ * @default 2000
136
+ * {@link https://nodejs.org/api/http.html#http_server_maxheaderscount}
137
+ */
138
+ maxHeadersCount: number | null;
139
+ timeout: number;
140
+ /**
141
+ * Limit the amount of time the parser will wait to receive the complete HTTP headers.
142
+ * @default 60000
143
+ * {@link https://nodejs.org/api/http.html#http_server_headerstimeout}
144
+ */
145
+ headersTimeout: number;
146
+ keepAliveTimeout: number;
147
+ /**
148
+ * Sets the timeout value in milliseconds for receiving the entire request from the client.
149
+ * @default 0
150
+ * {@link https://nodejs.org/api/http.html#http_server_requesttimeout}
151
+ */
152
+ requestTimeout: number;
153
+ addListener(event: string, listener: (...args: any[]) => void): this;
154
+ addListener(event: 'close', listener: () => void): this;
155
+ addListener(event: 'connection', listener: (socket: Socket) => void): this;
156
+ addListener(event: 'error', listener: (err: Error) => void): this;
157
+ addListener(event: 'listening', listener: () => void): this;
158
+ addListener(event: 'checkContinue', listener: RequestListener): this;
159
+ addListener(event: 'checkExpectation', listener: RequestListener): this;
160
+ addListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
161
+ addListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
162
+ addListener(event: 'request', listener: RequestListener): this;
163
+ addListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
164
+ emit(event: string, ...args: any[]): boolean;
165
+ emit(event: 'close'): boolean;
166
+ emit(event: 'connection', socket: Socket): boolean;
167
+ emit(event: 'error', err: Error): boolean;
168
+ emit(event: 'listening'): boolean;
169
+ emit(event: 'checkContinue', req: IncomingMessage, res: ServerResponse): boolean;
170
+ emit(event: 'checkExpectation', req: IncomingMessage, res: ServerResponse): boolean;
171
+ emit(event: 'clientError', err: Error, socket: stream.Duplex): boolean;
172
+ emit(event: 'connect', req: IncomingMessage, socket: stream.Duplex, head: Buffer): boolean;
173
+ emit(event: 'request', req: IncomingMessage, res: ServerResponse): boolean;
174
+ emit(event: 'upgrade', req: IncomingMessage, socket: stream.Duplex, head: Buffer): boolean;
175
+ on(event: string, listener: (...args: any[]) => void): this;
176
+ on(event: 'close', listener: () => void): this;
177
+ on(event: 'connection', listener: (socket: Socket) => void): this;
178
+ on(event: 'error', listener: (err: Error) => void): this;
179
+ on(event: 'listening', listener: () => void): this;
180
+ on(event: 'checkContinue', listener: RequestListener): this;
181
+ on(event: 'checkExpectation', listener: RequestListener): this;
182
+ on(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
183
+ on(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
184
+ on(event: 'request', listener: RequestListener): this;
185
+ on(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
186
+ once(event: string, listener: (...args: any[]) => void): this;
187
+ once(event: 'close', listener: () => void): this;
188
+ once(event: 'connection', listener: (socket: Socket) => void): this;
189
+ once(event: 'error', listener: (err: Error) => void): this;
190
+ once(event: 'listening', listener: () => void): this;
191
+ once(event: 'checkContinue', listener: RequestListener): this;
192
+ once(event: 'checkExpectation', listener: RequestListener): this;
193
+ once(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
194
+ once(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
195
+ once(event: 'request', listener: RequestListener): this;
196
+ once(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
197
+ prependListener(event: string, listener: (...args: any[]) => void): this;
198
+ prependListener(event: 'close', listener: () => void): this;
199
+ prependListener(event: 'connection', listener: (socket: Socket) => void): this;
200
+ prependListener(event: 'error', listener: (err: Error) => void): this;
201
+ prependListener(event: 'listening', listener: () => void): this;
202
+ prependListener(event: 'checkContinue', listener: RequestListener): this;
203
+ prependListener(event: 'checkExpectation', listener: RequestListener): this;
204
+ prependListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
205
+ prependListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
206
+ prependListener(event: 'request', listener: RequestListener): this;
207
+ prependListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
208
+ prependOnceListener(event: string, listener: (...args: any[]) => void): this;
209
+ prependOnceListener(event: 'close', listener: () => void): this;
210
+ prependOnceListener(event: 'connection', listener: (socket: Socket) => void): this;
211
+ prependOnceListener(event: 'error', listener: (err: Error) => void): this;
212
+ prependOnceListener(event: 'listening', listener: () => void): this;
213
+ prependOnceListener(event: 'checkContinue', listener: RequestListener): this;
214
+ prependOnceListener(event: 'checkExpectation', listener: RequestListener): this;
215
+ prependOnceListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
216
+ prependOnceListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
217
+ prependOnceListener(event: 'request', listener: RequestListener): this;
218
+ prependOnceListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
219
+ }
220
+
221
+ // https://github.com/nodejs/node/blob/master/lib/_http_outgoing.js
222
+ class OutgoingMessage extends stream.Writable {
223
+ upgrading: boolean;
224
+ chunkedEncoding: boolean;
225
+ shouldKeepAlive: boolean;
226
+ useChunkedEncodingByDefault: boolean;
227
+ sendDate: boolean;
228
+ /**
229
+ * @deprecated Use `writableEnded` instead.
230
+ */
231
+ finished: boolean;
232
+ headersSent: boolean;
233
+ /**
234
+ * @deprecated Use `socket` instead.
235
+ */
236
+ connection: Socket | null;
237
+ socket: Socket | null;
238
+
239
+ constructor();
240
+
241
+ setTimeout(msecs: number, callback?: () => void): this;
242
+ setHeader(name: string, value: number | string | ReadonlyArray<string>): void;
243
+ getHeader(name: string): number | string | string[] | undefined;
244
+ getHeaders(): OutgoingHttpHeaders;
245
+ getHeaderNames(): string[];
246
+ hasHeader(name: string): boolean;
247
+ removeHeader(name: string): void;
248
+ addTrailers(headers: OutgoingHttpHeaders | ReadonlyArray<[string, string]>): void;
249
+ flushHeaders(): void;
250
+ }
251
+
252
+ // https://github.com/nodejs/node/blob/master/lib/_http_server.js#L108-L256
253
+ class ServerResponse extends OutgoingMessage {
254
+ statusCode: number;
255
+ statusMessage: string;
256
+
257
+ constructor(req: IncomingMessage);
258
+
259
+ assignSocket(socket: Socket): void;
260
+ detachSocket(socket: Socket): void;
261
+ // https://github.com/nodejs/node/blob/master/test/parallel/test-http-write-callbacks.js#L53
262
+ // no args in writeContinue callback
263
+ writeContinue(callback?: () => void): void;
264
+ writeHead(statusCode: number, statusMessage?: string, headers?: OutgoingHttpHeaders | OutgoingHttpHeader[]): this;
265
+ writeHead(statusCode: number, headers?: OutgoingHttpHeaders | OutgoingHttpHeader[]): this;
266
+ writeProcessing(): void;
267
+ }
268
+
269
+ interface InformationEvent {
270
+ statusCode: number;
271
+ statusMessage: string;
272
+ httpVersion: string;
273
+ httpVersionMajor: number;
274
+ httpVersionMinor: number;
275
+ headers: IncomingHttpHeaders;
276
+ rawHeaders: string[];
277
+ }
278
+
279
+ // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L77
280
+ class ClientRequest extends OutgoingMessage {
281
+ aborted: boolean;
282
+ host: string;
283
+ protocol: string;
284
+
285
+ constructor(url: string | URL | ClientRequestArgs, cb?: (res: IncomingMessage) => void);
286
+
287
+ method: string;
288
+ path: string;
289
+ /** @deprecated since v14.1.0 Use `request.destroy()` instead. */
290
+ abort(): void;
291
+ onSocket(socket: Socket): void;
292
+ setTimeout(timeout: number, callback?: () => void): this;
293
+ setNoDelay(noDelay?: boolean): void;
294
+ setSocketKeepAlive(enable?: boolean, initialDelay?: number): void;
295
+
296
+ addListener(event: 'abort', listener: () => void): this;
297
+ addListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
298
+ addListener(event: 'continue', listener: () => void): this;
299
+ addListener(event: 'information', listener: (info: InformationEvent) => void): this;
300
+ addListener(event: 'response', listener: (response: IncomingMessage) => void): this;
301
+ addListener(event: 'socket', listener: (socket: Socket) => void): this;
302
+ addListener(event: 'timeout', listener: () => void): this;
303
+ addListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
304
+ addListener(event: 'close', listener: () => void): this;
305
+ addListener(event: 'drain', listener: () => void): this;
306
+ addListener(event: 'error', listener: (err: Error) => void): this;
307
+ addListener(event: 'finish', listener: () => void): this;
308
+ addListener(event: 'pipe', listener: (src: stream.Readable) => void): this;
309
+ addListener(event: 'unpipe', listener: (src: stream.Readable) => void): this;
310
+ addListener(event: string | symbol, listener: (...args: any[]) => void): this;
311
+
312
+ on(event: 'abort', listener: () => void): this;
313
+ on(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
314
+ on(event: 'continue', listener: () => void): this;
315
+ on(event: 'information', listener: (info: InformationEvent) => void): this;
316
+ on(event: 'response', listener: (response: IncomingMessage) => void): this;
317
+ on(event: 'socket', listener: (socket: Socket) => void): this;
318
+ on(event: 'timeout', listener: () => void): this;
319
+ on(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
320
+ on(event: 'close', listener: () => void): this;
321
+ on(event: 'drain', listener: () => void): this;
322
+ on(event: 'error', listener: (err: Error) => void): this;
323
+ on(event: 'finish', listener: () => void): this;
324
+ on(event: 'pipe', listener: (src: stream.Readable) => void): this;
325
+ on(event: 'unpipe', listener: (src: stream.Readable) => void): this;
326
+ on(event: string | symbol, listener: (...args: any[]) => void): this;
327
+
328
+ once(event: 'abort', listener: () => void): this;
329
+ once(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
330
+ once(event: 'continue', listener: () => void): this;
331
+ once(event: 'information', listener: (info: InformationEvent) => void): this;
332
+ once(event: 'response', listener: (response: IncomingMessage) => void): this;
333
+ once(event: 'socket', listener: (socket: Socket) => void): this;
334
+ once(event: 'timeout', listener: () => void): this;
335
+ once(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
336
+ once(event: 'close', listener: () => void): this;
337
+ once(event: 'drain', listener: () => void): this;
338
+ once(event: 'error', listener: (err: Error) => void): this;
339
+ once(event: 'finish', listener: () => void): this;
340
+ once(event: 'pipe', listener: (src: stream.Readable) => void): this;
341
+ once(event: 'unpipe', listener: (src: stream.Readable) => void): this;
342
+ once(event: string | symbol, listener: (...args: any[]) => void): this;
343
+
344
+ prependListener(event: 'abort', listener: () => void): this;
345
+ prependListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
346
+ prependListener(event: 'continue', listener: () => void): this;
347
+ prependListener(event: 'information', listener: (info: InformationEvent) => void): this;
348
+ prependListener(event: 'response', listener: (response: IncomingMessage) => void): this;
349
+ prependListener(event: 'socket', listener: (socket: Socket) => void): this;
350
+ prependListener(event: 'timeout', listener: () => void): this;
351
+ prependListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
352
+ prependListener(event: 'close', listener: () => void): this;
353
+ prependListener(event: 'drain', listener: () => void): this;
354
+ prependListener(event: 'error', listener: (err: Error) => void): this;
355
+ prependListener(event: 'finish', listener: () => void): this;
356
+ prependListener(event: 'pipe', listener: (src: stream.Readable) => void): this;
357
+ prependListener(event: 'unpipe', listener: (src: stream.Readable) => void): this;
358
+ prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
359
+
360
+ prependOnceListener(event: 'abort', listener: () => void): this;
361
+ prependOnceListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
362
+ prependOnceListener(event: 'continue', listener: () => void): this;
363
+ prependOnceListener(event: 'information', listener: (info: InformationEvent) => void): this;
364
+ prependOnceListener(event: 'response', listener: (response: IncomingMessage) => void): this;
365
+ prependOnceListener(event: 'socket', listener: (socket: Socket) => void): this;
366
+ prependOnceListener(event: 'timeout', listener: () => void): this;
367
+ prependOnceListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
368
+ prependOnceListener(event: 'close', listener: () => void): this;
369
+ prependOnceListener(event: 'drain', listener: () => void): this;
370
+ prependOnceListener(event: 'error', listener: (err: Error) => void): this;
371
+ prependOnceListener(event: 'finish', listener: () => void): this;
372
+ prependOnceListener(event: 'pipe', listener: (src: stream.Readable) => void): this;
373
+ prependOnceListener(event: 'unpipe', listener: (src: stream.Readable) => void): this;
374
+ prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
375
+ }
376
+
377
+ class IncomingMessage extends stream.Readable {
378
+ constructor(socket: Socket);
379
+
380
+ aborted: boolean;
381
+ httpVersion: string;
382
+ httpVersionMajor: number;
383
+ httpVersionMinor: number;
384
+ complete: boolean;
385
+ /**
386
+ * @deprecated since v13.0.0 - Use `socket` instead.
387
+ */
388
+ connection: Socket;
389
+ socket: Socket;
390
+ headers: IncomingHttpHeaders;
391
+ rawHeaders: string[];
392
+ trailers: NodeJS.Dict<string>;
393
+ rawTrailers: string[];
394
+ setTimeout(msecs: number, callback?: () => void): this;
395
+ /**
396
+ * Only valid for request obtained from http.Server.
397
+ */
398
+ method?: string | undefined;
399
+ /**
400
+ * Only valid for request obtained from http.Server.
401
+ */
402
+ url?: string | undefined;
403
+ /**
404
+ * Only valid for response obtained from http.ClientRequest.
405
+ */
406
+ statusCode?: number | undefined;
407
+ /**
408
+ * Only valid for response obtained from http.ClientRequest.
409
+ */
410
+ statusMessage?: string | undefined;
411
+ destroy(error?: Error): void;
412
+ }
413
+
414
+ interface AgentOptions {
415
+ /**
416
+ * Keep sockets around in a pool to be used by other requests in the future. Default = false
417
+ */
418
+ keepAlive?: boolean | undefined;
419
+ /**
420
+ * When using HTTP KeepAlive, how often to send TCP KeepAlive packets over sockets being kept alive. Default = 1000.
421
+ * Only relevant if keepAlive is set to true.
422
+ */
423
+ keepAliveMsecs?: number | undefined;
424
+ /**
425
+ * Maximum number of sockets to allow per host. Default for Node 0.10 is 5, default for Node 0.12 is Infinity
426
+ */
427
+ maxSockets?: number | undefined;
428
+ /**
429
+ * Maximum number of sockets allowed for all hosts in total. Each request will use a new socket until the maximum is reached. Default: Infinity.
430
+ */
431
+ maxTotalSockets?: number | undefined;
432
+ /**
433
+ * Maximum number of sockets to leave open in a free state. Only relevant if keepAlive is set to true. Default = 256.
434
+ */
435
+ maxFreeSockets?: number | undefined;
436
+ /**
437
+ * Socket timeout in milliseconds. This will set the timeout after the socket is connected.
438
+ */
439
+ timeout?: number | undefined;
440
+ /**
441
+ * Scheduling strategy to apply when picking the next free socket to use. Default: 'fifo'.
442
+ */
443
+ scheduling?: 'fifo' | 'lifo' | undefined;
444
+ }
445
+
446
+ class Agent {
447
+ maxFreeSockets: number;
448
+ maxSockets: number;
449
+ maxTotalSockets: number;
450
+ readonly freeSockets: NodeJS.ReadOnlyDict<Socket[]>;
451
+ readonly sockets: NodeJS.ReadOnlyDict<Socket[]>;
452
+ readonly requests: NodeJS.ReadOnlyDict<IncomingMessage[]>;
453
+
454
+ constructor(opts?: AgentOptions);
455
+
456
+ /**
457
+ * Destroy any sockets that are currently in use by the agent.
458
+ * It is usually not necessary to do this. However, if you are using an agent with KeepAlive enabled,
459
+ * then it is best to explicitly shut down the agent when you know that it will no longer be used. Otherwise,
460
+ * sockets may hang open for quite a long time before the server terminates them.
461
+ */
462
+ destroy(): void;
463
+ }
464
+
465
+ const METHODS: string[];
466
+
467
+ const STATUS_CODES: {
468
+ [errorCode: number]: string | undefined;
469
+ [errorCode: string]: string | undefined;
470
+ };
471
+
472
+ function createServer(requestListener?: RequestListener): Server;
473
+ function createServer(options: ServerOptions, requestListener?: RequestListener): Server;
474
+
475
+ // although RequestOptions are passed as ClientRequestArgs to ClientRequest directly,
476
+ // create interface RequestOptions would make the naming more clear to developers
477
+ interface RequestOptions extends ClientRequestArgs { }
478
+ function request(options: RequestOptions | string | URL, callback?: (res: IncomingMessage) => void): ClientRequest;
479
+ function request(url: string | URL, options: RequestOptions, callback?: (res: IncomingMessage) => void): ClientRequest;
480
+ function get(options: RequestOptions | string | URL, callback?: (res: IncomingMessage) => void): ClientRequest;
481
+ function get(url: string | URL, options: RequestOptions, callback?: (res: IncomingMessage) => void): ClientRequest;
482
+ let globalAgent: Agent;
483
+
484
+ /**
485
+ * Read-only property specifying the maximum allowed size of HTTP headers in bytes.
486
+ * Defaults to 16KB. Configurable using the [`--max-http-header-size`][] CLI option.
487
+ */
488
+ const maxHeaderSize: number;
489
+ }