cloudstructs 0.1.41 → 0.2.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 (179) hide show
  1. package/.gitattributes +19 -19
  2. package/.jsii +2754 -1559
  3. package/API.md +77 -77
  4. package/README.md +2 -3
  5. package/lib/codecommit-mirror/index.d.ts +6 -6
  6. package/lib/codecommit-mirror/index.js +13 -12
  7. package/lib/ecs-service-roller/index.d.ts +5 -5
  8. package/lib/ecs-service-roller/index.js +10 -9
  9. package/lib/email-receiver/receiver.d.ts +5 -5
  10. package/lib/email-receiver/receiver.js +15 -14
  11. package/lib/saml-identity-provider/index.d.ts +18 -18
  12. package/lib/saml-identity-provider/index.js +16 -15
  13. package/lib/slack-events/index.d.ts +5 -4
  14. package/lib/slack-events/index.js +13 -14
  15. package/lib/slack-textract/index.d.ts +6 -5
  16. package/lib/slack-textract/index.js +12 -11
  17. package/lib/state-machine-cr-provider/index.d.ts +2 -1
  18. package/lib/state-machine-cr-provider/index.js +14 -13
  19. package/lib/static-website/index.d.ts +6 -6
  20. package/lib/static-website/index.js +16 -15
  21. package/lib/url-shortener/index.d.ts +8 -7
  22. package/lib/url-shortener/index.js +19 -18
  23. package/node_modules/@slack/logger/node_modules/@types/node/README.md +2 -2
  24. package/node_modules/@slack/logger/node_modules/@types/node/buffer.d.ts +1 -1
  25. package/node_modules/@slack/logger/node_modules/@types/node/child_process.d.ts +19 -16
  26. package/node_modules/@slack/logger/node_modules/@types/node/console.d.ts +5 -0
  27. package/node_modules/@slack/logger/node_modules/@types/node/crypto.d.ts +51 -3
  28. package/node_modules/@slack/logger/node_modules/@types/node/dgram.d.ts +8 -8
  29. package/node_modules/@slack/logger/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  30. package/node_modules/@slack/logger/node_modules/@types/node/dns/promises.d.ts +11 -0
  31. package/node_modules/@slack/logger/node_modules/@types/node/dns.d.ts +11 -0
  32. package/node_modules/@slack/logger/node_modules/@types/node/fs/promises.d.ts +90 -3
  33. package/node_modules/@slack/logger/node_modules/@types/node/fs.d.ts +92 -39
  34. package/node_modules/@slack/logger/node_modules/@types/node/http.d.ts +17 -6
  35. package/node_modules/@slack/logger/node_modules/@types/node/index.d.ts +2 -3
  36. package/node_modules/@slack/logger/node_modules/@types/node/inspector.d.ts +7 -0
  37. package/node_modules/@slack/logger/node_modules/@types/node/net.d.ts +2 -2
  38. package/node_modules/@slack/logger/node_modules/@types/node/package.json +8 -13
  39. package/node_modules/@slack/logger/node_modules/@types/node/process.d.ts +5 -1
  40. package/node_modules/@slack/logger/node_modules/@types/node/readline.d.ts +1 -0
  41. package/node_modules/@slack/logger/node_modules/@types/node/stream/web.d.ts +385 -0
  42. package/node_modules/@slack/logger/node_modules/@types/node/stream.d.ts +26 -6
  43. package/node_modules/@slack/logger/node_modules/@types/node/tty.d.ts +1 -3
  44. package/node_modules/@slack/logger/node_modules/@types/node/url.d.ts +24 -1
  45. package/node_modules/@slack/logger/node_modules/@types/node/util.d.ts +31 -0
  46. package/node_modules/@slack/web-api/node_modules/@types/node/README.md +2 -2
  47. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +1 -1
  48. package/node_modules/@slack/web-api/node_modules/@types/node/child_process.d.ts +19 -16
  49. package/node_modules/@slack/web-api/node_modules/@types/node/console.d.ts +5 -0
  50. package/node_modules/@slack/web-api/node_modules/@types/node/crypto.d.ts +51 -3
  51. package/node_modules/@slack/web-api/node_modules/@types/node/dgram.d.ts +8 -8
  52. package/node_modules/@slack/web-api/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  53. package/node_modules/@slack/web-api/node_modules/@types/node/dns/promises.d.ts +11 -0
  54. package/node_modules/@slack/web-api/node_modules/@types/node/dns.d.ts +11 -0
  55. package/node_modules/@slack/web-api/node_modules/@types/node/fs/promises.d.ts +90 -3
  56. package/node_modules/@slack/web-api/node_modules/@types/node/fs.d.ts +92 -39
  57. package/node_modules/@slack/web-api/node_modules/@types/node/http.d.ts +17 -6
  58. package/node_modules/@slack/web-api/node_modules/@types/node/index.d.ts +2 -3
  59. package/node_modules/@slack/web-api/node_modules/@types/node/inspector.d.ts +7 -0
  60. package/node_modules/@slack/web-api/node_modules/@types/node/net.d.ts +2 -2
  61. package/node_modules/@slack/web-api/node_modules/@types/node/package.json +8 -13
  62. package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +5 -1
  63. package/node_modules/@slack/web-api/node_modules/@types/node/readline.d.ts +1 -0
  64. package/node_modules/@slack/web-api/node_modules/@types/node/stream/web.d.ts +385 -0
  65. package/node_modules/@slack/web-api/node_modules/@types/node/stream.d.ts +26 -6
  66. package/node_modules/@slack/web-api/node_modules/@types/node/tty.d.ts +1 -3
  67. package/node_modules/@slack/web-api/node_modules/@types/node/url.d.ts +24 -1
  68. package/node_modules/@slack/web-api/node_modules/@types/node/util.d.ts +31 -0
  69. package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +2 -2
  70. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +1 -1
  71. package/node_modules/@types/cacheable-request/node_modules/@types/node/child_process.d.ts +19 -16
  72. package/node_modules/@types/cacheable-request/node_modules/@types/node/console.d.ts +5 -0
  73. package/node_modules/@types/cacheable-request/node_modules/@types/node/crypto.d.ts +51 -3
  74. package/node_modules/@types/cacheable-request/node_modules/@types/node/dgram.d.ts +8 -8
  75. package/node_modules/@types/cacheable-request/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  76. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns/promises.d.ts +11 -0
  77. package/node_modules/@types/cacheable-request/node_modules/@types/node/dns.d.ts +11 -0
  78. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs/promises.d.ts +90 -3
  79. package/node_modules/@types/cacheable-request/node_modules/@types/node/fs.d.ts +92 -39
  80. package/node_modules/@types/cacheable-request/node_modules/@types/node/http.d.ts +17 -6
  81. package/node_modules/@types/cacheable-request/node_modules/@types/node/index.d.ts +2 -3
  82. package/node_modules/@types/cacheable-request/node_modules/@types/node/inspector.d.ts +7 -0
  83. package/node_modules/@types/cacheable-request/node_modules/@types/node/net.d.ts +2 -2
  84. package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +8 -13
  85. package/node_modules/@types/cacheable-request/node_modules/@types/node/process.d.ts +5 -1
  86. package/node_modules/@types/cacheable-request/node_modules/@types/node/readline.d.ts +1 -0
  87. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/web.d.ts +385 -0
  88. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream.d.ts +26 -6
  89. package/node_modules/@types/cacheable-request/node_modules/@types/node/tty.d.ts +1 -3
  90. package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +24 -1
  91. package/node_modules/@types/cacheable-request/node_modules/@types/node/util.d.ts +31 -0
  92. package/node_modules/@types/is-stream/node_modules/@types/node/README.md +2 -2
  93. package/node_modules/@types/is-stream/node_modules/@types/node/buffer.d.ts +1 -1
  94. package/node_modules/@types/is-stream/node_modules/@types/node/child_process.d.ts +19 -16
  95. package/node_modules/@types/is-stream/node_modules/@types/node/console.d.ts +5 -0
  96. package/node_modules/@types/is-stream/node_modules/@types/node/crypto.d.ts +51 -3
  97. package/node_modules/@types/is-stream/node_modules/@types/node/dgram.d.ts +8 -8
  98. package/node_modules/@types/is-stream/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  99. package/node_modules/@types/is-stream/node_modules/@types/node/dns/promises.d.ts +11 -0
  100. package/node_modules/@types/is-stream/node_modules/@types/node/dns.d.ts +11 -0
  101. package/node_modules/@types/is-stream/node_modules/@types/node/fs/promises.d.ts +90 -3
  102. package/node_modules/@types/is-stream/node_modules/@types/node/fs.d.ts +92 -39
  103. package/node_modules/@types/is-stream/node_modules/@types/node/http.d.ts +17 -6
  104. package/node_modules/@types/is-stream/node_modules/@types/node/index.d.ts +2 -3
  105. package/node_modules/@types/is-stream/node_modules/@types/node/inspector.d.ts +7 -0
  106. package/node_modules/@types/is-stream/node_modules/@types/node/net.d.ts +2 -2
  107. package/node_modules/@types/is-stream/node_modules/@types/node/package.json +8 -13
  108. package/node_modules/@types/is-stream/node_modules/@types/node/process.d.ts +5 -1
  109. package/node_modules/@types/is-stream/node_modules/@types/node/readline.d.ts +1 -0
  110. package/node_modules/@types/is-stream/node_modules/@types/node/stream/web.d.ts +385 -0
  111. package/node_modules/@types/is-stream/node_modules/@types/node/stream.d.ts +26 -6
  112. package/node_modules/@types/is-stream/node_modules/@types/node/tty.d.ts +1 -3
  113. package/node_modules/@types/is-stream/node_modules/@types/node/url.d.ts +24 -1
  114. package/node_modules/@types/is-stream/node_modules/@types/node/util.d.ts +31 -0
  115. package/node_modules/@types/keyv/node_modules/@types/node/README.md +2 -2
  116. package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +1 -1
  117. package/node_modules/@types/keyv/node_modules/@types/node/child_process.d.ts +19 -16
  118. package/node_modules/@types/keyv/node_modules/@types/node/console.d.ts +5 -0
  119. package/node_modules/@types/keyv/node_modules/@types/node/crypto.d.ts +51 -3
  120. package/node_modules/@types/keyv/node_modules/@types/node/dgram.d.ts +8 -8
  121. package/node_modules/@types/keyv/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  122. package/node_modules/@types/keyv/node_modules/@types/node/dns/promises.d.ts +11 -0
  123. package/node_modules/@types/keyv/node_modules/@types/node/dns.d.ts +11 -0
  124. package/node_modules/@types/keyv/node_modules/@types/node/fs/promises.d.ts +90 -3
  125. package/node_modules/@types/keyv/node_modules/@types/node/fs.d.ts +92 -39
  126. package/node_modules/@types/keyv/node_modules/@types/node/http.d.ts +17 -6
  127. package/node_modules/@types/keyv/node_modules/@types/node/index.d.ts +2 -3
  128. package/node_modules/@types/keyv/node_modules/@types/node/inspector.d.ts +7 -0
  129. package/node_modules/@types/keyv/node_modules/@types/node/net.d.ts +2 -2
  130. package/node_modules/@types/keyv/node_modules/@types/node/package.json +8 -13
  131. package/node_modules/@types/keyv/node_modules/@types/node/process.d.ts +5 -1
  132. package/node_modules/@types/keyv/node_modules/@types/node/readline.d.ts +1 -0
  133. package/node_modules/@types/keyv/node_modules/@types/node/stream/web.d.ts +385 -0
  134. package/node_modules/@types/keyv/node_modules/@types/node/stream.d.ts +26 -6
  135. package/node_modules/@types/keyv/node_modules/@types/node/tty.d.ts +1 -3
  136. package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +24 -1
  137. package/node_modules/@types/keyv/node_modules/@types/node/util.d.ts +31 -0
  138. package/node_modules/@types/responselike/node_modules/@types/node/README.md +2 -2
  139. package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +1 -1
  140. package/node_modules/@types/responselike/node_modules/@types/node/child_process.d.ts +19 -16
  141. package/node_modules/@types/responselike/node_modules/@types/node/console.d.ts +5 -0
  142. package/node_modules/@types/responselike/node_modules/@types/node/crypto.d.ts +51 -3
  143. package/node_modules/@types/responselike/node_modules/@types/node/dgram.d.ts +8 -8
  144. package/node_modules/@types/responselike/node_modules/@types/node/diagnostics_channel.d.ts +6 -0
  145. package/node_modules/@types/responselike/node_modules/@types/node/dns/promises.d.ts +11 -0
  146. package/node_modules/@types/responselike/node_modules/@types/node/dns.d.ts +11 -0
  147. package/node_modules/@types/responselike/node_modules/@types/node/fs/promises.d.ts +90 -3
  148. package/node_modules/@types/responselike/node_modules/@types/node/fs.d.ts +92 -39
  149. package/node_modules/@types/responselike/node_modules/@types/node/http.d.ts +17 -6
  150. package/node_modules/@types/responselike/node_modules/@types/node/index.d.ts +2 -3
  151. package/node_modules/@types/responselike/node_modules/@types/node/inspector.d.ts +7 -0
  152. package/node_modules/@types/responselike/node_modules/@types/node/net.d.ts +2 -2
  153. package/node_modules/@types/responselike/node_modules/@types/node/package.json +8 -13
  154. package/node_modules/@types/responselike/node_modules/@types/node/process.d.ts +5 -1
  155. package/node_modules/@types/responselike/node_modules/@types/node/readline.d.ts +1 -0
  156. package/node_modules/@types/responselike/node_modules/@types/node/stream/web.d.ts +385 -0
  157. package/node_modules/@types/responselike/node_modules/@types/node/stream.d.ts +26 -6
  158. package/node_modules/@types/responselike/node_modules/@types/node/tty.d.ts +1 -3
  159. package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +24 -1
  160. package/node_modules/@types/responselike/node_modules/@types/node/util.d.ts +31 -0
  161. package/node_modules/follow-redirects/index.js +45 -14
  162. package/node_modules/follow-redirects/package.json +1 -1
  163. package/node_modules/got/dist/source/as-promise/parse-body.d.ts +1 -1
  164. package/node_modules/got/dist/source/as-promise/types.js +2 -0
  165. package/node_modules/got/dist/source/core/index.d.ts +1 -1
  166. package/node_modules/got/dist/source/core/index.js +9 -3
  167. package/node_modules/got/dist/source/types.d.ts +14 -12
  168. package/node_modules/got/package.json +2 -2
  169. package/node_modules/got/readme.md +11 -10
  170. package/node_modules/keyv/LICENSE +1 -1
  171. package/node_modules/keyv/README.md +12 -10
  172. package/node_modules/keyv/package.json +17 -12
  173. package/node_modules/keyv/src/index.js +14 -16
  174. package/node_modules/mime-db/HISTORY.md +13 -0
  175. package/node_modules/mime-db/db.json +54 -0
  176. package/node_modules/mime-db/package.json +7 -7
  177. package/node_modules/mime-types/HISTORY.md +13 -3
  178. package/node_modules/mime-types/package.json +7 -7
  179. package/package.json +29 -80
