@alanszp/express 12.0.2 → 13.0.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.
Files changed (180) hide show
  1. package/dist/helpers/getRequestBaseLog.d.ts +2 -0
  2. package/dist/helpers/getRequestBaseLog.js +9 -0
  3. package/dist/helpers/getRequestBaseLog.js.map +1 -0
  4. package/dist/helpers/renderErrorJson.d.ts +1 -0
  5. package/dist/helpers/renderErrorJson.js +10 -1
  6. package/dist/helpers/renderErrorJson.js.map +1 -1
  7. package/dist/index.d.ts +3 -1
  8. package/dist/index.js +3 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/middlewares/errorRequestHandlerMiddleware.d.ts +4 -0
  11. package/dist/middlewares/errorRequestHandlerMiddleware.js +68 -0
  12. package/dist/middlewares/errorRequestHandlerMiddleware.js.map +1 -0
  13. package/dist/middlewares/hasPermissions.d.ts +20 -0
  14. package/dist/middlewares/hasPermissions.js +90 -0
  15. package/dist/middlewares/hasPermissions.js.map +1 -0
  16. package/dist/middlewares/hasRoles.js +4 -4
  17. package/dist/middlewares/hasRoles.js.map +1 -1
  18. package/package.json +9 -10
  19. package/.gitignore +0 -3
  20. package/.npmignore +0 -3
  21. package/dist/middlewares/returnInternalServerError.d.ts +0 -4
  22. package/dist/middlewares/returnInternalServerError.js +0 -10
  23. package/dist/middlewares/returnInternalServerError.js.map +0 -1
  24. package/node_modules/@jest/expect-utils/LICENSE +0 -21
  25. package/node_modules/@jest/expect-utils/README.md +0 -5
  26. package/node_modules/@jest/expect-utils/build/index.d.ts +0 -93
  27. package/node_modules/@jest/expect-utils/build/index.js +0 -37
  28. package/node_modules/@jest/expect-utils/build/jasmineUtils.js +0 -282
  29. package/node_modules/@jest/expect-utils/build/types.js +0 -1
  30. package/node_modules/@jest/expect-utils/build/utils.js +0 -457
  31. package/node_modules/@jest/expect-utils/package.json +0 -33
  32. package/node_modules/@jest/types/LICENSE +0 -21
  33. package/node_modules/@jest/types/README.md +0 -30
  34. package/node_modules/@jest/types/build/Circus.js +0 -1
  35. package/node_modules/@jest/types/build/Config.js +0 -1
  36. package/node_modules/@jest/types/build/Global.js +0 -1
  37. package/node_modules/@jest/types/build/TestResult.js +0 -1
  38. package/node_modules/@jest/types/build/Transform.js +0 -1
  39. package/node_modules/@jest/types/build/index.d.ts +0 -1166
  40. package/node_modules/@jest/types/build/index.js +0 -1
  41. package/node_modules/@jest/types/package.json +0 -38
  42. package/node_modules/@types/jest/LICENSE +0 -21
  43. package/node_modules/@types/jest/README.md +0 -17
  44. package/node_modules/@types/jest/index.d.ts +0 -1608
  45. package/node_modules/@types/jest/package.json +0 -159
  46. package/node_modules/@types/node/LICENSE +0 -21
  47. package/node_modules/@types/node/README.md +0 -15
  48. package/node_modules/@types/node/assert/strict.d.ts +0 -8
  49. package/node_modules/@types/node/assert.d.ts +0 -996
  50. package/node_modules/@types/node/async_hooks.d.ts +0 -539
  51. package/node_modules/@types/node/buffer.d.ts +0 -2362
  52. package/node_modules/@types/node/child_process.d.ts +0 -1540
  53. package/node_modules/@types/node/cluster.d.ts +0 -432
  54. package/node_modules/@types/node/console.d.ts +0 -415
  55. package/node_modules/@types/node/constants.d.ts +0 -19
  56. package/node_modules/@types/node/crypto.d.ts +0 -4487
  57. package/node_modules/@types/node/dgram.d.ts +0 -596
  58. package/node_modules/@types/node/diagnostics_channel.d.ts +0 -545
  59. package/node_modules/@types/node/dns/promises.d.ts +0 -425
  60. package/node_modules/@types/node/dns.d.ts +0 -809
  61. package/node_modules/@types/node/dom-events.d.ts +0 -122
  62. package/node_modules/@types/node/domain.d.ts +0 -170
  63. package/node_modules/@types/node/events.d.ts +0 -879
  64. package/node_modules/@types/node/fs/promises.d.ts +0 -1239
  65. package/node_modules/@types/node/fs.d.ts +0 -4311
  66. package/node_modules/@types/node/globals.d.ts +0 -411
  67. package/node_modules/@types/node/globals.global.d.ts +0 -1
  68. package/node_modules/@types/node/http.d.ts +0 -1887
  69. package/node_modules/@types/node/http2.d.ts +0 -2382
  70. package/node_modules/@types/node/https.d.ts +0 -550
  71. package/node_modules/@types/node/index.d.ts +0 -88
  72. package/node_modules/@types/node/inspector.d.ts +0 -2747
  73. package/node_modules/@types/node/module.d.ts +0 -315
  74. package/node_modules/@types/node/net.d.ts +0 -949
  75. package/node_modules/@types/node/os.d.ts +0 -478
  76. package/node_modules/@types/node/package.json +0 -229
  77. package/node_modules/@types/node/path.d.ts +0 -191
  78. package/node_modules/@types/node/perf_hooks.d.ts +0 -645
  79. package/node_modules/@types/node/process.d.ts +0 -1561
  80. package/node_modules/@types/node/punycode.d.ts +0 -117
  81. package/node_modules/@types/node/querystring.d.ts +0 -141
  82. package/node_modules/@types/node/readline/promises.d.ts +0 -150
  83. package/node_modules/@types/node/readline.d.ts +0 -539
  84. package/node_modules/@types/node/repl.d.ts +0 -430
  85. package/node_modules/@types/node/stream/consumers.d.ts +0 -12
  86. package/node_modules/@types/node/stream/promises.d.ts +0 -83
  87. package/node_modules/@types/node/stream/web.d.ts +0 -366
  88. package/node_modules/@types/node/stream.d.ts +0 -1701
  89. package/node_modules/@types/node/string_decoder.d.ts +0 -67
  90. package/node_modules/@types/node/test.d.ts +0 -1465
  91. package/node_modules/@types/node/timers/promises.d.ts +0 -93
  92. package/node_modules/@types/node/timers.d.ts +0 -240
  93. package/node_modules/@types/node/tls.d.ts +0 -1210
  94. package/node_modules/@types/node/trace_events.d.ts +0 -182
  95. package/node_modules/@types/node/ts4.8/assert/strict.d.ts +0 -8
  96. package/node_modules/@types/node/ts4.8/assert.d.ts +0 -996
  97. package/node_modules/@types/node/ts4.8/async_hooks.d.ts +0 -539
  98. package/node_modules/@types/node/ts4.8/buffer.d.ts +0 -2362
  99. package/node_modules/@types/node/ts4.8/child_process.d.ts +0 -1540
  100. package/node_modules/@types/node/ts4.8/cluster.d.ts +0 -432
  101. package/node_modules/@types/node/ts4.8/console.d.ts +0 -415
  102. package/node_modules/@types/node/ts4.8/constants.d.ts +0 -19
  103. package/node_modules/@types/node/ts4.8/crypto.d.ts +0 -4487
  104. package/node_modules/@types/node/ts4.8/dgram.d.ts +0 -596
  105. package/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +0 -545
  106. package/node_modules/@types/node/ts4.8/dns/promises.d.ts +0 -425
  107. package/node_modules/@types/node/ts4.8/dns.d.ts +0 -809
  108. package/node_modules/@types/node/ts4.8/dom-events.d.ts +0 -122
  109. package/node_modules/@types/node/ts4.8/domain.d.ts +0 -170
  110. package/node_modules/@types/node/ts4.8/events.d.ts +0 -879
  111. package/node_modules/@types/node/ts4.8/fs/promises.d.ts +0 -1239
  112. package/node_modules/@types/node/ts4.8/fs.d.ts +0 -4311
  113. package/node_modules/@types/node/ts4.8/globals.d.ts +0 -411
  114. package/node_modules/@types/node/ts4.8/globals.global.d.ts +0 -1
  115. package/node_modules/@types/node/ts4.8/http.d.ts +0 -1887
  116. package/node_modules/@types/node/ts4.8/http2.d.ts +0 -2382
  117. package/node_modules/@types/node/ts4.8/https.d.ts +0 -550
  118. package/node_modules/@types/node/ts4.8/index.d.ts +0 -88
  119. package/node_modules/@types/node/ts4.8/inspector.d.ts +0 -2747
  120. package/node_modules/@types/node/ts4.8/module.d.ts +0 -315
  121. package/node_modules/@types/node/ts4.8/net.d.ts +0 -949
  122. package/node_modules/@types/node/ts4.8/os.d.ts +0 -478
  123. package/node_modules/@types/node/ts4.8/path.d.ts +0 -191
  124. package/node_modules/@types/node/ts4.8/perf_hooks.d.ts +0 -645
  125. package/node_modules/@types/node/ts4.8/process.d.ts +0 -1561
  126. package/node_modules/@types/node/ts4.8/punycode.d.ts +0 -117
  127. package/node_modules/@types/node/ts4.8/querystring.d.ts +0 -141
  128. package/node_modules/@types/node/ts4.8/readline/promises.d.ts +0 -150
  129. package/node_modules/@types/node/ts4.8/readline.d.ts +0 -539
  130. package/node_modules/@types/node/ts4.8/repl.d.ts +0 -430
  131. package/node_modules/@types/node/ts4.8/stream/consumers.d.ts +0 -12
  132. package/node_modules/@types/node/ts4.8/stream/promises.d.ts +0 -83
  133. package/node_modules/@types/node/ts4.8/stream/web.d.ts +0 -366
  134. package/node_modules/@types/node/ts4.8/stream.d.ts +0 -1701
  135. package/node_modules/@types/node/ts4.8/string_decoder.d.ts +0 -67
  136. package/node_modules/@types/node/ts4.8/test.d.ts +0 -1465
  137. package/node_modules/@types/node/ts4.8/timers/promises.d.ts +0 -93
  138. package/node_modules/@types/node/ts4.8/timers.d.ts +0 -240
  139. package/node_modules/@types/node/ts4.8/tls.d.ts +0 -1210
  140. package/node_modules/@types/node/ts4.8/trace_events.d.ts +0 -182
  141. package/node_modules/@types/node/ts4.8/tty.d.ts +0 -208
  142. package/node_modules/@types/node/ts4.8/url.d.ts +0 -927
  143. package/node_modules/@types/node/ts4.8/util.d.ts +0 -2183
  144. package/node_modules/@types/node/ts4.8/v8.d.ts +0 -764
  145. package/node_modules/@types/node/ts4.8/vm.d.ts +0 -903
  146. package/node_modules/@types/node/ts4.8/wasi.d.ts +0 -179
  147. package/node_modules/@types/node/ts4.8/worker_threads.d.ts +0 -691
  148. package/node_modules/@types/node/ts4.8/zlib.d.ts +0 -517
  149. package/node_modules/@types/node/tty.d.ts +0 -208
  150. package/node_modules/@types/node/url.d.ts +0 -927
  151. package/node_modules/@types/node/util.d.ts +0 -2183
  152. package/node_modules/@types/node/v8.d.ts +0 -764
  153. package/node_modules/@types/node/vm.d.ts +0 -903
  154. package/node_modules/@types/node/wasi.d.ts +0 -179
  155. package/node_modules/@types/node/worker_threads.d.ts +0 -691
  156. package/node_modules/@types/node/zlib.d.ts +0 -517
  157. package/src/helpers/getIp.ts +0 -5
  158. package/src/helpers/getRequestLogger.ts +0 -6
  159. package/src/helpers/now.ts +0 -3
  160. package/src/helpers/renderErrorJson.ts +0 -29
  161. package/src/index.ts +0 -10
  162. package/src/middlewares/accessLogger.ts +0 -34
  163. package/src/middlewares/auditLog.ts +0 -52
  164. package/src/middlewares/authedForOrg.ts +0 -50
  165. package/src/middlewares/authenticateUser.test.ts +0 -403
  166. package/src/middlewares/authenticateUser.ts +0 -171
  167. package/src/middlewares/createContext.test.ts +0 -85
  168. package/src/middlewares/createContext.ts +0 -49
  169. package/src/middlewares/hasRoles.ts +0 -24
  170. package/src/middlewares/jsonBodyParser.ts +0 -22
  171. package/src/middlewares/returnInternalServerError.ts +0 -15
  172. package/src/middlewares/returnNotFound.ts +0 -11
  173. package/src/test/mocks/authOptionsMocks.ts +0 -35
  174. package/src/test/mocks/expressMocks.ts +0 -33
  175. package/src/test/mocks/jwtUserMocks.ts +0 -19
  176. package/src/test/setup.test.ts +0 -15
  177. package/src/test/setup.ts +0 -3
  178. package/src/types/AuthMethod.ts +0 -27
  179. package/src/types/GenericRequest.ts +0 -3
  180. package/src/types/custom.d.ts +0 -20
