@chainlink/external-adapter-framework 2.6.0 → 2.7.1

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 (160) hide show
  1. package/README.md +1 -1
  2. package/adapter/types.d.ts +1 -1
  3. package/config/index.d.ts +4 -0
  4. package/config/index.js +4 -0
  5. package/config/index.js.map +1 -1
  6. package/debug/router.js +7 -36
  7. package/debug/router.js.map +1 -1
  8. package/debug/settings-page.d.ts +1 -7
  9. package/debug/settings-page.js +0 -22
  10. package/debug/settings-page.js.map +1 -1
  11. package/generator-adapter/generators/app/index.js +11 -5
  12. package/generator-adapter/node_modules/.yarn-integrity +14 -13
  13. package/generator-adapter/node_modules/@types/node/README.md +3 -3
  14. package/generator-adapter/node_modules/@types/node/async_hooks.d.ts +65 -1
  15. package/generator-adapter/node_modules/@types/node/buffer.buffer.d.ts +2 -0
  16. package/generator-adapter/node_modules/@types/node/buffer.d.ts +8 -4
  17. package/generator-adapter/node_modules/@types/node/child_process.d.ts +26 -122
  18. package/generator-adapter/node_modules/@types/node/cluster.d.ts +1 -1
  19. package/generator-adapter/node_modules/@types/node/compatibility/disposable.d.ts +0 -2
  20. package/generator-adapter/node_modules/@types/node/compatibility/indexable.d.ts +0 -3
  21. package/generator-adapter/node_modules/@types/node/compatibility/iterators.d.ts +0 -1
  22. package/generator-adapter/node_modules/@types/node/crypto.d.ts +17 -1
  23. package/generator-adapter/node_modules/@types/node/diagnostics_channel.d.ts +37 -13
  24. package/generator-adapter/node_modules/@types/node/dns/promises.d.ts +36 -9
  25. package/generator-adapter/node_modules/@types/node/dns.d.ts +73 -20
  26. package/generator-adapter/node_modules/@types/node/events.d.ts +0 -1
  27. package/generator-adapter/node_modules/@types/node/fs/promises.d.ts +62 -54
  28. package/generator-adapter/node_modules/@types/node/fs.d.ts +149 -54
  29. package/generator-adapter/node_modules/@types/node/globals.d.ts +137 -478
  30. package/generator-adapter/node_modules/@types/node/http.d.ts +93 -6
  31. package/generator-adapter/node_modules/@types/node/http2.d.ts +81 -2
  32. package/generator-adapter/node_modules/@types/node/https.d.ts +5 -0
  33. package/generator-adapter/node_modules/@types/node/index.d.ts +7 -3
  34. package/generator-adapter/node_modules/@types/node/{inspector.d.ts → inspector.generated.d.ts} +219 -10
  35. package/generator-adapter/node_modules/@types/node/module.d.ts +136 -17
  36. package/generator-adapter/node_modules/@types/node/net.d.ts +15 -9
  37. package/generator-adapter/node_modules/@types/node/package.json +3 -83
  38. package/generator-adapter/node_modules/@types/node/perf_hooks.d.ts +2 -2
  39. package/generator-adapter/node_modules/@types/node/process.d.ts +3 -4
  40. package/generator-adapter/node_modules/@types/node/querystring.d.ts +2 -3
  41. package/generator-adapter/node_modules/@types/node/readline/promises.d.ts +0 -1
  42. package/generator-adapter/node_modules/@types/node/repl.d.ts +3 -5
  43. package/generator-adapter/node_modules/@types/node/sqlite.d.ts +207 -0
  44. package/generator-adapter/node_modules/@types/node/stream/web.d.ts +11 -3
  45. package/generator-adapter/node_modules/@types/node/stream.d.ts +5 -10
  46. package/generator-adapter/node_modules/@types/node/test.d.ts +1873 -1970
  47. package/generator-adapter/node_modules/@types/node/tls.d.ts +1 -1
  48. package/generator-adapter/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +2 -0
  49. package/generator-adapter/node_modules/@types/node/ts5.6/index.d.ts +7 -3
  50. package/generator-adapter/node_modules/@types/node/url.d.ts +12 -3
  51. package/generator-adapter/node_modules/@types/node/util.d.ts +33 -5
  52. package/generator-adapter/node_modules/@types/node/v8.d.ts +60 -30
  53. package/generator-adapter/node_modules/@types/node/vm.d.ts +61 -8
  54. package/generator-adapter/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
  55. package/generator-adapter/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  56. package/generator-adapter/node_modules/@types/node/web-globals/events.d.ts +94 -0
  57. package/generator-adapter/node_modules/@types/node/web-globals/fetch.d.ts +46 -0
  58. package/generator-adapter/node_modules/@types/node/web-globals/navigator.d.ts +22 -0
  59. package/generator-adapter/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  60. package/generator-adapter/node_modules/@types/node/worker_threads.d.ts +87 -28
  61. package/generator-adapter/node_modules/@types/node/zlib.d.ts +8 -2
  62. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.d.ts +3 -0
  63. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js +12 -2
  64. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js.map +1 -1
  65. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.d.ts +3 -0
  66. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js +12 -2
  67. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js.map +1 -1
  68. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.d.ts +3 -0
  69. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js +12 -2
  70. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js.map +1 -1
  71. package/generator-adapter/node_modules/@yeoman/adapter/package.json +4 -4
  72. package/generator-adapter/node_modules/@yeoman/adapter/types/adapter.d.ts +12 -1
  73. package/generator-adapter/node_modules/@yeoman/types/package.json +3 -3
  74. package/generator-adapter/node_modules/@yeoman/types/types/environment/environment.d.ts +4 -1
  75. package/generator-adapter/node_modules/@yeoman/types/types/environment/methods-options.d.ts +7 -3
  76. package/generator-adapter/node_modules/@yeoman/types/types/generator/generator.d.ts +8 -5
  77. package/generator-adapter/node_modules/@yeoman/types/types/generator/utils.d.ts +1 -0
  78. package/generator-adapter/node_modules/ansi-regex/index.d.ts +9 -13
  79. package/generator-adapter/node_modules/ansi-regex/index.js +6 -6
  80. package/generator-adapter/node_modules/ansi-regex/license +1 -1
  81. package/generator-adapter/node_modules/ansi-regex/package.json +12 -6
  82. package/generator-adapter/node_modules/ansi-regex/readme.md +4 -22
  83. package/generator-adapter/node_modules/cli-spinners/index.d.ts +122 -111
  84. package/generator-adapter/node_modules/cli-spinners/index.js +7 -11
  85. package/generator-adapter/node_modules/cli-spinners/package.json +15 -9
  86. package/generator-adapter/node_modules/cli-spinners/readme.md +23 -3
  87. package/generator-adapter/node_modules/cli-spinners/spinners.json +44 -1
  88. package/generator-adapter/node_modules/emoji-regex/README.md +14 -48
  89. package/generator-adapter/node_modules/emoji-regex/index.d.ts +21 -1
  90. package/generator-adapter/node_modules/emoji-regex/index.js +5 -3
  91. package/generator-adapter/node_modules/emoji-regex/package.json +12 -7
  92. package/generator-adapter/node_modules/get-east-asian-width/index.js +2 -3
  93. package/generator-adapter/node_modules/get-east-asian-width/lookup.js +11 -11
  94. package/generator-adapter/node_modules/get-east-asian-width/package.json +1 -1
  95. package/generator-adapter/node_modules/ora/index.d.ts +3 -3
  96. package/generator-adapter/node_modules/ora/index.js +67 -48
  97. package/generator-adapter/node_modules/ora/node_modules/chalk/package.json +83 -0
  98. package/generator-adapter/node_modules/ora/node_modules/chalk/readme.md +297 -0
  99. package/generator-adapter/node_modules/ora/node_modules/chalk/source/index.d.ts +325 -0
  100. package/generator-adapter/node_modules/ora/node_modules/chalk/source/index.js +225 -0
  101. package/generator-adapter/node_modules/ora/node_modules/chalk/source/utilities.js +33 -0
  102. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
  103. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
  104. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
  105. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
  106. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
  107. package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
  108. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser-symbols.js +4 -0
  109. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser.js +1 -8
  110. package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.js +1 -20
  111. package/generator-adapter/node_modules/ora/node_modules/log-symbols/package.json +10 -7
  112. package/generator-adapter/node_modules/ora/node_modules/log-symbols/symbols.js +14 -0
  113. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/package.json +3 -1
  114. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/readme.md +5 -9
  115. package/generator-adapter/node_modules/ora/package.json +13 -13
  116. package/generator-adapter/node_modules/ora/readme.md +49 -3
  117. package/generator-adapter/node_modules/string-width/index.js +52 -45
  118. package/generator-adapter/node_modules/string-width/package.json +8 -7
  119. package/generator-adapter/node_modules/{string-width → strip-ansi}/node_modules/ansi-regex/index.d.ts +13 -9
  120. package/generator-adapter/node_modules/strip-ansi/node_modules/ansi-regex/index.js +10 -0
  121. package/generator-adapter/node_modules/{ora/node_modules/log-symbols/node_modules/is-unicode-supported → strip-ansi/node_modules/ansi-regex}/license +1 -1
  122. package/generator-adapter/node_modules/{string-width → strip-ansi}/node_modules/ansi-regex/package.json +6 -12
  123. package/generator-adapter/node_modules/{ora → strip-ansi}/node_modules/ansi-regex/readme.md +22 -4
  124. package/generator-adapter/package.json +3 -3
  125. package/index.js +3 -0
  126. package/index.js.map +1 -1
  127. package/package.json +19 -19
  128. package/status/router.d.ts +49 -0
  129. package/status/router.js +55 -0
  130. package/status/router.js.map +1 -0
  131. package/transports/http.d.ts +1 -2
  132. package/transports/sse.d.ts +2 -2
  133. package/transports/sse.js +2 -5
  134. package/transports/sse.js.map +1 -1
  135. package/transports/websocket.js +53 -17
  136. package/transports/websocket.js.map +1 -1
  137. package/util/settings.d.ts +11 -0
  138. package/util/settings.js +29 -0
  139. package/util/settings.js.map +1 -0
  140. package/generator-adapter/node_modules/@types/node/dom-events.d.ts +0 -124
  141. package/generator-adapter/node_modules/emoji-regex/index.mjs +0 -4
  142. package/generator-adapter/node_modules/ora/node_modules/ansi-regex/index.d.ts +0 -33
  143. package/generator-adapter/node_modules/ora/node_modules/ansi-regex/index.js +0 -10
  144. package/generator-adapter/node_modules/ora/node_modules/ansi-regex/package.json +0 -61
  145. package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/index.d.ts +0 -12
  146. package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/index.js +0 -17
  147. package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/package.json +0 -43
  148. package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/readme.md +0 -35
  149. package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/index.js +0 -10
  150. package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/license +0 -9
  151. package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/readme.md +0 -60
  152. package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  153. package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/README.md +0 -73
  154. package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/index.d.ts +0 -23
  155. package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/index.js +0 -6
  156. package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/package.json +0 -50
  157. /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/es2015/index.js +0 -0
  158. /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/es2015/text.js +0 -0
  159. /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/text.js +0 -0
  160. /package/generator-adapter/node_modules/ora/node_modules/{ansi-regex → chalk}/license +0 -0