@@ -1,5 +1,390 @@
1
1
  declare module 'stream/web' {
2
2
  // stub module, pending copy&paste from .d.ts or manual impl
3
+ // copy from lib.dom.d.ts
4
+
5
+ interface ReadableWritablePair<R = any, W = any> {
6
+ readable: ReadableStream<R>;
7
+ /**
8
+ * Provides a convenient, chainable way of piping this readable stream
9
+ * through a transform stream (or any other { writable, readable }
10
+ * pair). It simply pipes the stream into the writable side of the
11
+ * supplied pair, and returns the readable side for further use.
12
+ *
13
+ * Piping a stream will lock it for the duration of the pipe, preventing
14
+ * any other consumer from acquiring a reader.
15
+ */
16
+ writable: WritableStream<W>;
17
+ }
18
+
19
+ interface StreamPipeOptions {
20
+ preventAbort?: boolean;
21
+ preventCancel?: boolean;
22
+ /**
23
+ * Pipes this readable stream to a given writable stream destination.
24
+ * The way in which the piping process behaves under various error
25
+ * conditions can be customized with a number of passed options. It
26
+ * returns a promise that fulfills when the piping process completes
27
+ * successfully, or rejects if any errors were encountered.
28
+ *
29
+ * Piping a stream will lock it for the duration of the pipe, preventing
30
+ * any other consumer from acquiring a reader.
31
+ *
32
+ * Errors and closures of the source and destination streams propagate
33
+ * as follows:
34
+ *
35
+ * An error in this source readable stream will abort destination,
36
+ * unless preventAbort is truthy. The returned promise will be rejected
37
+ * with the source's error, or with any error that occurs during
38
+ * aborting the destination.
39
+ *
40
+ * An error in destination will cancel this source readable stream,
41
+ * unless preventCancel is truthy. The returned promise will be rejected
42
+ * with the destination's error, or with any error that occurs during
43
+ * canceling the source.
44
+ *
45
+ * When this source readable stream closes, destination will be closed,
46
+ * unless preventClose is truthy. The returned promise will be fulfilled
47
+ * once this process completes, unless an error is encountered while
48
+ * closing the destination, in which case it will be rejected with that
49
+ * error.
50
+ *
51
+ * If destination starts out closed or closing, this source readable
52
+ * stream will be canceled, unless preventCancel is true. The returned
53
+ * promise will be rejected with an error indicating piping to a closed
54
+ * stream failed, or with any error that occurs during canceling the
55
+ * source.
56
+ *
57
+ * The signal option can be set to an AbortSignal to allow aborting an
58
+ * ongoing pipe operation via the corresponding AbortController. In this
59
+ * case, this source readable stream will be canceled, and destination
60
+ * aborted, unless the respective options preventCancel or preventAbort
61
+ * are set.
62
+ */
63
+ preventClose?: boolean;
64
+ signal?: AbortSignal;
65
+ }
66
+
67
+ interface ReadableStreamGenericReader {
68
+ readonly closed: Promise<undefined>;
69
+ cancel(reason?: any): Promise<void>;
70
+ }
71
+
72
+ interface ReadableStreamDefaultReadValueResult<T> {
73
+ done: false;
74
+ value: T;
75
+ }
76
+
77
+ interface ReadableStreamDefaultReadDoneResult {
78
+ done: true;
79
+ value?: undefined;
80
+ }
81
+ type ReadableStreamController<T> = ReadableStreamDefaultController<T>;
82
+ type ReadableStreamDefaultReadResult<T> =
83
+ | ReadableStreamDefaultReadValueResult<T>
84
+ | ReadableStreamDefaultReadDoneResult;
85
+
86
+ interface ReadableByteStreamControllerCallback {
87
+ (controller: ReadableByteStreamController): void | PromiseLike<void>;
88
+ }
89
+
90
+ interface UnderlyingSinkAbortCallback {
91
+ (reason?: any): void | PromiseLike<void>;
92
+ }
93
+
94
+ interface UnderlyingSinkCloseCallback {
95
+ (): void | PromiseLike<void>;
96
+ }
97
+
98
+ interface UnderlyingSinkStartCallback {
99
+ (controller: WritableStreamDefaultController): any;
100
+ }
101
+
102
+ interface UnderlyingSinkWriteCallback<W> {
103
+ (chunk: W, controller: WritableStreamDefaultController): void | PromiseLike<void>;
104
+ }
105
+
106
+ interface UnderlyingSourceCancelCallback {
107
+ (reason?: any): void | PromiseLike<void>;
108
+ }
109
+
110
+ interface UnderlyingSourcePullCallback<R> {
111
+ (controller: ReadableStreamController<R>): void | PromiseLike<void>;
112
+ }
113
+
114
+ interface UnderlyingSourceStartCallback<R> {
115
+ (controller: ReadableStreamController<R>): any;
116
+ }
117
+
118
+ interface TransformerFlushCallback<O> {
119
+ (controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
120
+ }
121
+
122
+ interface TransformerStartCallback<O> {
123
+ (controller: TransformStreamDefaultController<O>): any;
124
+ }
125
+
126
+ interface TransformerTransformCallback<I, O> {
127
+ (chunk: I, controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
128
+ }
129
+
130
+ interface UnderlyingByteSource {
131
+ autoAllocateChunkSize?: number;
132
+ cancel?: ReadableStreamErrorCallback;
133
+ pull?: ReadableByteStreamControllerCallback;
134
+ start?: ReadableByteStreamControllerCallback;
135
+ type: 'bytes';
136
+ }
137
+
138
+ interface UnderlyingSource<R = any> {
139
+ cancel?: UnderlyingSourceCancelCallback;
140
+ pull?: UnderlyingSourcePullCallback<R>;
141
+ start?: UnderlyingSourceStartCallback<R>;
142
+ type?: undefined;
143
+ }
144
+
145
+ interface UnderlyingSink<W = any> {
146
+ abort?: UnderlyingSinkAbortCallback;
147
+ close?: UnderlyingSinkCloseCallback;
148
+ start?: UnderlyingSinkStartCallback;
149
+ type?: undefined;
150
+ write?: UnderlyingSinkWriteCallback<W>;
151
+ }
152
+
153
+ interface ReadableStreamErrorCallback {
154
+ (reason: any): void | PromiseLike<void>;
155
+ }
156
+
157
+ /** This Streams API interface represents a readable stream of byte data. */
158
+ interface ReadableStream<R = any> {
159
+ readonly locked: boolean;
160
+ cancel(reason?: any): Promise<void>;
161
+ getReader(): ReadableStreamDefaultReader<R>;
162
+ pipeThrough<T>(transform: ReadableWritablePair<T, R>, options?: StreamPipeOptions): ReadableStream<T>;
163
+ pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>;
164
+ tee(): [ReadableStream<R>, ReadableStream<R>];
165
+ [Symbol.asyncIterator](options?: { preventCancel?: boolean }): AsyncIterableIterator<R>;
166
+ }
167
+
168
+ const ReadableStream: {
169
+ prototype: ReadableStream;
170
+ new (
171
+ underlyingSource: UnderlyingByteSource,
172
+ strategy?: QueuingStrategy<Uint8Array>,
173
+ ): ReadableStream<Uint8Array>;
174
+ new <R = any>(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
175
+ };
176
+
177
+ interface ReadableStreamDefaultReader<R = any> extends ReadableStreamGenericReader {
178
+ read(): Promise<ReadableStreamDefaultReadResult<R>>;
179
+ releaseLock(): void;
180
+ }
181
+
182
+ const ReadableStreamDefaultReader: {
183
+ prototype: ReadableStreamDefaultReader;
184
+ new <R = any>(stream: ReadableStream<R>): ReadableStreamDefaultReader<R>;
185
+ };
186
+
187
+ const ReadableStreamBYOBReader: any;
188
+ const ReadableStreamBYOBRequest: any;
189
+
190
+ interface ReadableByteStreamController {
191
+ readonly byobRequest: undefined;
192
+ readonly desiredSize: number | null;
193
+ close(): void;
194
+ enqueue(chunk: ArrayBufferView): void;
195
+ error(error?: any): void;
196
+ }
197
+
198
+ const ReadableByteStreamController: {
199
+ prototype: ReadableByteStreamController;
200
+ new (): ReadableByteStreamController;
201
+ };
202
+
203
+ interface ReadableStreamDefaultController<R = any> {
204
+ readonly desiredSize: number | null;
205
+ close(): void;
206
+ enqueue(chunk?: R): void;
207
+ error(e?: any): void;
208
+ }
209
+
210
+ const ReadableStreamDefaultController: {
211
+ prototype: ReadableStreamDefaultController;
212
+ new (): ReadableStreamDefaultController;
213
+ };
214
+
215
+ interface Transformer<I = any, O = any> {
216
+ flush?: TransformerFlushCallback<O>;
217
+ readableType?: undefined;
218
+ start?: TransformerStartCallback<O>;
219
+ transform?: TransformerTransformCallback<I, O>;
220
+ writableType?: undefined;
221
+ }
222
+
223
+ interface TransformStream<I = any, O = any> {
224
+ readonly readable: ReadableStream<O>;
225
+ readonly writable: WritableStream<I>;
226
+ }
227
+
228
+ const TransformStream: {
229
+ prototype: TransformStream;
230
+ new <I = any, O = any>(
231
+ transformer?: Transformer<I, O>,
232
+ writableStrategy?: QueuingStrategy<I>,
233
+ readableStrategy?: QueuingStrategy<O>,
234
+ ): TransformStream<I, O>;
235
+ };
236
+
237
+ interface TransformStreamDefaultController<O = any> {
238
+ readonly desiredSize: number | null;
239
+ enqueue(chunk?: O): void;
240
+ error(reason?: any): void;
241
+ terminate(): void;
242
+ }
243
+
244
+ const TransformStreamDefaultController: {
245
+ prototype: TransformStreamDefaultController;
246
+ new (): TransformStreamDefaultController;
247
+ };
248
+
249
+ /**
250
+ * This Streams API interface provides a standard abstraction for writing
251
+ * streaming data to a destination, known as a sink. This object comes with
252
+ * built-in back pressure and queuing.
253
+ */
254
+ interface WritableStream<W = any> {
255
+ readonly locked: boolean;
256
+ abort(reason?: any): Promise<void>;
257
+ close(): Promise<void>;
258
+ getWriter(): WritableStreamDefaultWriter<W>;
259
+ }
260
+
261
+ const WritableStream: {
262
+ prototype: WritableStream;
263
+ new <W = any>(underlyingSink?: UnderlyingSink<W>, strategy?: QueuingStrategy<W>): WritableStream<W>;
264
+ };
265
+
266
+ /**
267
+ * This Streams API interface is the object returned by
268
+ * WritableStream.getWriter() and once created locks the < writer to the
269
+ * WritableStream ensuring that no other streams can write to the underlying
270
+ * sink.
271
+ */
272
+ interface WritableStreamDefaultWriter<W = any> {
273
+ readonly closed: Promise<undefined>;
274
+ readonly desiredSize: number | null;
275
+ readonly ready: Promise<undefined>;
276
+ abort(reason?: any): Promise<void>;
277
+ close(): Promise<void>;
278
+ releaseLock(): void;
279
+ write(chunk?: W): Promise<void>;
280
+ }
281
+
282
+ const WritableStreamDefaultWriter: {
283
+ prototype: WritableStreamDefaultWriter;
284
+ new <W = any>(stream: WritableStream<W>): WritableStreamDefaultWriter<W>;
285
+ };
286
+
287
+ /**
288
+ * This Streams API interface represents a controller allowing control of a
289
+ * WritableStream's state. When constructing a WritableStream, the
290
+ * underlying sink is given a corresponding WritableStreamDefaultController
291
+ * instance to manipulate.
292
+ */
293
+ interface WritableStreamDefaultController {
294
+ error(e?: any): void;
295
+ }
296
+
297
+ const WritableStreamDefaultController: {
298
+ prototype: WritableStreamDefaultController;
299
+ new (): WritableStreamDefaultController;
300
+ };
301
+
302
+ interface QueuingStrategy<T = any> {
303
+ highWaterMark?: number;
304
+ size?: QueuingStrategySize<T>;
305
+ }
306
+
307
+ interface QueuingStrategySize<T = any> {
308
+ (chunk?: T): number;
309
+ }
310
+
311
+ interface QueuingStrategyInit {
312
+ /**
313
+ * Creates a new ByteLengthQueuingStrategy with the provided high water
314
+ * mark.
315
+ *
316
+ * Note that the provided high water mark will not be validated ahead of
317
+ * time. Instead, if it is negative, NaN, or not a number, the resulting
318
+ * ByteLengthQueuingStrategy will cause the corresponding stream
319
+ * constructor to throw.
320
+ */
321
+ highWaterMark: number;
322
+ }
323
+
324
+ /**
325
+ * This Streams API interface provides a built-in byte length queuing
326
+ * strategy that can be used when constructing streams.
327
+ */
328
+ interface ByteLengthQueuingStrategy extends QueuingStrategy<ArrayBufferView> {
329
+ readonly highWaterMark: number;
330
+ readonly size: QueuingStrategySize<ArrayBufferView>;
331
+ }
332
+
333
+ const ByteLengthQueuingStrategy: {
334
+ prototype: ByteLengthQueuingStrategy;
335
+ new (init: QueuingStrategyInit): ByteLengthQueuingStrategy;
336
+ };
337
+
338
+ /**
339
+ * This Streams API interface provides a built-in byte length queuing
340
+ * strategy that can be used when constructing streams.
341
+ */
342
+ interface CountQueuingStrategy extends QueuingStrategy {
343
+ readonly highWaterMark: number;
344
+ readonly size: QueuingStrategySize;
345
+ }
346
+
347
+ const CountQueuingStrategy: {
348
+ prototype: CountQueuingStrategy;
349
+ new (init: QueuingStrategyInit): CountQueuingStrategy;
350
+ };
351
+
352
+ interface TextEncoderStream {
353
+ /** Returns "utf-8". */
354
+ readonly encoding: 'utf-8';
355
+ readonly readable: ReadableStream<Uint8Array>;
356
+ readonly writable: WritableStream<string>;
357
+ readonly [Symbol.toStringTag]: string;
358
+ }
359
+
360
+ const TextEncoderStream: {
361
+ prototype: TextEncoderStream;
362
+ new (): TextEncoderStream;
363
+ };
364
+
365
+ interface TextDecoderOptions {
366
+ fatal?: boolean;
367
+ ignoreBOM?: boolean;
368
+ }
369
+
370
+ type BufferSource = ArrayBufferView | ArrayBuffer;
371
+
372
+ interface TextDecoderStream {
373
+ /** Returns encoding's name, lower cased. */
374
+ readonly encoding: string;
375
+ /** Returns `true` if error mode is "fatal", and `false` otherwise. */
376
+ readonly fatal: boolean;
377
+ /** Returns `true` if ignore BOM flag is set, and `false` otherwise. */
378
+ readonly ignoreBOM: boolean;
379
+ readonly readable: ReadableStream<string>;
380
+ readonly writable: WritableStream<BufferSource>;
381
+ readonly [Symbol.toStringTag]: string;
382
+ }
383
+
384
+ const TextDecoderStream: {
385
+ prototype: TextDecoderStream;
386
+ new (label?: string, options?: TextDecoderOptions): TextDecoderStream;
387
+ };
3
388
  }
4
389
  declare module 'node:stream/web' {
5
390
  export * from 'stream/web';
@@ -1083,16 +1083,14 @@ declare module 'stream' {
1083
1083
  *
1084
1084
  * async function run() {
1085
1085
  * const ac = new AbortController();
1086
- * const options = {
1087
- * signal: ac.signal,
1088
- * };
1086
+ * const signal = ac.signal;
1089
1087
  *
1090
1088
  * setTimeout(() => ac.abort(), 1);
1091
1089
  * await pipeline(
1092
1090
  * fs.createReadStream('archive.tar'),
1093
1091
  * zlib.createGzip(),
1094
1092
  * fs.createWriteStream('archive.tar.gz'),
1095
- * options,
1093
+ * { signal },
1096
1094
  * );
1097
1095
  * }
1098
1096
  *
@@ -1108,10 +1106,10 @@ declare module 'stream' {
1108
1106
  * async function run() {
1109
1107
  * await pipeline(
1110
1108
  * fs.createReadStream('lowercase.txt'),
1111
- * async function* (source) {
1109
+ * async function* (source, signal) {
1112
1110
  * source.setEncoding('utf8'); // Work with strings rather than `Buffer`s.
1113
1111
  * for await (const chunk of source) {
1114
- * yield chunk.toUpperCase();
1112
+ * yield await processChunk(chunk, { signal });
1115
1113
  * }
1116
1114
  * },
1117
1115
  * fs.createWriteStream('uppercase.txt')
@@ -1122,6 +1120,28 @@ declare module 'stream' {
1122
1120
  * run().catch(console.error);
1123
1121
  * ```
1124
1122
  *
1123
+ * Remember to handle the `signal` argument passed into the async generator.
1124
+ * Especially in the case where the async generator is the source for the
1125
+ * pipeline (i.e. first argument) or the pipeline will never complete.
1126
+ *
1127
+ * ```js
1128
+ * const { pipeline } = require('stream/promises');
1129
+ * const fs = require('fs');
1130
+ *
1131
+ * async function run() {
1132
+ * await pipeline(
1133
+ * async function * (signal) {
1134
+ * await someLongRunningfn({ signal });
1135
+ * yield 'asd';
1136
+ * },
1137
+ * fs.createWriteStream('uppercase.txt')
1138
+ * );
1139
+ * console.log('Pipeline succeeded.');
1140
+ * }
1141
+ *
1142
+ * run().catch(console.error);
1143
+ * ```
1144
+ *
1125
1145
  * `stream.pipeline()` will call `stream.destroy(err)` on all streams except:
1126
1146
  *
1127
1147
  * * `Readable` streams which have emitted `'end'` or `'close'`.
@@ -129,9 +129,7 @@ declare module 'tty' {
129
129
  * * `1` for 2,
130
130
  * * `4` for 16,
131
131
  * * `8` for 256,
132
- * * `24` for 16,777,216
133
- *
134
- * colors supported.
132
+ * * `24` for 16,777,216 colors supported.
135
133
  *
136
134
  * Use this to determine what colors the terminal supports. Due to the nature of
137
135
  * colors in terminals it is possible to either have false positives or false
@@ -71,6 +71,30 @@ declare module 'url' {
71
71
  function parse(urlString: string, parseQueryString: false | undefined, slashesDenoteHost?: boolean): UrlWithStringQuery;
72
72
  function parse(urlString: string, parseQueryString: true, slashesDenoteHost?: boolean): UrlWithParsedQuery;
73
73
  function parse(urlString: string, parseQueryString: boolean, slashesDenoteHost?: boolean): Url;
74
+ /**
75
+ * The URL object has both a `toString()` method and `href` property that return string serializations of the URL.
76
+ * These are not, however, customizable in any way. The `url.format(URL[, options])` method allows for basic
77
+ * customization of the output.
78
+ * Returns a customizable serialization of a URL `String` representation of a `WHATWG URL` object.
79
+ *
80
+ * ```js
81
+ * import url from 'url';
82
+ * const myURL = new URL('https://a:b@測試?abc#foo');
83
+ *
84
+ * console.log(myURL.href);
85
+ * // Prints https://a:b@xn--g6w251d/?abc#foo
86
+ *
87
+ * console.log(myURL.toString());
88
+ * // Prints https://a:b@xn--g6w251d/?abc#foo
89
+ *
90
+ * console.log(url.format(myURL, { fragment: false, unicode: true, auth: false }));
91
+ * // Prints 'https://測試/?abc'
92
+ * ```
93
+ * @since v7.6.0
94
+ * @param urlObject A `WHATWG URL` object
95
+ * @param options
96
+ */
97
+ function format(urlObject: URL, options?: URLFormatOptions): string;
74
98
  /**
75
99
  * The `url.format()` method returns a formatted URL string derived from`urlObject`.
76
100
  *
@@ -134,7 +158,6 @@ declare module 'url' {
134
158
  * @deprecated Legacy: Use the WHATWG URL API instead.
135
159
  * @param urlObject A URL object (as returned by `url.parse()` or constructed otherwise). If a string, it is converted to an object by passing it to `url.parse()`.
136
160
  */
137
- function format(urlObject: URL, options?: URLFormatOptions): string;
138
161
  function format(urlObject: UrlObject | string): string;
139
162
  /**
140
163
  * The `url.resolve()` method resolves a target URL relative to a base URL in a
@@ -113,6 +113,20 @@ declare module 'util' {
113
113
  * @since v10.0.0
114
114
  */
115
115
  export function formatWithOptions(inspectOptions: InspectOptions, format?: any, ...param: any[]): string;
116
+ /**
117
+ * Returns the string name for a numeric error code that comes from a Node.js API.
118
+ * The mapping between error codes and error names is platform-dependent.
119
+ * See `Common System Errors` for the names of common errors.
120
+ *
121
+ * ```js
122
+ * fs.access('file/that/does/not/exist', (err) => {
123
+ * const name = util.getSystemErrorName(err.errno);
124
+ * console.error(name); // ENOENT
125
+ * });
126
+ * ```
127
+ * @since v9.7.0
128
+ */
129
+ export function getSystemErrorName(err: number): string;
116
130
  /**
117
131
  * Returns a Map of all system error codes available from the Node.js API.
118
132
  * The mapping between error codes and error names is platform-dependent.
@@ -314,6 +328,9 @@ declare module 'util' {
314
328
  * Allows changing inspect settings from the repl.
315
329
  */
316
330
  let replDefaults: InspectOptions;
331
+ /**
332
+ * That can be used to declare custom inspect functions.
333
+ */
317
334
  const custom: unique symbol;
318
335
  }
319
336
  /**
@@ -520,6 +537,7 @@ declare module 'util' {
520
537
  * @return The logging function
521
538
  */
522
539
  export function debuglog(section: string, callback?: (fn: DebugLoggerFunction) => void): DebugLogger;
540
+ export const debug: typeof debuglog;
523
541
  /**
524
542
  * Returns `true` if the given `object` is a `Boolean`. Otherwise, returns `false`.
525
543
  *
@@ -789,6 +807,16 @@ declare module 'util' {
789
807
  * @since v9.0.0
790
808
  */
791
809
  export function isDeepStrictEqual(val1: unknown, val2: unknown): boolean;
810
+ /**
811
+ * Returns `str` with any ANSI escape codes removed.
812
+ *
813
+ * ```js
814
+ * console.log(util.stripVTControlCharacters('\u001B[4mvalue\u001B[0m'));
815
+ * // Prints "value"
816
+ * ```
817
+ * @since v16.11.0
818
+ */
819
+ export function stripVTControlCharacters(str: string): string;
792
820
  /**
793
821
  * Takes an `async` function (or a function that returns a `Promise`) and returns a
794
822
  * function following the error-first callback style, i.e. taking
@@ -961,6 +989,9 @@ declare module 'util' {
961
989
  ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5) => Promise<void>;
962
990
  export function promisify(fn: Function): Function;
963
991
  export namespace promisify {
992
+ /**
993
+ * That can be used to declare custom promisified variants of functions.
994
+ */
964
995
  const custom: unique symbol;
965
996
  }
966
997
  /**
@@ -18,7 +18,7 @@ events.forEach(function (event) {
18
18
  // Error types with codes
19
19
  var RedirectionError = createErrorType(
20
20
  "ERR_FR_REDIRECTION_FAILURE",
21
- ""
21
+ "Redirected request failed"
22
22
  );
23
23
  var TooManyRedirectsError = createErrorType(
24
24
  "ERR_FR_TOO_MANY_REDIRECTS",
@@ -169,10 +169,16 @@ RedirectableRequest.prototype.setTimeout = function (msecs, callback) {
169
169
 
170
170
  // Stops a timeout from triggering
171
171
  function clearTimer() {
172
+ // Clear the timeout
172
173
  if (self._timeout) {
173
174
  clearTimeout(self._timeout);
174
175
  self._timeout = null;
175
176
  }
177
+
178
+ // Clean up all attached listeners
179
+ self.removeListener("abort", clearTimer);
180
+ self.removeListener("error", clearTimer);
181
+ self.removeListener("response", clearTimer);
176
182
  if (callback) {
177
183
  self.removeListener("timeout", callback);
178
184
  }
@@ -196,8 +202,9 @@ RedirectableRequest.prototype.setTimeout = function (msecs, callback) {
196
202
 
197
203
  // Clean up on events
198
204
  this.on("socket", destroyOnTimeout);
199
- this.once("response", clearTimer);
200
- this.once("error", clearTimer);
205
+ this.on("abort", clearTimer);
206
+ this.on("error", clearTimer);
207
+ this.on("response", clearTimer);
201
208
 
202
209
  return this;
203
210
  };
@@ -361,18 +368,32 @@ RedirectableRequest.prototype._processResponse = function (response) {
361
368
  }
362
369
 
363
370
  // Drop the Host header, as the redirect might lead to a different host
364
- var previousHostName = removeMatchingHeaders(/^host$/i, this._options.headers) ||
365
- url.parse(this._currentUrl).hostname;
371
+ var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers);
372
+
373
+ // If the redirect is relative, carry over the host of the last request
374
+ var currentUrlParts = url.parse(this._currentUrl);
375
+ var currentHost = currentHostHeader || currentUrlParts.host;
376
+ var currentUrl = /^\w+:/.test(location) ? this._currentUrl :
377
+ url.format(Object.assign(currentUrlParts, { host: currentHost }));
378
+
379
+ // Determine the URL of the redirection
380
+ var redirectUrl;
381
+ try {
382
+ redirectUrl = url.resolve(currentUrl, location);
383
+ }
384
+ catch (cause) {
385
+ this.emit("error", new RedirectionError(cause));
386
+ return;
387
+ }
366
388
 
367
389
  // Create the redirected request
368
- var redirectUrl = url.resolve(this._currentUrl, location);
369
390
  debug("redirecting to", redirectUrl);
370
391
  this._isRedirect = true;
371
392
  var redirectUrlParts = url.parse(redirectUrl);
372
393
  Object.assign(this._options, redirectUrlParts);
373
394
 
374
- // Drop the Authorization header if redirecting to another host
375
- if (redirectUrlParts.hostname !== previousHostName) {
395
+ // Drop the Authorization header if redirecting to another domain
396
+ if (!(redirectUrlParts.host === currentHost || isSubdomainOf(redirectUrlParts.host, currentHost))) {
376
397
  removeMatchingHeaders(/^authorization$/i, this._options.headers);
377
398
  }
378
399
 
@@ -394,9 +415,7 @@ RedirectableRequest.prototype._processResponse = function (response) {
394
415
  this._performRequest();
395
416
  }
396
417
  catch (cause) {
397
- var error = new RedirectionError("Redirected request failed: " + cause.message);
398
- error.cause = cause;
399
- this.emit("error", error);
418
+ this.emit("error", new RedirectionError(cause));
400
419
  }
401
420
  }
402
421
  else {
@@ -510,13 +529,20 @@ function removeMatchingHeaders(regex, headers) {
510
529
  delete headers[header];
511
530
  }
512
531
  }
513
- return lastValue;
532
+ return (lastValue === null || typeof lastValue === "undefined") ?
533
+ undefined : String(lastValue).trim();
514
534
  }
515
535
 
516
536
  function createErrorType(code, defaultMessage) {
517
- function CustomError(message) {
537
+ function CustomError(cause) {
518
538
  Error.captureStackTrace(this, this.constructor);
519
- this.message = message || defaultMessage;
539
+ if (!cause) {
540
+ this.message = defaultMessage;
541
+ }
542
+ else {
543
+ this.message = defaultMessage + ": " + cause.message;
544
+ this.cause = cause;
545
+ }
520
546
  }
521
547
  CustomError.prototype = new Error();
522
548
  CustomError.prototype.constructor = CustomError;
@@ -533,6 +559,11 @@ function abortRequest(request) {
533
559
  request.abort();
534
560
  }
535
561
 
562
+ function isSubdomainOf(subdomain, domain) {
563
+ const dot = subdomain.length - domain.length - 1;
564
+ return dot > 0 && subdomain[dot] === "." && subdomain.endsWith(domain);
565
+ }
566
+
536
567
  // Exports
537
568
  module.exports = wrap({ http: http, https: https });
538
569
  module.exports.wrap = wrap;