@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,171 +0,0 @@
1
- /**
2
- * The `trace_events` module provides a mechanism to centralize tracing information
3
- * generated by V8, Node.js core, and userspace code.
4
- *
5
- * Tracing can be enabled with the `--trace-event-categories` command-line flag
6
- * or by using the `trace_events` module. The `--trace-event-categories` flag
7
- * accepts a list of comma-separated category names.
8
- *
9
- * The available categories are:
10
- *
11
- * * `node`: An empty placeholder.
12
- * * `node.async_hooks`: Enables capture of detailed `async_hooks` trace data.
13
- * The `async_hooks` events have a unique `asyncId` and a special `triggerId` `triggerAsyncId` property.
14
- * * `node.bootstrap`: Enables capture of Node.js bootstrap milestones.
15
- * * `node.console`: Enables capture of `console.time()` and `console.count()`output.
16
- * * `node.dns.native`: Enables capture of trace data for DNS queries.
17
- * * `node.environment`: Enables capture of Node.js Environment milestones.
18
- * * `node.fs.sync`: Enables capture of trace data for file system sync methods.
19
- * * `node.perf`: Enables capture of `Performance API` measurements.
20
- * * `node.perf.usertiming`: Enables capture of only Performance API User Timing
21
- * measures and marks.
22
- * * `node.perf.timerify`: Enables capture of only Performance API timerify
23
- * measurements.
24
- * * `node.promises.rejections`: Enables capture of trace data tracking the number
25
- * of unhandled Promise rejections and handled-after-rejections.
26
- * * `node.vm.script`: Enables capture of trace data for the `vm` module's`runInNewContext()`, `runInContext()`, and `runInThisContext()` methods.
27
- * * `v8`: The `V8` events are GC, compiling, and execution related.
28
- *
29
- * By default the `node`, `node.async_hooks`, and `v8` categories are enabled.
30
- *
31
- * ```bash
32
- * node --trace-event-categories v8,node,node.async_hooks server.js
33
- * ```
34
- *
35
- * Prior versions of Node.js required the use of the `--trace-events-enabled`flag to enable trace events. This requirement has been removed. However, the`--trace-events-enabled` flag _may_ still be
36
- * used and will enable the`node`, `node.async_hooks`, and `v8` trace event categories by default.
37
- *
38
- * ```bash
39
- * node --trace-events-enabled
40
- *
41
- * # is equivalent to
42
- *
43
- * node --trace-event-categories v8,node,node.async_hooks
44
- * ```
45
- *
46
- * Alternatively, trace events may be enabled using the `trace_events` module:
47
- *
48
- * ```js
49
- * const trace_events = require('trace_events');
50
- * const tracing = trace_events.createTracing({ categories: ['node.perf'] });
51
- * tracing.enable(); // Enable trace event capture for the 'node.perf' category
52
- *
53
- * // do work
54
- *
55
- * tracing.disable(); // Disable trace event capture for the 'node.perf' category
56
- * ```
57
- *
58
- * Running Node.js with tracing enabled will produce log files that can be opened
59
- * in the [`chrome://tracing`](https://www.chromium.org/developers/how-tos/trace-event-profiling-tool) tab of Chrome.
60
- *
61
- * The logging file is by default called `node_trace.${rotation}.log`, where`${rotation}` is an incrementing log-rotation id. The filepath pattern can
62
- * be specified with `--trace-event-file-pattern` that accepts a template
63
- * string that supports `${rotation}` and `${pid}`:
64
- *
65
- * ```bash
66
- * node --trace-event-categories v8 --trace-event-file-pattern '${pid}-${rotation}.log' server.js
67
- * ```
68
- *
69
- * To guarantee that the log file is properly generated after signal events like`SIGINT`, `SIGTERM`, or `SIGBREAK`, make sure to have the appropriate handlers
70
- * in your code, such as:
71
- *
72
- * ```js
73
- * process.on('SIGINT', function onSigint() {
74
- * console.info('Received SIGINT.');
75
- * process.exit(130); // Or applicable exit code depending on OS and signal
76
- * });
77
- * ```
78
- *
79
- * The tracing system uses the same time source
80
- * as the one used by `process.hrtime()`.
81
- * However the trace-event timestamps are expressed in microseconds,
82
- * unlike `process.hrtime()` which returns nanoseconds.
83
- *
84
- * The features from this module are not available in `Worker` threads.
85
- * @experimental
86
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/trace_events.js)
87
- */
88
- declare module "trace_events" {
89
- /**
90
- * The `Tracing` object is used to enable or disable tracing for sets of
91
- * categories. Instances are created using the
92
- * `trace_events.createTracing()` method.
93
- *
94
- * When created, the `Tracing` object is disabled. Calling the
95
- * `tracing.enable()` method adds the categories to the set of enabled trace
96
- * event categories. Calling `tracing.disable()` will remove the categories
97
- * from the set of enabled trace event categories.
98
- */
99
- interface Tracing {
100
- /**
101
- * A comma-separated list of the trace event categories covered by this
102
- * `Tracing` object.
103
- */
104
- readonly categories: string;
105
- /**
106
- * Disables this `Tracing` object.
107
- *
108
- * Only trace event categories _not_ covered by other enabled `Tracing`
109
- * objects and _not_ specified by the `--trace-event-categories` flag
110
- * will be disabled.
111
- */
112
- disable(): void;
113
- /**
114
- * Enables this `Tracing` object for the set of categories covered by
115
- * the `Tracing` object.
116
- */
117
- enable(): void;
118
- /**
119
- * `true` only if the `Tracing` object has been enabled.
120
- */
121
- readonly enabled: boolean;
122
- }
123
- interface CreateTracingOptions {
124
- /**
125
- * An array of trace category names. Values included in the array are
126
- * coerced to a string when possible. An error will be thrown if the
127
- * value cannot be coerced.
128
- */
129
- categories: string[];
130
- }
131
- /**
132
- * Creates and returns a `Tracing` object for the given set of `categories`.
133
- *
134
- * ```js
135
- * const trace_events = require('trace_events');
136
- * const categories = ['node.perf', 'node.async_hooks'];
137
- * const tracing = trace_events.createTracing({ categories });
138
- * tracing.enable();
139
- * // do stuff
140
- * tracing.disable();
141
- * ```
142
- * @since v10.0.0
143
- * @return .
144
- */
145
- function createTracing(options: CreateTracingOptions): Tracing;
146
- /**
147
- * Returns a comma-separated list of all currently-enabled trace event
148
- * categories. The current set of enabled trace event categories is determined
149
- * by the _union_ of all currently-enabled `Tracing` objects and any categories
150
- * enabled using the `--trace-event-categories` flag.
151
- *
152
- * Given the file `test.js` below, the command`node --trace-event-categories node.perf test.js` will print`'node.async_hooks,node.perf'` to the console.
153
- *
154
- * ```js
155
- * const trace_events = require('trace_events');
156
- * const t1 = trace_events.createTracing({ categories: ['node.async_hooks'] });
157
- * const t2 = trace_events.createTracing({ categories: ['node.perf'] });
158
- * const t3 = trace_events.createTracing({ categories: ['v8'] });
159
- *
160
- * t1.enable();
161
- * t2.enable();
162
- *
163
- * console.log(trace_events.getEnabledCategories());
164
- * ```
165
- * @since v10.0.0
166
- */
167
- function getEnabledCategories(): string | undefined;
168
- }
169
- declare module "node:trace_events" {
170
- export * from "trace_events";
171
- }
@@ -1,206 +0,0 @@
1
- /**
2
- * The `tty` module provides the `tty.ReadStream` and `tty.WriteStream` classes.
3
- * In most cases, it will not be necessary or possible to use this module directly.
4
- * However, it can be accessed using:
5
- *
6
- * ```js
7
- * const tty = require('tty');
8
- * ```
9
- *
10
- * When Node.js detects that it is being run with a text terminal ("TTY")
11
- * attached, `process.stdin` will, by default, be initialized as an instance of`tty.ReadStream` and both `process.stdout` and `process.stderr` will, by
12
- * default, be instances of `tty.WriteStream`. The preferred method of determining
13
- * whether Node.js is being run within a TTY context is to check that the value of
14
- * the `process.stdout.isTTY` property is `true`:
15
- *
16
- * ```console
17
- * $ node -p -e "Boolean(process.stdout.isTTY)"
18
- * true
19
- * $ node -p -e "Boolean(process.stdout.isTTY)" | cat
20
- * false
21
- * ```
22
- *
23
- * In most cases, there should be little to no reason for an application to
24
- * manually create instances of the `tty.ReadStream` and `tty.WriteStream`classes.
25
- * @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/tty.js)
26
- */
27
- declare module "tty" {
28
- import * as net from "node:net";
29
- /**
30
- * The `tty.isatty()` method returns `true` if the given `fd` is associated with
31
- * a TTY and `false` if it is not, including whenever `fd` is not a non-negative
32
- * integer.
33
- * @since v0.5.8
34
- * @param fd A numeric file descriptor
35
- */
36
- function isatty(fd: number): boolean;
37
- /**
38
- * Represents the readable side of a TTY. In normal circumstances `process.stdin` will be the only `tty.ReadStream` instance in a Node.js
39
- * process and there should be no reason to create additional instances.
40
- * @since v0.5.8
41
- */
42
- class ReadStream extends net.Socket {
43
- constructor(fd: number, options?: net.SocketConstructorOpts);
44
- /**
45
- * A `boolean` that is `true` if the TTY is currently configured to operate as a
46
- * raw device. Defaults to `false`.
47
- * @since v0.7.7
48
- */
49
- isRaw: boolean;
50
- /**
51
- * Allows configuration of `tty.ReadStream` so that it operates as a raw device.
52
- *
53
- * When in raw mode, input is always available character-by-character, not
54
- * including modifiers. Additionally, all special processing of characters by the
55
- * terminal is disabled, including echoing input
56
- * characters. Ctrl+C will no longer cause a `SIGINT` when
57
- * in this mode.
58
- * @since v0.7.7
59
- * @param mode If `true`, configures the `tty.ReadStream` to operate as a raw device. If `false`, configures the `tty.ReadStream` to operate in its default mode. The `readStream.isRaw`
60
- * property will be set to the resulting mode.
61
- * @return The read stream instance.
62
- */
63
- setRawMode(mode: boolean): this;
64
- /**
65
- * A `boolean` that is always `true` for `tty.ReadStream` instances.
66
- * @since v0.5.8
67
- */
68
- isTTY: boolean;
69
- }
70
- /**
71
- * -1 - to the left from cursor
72
- * 0 - the entire line
73
- * 1 - to the right from cursor
74
- */
75
- type Direction = -1 | 0 | 1;
76
- /**
77
- * Represents the writable side of a TTY. In normal circumstances,`process.stdout` and `process.stderr` will be the only`tty.WriteStream` instances created for a Node.js process and there
78
- * should be no reason to create additional instances.
79
- * @since v0.5.8
80
- */
81
- class WriteStream extends net.Socket {
82
- constructor(fd: number);
83
- addListener(event: string, listener: (...args: any[]) => void): this;
84
- addListener(event: "resize", listener: () => void): this;
85
- emit(event: string | symbol, ...args: any[]): boolean;
86
- emit(event: "resize"): boolean;
87
- on(event: string, listener: (...args: any[]) => void): this;
88
- on(event: "resize", listener: () => void): this;
89
- once(event: string, listener: (...args: any[]) => void): this;
90
- once(event: "resize", listener: () => void): this;
91
- prependListener(event: string, listener: (...args: any[]) => void): this;
92
- prependListener(event: "resize", listener: () => void): this;
93
- prependOnceListener(event: string, listener: (...args: any[]) => void): this;
94
- prependOnceListener(event: "resize", listener: () => void): this;
95
- /**
96
- * `writeStream.clearLine()` clears the current line of this `WriteStream` in a
97
- * direction identified by `dir`.
98
- * @since v0.7.7
99
- * @param callback Invoked once the operation completes.
100
- * @return `false` if the stream wishes for the calling code to wait for the `'drain'` event to be emitted before continuing to write additional data; otherwise `true`.
101
- */
102
- clearLine(dir: Direction, callback?: () => void): boolean;
103
- /**
104
- * `writeStream.clearScreenDown()` clears this `WriteStream` from the current
105
- * cursor down.
106
- * @since v0.7.7
107
- * @param callback Invoked once the operation completes.
108
- * @return `false` if the stream wishes for the calling code to wait for the `'drain'` event to be emitted before continuing to write additional data; otherwise `true`.
109
- */
110
- clearScreenDown(callback?: () => void): boolean;
111
- /**
112
- * `writeStream.cursorTo()` moves this `WriteStream`'s cursor to the specified
113
- * position.
114
- * @since v0.7.7
115
- * @param callback Invoked once the operation completes.
116
- * @return `false` if the stream wishes for the calling code to wait for the `'drain'` event to be emitted before continuing to write additional data; otherwise `true`.
117
- */
118
- cursorTo(x: number, y?: number, callback?: () => void): boolean;
119
- cursorTo(x: number, callback: () => void): boolean;
120
- /**
121
- * `writeStream.moveCursor()` moves this `WriteStream`'s cursor _relative_ to its
122
- * current position.
123
- * @since v0.7.7
124
- * @param callback Invoked once the operation completes.
125
- * @return `false` if the stream wishes for the calling code to wait for the `'drain'` event to be emitted before continuing to write additional data; otherwise `true`.
126
- */
127
- moveCursor(dx: number, dy: number, callback?: () => void): boolean;
128
- /**
129
- * Returns:
130
- *
131
- * * `1` for 2,
132
- * * `4` for 16,
133
- * * `8` for 256,
134
- * * `24` for 16,777,216 colors supported.
135
- *
136
- * Use this to determine what colors the terminal supports. Due to the nature of
137
- * colors in terminals it is possible to either have false positives or false
138
- * negatives. It depends on process information and the environment variables that
139
- * may lie about what terminal is used.
140
- * It is possible to pass in an `env` object to simulate the usage of a specific
141
- * terminal. This can be useful to check how specific environment settings behave.
142
- *
143
- * To enforce a specific color support, use one of the below environment settings.
144
- *
145
- * * 2 colors: `FORCE_COLOR = 0` (Disables colors)
146
- * * 16 colors: `FORCE_COLOR = 1`
147
- * * 256 colors: `FORCE_COLOR = 2`
148
- * * 16,777,216 colors: `FORCE_COLOR = 3`
149
- *
150
- * Disabling color support is also possible by using the `NO_COLOR` and`NODE_DISABLE_COLORS` environment variables.
151
- * @since v9.9.0
152
- * @param [env=process.env] An object containing the environment variables to check. This enables simulating the usage of a specific terminal.
153
- */
154
- getColorDepth(env?: object): number;
155
- /**
156
- * Returns `true` if the `writeStream` supports at least as many colors as provided
157
- * in `count`. Minimum support is 2 (black and white).
158
- *
159
- * This has the same false positives and negatives as described in `writeStream.getColorDepth()`.
160
- *
161
- * ```js
162
- * process.stdout.hasColors();
163
- * // Returns true or false depending on if `stdout` supports at least 16 colors.
164
- * process.stdout.hasColors(256);
165
- * // Returns true or false depending on if `stdout` supports at least 256 colors.
166
- * process.stdout.hasColors({ TMUX: '1' });
167
- * // Returns true.
168
- * process.stdout.hasColors(2 ** 24, { TMUX: '1' });
169
- * // Returns false (the environment setting pretends to support 2 ** 8 colors).
170
- * ```
171
- * @since v11.13.0, v10.16.0
172
- * @param [count=16] The number of colors that are requested (minimum 2).
173
- * @param [env=process.env] An object containing the environment variables to check. This enables simulating the usage of a specific terminal.
174
- */
175
- hasColors(count?: number): boolean;
176
- hasColors(env?: object): boolean;
177
- hasColors(count: number, env?: object): boolean;
178
- /**
179
- * `writeStream.getWindowSize()` returns the size of the TTY
180
- * corresponding to this `WriteStream`. The array is of the type`[numColumns, numRows]` where `numColumns` and `numRows` represent the number
181
- * of columns and rows in the corresponding TTY.
182
- * @since v0.7.7
183
- */
184
- getWindowSize(): [number, number];
185
- /**
186
- * A `number` specifying the number of columns the TTY currently has. This property
187
- * is updated whenever the `'resize'` event is emitted.
188
- * @since v0.7.7
189
- */
190
- columns: number;
191
- /**
192
- * A `number` specifying the number of rows the TTY currently has. This property
193
- * is updated whenever the `'resize'` event is emitted.
194
- * @since v0.7.7
195
- */
196
- rows: number;
197
- /**
198
- * A `boolean` that is always `true`.
199
- * @since v0.5.8
200
- */
201
- isTTY: boolean;
202
- }
203
- }
204
- declare module "node:tty" {
205
- export * from "tty";
206
- }