@@ -198,7 +198,7 @@ declare module "fs" {
198
198
  * the `withFileTypes` option set to `true`, the resulting array is filled with `fs.Dirent` objects, rather than strings or `Buffer` s.
199
199
  * @since v10.10.0
200
200
  */
201
- export class Dirent {
201
+ export class Dirent<Name extends string | Buffer = string> {
202
202
  /**
203
203
  * Returns `true` if the `fs.Dirent` object describes a regular file.
204
204
  * @since v10.10.0
@@ -241,10 +241,10 @@ declare module "fs" {
241
241
  * value is determined by the `options.encoding` passed to {@link readdir} or {@link readdirSync}.
242
242
  * @since v10.10.0
243
243
  */
244
- name: string;
244
+ name: Name;
245
245
  /**
246
- * The base path that this `fs.Dirent` object refers to.
247
- * @since v20.12.0
246
+ * The path to the parent directory of the file this `fs.Dirent` object refers to.
247
+ * @since v20.12.0, v18.20.0
248
248
  */
249
249
  parentPath: string;
250
250
  /**
@@ -328,6 +328,20 @@ declare module "fs" {
328
328
  * @since v12.12.0
329
329
  */
330
330
  readSync(): Dirent | null;
331
+ /**
332
+ * Calls `dir.close()` if the directory handle is open, and returns a promise that
333
+ * fulfills when disposal is complete.
334
+ * @since v22.17.0
335
+ * @experimental
336
+ */
337
+ [Symbol.asyncDispose](): Promise<void>;
338
+ /**
339
+ * Calls `dir.closeSync()` if the directory handle is open, and returns
340
+ * `undefined`.
341
+ * @since v22.17.0
342
+ * @experimental
343
+ */
344
+ [Symbol.dispose](): void;
331
345
  }
332
346
  /**
333
347
  * Class: fs.StatWatcher
@@ -2040,6 +2054,20 @@ declare module "fs" {
2040
2054
  },
2041
2055
  callback: (err: NodeJS.ErrnoException | null, files: Dirent[]) => void,
2042
2056
  ): void;
2057
+ /**
2058
+ * Asynchronous readdir(3) - read a directory.
2059
+ * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
2060
+ * @param options Must include `withFileTypes: true` and `encoding: 'buffer'`.
2061
+ */
2062
+ export function readdir(
2063
+ path: PathLike,
2064
+ options: {
2065
+ encoding: "buffer";
2066
+ withFileTypes: true;
2067
+ recursive?: boolean | undefined;
2068
+ },
2069
+ callback: (err: NodeJS.ErrnoException | null, files: Dirent<Buffer>[]) => void,
2070
+ ): void;
2043
2071
  export namespace readdir {
2044
2072
  /**
2045
2073
  * Asynchronous readdir(3) - read a directory.
@@ -2099,6 +2127,19 @@ declare module "fs" {
2099
2127
  recursive?: boolean | undefined;
2100
2128
  },
2101
2129
  ): Promise<Dirent[]>;
2130
+ /**
2131
+ * Asynchronous readdir(3) - read a directory.
2132
+ * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
2133
+ * @param options Must include `withFileTypes: true` and `encoding: 'buffer'`.
2134
+ */
2135
+ function __promisify__(
2136
+ path: PathLike,
2137
+ options: {
2138
+ encoding: "buffer";
2139
+ withFileTypes: true;
2140
+ recursive?: boolean | undefined;
2141
+ },
2142
+ ): Promise<Dirent<Buffer>[]>;
2102
2143
  }
2103
2144
  /**
2104
2145
  * Reads the contents of the directory.
@@ -2166,6 +2207,19 @@ declare module "fs" {
2166
2207
  recursive?: boolean | undefined;
2167
2208
  },
2168
2209
  ): Dirent[];
2210
+ /**
2211
+ * Synchronous readdir(3) - read a directory.
2212
+ * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
2213
+ * @param options Must include `withFileTypes: true` and `encoding: 'buffer'`.
2214
+ */
2215
+ export function readdirSync(
2216
+ path: PathLike,
2217
+ options: {
2218
+ encoding: "buffer";
2219
+ withFileTypes: true;
2220
+ recursive?: boolean | undefined;
2221
+ },
2222
+ ): Dirent<Buffer>[];
2169
2223
  /**
2170
2224
  * Closes the file descriptor. No arguments other than a possible exception are
2171
2225
  * given to the completion callback.
@@ -2319,6 +2373,20 @@ declare module "fs" {
2319
2373
  * @since v0.1.96
2320
2374
  */
2321
2375
  export function fsyncSync(fd: number): void;
2376
+ export interface WriteOptions {
2377
+ /**
2378
+ * @default 0
2379
+ */
2380
+ offset?: number | undefined;
2381
+ /**
2382
+ * @default `buffer.byteLength - offset`
2383
+ */
2384
+ length?: number | undefined;
2385
+ /**
2386
+ * @default null
2387
+ */
2388
+ position?: number | undefined | null;
2389
+ }
2322
2390
  /**
2323
2391
  * Write `buffer` to the file specified by `fd`.
2324
2392
  *
@@ -2387,6 +2455,20 @@ declare module "fs" {
2387
2455
  buffer: TBuffer,
2388
2456
  callback: (err: NodeJS.ErrnoException | null, written: number, buffer: TBuffer) => void,
2389
2457
  ): void;
2458
+ /**
2459
+ * Asynchronously writes `buffer` to the file referenced by the supplied file descriptor.
2460
+ * @param fd A file descriptor.
2461
+ * @param options An object with the following properties:
2462
+ * * `offset` The part of the buffer to be written. If not supplied, defaults to `0`.
2463
+ * * `length` The number of bytes to write. If not supplied, defaults to `buffer.length - offset`.
2464
+ * * `position` The offset from the beginning of the file where this data should be written. If not supplied, defaults to the current position.
2465
+ */
2466
+ export function write<TBuffer extends NodeJS.ArrayBufferView>(
2467
+ fd: number,
2468
+ buffer: TBuffer,
2469
+ options: WriteOptions,
2470
+ callback: (err: NodeJS.ErrnoException | null, written: number, buffer: TBuffer) => void,
2471
+ ): void;
2390
2472
  /**
2391
2473
  * Asynchronously writes `string` to the file referenced by the supplied file descriptor.
2392
2474
  * @param fd A file descriptor.
@@ -2441,6 +2523,22 @@ declare module "fs" {
2441
2523
  bytesWritten: number;
2442
2524
  buffer: TBuffer;
2443
2525
  }>;
2526
+ /**
2527
+ * Asynchronously writes `buffer` to the file referenced by the supplied file descriptor.
2528
+ * @param fd A file descriptor.
2529
+ * @param options An object with the following properties:
2530
+ * * `offset` The part of the buffer to be written. If not supplied, defaults to `0`.
2531
+ * * `length` The number of bytes to write. If not supplied, defaults to `buffer.length - offset`.
2532
+ * * `position` The offset from the beginning of the file where this data should be written. If not supplied, defaults to the current position.
2533
+ */
2534
+ function __promisify__<TBuffer extends NodeJS.ArrayBufferView>(
2535
+ fd: number,
2536
+ buffer?: TBuffer,
2537
+ options?: WriteOptions,
2538
+ ): Promise<{
2539
+ bytesWritten: number;
2540
+ buffer: TBuffer;
2541
+ }>;
2444
2542
  /**
2445
2543
  * Asynchronously writes `string` to the file referenced by the supplied file descriptor.
2446
2544
  * @param fd A file descriptor.
@@ -2572,7 +2670,7 @@ declare module "fs" {
2572
2670
  buffer: TBuffer,
2573
2671
  offset: number,
2574
2672
  length: number,
2575
- position: number | null,
2673
+ position: ReadPosition | null,
2576
2674
  ): Promise<{
2577
2675
  bytesRead: number;
2578
2676
  buffer: TBuffer;
@@ -2684,7 +2782,7 @@ declare module "fs" {
2684
2782
  } & Abortable)
2685
2783
  | undefined
2686
2784
  | null,
2687
- callback: (err: NodeJS.ErrnoException | null, data: Buffer) => void,
2785
+ callback: (err: NodeJS.ErrnoException | null, data: NonSharedBuffer) => void,
2688
2786
  ): void;
2689
2787
  /**
2690
2788
  * Asynchronously reads the entire contents of a file.
@@ -2719,7 +2817,7 @@ declare module "fs" {
2719
2817
  | BufferEncoding
2720
2818
  | undefined
2721
2819
  | null,
2722
- callback: (err: NodeJS.ErrnoException | null, data: string | Buffer) => void,
2820
+ callback: (err: NodeJS.ErrnoException | null, data: string | NonSharedBuffer) => void,
2723
2821
  ): void;
2724
2822
  /**
2725
2823
  * Asynchronously reads the entire contents of a file.
@@ -2728,7 +2826,7 @@ declare module "fs" {
2728
2826
  */
2729
2827
  export function readFile(
2730
2828
  path: PathOrFileDescriptor,
2731
- callback: (err: NodeJS.ErrnoException | null, data: Buffer) => void,
2829
+ callback: (err: NodeJS.ErrnoException | null, data: NonSharedBuffer) => void,
2732
2830
  ): void;
2733
2831
  export namespace readFile {
2734
2832
  /**
@@ -2744,7 +2842,7 @@ declare module "fs" {
2744
2842
  encoding?: null | undefined;
2745
2843
  flag?: string | undefined;
2746
2844
  } | null,
2747
- ): Promise<Buffer>;
2845
+ ): Promise<NonSharedBuffer>;
2748
2846
  /**
2749
2847
  * Asynchronously reads the entire contents of a file.
2750
2848
  * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
@@ -2778,7 +2876,7 @@ declare module "fs" {
2778
2876
  })
2779
2877
  | BufferEncoding
2780
2878
  | null,
2781
- ): Promise<string | Buffer>;
2879
+ ): Promise<string | NonSharedBuffer>;
2782
2880
  }
2783
2881
  /**
2784
2882
  * Returns the contents of the `path`.
@@ -2810,7 +2908,7 @@ declare module "fs" {
2810
2908
  encoding?: null | undefined;
2811
2909
  flag?: string | undefined;
2812
2910
  } | null,
2813
- ): Buffer;
2911
+ ): NonSharedBuffer;
2814
2912
  /**
2815
2913
  * Synchronously reads the entire contents of a file.
2816
2914
  * @param path A path to a file. If a URL is provided, it must use the `file:` protocol.
@@ -2842,7 +2940,7 @@ declare module "fs" {
2842
2940
  })
2843
2941
  | BufferEncoding
2844
2942
  | null,
2845
- ): string | Buffer;
2943
+ ): string | NonSharedBuffer;
2846
2944
  export type WriteFileOptions =
2847
2945
  | (
2848
2946
  & ObjectEncodingOptions
@@ -3243,6 +3341,12 @@ declare module "fs" {
3243
3341
  persistent?: boolean | undefined;
3244
3342
  recursive?: boolean | undefined;
3245
3343
  }
3344
+ export interface WatchOptionsWithBufferEncoding extends WatchOptions {
3345
+ encoding: "buffer";
3346
+ }
3347
+ export interface WatchOptionsWithStringEncoding extends WatchOptions {
3348
+ encoding?: BufferEncoding | undefined;
3349
+ }
3246
3350
  export type WatchEventType = "rename" | "change";
3247
3351
  export type WatchListener<T> = (event: WatchEventType, filename: T | null) => void;
3248
3352
  export type StatsListener = (curr: Stats, prev: Stats) => void;
@@ -3269,44 +3373,20 @@ declare module "fs" {
3269
3373
  */
3270
3374
  export function watch(
3271
3375
  filename: PathLike,
3272
- options:
3273
- | (WatchOptions & {
3274
- encoding: "buffer";
3275
- })
3276
- | "buffer",
3277
- listener?: WatchListener<Buffer>,
3376
+ options?: WatchOptionsWithStringEncoding | BufferEncoding | null,
3377
+ listener?: WatchListener<string>,
3278
3378
  ): FSWatcher;
3279
- /**
3280
- * Watch for changes on `filename`, where `filename` is either a file or a directory, returning an `FSWatcher`.
3281
- * @param filename A path to a file or directory. If a URL is provided, it must use the `file:` protocol.
3282
- * @param options Either the encoding for the filename provided to the listener, or an object optionally specifying encoding, persistent, and recursive options.
3283
- * If `encoding` is not supplied, the default of `'utf8'` is used.
3284
- * If `persistent` is not supplied, the default of `true` is used.
3285
- * If `recursive` is not supplied, the default of `false` is used.
3286
- */
3287
3379
  export function watch(
3288
3380
  filename: PathLike,
3289
- options?: WatchOptions | BufferEncoding | null,
3290
- listener?: WatchListener<string>,
3381
+ options: WatchOptionsWithBufferEncoding | "buffer",
3382
+ listener: WatchListener<Buffer>,
3291
3383
  ): FSWatcher;
3292
- /**
3293
- * Watch for changes on `filename`, where `filename` is either a file or a directory, returning an `FSWatcher`.
3294
- * @param filename A path to a file or directory. If a URL is provided, it must use the `file:` protocol.
3295
- * @param options Either the encoding for the filename provided to the listener, or an object optionally specifying encoding, persistent, and recursive options.
3296
- * If `encoding` is not supplied, the default of `'utf8'` is used.
3297
- * If `persistent` is not supplied, the default of `true` is used.
3298
- * If `recursive` is not supplied, the default of `false` is used.
3299
- */
3300
3384
  export function watch(
3301
3385
  filename: PathLike,
3302
- options: WatchOptions | string,
3303
- listener?: WatchListener<string | Buffer>,
3386
+ options: WatchOptions | BufferEncoding | "buffer" | null,
3387
+ listener: WatchListener<string | Buffer>,
3304
3388
  ): FSWatcher;
3305
- /**
3306
- * Watch for changes on `filename`, where `filename` is either a file or a directory, returning an `FSWatcher`.
3307
- * @param filename A path to a file or directory. If a URL is provided, it must use the `file:` protocol.
3308
- */
3309
- export function watch(filename: PathLike, listener?: WatchListener<string>): FSWatcher;
3389
+ export function watch(filename: PathLike, listener: WatchListener<string>): FSWatcher;
3310
3390
  /**
3311
3391
  * Test whether or not the given path exists by checking with the file system.
3312
3392
  * Then call the `callback` argument with either true or false:
@@ -4116,7 +4196,6 @@ declare module "fs" {
4116
4196
  * blob.stream();
4117
4197
  * ```
4118
4198
  * @since v19.8.0
4119
- * @experimental
4120
4199
  */
4121
4200
  export function openAsBlob(path: PathLike, options?: OpenAsBlobOptions): Promise<Blob>;
4122
4201
 
@@ -4277,7 +4356,7 @@ declare module "fs" {
4277
4356
  * Current working directory.
4278
4357
  * @default process.cwd()
4279
4358
  */
4280
- cwd?: string | undefined;
4359
+ cwd?: string | URL | undefined;
4281
4360
  /**
4282
4361
  * `true` if the glob should return paths as `Dirent`s, `false` otherwise.
4283
4362
  * @default false
@@ -4302,13 +4381,23 @@ declare module "fs" {
4302
4381
 
4303
4382
  /**
4304
4383
  * Retrieves the files matching the specified pattern.
4384
+ *
4385
+ * ```js
4386
+ * import { glob } from 'node:fs';
4387
+ *
4388
+ * glob('*.js', (err, matches) => {
4389
+ * if (err) throw err;
4390
+ * console.log(matches);
4391
+ * });
4392
+ * ```
4393
+ * @since v22.0.0
4305
4394
  */
4306
4395
  export function glob(
4307
- pattern: string | string[],
4396
+ pattern: string | readonly string[],
4308
4397
  callback: (err: NodeJS.ErrnoException | null, matches: string[]) => void,
4309
4398
  ): void;
4310
4399
  export function glob(
4311
- pattern: string | string[],
4400
+ pattern: string | readonly string[],
4312
4401
  options: GlobOptionsWithFileTypes,
4313
4402
  callback: (
4314
4403
  err: NodeJS.ErrnoException | null,
@@ -4316,7 +4405,7 @@ declare module "fs" {
4316
4405
  ) => void,
4317
4406
  ): void;
4318
4407
  export function glob(
4319
- pattern: string | string[],
4408
+ pattern: string | readonly string[],
4320
4409
  options: GlobOptionsWithoutFileTypes,
4321
4410
  callback: (
4322
4411
  err: NodeJS.ErrnoException | null,
@@ -4324,7 +4413,7 @@ declare module "fs" {
4324
4413
  ) => void,
4325
4414
  ): void;
4326
4415
  export function glob(
4327
- pattern: string | string[],
4416
+ pattern: string | readonly string[],
4328
4417
  options: GlobOptions,
4329
4418
  callback: (
4330
4419
  err: NodeJS.ErrnoException | null,
@@ -4332,19 +4421,25 @@ declare module "fs" {
4332
4421
  ) => void,
4333
4422
  ): void;
4334
4423
  /**
4335
- * Retrieves the files matching the specified pattern.
4424
+ * ```js
4425
+ * import { globSync } from 'node:fs';
4426
+ *
4427
+ * console.log(globSync('*.js'));
4428
+ * ```
4429
+ * @since v22.0.0
4430
+ * @returns paths of files that match the pattern.
4336
4431
  */
4337
- export function globSync(pattern: string | string[]): string[];
4432
+ export function globSync(pattern: string | readonly string[]): string[];
4338
4433
  export function globSync(
4339
- pattern: string | string[],
4434
+ pattern: string | readonly string[],
4340
4435
  options: GlobOptionsWithFileTypes,
4341
4436
  ): Dirent[];
4342
4437
  export function globSync(
4343
- pattern: string | string[],
4438
+ pattern: string | readonly string[],
4344
4439
  options: GlobOptionsWithoutFileTypes,
4345
4440
  ): string[];
4346
4441
  export function globSync(
4347
- pattern: string | string[],
4442
+ pattern: string | readonly string[],
4348
4443
  options: GlobOptions,
4349
4444
  ): Dirent[] | string[];
4350
4445
  }