@shopify/ui-extensions-server-kit 5.2.0 → 5.3.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 (169) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/ExtensionServerClient/ExtensionServerClient.cjs.js +1 -1
  3. package/dist/ExtensionServerClient/ExtensionServerClient.d.ts +1 -0
  4. package/dist/ExtensionServerClient/ExtensionServerClient.es.js +1 -1
  5. package/dist/ExtensionServerClient/ExtensionServerClient.test.d.ts +8 -0
  6. package/dist/ExtensionServerClient/server-types.d.ts +42 -0
  7. package/dist/context/constants.cjs.js +1 -1
  8. package/dist/context/constants.d.ts +0 -1
  9. package/dist/context/constants.es.js +0 -1
  10. package/dist/context/types.d.ts +1 -0
  11. package/dist/hooks/index.d.ts +0 -2
  12. package/dist/i18n.cjs.js +1 -1
  13. package/dist/i18n.d.ts +1 -20
  14. package/dist/i18n.es.js +0 -1
  15. package/dist/index.cjs.js +1 -1
  16. package/dist/index.es.js +40 -48
  17. package/dist/testing/extensions.cjs.js +1 -1
  18. package/dist/testing/extensions.es.js +2 -2
  19. package/dist/types.cjs.js +1 -1
  20. package/dist/types.d.ts +10 -4
  21. package/dist/types.es.js +2 -2
  22. package/dist/utilities/index.d.ts +0 -1
  23. package/node_modules/@shopify/ui-extensions-test-utils/dist/index.d.ts +3 -0
  24. package/node_modules/@shopify/ui-extensions-test-utils/dist/render.d.ts +2 -0
  25. package/node_modules/@shopify/ui-extensions-test-utils/dist/renderHook.d.ts +17 -0
  26. package/node_modules/@shopify/ui-extensions-test-utils/dist/withProviders.d.ts +9 -0
  27. package/node_modules/@shopify/ui-extensions-test-utils/dist/withProviders.js +1 -0
  28. package/node_modules/@shopify/ui-extensions-test-utils/package.json +2 -3
  29. package/package.json +7 -6
  30. package/project.json +0 -2
  31. package/src/ExtensionServerClient/ExtensionServerClient.test.ts +837 -330
  32. package/src/ExtensionServerClient/ExtensionServerClient.ts +10 -8
  33. package/src/ExtensionServerClient/server-types.ts +55 -0
  34. package/src/ExtensionServerClient/types.ts +2 -0
  35. package/src/context/ExtensionServerProvider.test.tsx +202 -39
  36. package/src/context/ExtensionServerProvider.tsx +1 -0
  37. package/src/context/constants.ts +3 -2
  38. package/src/context/types.ts +1 -0
  39. package/src/hooks/index.ts +0 -2
  40. package/src/i18n.ts +3 -3
  41. package/src/state/reducers/extensionServerReducer.test.ts +2 -2
  42. package/src/testing/extensions.ts +2 -2
  43. package/src/types.ts +10 -4
  44. package/src/utilities/index.ts +0 -1
  45. package/src/utilities/replaceUpdated.ts +1 -0
  46. package/src/utilities/set.ts +1 -0
  47. package/dist/hooks/useExtensionClient.cjs.js +0 -1
  48. package/dist/hooks/useExtensionClient.d.ts +0 -1
  49. package/dist/hooks/useExtensionClient.es.js +0 -8
  50. package/dist/hooks/useExtensionServerEvent.cjs.js +0 -1
  51. package/dist/hooks/useExtensionServerEvent.d.ts +0 -1
  52. package/dist/hooks/useExtensionServerEvent.es.js +0 -9
  53. package/dist/utilities/groupByKey.cjs.js +0 -1
  54. package/dist/utilities/groupByKey.d.ts +0 -3
  55. package/dist/utilities/groupByKey.es.js +0 -6
  56. package/node_modules/@types/node/LICENSE +0 -21
  57. package/node_modules/@types/node/README.md +0 -15
  58. package/node_modules/@types/node/assert/strict.d.ts +0 -8
  59. package/node_modules/@types/node/assert.d.ts +0 -985
  60. package/node_modules/@types/node/async_hooks.d.ts +0 -522
  61. package/node_modules/@types/node/buffer.d.ts +0 -2321
  62. package/node_modules/@types/node/child_process.d.ts +0 -1544
  63. package/node_modules/@types/node/cluster.d.ts +0 -432
  64. package/node_modules/@types/node/console.d.ts +0 -412
  65. package/node_modules/@types/node/constants.d.ts +0 -19
  66. package/node_modules/@types/node/crypto.d.ts +0 -4451
  67. package/node_modules/@types/node/dgram.d.ts +0 -586
  68. package/node_modules/@types/node/diagnostics_channel.d.ts +0 -192
  69. package/node_modules/@types/node/dns/promises.d.ts +0 -381
  70. package/node_modules/@types/node/dns.d.ts +0 -809
  71. package/node_modules/@types/node/dom-events.d.ts +0 -122
  72. package/node_modules/@types/node/domain.d.ts +0 -170
  73. package/node_modules/@types/node/events.d.ts +0 -803
  74. package/node_modules/@types/node/fs/promises.d.ts +0 -1205
  75. package/node_modules/@types/node/fs.d.ts +0 -4211
  76. package/node_modules/@types/node/globals.d.ts +0 -377
  77. package/node_modules/@types/node/globals.global.d.ts +0 -1
  78. package/node_modules/@types/node/http.d.ts +0 -1801
  79. package/node_modules/@types/node/http2.d.ts +0 -2386
  80. package/node_modules/@types/node/https.d.ts +0 -544
  81. package/node_modules/@types/node/index.d.ts +0 -88
  82. package/node_modules/@types/node/inspector.d.ts +0 -2739
  83. package/node_modules/@types/node/module.d.ts +0 -298
  84. package/node_modules/@types/node/net.d.ts +0 -913
  85. package/node_modules/@types/node/os.d.ts +0 -473
  86. package/node_modules/@types/node/package.json +0 -235
  87. package/node_modules/@types/node/path.d.ts +0 -191
  88. package/node_modules/@types/node/perf_hooks.d.ts +0 -626
  89. package/node_modules/@types/node/process.d.ts +0 -1531
  90. package/node_modules/@types/node/punycode.d.ts +0 -117
  91. package/node_modules/@types/node/querystring.d.ts +0 -141
  92. package/node_modules/@types/node/readline/promises.d.ts +0 -143
  93. package/node_modules/@types/node/readline.d.ts +0 -666
  94. package/node_modules/@types/node/repl.d.ts +0 -430
  95. package/node_modules/@types/node/stream/consumers.d.ts +0 -12
  96. package/node_modules/@types/node/stream/promises.d.ts +0 -83
  97. package/node_modules/@types/node/stream/web.d.ts +0 -336
  98. package/node_modules/@types/node/stream.d.ts +0 -1731
  99. package/node_modules/@types/node/string_decoder.d.ts +0 -67
  100. package/node_modules/@types/node/test.d.ts +0 -1113
  101. package/node_modules/@types/node/timers/promises.d.ts +0 -93
  102. package/node_modules/@types/node/timers.d.ts +0 -126
  103. package/node_modules/@types/node/tls.d.ts +0 -1203
  104. package/node_modules/@types/node/trace_events.d.ts +0 -171
  105. package/node_modules/@types/node/ts4.8/assert/strict.d.ts +0 -8
  106. package/node_modules/@types/node/ts4.8/assert.d.ts +0 -985
  107. package/node_modules/@types/node/ts4.8/async_hooks.d.ts +0 -522
  108. package/node_modules/@types/node/ts4.8/buffer.d.ts +0 -2321
  109. package/node_modules/@types/node/ts4.8/child_process.d.ts +0 -1544
  110. package/node_modules/@types/node/ts4.8/cluster.d.ts +0 -432
  111. package/node_modules/@types/node/ts4.8/console.d.ts +0 -412
  112. package/node_modules/@types/node/ts4.8/constants.d.ts +0 -19
  113. package/node_modules/@types/node/ts4.8/crypto.d.ts +0 -4450
  114. package/node_modules/@types/node/ts4.8/dgram.d.ts +0 -586
  115. package/node_modules/@types/node/ts4.8/diagnostics_channel.d.ts +0 -192
  116. package/node_modules/@types/node/ts4.8/dns/promises.d.ts +0 -381
  117. package/node_modules/@types/node/ts4.8/dns.d.ts +0 -809
  118. package/node_modules/@types/node/ts4.8/dom-events.d.ts +0 -122
  119. package/node_modules/@types/node/ts4.8/domain.d.ts +0 -170
  120. package/node_modules/@types/node/ts4.8/events.d.ts +0 -754
  121. package/node_modules/@types/node/ts4.8/fs/promises.d.ts +0 -1205
  122. package/node_modules/@types/node/ts4.8/fs.d.ts +0 -4211
  123. package/node_modules/@types/node/ts4.8/globals.d.ts +0 -377
  124. package/node_modules/@types/node/ts4.8/globals.global.d.ts +0 -1
  125. package/node_modules/@types/node/ts4.8/http.d.ts +0 -1801
  126. package/node_modules/@types/node/ts4.8/http2.d.ts +0 -2386
  127. package/node_modules/@types/node/ts4.8/https.d.ts +0 -544
  128. package/node_modules/@types/node/ts4.8/index.d.ts +0 -88
  129. package/node_modules/@types/node/ts4.8/inspector.d.ts +0 -2739
  130. package/node_modules/@types/node/ts4.8/module.d.ts +0 -298
  131. package/node_modules/@types/node/ts4.8/net.d.ts +0 -913
  132. package/node_modules/@types/node/ts4.8/os.d.ts +0 -473
  133. package/node_modules/@types/node/ts4.8/path.d.ts +0 -191
  134. package/node_modules/@types/node/ts4.8/perf_hooks.d.ts +0 -626
  135. package/node_modules/@types/node/ts4.8/process.d.ts +0 -1531
  136. package/node_modules/@types/node/ts4.8/punycode.d.ts +0 -117
  137. package/node_modules/@types/node/ts4.8/querystring.d.ts +0 -141
  138. package/node_modules/@types/node/ts4.8/readline/promises.d.ts +0 -143
  139. package/node_modules/@types/node/ts4.8/readline.d.ts +0 -666
  140. package/node_modules/@types/node/ts4.8/repl.d.ts +0 -430
  141. package/node_modules/@types/node/ts4.8/stream/consumers.d.ts +0 -12
  142. package/node_modules/@types/node/ts4.8/stream/promises.d.ts +0 -83
  143. package/node_modules/@types/node/ts4.8/stream/web.d.ts +0 -336
  144. package/node_modules/@types/node/ts4.8/stream.d.ts +0 -1731
  145. package/node_modules/@types/node/ts4.8/string_decoder.d.ts +0 -67
  146. package/node_modules/@types/node/ts4.8/test.d.ts +0 -1113
  147. package/node_modules/@types/node/ts4.8/timers/promises.d.ts +0 -93
  148. package/node_modules/@types/node/ts4.8/timers.d.ts +0 -126
  149. package/node_modules/@types/node/ts4.8/tls.d.ts +0 -1203
  150. package/node_modules/@types/node/ts4.8/trace_events.d.ts +0 -171
  151. package/node_modules/@types/node/ts4.8/tty.d.ts +0 -206
  152. package/node_modules/@types/node/ts4.8/url.d.ts +0 -937
  153. package/node_modules/@types/node/ts4.8/util.d.ts +0 -2075
  154. package/node_modules/@types/node/ts4.8/v8.d.ts +0 -541
  155. package/node_modules/@types/node/ts4.8/vm.d.ts +0 -667
  156. package/node_modules/@types/node/ts4.8/wasi.d.ts +0 -158
  157. package/node_modules/@types/node/ts4.8/worker_threads.d.ts +0 -692
  158. package/node_modules/@types/node/ts4.8/zlib.d.ts +0 -517
  159. package/node_modules/@types/node/tty.d.ts +0 -206
  160. package/node_modules/@types/node/url.d.ts +0 -937
  161. package/node_modules/@types/node/util.d.ts +0 -2075
  162. package/node_modules/@types/node/v8.d.ts +0 -541
  163. package/node_modules/@types/node/vm.d.ts +0 -667
  164. package/node_modules/@types/node/wasi.d.ts +0 -158
  165. package/node_modules/@types/node/worker_threads.d.ts +0 -692
  166. package/node_modules/@types/node/zlib.d.ts +0 -517
  167. package/src/hooks/useExtensionClient.ts +0 -6
  168. package/src/hooks/useExtensionServerEvent.ts +0 -11
  169. package/src/utilities/groupByKey.ts +0 -3