@@ -1,550 +0,0 @@
1
- /**
2
- * HTTPS is the HTTP protocol over TLS/SSL. In Node.js this is implemented as a
3
- * separate module.
4
- * @see [source](https://github.com/nodejs/node/blob/v20.2.0/lib/https.js)
5
- */
6
- declare module "https" {
7
- import { Duplex } from "node:stream";
8
- import * as tls from "node:tls";
9
- import * as http from "node:http";
10
- import { URL } from "node:url";
11
- type ServerOptions<
12
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
13
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
14
- > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions<Request, Response>;
15
- type RequestOptions =
16
- & http.RequestOptions
17
- & tls.SecureContextOptions
18
- & {
19
- checkServerIdentity?: typeof tls.checkServerIdentity | undefined;
20
- rejectUnauthorized?: boolean | undefined; // Defaults to true
21
- servername?: string | undefined; // SNI TLS Extension
22
- };
23
- interface AgentOptions extends http.AgentOptions, tls.ConnectionOptions {
24
- rejectUnauthorized?: boolean | undefined;
25
- maxCachedSessions?: number | undefined;
26
- }
27
- /**
28
- * An `Agent` object for HTTPS similar to `http.Agent`. See {@link request} for more information.
29
- * @since v0.4.5
30
- */
31
- class Agent extends http.Agent {
32
- constructor(options?: AgentOptions);
33
- options: AgentOptions;
34
- }
35
- interface Server<
36
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
37
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
38
- > extends http.Server<Request, Response> {}
39
- /**
40
- * See `http.Server` for more information.
41
- * @since v0.3.4
42
- */
43
- class Server<
44
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
45
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
46
- > extends tls.Server {
47
- constructor(requestListener?: http.RequestListener<Request, Response>);
48
- constructor(
49
- options: ServerOptions<Request, Response>,
50
- requestListener?: http.RequestListener<Request, Response>,
51
- );
52
- /**
53
- * Closes all connections connected to this server.
54
- * @since v18.2.0
55
- */
56
- closeAllConnections(): void;
57
- /**
58
- * Closes all connections connected to this server which are not sending a request or waiting for a response.
59
- * @since v18.2.0
60
- */
61
- closeIdleConnections(): void;
62
- addListener(event: string, listener: (...args: any[]) => void): this;
63
- addListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
64
- addListener(
65
- event: "newSession",
66
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
67
- ): this;
68
- addListener(
69
- event: "OCSPRequest",
70
- listener: (
71
- certificate: Buffer,
72
- issuer: Buffer,
73
- callback: (err: Error | null, resp: Buffer) => void,
74
- ) => void,
75
- ): this;
76
- addListener(
77
- event: "resumeSession",
78
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
79
- ): this;
80
- addListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
81
- addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
82
- addListener(event: "close", listener: () => void): this;
83
- addListener(event: "connection", listener: (socket: Duplex) => void): this;
84
- addListener(event: "error", listener: (err: Error) => void): this;
85
- addListener(event: "listening", listener: () => void): this;
86
- addListener(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
87
- addListener(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
88
- addListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
89
- addListener(
90
- event: "connect",
91
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
92
- ): this;
93
- addListener(event: "request", listener: http.RequestListener<Request, Response>): this;
94
- addListener(
95
- event: "upgrade",
96
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
97
- ): this;
98
- emit(event: string, ...args: any[]): boolean;
99
- emit(event: "keylog", line: Buffer, tlsSocket: tls.TLSSocket): boolean;
100
- emit(
101
- event: "newSession",
102
- sessionId: Buffer,
103
- sessionData: Buffer,
104
- callback: (err: Error, resp: Buffer) => void,
105
- ): boolean;
106
- emit(
107
- event: "OCSPRequest",
108
- certificate: Buffer,
109
- issuer: Buffer,
110
- callback: (err: Error | null, resp: Buffer) => void,
111
- ): boolean;
112
- emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean;
113
- emit(event: "secureConnection", tlsSocket: tls.TLSSocket): boolean;
114
- emit(event: "tlsClientError", err: Error, tlsSocket: tls.TLSSocket): boolean;
115
- emit(event: "close"): boolean;
116
- emit(event: "connection", socket: Duplex): boolean;
117
- emit(event: "error", err: Error): boolean;
118
- emit(event: "listening"): boolean;
119
- emit(
120
- event: "checkContinue",
121
- req: InstanceType<Request>,
122
- res: InstanceType<Response> & {
123
- req: InstanceType<Request>;
124
- },
125
- ): boolean;
126
- emit(
127
- event: "checkExpectation",
128
- req: InstanceType<Request>,
129
- res: InstanceType<Response> & {
130
- req: InstanceType<Request>;
131
- },
132
- ): boolean;
133
- emit(event: "clientError", err: Error, socket: Duplex): boolean;
134
- emit(event: "connect", req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
135
- emit(
136
- event: "request",
137
- req: InstanceType<Request>,
138
- res: InstanceType<Response> & {
139
- req: InstanceType<Request>;
140
- },
141
- ): boolean;
142
- emit(event: "upgrade", req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
143
- on(event: string, listener: (...args: any[]) => void): this;
144
- on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
145
- on(
146
- event: "newSession",
147
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
148
- ): this;
149
- on(
150
- event: "OCSPRequest",
151
- listener: (
152
- certificate: Buffer,
153
- issuer: Buffer,
154
- callback: (err: Error | null, resp: Buffer) => void,
155
- ) => void,
156
- ): this;
157
- on(
158
- event: "resumeSession",
159
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
160
- ): this;
161
- on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
162
- on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
163
- on(event: "close", listener: () => void): this;
164
- on(event: "connection", listener: (socket: Duplex) => void): this;
165
- on(event: "error", listener: (err: Error) => void): this;
166
- on(event: "listening", listener: () => void): this;
167
- on(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
168
- on(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
169
- on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
170
- on(event: "connect", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
171
- on(event: "request", listener: http.RequestListener<Request, Response>): this;
172
- on(event: "upgrade", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
173
- once(event: string, listener: (...args: any[]) => void): this;
174
- once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
175
- once(
176
- event: "newSession",
177
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
178
- ): this;
179
- once(
180
- event: "OCSPRequest",
181
- listener: (
182
- certificate: Buffer,
183
- issuer: Buffer,
184
- callback: (err: Error | null, resp: Buffer) => void,
185
- ) => void,
186
- ): this;
187
- once(
188
- event: "resumeSession",
189
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
190
- ): this;
191
- once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
192
- once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
193
- once(event: "close", listener: () => void): this;
194
- once(event: "connection", listener: (socket: Duplex) => void): this;
195
- once(event: "error", listener: (err: Error) => void): this;
196
- once(event: "listening", listener: () => void): this;
197
- once(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
198
- once(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
199
- once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
200
- once(event: "connect", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
201
- once(event: "request", listener: http.RequestListener<Request, Response>): this;
202
- once(event: "upgrade", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
203
- prependListener(event: string, listener: (...args: any[]) => void): this;
204
- prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
205
- prependListener(
206
- event: "newSession",
207
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
208
- ): this;
209
- prependListener(
210
- event: "OCSPRequest",
211
- listener: (
212
- certificate: Buffer,
213
- issuer: Buffer,
214
- callback: (err: Error | null, resp: Buffer) => void,
215
- ) => void,
216
- ): this;
217
- prependListener(
218
- event: "resumeSession",
219
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
220
- ): this;
221
- prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
222
- prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
223
- prependListener(event: "close", listener: () => void): this;
224
- prependListener(event: "connection", listener: (socket: Duplex) => void): this;
225
- prependListener(event: "error", listener: (err: Error) => void): this;
226
- prependListener(event: "listening", listener: () => void): this;
227
- prependListener(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
228
- prependListener(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
229
- prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
230
- prependListener(
231
- event: "connect",
232
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
233
- ): this;
234
- prependListener(event: "request", listener: http.RequestListener<Request, Response>): this;
235
- prependListener(
236
- event: "upgrade",
237
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
238
- ): this;
239
- prependOnceListener(event: string, listener: (...args: any[]) => void): this;
240
- prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
241
- prependOnceListener(
242
- event: "newSession",
243
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
244
- ): this;
245
- prependOnceListener(
246
- event: "OCSPRequest",
247
- listener: (
248
- certificate: Buffer,
249
- issuer: Buffer,
250
- callback: (err: Error | null, resp: Buffer) => void,
251
- ) => void,
252
- ): this;
253
- prependOnceListener(
254
- event: "resumeSession",
255
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
256
- ): this;
257
- prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
258
- prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
259
- prependOnceListener(event: "close", listener: () => void): this;
260
- prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this;
261
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
262
- prependOnceListener(event: "listening", listener: () => void): this;
263
- prependOnceListener(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
264
- prependOnceListener(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
265
- prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
266
- prependOnceListener(
267
- event: "connect",
268
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
269
- ): this;
270
- prependOnceListener(event: "request", listener: http.RequestListener<Request, Response>): this;
271
- prependOnceListener(
272
- event: "upgrade",
273
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
274
- ): this;
275
- }
276
- /**
277
- * ```js
278
- * // curl -k https://localhost:8000/
279
- * const https = require('node:https');
280
- * const fs = require('node:fs');
281
- *
282
- * const options = {
283
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
284
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem'),
285
- * };
286
- *
287
- * https.createServer(options, (req, res) => {
288
- * res.writeHead(200);
289
- * res.end('hello world\n');
290
- * }).listen(8000);
291
- * ```
292
- *
293
- * Or
294
- *
295
- * ```js
296
- * const https = require('node:https');
297
- * const fs = require('node:fs');
298
- *
299
- * const options = {
300
- * pfx: fs.readFileSync('test/fixtures/test_cert.pfx'),
301
- * passphrase: 'sample',
302
- * };
303
- *
304
- * https.createServer(options, (req, res) => {
305
- * res.writeHead(200);
306
- * res.end('hello world\n');
307
- * }).listen(8000);
308
- * ```
309
- * @since v0.3.4
310
- * @param options Accepts `options` from `createServer`, `createSecureContext` and `createServer`.
311
- * @param requestListener A listener to be added to the `'request'` event.
312
- */
313
- function createServer<
314
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
315
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
316
- >(requestListener?: http.RequestListener<Request, Response>): Server<Request, Response>;
317
- function createServer<
318
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
319
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
320
- >(
321
- options: ServerOptions<Request, Response>,
322
- requestListener?: http.RequestListener<Request, Response>,
323
- ): Server<Request, Response>;
324
- /**
325
- * Makes a request to a secure web server.
326
- *
327
- * The following additional `options` from `tls.connect()` are also accepted:`ca`, `cert`, `ciphers`, `clientCertEngine`, `crl`, `dhparam`, `ecdhCurve`,`honorCipherOrder`, `key`, `passphrase`,
328
- * `pfx`, `rejectUnauthorized`,`secureOptions`, `secureProtocol`, `servername`, `sessionIdContext`,`highWaterMark`.
329
- *
330
- * `options` can be an object, a string, or a `URL` object. If `options` is a
331
- * string, it is automatically parsed with `new URL()`. If it is a `URL` object, it will be automatically converted to an ordinary `options` object.
332
- *
333
- * `https.request()` returns an instance of the `http.ClientRequest` class. The `ClientRequest` instance is a writable stream. If one needs to
334
- * upload a file with a POST request, then write to the `ClientRequest` object.
335
- *
336
- * ```js
337
- * const https = require('node:https');
338
- *
339
- * const options = {
340
- * hostname: 'encrypted.google.com',
341
- * port: 443,
342
- * path: '/',
343
- * method: 'GET',
344
- * };
345
- *
346
- * const req = https.request(options, (res) => {
347
- * console.log('statusCode:', res.statusCode);
348
- * console.log('headers:', res.headers);
349
- *
350
- * res.on('data', (d) => {
351
- * process.stdout.write(d);
352
- * });
353
- * });
354
- *
355
- * req.on('error', (e) => {
356
- * console.error(e);
357
- * });
358
- * req.end();
359
- * ```
360
- *
361
- * Example using options from `tls.connect()`:
362
- *
363
- * ```js
364
- * const options = {
365
- * hostname: 'encrypted.google.com',
366
- * port: 443,
367
- * path: '/',
368
- * method: 'GET',
369
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
370
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem'),
371
- * };
372
- * options.agent = new https.Agent(options);
373
- *
374
- * const req = https.request(options, (res) => {
375
- * // ...
376
- * });
377
- * ```
378
- *
379
- * Alternatively, opt out of connection pooling by not using an `Agent`.
380
- *
381
- * ```js
382
- * const options = {
383
- * hostname: 'encrypted.google.com',
384
- * port: 443,
385
- * path: '/',
386
- * method: 'GET',
387
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
388
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem'),
389
- * agent: false,
390
- * };
391
- *
392
- * const req = https.request(options, (res) => {
393
- * // ...
394
- * });
395
- * ```
396
- *
397
- * Example using a `URL` as `options`:
398
- *
399
- * ```js
400
- * const options = new URL('https://abc:xyz@example.com');
401
- *
402
- * const req = https.request(options, (res) => {
403
- * // ...
404
- * });
405
- * ```
406
- *
407
- * Example pinning on certificate fingerprint, or the public key (similar to`pin-sha256`):
408
- *
409
- * ```js
410
- * const tls = require('node:tls');
411
- * const https = require('node:https');
412
- * const crypto = require('node:crypto');
413
- *
414
- * function sha256(s) {
415
- * return crypto.createHash('sha256').update(s).digest('base64');
416
- * }
417
- * const options = {
418
- * hostname: 'github.com',
419
- * port: 443,
420
- * path: '/',
421
- * method: 'GET',
422
- * checkServerIdentity: function(host, cert) {
423
- * // Make sure the certificate is issued to the host we are connected to
424
- * const err = tls.checkServerIdentity(host, cert);
425
- * if (err) {
426
- * return err;
427
- * }
428
- *
429
- * // Pin the public key, similar to HPKP pin-sha256 pinning
430
- * const pubkey256 = 'pL1+qb9HTMRZJmuC/bB/ZI9d302BYrrqiVuRyW+DGrU=';
431
- * if (sha256(cert.pubkey) !== pubkey256) {
432
- * const msg = 'Certificate verification error: ' +
433
- * `The public key of '${cert.subject.CN}' ` +
434
- * 'does not match our pinned fingerprint';
435
- * return new Error(msg);
436
- * }
437
- *
438
- * // Pin the exact certificate, rather than the pub key
439
- * const cert256 = '25:FE:39:32:D9:63:8C:8A:FC:A1:9A:29:87:' +
440
- * 'D8:3E:4C:1D:98:DB:71:E4:1A:48:03:98:EA:22:6A:BD:8B:93:16';
441
- * if (cert.fingerprint256 !== cert256) {
442
- * const msg = 'Certificate verification error: ' +
443
- * `The certificate of '${cert.subject.CN}' ` +
444
- * 'does not match our pinned fingerprint';
445
- * return new Error(msg);
446
- * }
447
- *
448
- * // This loop is informational only.
449
- * // Print the certificate and public key fingerprints of all certs in the
450
- * // chain. Its common to pin the public key of the issuer on the public
451
- * // internet, while pinning the public key of the service in sensitive
452
- * // environments.
453
- * do {
454
- * console.log('Subject Common Name:', cert.subject.CN);
455
- * console.log(' Certificate SHA256 fingerprint:', cert.fingerprint256);
456
- *
457
- * hash = crypto.createHash('sha256');
458
- * console.log(' Public key ping-sha256:', sha256(cert.pubkey));
459
- *
460
- * lastprint256 = cert.fingerprint256;
461
- * cert = cert.issuerCertificate;
462
- * } while (cert.fingerprint256 !== lastprint256);
463
- *
464
- * },
465
- * };
466
- *
467
- * options.agent = new https.Agent(options);
468
- * const req = https.request(options, (res) => {
469
- * console.log('All OK. Server matched our pinned cert or public key');
470
- * console.log('statusCode:', res.statusCode);
471
- * // Print the HPKP values
472
- * console.log('headers:', res.headers['public-key-pins']);
473
- *
474
- * res.on('data', (d) => {});
475
- * });
476
- *
477
- * req.on('error', (e) => {
478
- * console.error(e.message);
479
- * });
480
- * req.end();
481
- * ```
482
- *
483
- * Outputs for example:
484
- *
485
- * ```text
486
- * Subject Common Name: github.com
487
- * Certificate SHA256 fingerprint: 25:FE:39:32:D9:63:8C:8A:FC:A1:9A:29:87:D8:3E:4C:1D:98:DB:71:E4:1A:48:03:98:EA:22:6A:BD:8B:93:16
488
- * Public key ping-sha256: pL1+qb9HTMRZJmuC/bB/ZI9d302BYrrqiVuRyW+DGrU=
489
- * Subject Common Name: DigiCert SHA2 Extended Validation Server CA
490
- * Certificate SHA256 fingerprint: 40:3E:06:2A:26:53:05:91:13:28:5B:AF:80:A0:D4:AE:42:2C:84:8C:9F:78:FA:D0:1F:C9:4B:C5:B8:7F:EF:1A
491
- * Public key ping-sha256: RRM1dGqnDFsCJXBTHky16vi1obOlCgFFn/yOhI/y+ho=
492
- * Subject Common Name: DigiCert High Assurance EV Root CA
493
- * Certificate SHA256 fingerprint: 74:31:E5:F4:C3:C1:CE:46:90:77:4F:0B:61:E0:54:40:88:3B:A9:A0:1E:D0:0B:A6:AB:D7:80:6E:D3:B1:18:CF
494
- * Public key ping-sha256: WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18=
495
- * All OK. Server matched our pinned cert or public key
496
- * statusCode: 200
497
- * headers: max-age=0; pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18="; pin-sha256="RRM1dGqnDFsCJXBTHky16vi1obOlCgFFn/yOhI/y+ho=";
498
- * pin-sha256="k2v657xBsOVe1PQRwOsHsw3bsGT2VzIqz5K+59sNQws="; pin-sha256="K87oWBWM9UZfyddvDfoxL+8lpNyoUB2ptGtn0fv6G2Q="; pin-sha256="IQBnNBEiFuhj+8x6X8XLgh01V9Ic5/V3IRQLNFFc7v4=";
499
- * pin-sha256="iie1VXtL7HzAMF+/PVPR9xzT80kQxdZeJ+zduCB3uj0="; pin-sha256="LvRiGEjRqfzurezaWuj8Wie2gyHMrW5Q06LspMnox7A="; includeSubDomains
500
- * ```
501
- * @since v0.3.6
502
- * @param options Accepts all `options` from `request`, with some differences in default values:
503
- */
504
- function request(
505
- options: RequestOptions | string | URL,
506
- callback?: (res: http.IncomingMessage) => void,
507
- ): http.ClientRequest;
508
- function request(
509
- url: string | URL,
510
- options: RequestOptions,
511
- callback?: (res: http.IncomingMessage) => void,
512
- ): http.ClientRequest;
513
- /**
514
- * Like `http.get()` but for HTTPS.
515
- *
516
- * `options` can be an object, a string, or a `URL` object. If `options` is a
517
- * string, it is automatically parsed with `new URL()`. If it is a `URL` object, it will be automatically converted to an ordinary `options` object.
518
- *
519
- * ```js
520
- * const https = require('node:https');
521
- *
522
- * https.get('https://encrypted.google.com/', (res) => {
523
- * console.log('statusCode:', res.statusCode);
524
- * console.log('headers:', res.headers);
525
- *
526
- * res.on('data', (d) => {
527
- * process.stdout.write(d);
528
- * });
529
- *
530
- * }).on('error', (e) => {
531
- * console.error(e);
532
- * });
533
- * ```
534
- * @since v0.3.6
535
- * @param options Accepts the same `options` as {@link request}, with the `method` always set to `GET`.
536
- */
537
- function get(
538
- options: RequestOptions | string | URL,
539
- callback?: (res: http.IncomingMessage) => void,
540
- ): http.ClientRequest;
541
- function get(
542
- url: string | URL,
543
- options: RequestOptions,
544
- callback?: (res: http.IncomingMessage) => void,
545
- ): http.ClientRequest;
546
- let globalAgent: Agent;
547
- }
548
- declare module "node:https" {
549
- export * from "https";
550
- }
@@ -1,88 +0,0 @@
1
- /**
2
- * License for programmatically and manually incorporated
3
- * documentation aka. `JSDoc` from https://github.com/nodejs/node/tree/master/doc
4
- *
5
- * Copyright Node.js contributors. All rights reserved.
6
- * Permission is hereby granted, free of charge, to any person obtaining a copy
7
- * of this software and associated documentation files (the "Software"), to
8
- * deal in the Software without restriction, including without limitation the
9
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10
- * sell copies of the Software, and to permit persons to whom the Software is
11
- * furnished to do so, subject to the following conditions:
12
- *
13
- * The above copyright notice and this permission notice shall be included in
14
- * all copies or substantial portions of the Software.
15
- *
16
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
22
- * IN THE SOFTWARE.
23
- */
24
-
25
- // NOTE: These definitions support NodeJS and TypeScript 4.8 and earlier.
26
-
27
- // Reference required types from the default lib:
28
- /// <reference lib="es2020" />
29
- /// <reference lib="esnext.asynciterable" />
30
- /// <reference lib="esnext.intl" />
31
- /// <reference lib="esnext.bigint" />
32
-
33
- // Base definitions for all NodeJS modules that are not specific to any version of TypeScript:
34
- /// <reference path="assert.d.ts" />
35
- /// <reference path="assert/strict.d.ts" />
36
- /// <reference path="globals.d.ts" />
37
- /// <reference path="async_hooks.d.ts" />
38
- /// <reference path="buffer.d.ts" />
39
- /// <reference path="child_process.d.ts" />
40
- /// <reference path="cluster.d.ts" />
41
- /// <reference path="console.d.ts" />
42
- /// <reference path="constants.d.ts" />
43
- /// <reference path="crypto.d.ts" />
44
- /// <reference path="dgram.d.ts" />
45
- /// <reference path="diagnostics_channel.d.ts" />
46
- /// <reference path="dns.d.ts" />
47
- /// <reference path="dns/promises.d.ts" />
48
- /// <reference path="dns/promises.d.ts" />
49
- /// <reference path="domain.d.ts" />
50
- /// <reference path="dom-events.d.ts" />
51
- /// <reference path="events.d.ts" />
52
- /// <reference path="fs.d.ts" />
53
- /// <reference path="fs/promises.d.ts" />
54
- /// <reference path="http.d.ts" />
55
- /// <reference path="http2.d.ts" />
56
- /// <reference path="https.d.ts" />
57
- /// <reference path="inspector.d.ts" />
58
- /// <reference path="module.d.ts" />
59
- /// <reference path="net.d.ts" />
60
- /// <reference path="os.d.ts" />
61
- /// <reference path="path.d.ts" />
62
- /// <reference path="perf_hooks.d.ts" />
63
- /// <reference path="process.d.ts" />
64
- /// <reference path="punycode.d.ts" />
65
- /// <reference path="querystring.d.ts" />
66
- /// <reference path="readline.d.ts" />
67
- /// <reference path="readline/promises.d.ts" />
68
- /// <reference path="repl.d.ts" />
69
- /// <reference path="stream.d.ts" />
70
- /// <reference path="stream/promises.d.ts" />
71
- /// <reference path="stream/consumers.d.ts" />
72
- /// <reference path="stream/web.d.ts" />
73
- /// <reference path="string_decoder.d.ts" />
74
- /// <reference path="test.d.ts" />
75
- /// <reference path="timers.d.ts" />
76
- /// <reference path="timers/promises.d.ts" />
77
- /// <reference path="tls.d.ts" />
78
- /// <reference path="trace_events.d.ts" />
79
- /// <reference path="tty.d.ts" />
80
- /// <reference path="url.d.ts" />
81
- /// <reference path="util.d.ts" />
82
- /// <reference path="v8.d.ts" />
83
- /// <reference path="vm.d.ts" />
84
- /// <reference path="wasi.d.ts" />
85
- /// <reference path="worker_threads.d.ts" />
86
- /// <reference path="zlib.d.ts" />
87
-
88
- /// <reference path="globals.global.d.ts" />