@@ -1,544 +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/v18.0.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> & { req: InstanceType<Request> },
123
- ): boolean;
124
- emit(
125
- event: "checkExpectation",
126
- req: InstanceType<Request>,
127
- res: InstanceType<Response> & { req: InstanceType<Request> },
128
- ): boolean;
129
- emit(event: "clientError", err: Error, socket: Duplex): boolean;
130
- emit(event: "connect", req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
131
- emit(
132
- event: "request",
133
- req: InstanceType<Request>,
134
- res: InstanceType<Response> & { req: InstanceType<Request> },
135
- ): boolean;
136
- emit(event: "upgrade", req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
137
- on(event: string, listener: (...args: any[]) => void): this;
138
- on(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
139
- on(
140
- event: "newSession",
141
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
142
- ): this;
143
- on(
144
- event: "OCSPRequest",
145
- listener: (
146
- certificate: Buffer,
147
- issuer: Buffer,
148
- callback: (err: Error | null, resp: Buffer) => void,
149
- ) => void,
150
- ): this;
151
- on(
152
- event: "resumeSession",
153
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
154
- ): this;
155
- on(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
156
- on(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
157
- on(event: "close", listener: () => void): this;
158
- on(event: "connection", listener: (socket: Duplex) => void): this;
159
- on(event: "error", listener: (err: Error) => void): this;
160
- on(event: "listening", listener: () => void): this;
161
- on(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
162
- on(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
163
- on(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
164
- on(event: "connect", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
165
- on(event: "request", listener: http.RequestListener<Request, Response>): this;
166
- on(event: "upgrade", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
167
- once(event: string, listener: (...args: any[]) => void): this;
168
- once(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
169
- once(
170
- event: "newSession",
171
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
172
- ): this;
173
- once(
174
- event: "OCSPRequest",
175
- listener: (
176
- certificate: Buffer,
177
- issuer: Buffer,
178
- callback: (err: Error | null, resp: Buffer) => void,
179
- ) => void,
180
- ): this;
181
- once(
182
- event: "resumeSession",
183
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
184
- ): this;
185
- once(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
186
- once(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
187
- once(event: "close", listener: () => void): this;
188
- once(event: "connection", listener: (socket: Duplex) => void): this;
189
- once(event: "error", listener: (err: Error) => void): this;
190
- once(event: "listening", listener: () => void): this;
191
- once(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
192
- once(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
193
- once(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
194
- once(event: "connect", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
195
- once(event: "request", listener: http.RequestListener<Request, Response>): this;
196
- once(event: "upgrade", listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
197
- prependListener(event: string, listener: (...args: any[]) => void): this;
198
- prependListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
199
- prependListener(
200
- event: "newSession",
201
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
202
- ): this;
203
- prependListener(
204
- event: "OCSPRequest",
205
- listener: (
206
- certificate: Buffer,
207
- issuer: Buffer,
208
- callback: (err: Error | null, resp: Buffer) => void,
209
- ) => void,
210
- ): this;
211
- prependListener(
212
- event: "resumeSession",
213
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
214
- ): this;
215
- prependListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
216
- prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
217
- prependListener(event: "close", listener: () => void): this;
218
- prependListener(event: "connection", listener: (socket: Duplex) => void): this;
219
- prependListener(event: "error", listener: (err: Error) => void): this;
220
- prependListener(event: "listening", listener: () => void): this;
221
- prependListener(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
222
- prependListener(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
223
- prependListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
224
- prependListener(
225
- event: "connect",
226
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
227
- ): this;
228
- prependListener(event: "request", listener: http.RequestListener<Request, Response>): this;
229
- prependListener(
230
- event: "upgrade",
231
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
232
- ): this;
233
- prependOnceListener(event: string, listener: (...args: any[]) => void): this;
234
- prependOnceListener(event: "keylog", listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
235
- prependOnceListener(
236
- event: "newSession",
237
- listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
238
- ): this;
239
- prependOnceListener(
240
- event: "OCSPRequest",
241
- listener: (
242
- certificate: Buffer,
243
- issuer: Buffer,
244
- callback: (err: Error | null, resp: Buffer) => void,
245
- ) => void,
246
- ): this;
247
- prependOnceListener(
248
- event: "resumeSession",
249
- listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
250
- ): this;
251
- prependOnceListener(event: "secureConnection", listener: (tlsSocket: tls.TLSSocket) => void): this;
252
- prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
253
- prependOnceListener(event: "close", listener: () => void): this;
254
- prependOnceListener(event: "connection", listener: (socket: Duplex) => void): this;
255
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
256
- prependOnceListener(event: "listening", listener: () => void): this;
257
- prependOnceListener(event: "checkContinue", listener: http.RequestListener<Request, Response>): this;
258
- prependOnceListener(event: "checkExpectation", listener: http.RequestListener<Request, Response>): this;
259
- prependOnceListener(event: "clientError", listener: (err: Error, socket: Duplex) => void): this;
260
- prependOnceListener(
261
- event: "connect",
262
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
263
- ): this;
264
- prependOnceListener(event: "request", listener: http.RequestListener<Request, Response>): this;
265
- prependOnceListener(
266
- event: "upgrade",
267
- listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
268
- ): this;
269
- }
270
- /**
271
- * ```js
272
- * // curl -k https://localhost:8000/
273
- * const https = require('https');
274
- * const fs = require('fs');
275
- *
276
- * const options = {
277
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
278
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
279
- * };
280
- *
281
- * https.createServer(options, (req, res) => {
282
- * res.writeHead(200);
283
- * res.end('hello world\n');
284
- * }).listen(8000);
285
- * ```
286
- *
287
- * Or
288
- *
289
- * ```js
290
- * const https = require('https');
291
- * const fs = require('fs');
292
- *
293
- * const options = {
294
- * pfx: fs.readFileSync('test/fixtures/test_cert.pfx'),
295
- * passphrase: 'sample'
296
- * };
297
- *
298
- * https.createServer(options, (req, res) => {
299
- * res.writeHead(200);
300
- * res.end('hello world\n');
301
- * }).listen(8000);
302
- * ```
303
- * @since v0.3.4
304
- * @param options Accepts `options` from `createServer`, `createSecureContext` and `createServer`.
305
- * @param requestListener A listener to be added to the `'request'` event.
306
- */
307
- function createServer<
308
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
309
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
310
- >(requestListener?: http.RequestListener<Request, Response>): Server<Request, Response>;
311
- function createServer<
312
- Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
313
- Response extends typeof http.ServerResponse = typeof http.ServerResponse,
314
- >(
315
- options: ServerOptions<Request, Response>,
316
- requestListener?: http.RequestListener<Request, Response>,
317
- ): Server<Request, Response>;
318
- /**
319
- * Makes a request to a secure web server.
320
- *
321
- * The following additional `options` from `tls.connect()` are also accepted:`ca`, `cert`, `ciphers`, `clientCertEngine`, `crl`, `dhparam`, `ecdhCurve`,`honorCipherOrder`, `key`, `passphrase`,
322
- * `pfx`, `rejectUnauthorized`,`secureOptions`, `secureProtocol`, `servername`, `sessionIdContext`,`highWaterMark`.
323
- *
324
- * `options` can be an object, a string, or a `URL` object. If `options` is a
325
- * string, it is automatically parsed with `new URL()`. If it is a `URL` object, it will be automatically converted to an ordinary `options` object.
326
- *
327
- * `https.request()` returns an instance of the `http.ClientRequest` class. The `ClientRequest` instance is a writable stream. If one needs to
328
- * upload a file with a POST request, then write to the `ClientRequest` object.
329
- *
330
- * ```js
331
- * const https = require('https');
332
- *
333
- * const options = {
334
- * hostname: 'encrypted.google.com',
335
- * port: 443,
336
- * path: '/',
337
- * method: 'GET'
338
- * };
339
- *
340
- * const req = https.request(options, (res) => {
341
- * console.log('statusCode:', res.statusCode);
342
- * console.log('headers:', res.headers);
343
- *
344
- * res.on('data', (d) => {
345
- * process.stdout.write(d);
346
- * });
347
- * });
348
- *
349
- * req.on('error', (e) => {
350
- * console.error(e);
351
- * });
352
- * req.end();
353
- * ```
354
- *
355
- * Example using options from `tls.connect()`:
356
- *
357
- * ```js
358
- * const options = {
359
- * hostname: 'encrypted.google.com',
360
- * port: 443,
361
- * path: '/',
362
- * method: 'GET',
363
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
364
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
365
- * };
366
- * options.agent = new https.Agent(options);
367
- *
368
- * const req = https.request(options, (res) => {
369
- * // ...
370
- * });
371
- * ```
372
- *
373
- * Alternatively, opt out of connection pooling by not using an `Agent`.
374
- *
375
- * ```js
376
- * const options = {
377
- * hostname: 'encrypted.google.com',
378
- * port: 443,
379
- * path: '/',
380
- * method: 'GET',
381
- * key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
382
- * cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem'),
383
- * agent: false
384
- * };
385
- *
386
- * const req = https.request(options, (res) => {
387
- * // ...
388
- * });
389
- * ```
390
- *
391
- * Example using a `URL` as `options`:
392
- *
393
- * ```js
394
- * const options = new URL('https://abc:xyz@example.com');
395
- *
396
- * const req = https.request(options, (res) => {
397
- * // ...
398
- * });
399
- * ```
400
- *
401
- * Example pinning on certificate fingerprint, or the public key (similar to`pin-sha256`):
402
- *
403
- * ```js
404
- * const tls = require('tls');
405
- * const https = require('https');
406
- * const crypto = require('crypto');
407
- *
408
- * function sha256(s) {
409
- * return crypto.createHash('sha256').update(s).digest('base64');
410
- * }
411
- * const options = {
412
- * hostname: 'github.com',
413
- * port: 443,
414
- * path: '/',
415
- * method: 'GET',
416
- * checkServerIdentity: function(host, cert) {
417
- * // Make sure the certificate is issued to the host we are connected to
418
- * const err = tls.checkServerIdentity(host, cert);
419
- * if (err) {
420
- * return err;
421
- * }
422
- *
423
- * // Pin the public key, similar to HPKP pin-sha25 pinning
424
- * const pubkey256 = 'pL1+qb9HTMRZJmuC/bB/ZI9d302BYrrqiVuRyW+DGrU=';
425
- * if (sha256(cert.pubkey) !== pubkey256) {
426
- * const msg = 'Certificate verification error: ' +
427
- * `The public key of '${cert.subject.CN}' ` +
428
- * 'does not match our pinned fingerprint';
429
- * return new Error(msg);
430
- * }
431
- *
432
- * // Pin the exact certificate, rather than the pub key
433
- * const cert256 = '25:FE:39:32:D9:63:8C:8A:FC:A1:9A:29:87:' +
434
- * 'D8:3E:4C:1D:98:DB:71:E4:1A:48:03:98:EA:22:6A:BD:8B:93:16';
435
- * if (cert.fingerprint256 !== cert256) {
436
- * const msg = 'Certificate verification error: ' +
437
- * `The certificate of '${cert.subject.CN}' ` +
438
- * 'does not match our pinned fingerprint';
439
- * return new Error(msg);
440
- * }
441
- *
442
- * // This loop is informational only.
443
- * // Print the certificate and public key fingerprints of all certs in the
444
- * // chain. Its common to pin the public key of the issuer on the public
445
- * // internet, while pinning the public key of the service in sensitive
446
- * // environments.
447
- * do {
448
- * console.log('Subject Common Name:', cert.subject.CN);
449
- * console.log(' Certificate SHA256 fingerprint:', cert.fingerprint256);
450
- *
451
- * hash = crypto.createHash('sha256');
452
- * console.log(' Public key ping-sha256:', sha256(cert.pubkey));
453
- *
454
- * lastprint256 = cert.fingerprint256;
455
- * cert = cert.issuerCertificate;
456
- * } while (cert.fingerprint256 !== lastprint256);
457
- *
458
- * },
459
- * };
460
- *
461
- * options.agent = new https.Agent(options);
462
- * const req = https.request(options, (res) => {
463
- * console.log('All OK. Server matched our pinned cert or public key');
464
- * console.log('statusCode:', res.statusCode);
465
- * // Print the HPKP values
466
- * console.log('headers:', res.headers['public-key-pins']);
467
- *
468
- * res.on('data', (d) => {});
469
- * });
470
- *
471
- * req.on('error', (e) => {
472
- * console.error(e.message);
473
- * });
474
- * req.end();
475
- * ```
476
- *
477
- * Outputs for example:
478
- *
479
- * ```text
480
- * Subject Common Name: github.com
481
- * 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
482
- * Public key ping-sha256: pL1+qb9HTMRZJmuC/bB/ZI9d302BYrrqiVuRyW+DGrU=
483
- * Subject Common Name: DigiCert SHA2 Extended Validation Server CA
484
- * 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
485
- * Public key ping-sha256: RRM1dGqnDFsCJXBTHky16vi1obOlCgFFn/yOhI/y+ho=
486
- * Subject Common Name: DigiCert High Assurance EV Root CA
487
- * 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
488
- * Public key ping-sha256: WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18=
489
- * All OK. Server matched our pinned cert or public key
490
- * statusCode: 200
491
- * headers: max-age=0; pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18="; pin-sha256="RRM1dGqnDFsCJXBTHky16vi1obOlCgFFn/yOhI/y+ho=";
492
- * pin-sha256="k2v657xBsOVe1PQRwOsHsw3bsGT2VzIqz5K+59sNQws="; pin-sha256="K87oWBWM9UZfyddvDfoxL+8lpNyoUB2ptGtn0fv6G2Q="; pin-sha256="IQBnNBEiFuhj+8x6X8XLgh01V9Ic5/V3IRQLNFFc7v4=";
493
- * pin-sha256="iie1VXtL7HzAMF+/PVPR9xzT80kQxdZeJ+zduCB3uj0="; pin-sha256="LvRiGEjRqfzurezaWuj8Wie2gyHMrW5Q06LspMnox7A="; includeSubDomains
494
- * ```
495
- * @since v0.3.6
496
- * @param options Accepts all `options` from `request`, with some differences in default values:
497
- */
498
- function request(
499
- options: RequestOptions | string | URL,
500
- callback?: (res: http.IncomingMessage) => void,
501
- ): http.ClientRequest;
502
- function request(
503
- url: string | URL,
504
- options: RequestOptions,
505
- callback?: (res: http.IncomingMessage) => void,
506
- ): http.ClientRequest;
507
- /**
508
- * Like `http.get()` but for HTTPS.
509
- *
510
- * `options` can be an object, a string, or a `URL` object. If `options` is a
511
- * string, it is automatically parsed with `new URL()`. If it is a `URL` object, it will be automatically converted to an ordinary `options` object.
512
- *
513
- * ```js
514
- * const https = require('https');
515
- *
516
- * https.get('https://encrypted.google.com/', (res) => {
517
- * console.log('statusCode:', res.statusCode);
518
- * console.log('headers:', res.headers);
519
- *
520
- * res.on('data', (d) => {
521
- * process.stdout.write(d);
522
- * });
523
- *
524
- * }).on('error', (e) => {
525
- * console.error(e);
526
- * });
527
- * ```
528
- * @since v0.3.6
529
- * @param options Accepts the same `options` as {@link request}, with the `method` always set to `GET`.
530
- */
531
- function get(
532
- options: RequestOptions | string | URL,
533
- callback?: (res: http.IncomingMessage) => void,
534
- ): http.ClientRequest;
535
- function get(
536
- url: string | URL,
537
- options: RequestOptions,
538
- callback?: (res: http.IncomingMessage) => void,
539
- ): http.ClientRequest;
540
- let globalAgent: Agent;
541
- }
542
- declare module "node:https" {
543
- export * from "https";
544
- }
@@ -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" />