zai-fca 1.0.7
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.
Potentially problematic release.
This version of zai-fca might be problematic. Click here for more details.
- package/.cache/replit/env/latest +56 -0
- package/.cache/replit/env/latest.json +1 -0
- package/.cache/replit/modules/nodejs-20.res +1 -0
- package/.cache/replit/modules/replit.res +1 -0
- package/.cache/replit/modules.stamp +0 -0
- package/.cache/typescript/5.6/node_modules/.package-lock.json +178 -0
- package/.cache/typescript/5.6/node_modules/@types/bluebird/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/bluebird/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/bluebird/index.d.ts +1365 -0
- package/.cache/typescript/5.6/node_modules/@types/bluebird/package.json +25 -0
- package/.cache/typescript/5.6/node_modules/@types/caseless/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/caseless/README.md +48 -0
- package/.cache/typescript/5.6/node_modules/@types/caseless/index.d.ts +29 -0
- package/.cache/typescript/5.6/node_modules/@types/caseless/package.json +35 -0
- package/.cache/typescript/5.6/node_modules/@types/mocha/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/mocha/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/mocha/index.d.ts +2929 -0
- package/.cache/typescript/5.6/node_modules/@types/mocha/package.json +56 -0
- package/.cache/typescript/5.6/node_modules/@types/node/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/node/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/node/assert/strict.d.ts +8 -0
- package/.cache/typescript/5.6/node_modules/@types/node/assert.d.ts +1040 -0
- package/.cache/typescript/5.6/node_modules/@types/node/async_hooks.d.ts +541 -0
- package/.cache/typescript/5.6/node_modules/@types/node/buffer.buffer.d.ts +385 -0
- package/.cache/typescript/5.6/node_modules/@types/node/buffer.d.ts +1933 -0
- package/.cache/typescript/5.6/node_modules/@types/node/child_process.d.ts +1549 -0
- package/.cache/typescript/5.6/node_modules/@types/node/cluster.d.ts +579 -0
- package/.cache/typescript/5.6/node_modules/@types/node/compatibility/disposable.d.ts +16 -0
- package/.cache/typescript/5.6/node_modules/@types/node/compatibility/index.d.ts +9 -0
- package/.cache/typescript/5.6/node_modules/@types/node/compatibility/indexable.d.ts +23 -0
- package/.cache/typescript/5.6/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
- package/.cache/typescript/5.6/node_modules/@types/node/console.d.ts +452 -0
- package/.cache/typescript/5.6/node_modules/@types/node/constants.d.ts +19 -0
- package/.cache/typescript/5.6/node_modules/@types/node/crypto.d.ts +4475 -0
- package/.cache/typescript/5.6/node_modules/@types/node/dgram.d.ts +596 -0
- package/.cache/typescript/5.6/node_modules/@types/node/diagnostics_channel.d.ts +554 -0
- package/.cache/typescript/5.6/node_modules/@types/node/dns/promises.d.ts +476 -0
- package/.cache/typescript/5.6/node_modules/@types/node/dns.d.ts +865 -0
- package/.cache/typescript/5.6/node_modules/@types/node/dom-events.d.ts +124 -0
- package/.cache/typescript/5.6/node_modules/@types/node/domain.d.ts +170 -0
- package/.cache/typescript/5.6/node_modules/@types/node/events.d.ts +931 -0
- package/.cache/typescript/5.6/node_modules/@types/node/fs/promises.d.ts +1275 -0
- package/.cache/typescript/5.6/node_modules/@types/node/fs.d.ts +4396 -0
- package/.cache/typescript/5.6/node_modules/@types/node/globals.d.ts +566 -0
- package/.cache/typescript/5.6/node_modules/@types/node/globals.typedarray.d.ts +21 -0
- package/.cache/typescript/5.6/node_modules/@types/node/http.d.ts +1958 -0
- package/.cache/typescript/5.6/node_modules/@types/node/http2.d.ts +2558 -0
- package/.cache/typescript/5.6/node_modules/@types/node/https.d.ts +543 -0
- package/.cache/typescript/5.6/node_modules/@types/node/index.d.ts +92 -0
- package/.cache/typescript/5.6/node_modules/@types/node/inspector.d.ts +3966 -0
- package/.cache/typescript/5.6/node_modules/@types/node/module.d.ts +402 -0
- package/.cache/typescript/5.6/node_modules/@types/node/net.d.ts +1001 -0
- package/.cache/typescript/5.6/node_modules/@types/node/os.d.ts +495 -0
- package/.cache/typescript/5.6/node_modules/@types/node/package.json +220 -0
- package/.cache/typescript/5.6/node_modules/@types/node/path.d.ts +200 -0
- package/.cache/typescript/5.6/node_modules/@types/node/perf_hooks.d.ts +965 -0
- package/.cache/typescript/5.6/node_modules/@types/node/process.d.ts +1963 -0
- package/.cache/typescript/5.6/node_modules/@types/node/punycode.d.ts +117 -0
- package/.cache/typescript/5.6/node_modules/@types/node/querystring.d.ts +153 -0
- package/.cache/typescript/5.6/node_modules/@types/node/readline/promises.d.ts +162 -0
- package/.cache/typescript/5.6/node_modules/@types/node/readline.d.ts +589 -0
- package/.cache/typescript/5.6/node_modules/@types/node/repl.d.ts +430 -0
- package/.cache/typescript/5.6/node_modules/@types/node/sea.d.ts +153 -0
- package/.cache/typescript/5.6/node_modules/@types/node/sqlite.d.ts +213 -0
- package/.cache/typescript/5.6/node_modules/@types/node/stream/consumers.d.ts +12 -0
- package/.cache/typescript/5.6/node_modules/@types/node/stream/promises.d.ts +90 -0
- package/.cache/typescript/5.6/node_modules/@types/node/stream/web.d.ts +609 -0
- package/.cache/typescript/5.6/node_modules/@types/node/stream.d.ts +1726 -0
- package/.cache/typescript/5.6/node_modules/@types/node/string_decoder.d.ts +67 -0
- package/.cache/typescript/5.6/node_modules/@types/node/test.d.ts +2248 -0
- package/.cache/typescript/5.6/node_modules/@types/node/timers/promises.d.ts +97 -0
- package/.cache/typescript/5.6/node_modules/@types/node/timers.d.ts +240 -0
- package/.cache/typescript/5.6/node_modules/@types/node/tls.d.ts +1226 -0
- package/.cache/typescript/5.6/node_modules/@types/node/trace_events.d.ts +197 -0
- package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +385 -0
- package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +19 -0
- package/.cache/typescript/5.6/node_modules/@types/node/ts5.6/index.d.ts +92 -0
- package/.cache/typescript/5.6/node_modules/@types/node/tty.d.ts +208 -0
- package/.cache/typescript/5.6/node_modules/@types/node/url.d.ts +972 -0
- package/.cache/typescript/5.6/node_modules/@types/node/util.d.ts +2371 -0
- package/.cache/typescript/5.6/node_modules/@types/node/v8.d.ts +808 -0
- package/.cache/typescript/5.6/node_modules/@types/node/vm.d.ts +976 -0
- package/.cache/typescript/5.6/node_modules/@types/node/wasi.d.ts +181 -0
- package/.cache/typescript/5.6/node_modules/@types/node/worker_threads.d.ts +745 -0
- package/.cache/typescript/5.6/node_modules/@types/node/zlib.d.ts +539 -0
- package/.cache/typescript/5.6/node_modules/@types/node-cron/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/node-cron/README.md +76 -0
- package/.cache/typescript/5.6/node_modules/@types/node-cron/index.d.ts +57 -0
- package/.cache/typescript/5.6/node_modules/@types/node-cron/package.json +50 -0
- package/.cache/typescript/5.6/node_modules/@types/npmlog/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/npmlog/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/npmlog/index.d.ts +84 -0
- package/.cache/typescript/5.6/node_modules/@types/npmlog/package.json +32 -0
- package/.cache/typescript/5.6/node_modules/@types/request/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/request/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/request/index.d.ts +395 -0
- package/.cache/typescript/5.6/node_modules/@types/request/package.json +70 -0
- package/.cache/typescript/5.6/node_modules/@types/tough-cookie/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/@types/tough-cookie/README.md +15 -0
- package/.cache/typescript/5.6/node_modules/@types/tough-cookie/index.d.ts +321 -0
- package/.cache/typescript/5.6/node_modules/@types/tough-cookie/package.json +35 -0
- package/.cache/typescript/5.6/node_modules/asynckit/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/asynckit/README.md +233 -0
- package/.cache/typescript/5.6/node_modules/asynckit/bench.js +76 -0
- package/.cache/typescript/5.6/node_modules/asynckit/index.js +6 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/abort.js +29 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/async.js +34 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/defer.js +26 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/iterate.js +75 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_asynckit.js +91 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_parallel.js +25 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_serial.js +25 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/state.js +37 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/streamify.js +141 -0
- package/.cache/typescript/5.6/node_modules/asynckit/lib/terminator.js +29 -0
- package/.cache/typescript/5.6/node_modules/asynckit/package.json +63 -0
- package/.cache/typescript/5.6/node_modules/asynckit/parallel.js +43 -0
- package/.cache/typescript/5.6/node_modules/asynckit/serial.js +17 -0
- package/.cache/typescript/5.6/node_modules/asynckit/serialOrdered.js +75 -0
- package/.cache/typescript/5.6/node_modules/asynckit/stream.js +21 -0
- package/.cache/typescript/5.6/node_modules/combined-stream/License +19 -0
- package/.cache/typescript/5.6/node_modules/combined-stream/Readme.md +138 -0
- package/.cache/typescript/5.6/node_modules/combined-stream/lib/combined_stream.js +208 -0
- package/.cache/typescript/5.6/node_modules/combined-stream/package.json +25 -0
- package/.cache/typescript/5.6/node_modules/combined-stream/yarn.lock +17 -0
- package/.cache/typescript/5.6/node_modules/delayed-stream/License +19 -0
- package/.cache/typescript/5.6/node_modules/delayed-stream/Makefile +7 -0
- package/.cache/typescript/5.6/node_modules/delayed-stream/Readme.md +141 -0
- package/.cache/typescript/5.6/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
- package/.cache/typescript/5.6/node_modules/delayed-stream/package.json +27 -0
- package/.cache/typescript/5.6/node_modules/form-data/License +19 -0
- package/.cache/typescript/5.6/node_modules/form-data/Readme.md +350 -0
- package/.cache/typescript/5.6/node_modules/form-data/index.d.ts +51 -0
- package/.cache/typescript/5.6/node_modules/form-data/lib/browser.js +2 -0
- package/.cache/typescript/5.6/node_modules/form-data/lib/form_data.js +484 -0
- package/.cache/typescript/5.6/node_modules/form-data/lib/populate.js +10 -0
- package/.cache/typescript/5.6/node_modules/form-data/package.json +72 -0
- package/.cache/typescript/5.6/node_modules/mime-db/HISTORY.md +507 -0
- package/.cache/typescript/5.6/node_modules/mime-db/LICENSE +23 -0
- package/.cache/typescript/5.6/node_modules/mime-db/README.md +100 -0
- package/.cache/typescript/5.6/node_modules/mime-db/db.json +8519 -0
- package/.cache/typescript/5.6/node_modules/mime-db/index.js +12 -0
- package/.cache/typescript/5.6/node_modules/mime-db/package.json +60 -0
- package/.cache/typescript/5.6/node_modules/mime-types/HISTORY.md +397 -0
- package/.cache/typescript/5.6/node_modules/mime-types/LICENSE +23 -0
- package/.cache/typescript/5.6/node_modules/mime-types/README.md +113 -0
- package/.cache/typescript/5.6/node_modules/mime-types/index.js +188 -0
- package/.cache/typescript/5.6/node_modules/mime-types/package.json +44 -0
- package/.cache/typescript/5.6/node_modules/safe-buffer/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/safe-buffer/README.md +584 -0
- package/.cache/typescript/5.6/node_modules/safe-buffer/index.d.ts +187 -0
- package/.cache/typescript/5.6/node_modules/safe-buffer/index.js +65 -0
- package/.cache/typescript/5.6/node_modules/safe-buffer/package.json +51 -0
- package/.cache/typescript/5.6/node_modules/types-registry/README.md +2 -0
- package/.cache/typescript/5.6/node_modules/types-registry/index.json +1 -0
- package/.cache/typescript/5.6/node_modules/types-registry/package.json +20 -0
- package/.cache/typescript/5.6/node_modules/undici-types/LICENSE +21 -0
- package/.cache/typescript/5.6/node_modules/undici-types/README.md +6 -0
- package/.cache/typescript/5.6/node_modules/undici-types/agent.d.ts +31 -0
- package/.cache/typescript/5.6/node_modules/undici-types/api.d.ts +43 -0
- package/.cache/typescript/5.6/node_modules/undici-types/balanced-pool.d.ts +29 -0
- package/.cache/typescript/5.6/node_modules/undici-types/cache.d.ts +36 -0
- package/.cache/typescript/5.6/node_modules/undici-types/client.d.ts +108 -0
- package/.cache/typescript/5.6/node_modules/undici-types/connector.d.ts +34 -0
- package/.cache/typescript/5.6/node_modules/undici-types/content-type.d.ts +21 -0
- package/.cache/typescript/5.6/node_modules/undici-types/cookies.d.ts +28 -0
- package/.cache/typescript/5.6/node_modules/undici-types/diagnostics-channel.d.ts +66 -0
- package/.cache/typescript/5.6/node_modules/undici-types/dispatcher.d.ts +255 -0
- package/.cache/typescript/5.6/node_modules/undici-types/env-http-proxy-agent.d.ts +21 -0
- package/.cache/typescript/5.6/node_modules/undici-types/errors.d.ts +149 -0
- package/.cache/typescript/5.6/node_modules/undici-types/eventsource.d.ts +61 -0
- package/.cache/typescript/5.6/node_modules/undici-types/fetch.d.ts +209 -0
- package/.cache/typescript/5.6/node_modules/undici-types/file.d.ts +39 -0
- package/.cache/typescript/5.6/node_modules/undici-types/filereader.d.ts +54 -0
- package/.cache/typescript/5.6/node_modules/undici-types/formdata.d.ts +108 -0
- package/.cache/typescript/5.6/node_modules/undici-types/global-dispatcher.d.ts +9 -0
- package/.cache/typescript/5.6/node_modules/undici-types/global-origin.d.ts +7 -0
- package/.cache/typescript/5.6/node_modules/undici-types/handlers.d.ts +15 -0
- package/.cache/typescript/5.6/node_modules/undici-types/header.d.ts +4 -0
- package/.cache/typescript/5.6/node_modules/undici-types/index.d.ts +71 -0
- package/.cache/typescript/5.6/node_modules/undici-types/interceptors.d.ts +17 -0
- package/.cache/typescript/5.6/node_modules/undici-types/mock-agent.d.ts +50 -0
- package/.cache/typescript/5.6/node_modules/undici-types/mock-client.d.ts +25 -0
- package/.cache/typescript/5.6/node_modules/undici-types/mock-errors.d.ts +12 -0
- package/.cache/typescript/5.6/node_modules/undici-types/mock-interceptor.d.ts +93 -0
- package/.cache/typescript/5.6/node_modules/undici-types/mock-pool.d.ts +25 -0
- package/.cache/typescript/5.6/node_modules/undici-types/package.json +55 -0
- package/.cache/typescript/5.6/node_modules/undici-types/patch.d.ts +33 -0
- package/.cache/typescript/5.6/node_modules/undici-types/pool-stats.d.ts +19 -0
- package/.cache/typescript/5.6/node_modules/undici-types/pool.d.ts +39 -0
- package/.cache/typescript/5.6/node_modules/undici-types/proxy-agent.d.ts +28 -0
- package/.cache/typescript/5.6/node_modules/undici-types/readable.d.ts +60 -0
- package/.cache/typescript/5.6/node_modules/undici-types/retry-agent.d.ts +8 -0
- package/.cache/typescript/5.6/node_modules/undici-types/retry-handler.d.ts +116 -0
- package/.cache/typescript/5.6/node_modules/undici-types/util.d.ts +18 -0
- package/.cache/typescript/5.6/node_modules/undici-types/webidl.d.ts +222 -0
- package/.cache/typescript/5.6/node_modules/undici-types/websocket.d.ts +150 -0
- package/.cache/typescript/5.6/package-lock.json +190 -0
- package/.cache/typescript/5.6/package.json +1 -0
- package/.replit +4 -0
- package/.upm/store.json +1 -0
- package/LICENSE +21 -0
- package/README.md +289 -0
- package/index.js +460 -0
- package/package.json +45 -0
- package/src/Screenshot.js +83 -0
- package/src/addExternalModule.js +15 -0
- package/src/addUserToGroup.js +77 -0
- package/src/changeAdminStatus.js +47 -0
- package/src/changeArchivedStatus.js +41 -0
- package/src/changeAvt.js +85 -0
- package/src/changeBio.js +65 -0
- package/src/changeBlockedStatus.js +36 -0
- package/src/changeGroupImage.js +106 -0
- package/src/changeNickname.js +45 -0
- package/src/changeThreadColor.js +61 -0
- package/src/changeThreadEmoji.js +41 -0
- package/src/createNewGroup.js +70 -0
- package/src/createPoll.js +59 -0
- package/src/createPost.js +277 -0
- package/src/deleteMessage.js +44 -0
- package/src/deleteThread.js +42 -0
- package/src/forwardAttachment.js +47 -0
- package/src/getCurrentUserID.js +7 -0
- package/src/getEmojiUrl.js +27 -0
- package/src/getFriendsList.js +73 -0
- package/src/getThreadHistory.js +537 -0
- package/src/getThreadHistoryDeprecated.js +71 -0
- package/src/getThreadInfo.js +232 -0
- package/src/getThreadInfoDeprecated.js +56 -0
- package/src/getThreadList.js +213 -0
- package/src/getThreadListDeprecated.js +46 -0
- package/src/getThreadPictures.js +59 -0
- package/src/getUID.js +119 -0
- package/src/getUserID.js +61 -0
- package/src/getUserInfo.js +66 -0
- package/src/handleFriendRequest.js +46 -0
- package/src/handleMessageRequest.js +47 -0
- package/src/httpGet.js +49 -0
- package/src/httpPost.js +48 -0
- package/src/listenMqtt.js +827 -0
- package/src/listenMqtt.txt +827 -0
- package/src/logout.js +68 -0
- package/src/markAsDelivered.js +47 -0
- package/src/markAsRead.js +70 -0
- package/src/markAsReadAll.js +40 -0
- package/src/markAsSeen.js +48 -0
- package/src/muteThread.js +45 -0
- package/src/postFormData.txt +46 -0
- package/src/removeUserFromGroup.js +45 -0
- package/src/resolvePhotoUrl.js +36 -0
- package/src/searchForThread.js +42 -0
- package/src/sendMessage.js +329 -0
- package/src/sendTypingIndicator.js +70 -0
- package/src/setMessageReaction.js +109 -0
- package/src/setPostReaction.js +102 -0
- package/src/setTitle.js +70 -0
- package/src/shareContact.js +46 -0
- package/src/shareLink.js +62 -0
- package/src/threadColors.js +41 -0
- package/src/unfriend.js +42 -0
- package/src/unsendMessage.js +39 -0
- package/utils.js +2876 -0
@@ -0,0 +1,197 @@
|
|
1
|
+
/**
|
2
|
+
* The `node: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`](https://nodejs.org/docs/latest-v22.x/api/async_hooks.html) trace data.
|
13
|
+
* The [`async_hooks`](https://nodejs.org/docs/latest-v22.x/api/async_hooks.html) 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.threadpoolwork.sync`: Enables capture of trace data for threadpool synchronous operations, such as `blob`, `zlib`, `crypto` and `node_api`.
|
17
|
+
* * `node.threadpoolwork.async`: Enables capture of trace data for threadpool asynchronous operations, such as `blob`, `zlib`, `crypto` and `node_api`.
|
18
|
+
* * `node.dns.native`: Enables capture of trace data for DNS queries.
|
19
|
+
* * `node.net.native`: Enables capture of trace data for network.
|
20
|
+
* * `node.environment`: Enables capture of Node.js Environment milestones.
|
21
|
+
* * `node.fs.sync`: Enables capture of trace data for file system sync methods.
|
22
|
+
* * `node.fs_dir.sync`: Enables capture of trace data for file system sync directory methods.
|
23
|
+
* * `node.fs.async`: Enables capture of trace data for file system async methods.
|
24
|
+
* * `node.fs_dir.async`: Enables capture of trace data for file system async directory methods.
|
25
|
+
* * `node.perf`: Enables capture of [Performance API](https://nodejs.org/docs/latest-v22.x/api/perf_hooks.html) measurements.
|
26
|
+
* * `node.perf.usertiming`: Enables capture of only Performance API User Timing
|
27
|
+
* measures and marks.
|
28
|
+
* * `node.perf.timerify`: Enables capture of only Performance API timerify
|
29
|
+
* measurements.
|
30
|
+
* * `node.promises.rejections`: Enables capture of trace data tracking the number
|
31
|
+
* of unhandled Promise rejections and handled-after-rejections.
|
32
|
+
* * `node.vm.script`: Enables capture of trace data for the `node:vm` module's `runInNewContext()`, `runInContext()`, and `runInThisContext()` methods.
|
33
|
+
* * `v8`: The [V8](https://nodejs.org/docs/latest-v22.x/api/v8.html) events are GC, compiling, and execution related.
|
34
|
+
* * `node.http`: Enables capture of trace data for http request / response.
|
35
|
+
*
|
36
|
+
* By default the `node`, `node.async_hooks`, and `v8` categories are enabled.
|
37
|
+
*
|
38
|
+
* ```bash
|
39
|
+
* node --trace-event-categories v8,node,node.async_hooks server.js
|
40
|
+
* ```
|
41
|
+
*
|
42
|
+
* 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
|
43
|
+
* used and will enable the `node`, `node.async_hooks`, and `v8` trace event categories by default.
|
44
|
+
*
|
45
|
+
* ```bash
|
46
|
+
* node --trace-events-enabled
|
47
|
+
*
|
48
|
+
* # is equivalent to
|
49
|
+
*
|
50
|
+
* node --trace-event-categories v8,node,node.async_hooks
|
51
|
+
* ```
|
52
|
+
*
|
53
|
+
* Alternatively, trace events may be enabled using the `node:trace_events` module:
|
54
|
+
*
|
55
|
+
* ```js
|
56
|
+
* import trace_events from 'node:trace_events';
|
57
|
+
* const tracing = trace_events.createTracing({ categories: ['node.perf'] });
|
58
|
+
* tracing.enable(); // Enable trace event capture for the 'node.perf' category
|
59
|
+
*
|
60
|
+
* // do work
|
61
|
+
*
|
62
|
+
* tracing.disable(); // Disable trace event capture for the 'node.perf' category
|
63
|
+
* ```
|
64
|
+
*
|
65
|
+
* Running Node.js with tracing enabled will produce log files that can be opened
|
66
|
+
* in the [`chrome://tracing`](https://www.chromium.org/developers/how-tos/trace-event-profiling-tool) tab of Chrome.
|
67
|
+
*
|
68
|
+
* The logging file is by default called `node_trace.${rotation}.log`, where `${rotation}` is an incrementing log-rotation id. The filepath pattern can
|
69
|
+
* be specified with `--trace-event-file-pattern` that accepts a template
|
70
|
+
* string that supports `${rotation}` and `${pid}`:
|
71
|
+
*
|
72
|
+
* ```bash
|
73
|
+
* node --trace-event-categories v8 --trace-event-file-pattern '${pid}-${rotation}.log' server.js
|
74
|
+
* ```
|
75
|
+
*
|
76
|
+
* To guarantee that the log file is properly generated after signal events like `SIGINT`, `SIGTERM`, or `SIGBREAK`, make sure to have the appropriate handlers
|
77
|
+
* in your code, such as:
|
78
|
+
*
|
79
|
+
* ```js
|
80
|
+
* process.on('SIGINT', function onSigint() {
|
81
|
+
* console.info('Received SIGINT.');
|
82
|
+
* process.exit(130); // Or applicable exit code depending on OS and signal
|
83
|
+
* });
|
84
|
+
* ```
|
85
|
+
*
|
86
|
+
* The tracing system uses the same time source
|
87
|
+
* as the one used by `process.hrtime()`.
|
88
|
+
* However the trace-event timestamps are expressed in microseconds,
|
89
|
+
* unlike `process.hrtime()` which returns nanoseconds.
|
90
|
+
*
|
91
|
+
* The features from this module are not available in [`Worker`](https://nodejs.org/docs/latest-v22.x/api/worker_threads.html#class-worker) threads.
|
92
|
+
* @experimental
|
93
|
+
* @see [source](https://github.com/nodejs/node/blob/v22.x/lib/trace_events.js)
|
94
|
+
*/
|
95
|
+
declare module "trace_events" {
|
96
|
+
/**
|
97
|
+
* The `Tracing` object is used to enable or disable tracing for sets of
|
98
|
+
* categories. Instances are created using the
|
99
|
+
* `trace_events.createTracing()` method.
|
100
|
+
*
|
101
|
+
* When created, the `Tracing` object is disabled. Calling the
|
102
|
+
* `tracing.enable()` method adds the categories to the set of enabled trace
|
103
|
+
* event categories. Calling `tracing.disable()` will remove the categories
|
104
|
+
* from the set of enabled trace event categories.
|
105
|
+
*/
|
106
|
+
interface Tracing {
|
107
|
+
/**
|
108
|
+
* A comma-separated list of the trace event categories covered by this
|
109
|
+
* `Tracing` object.
|
110
|
+
* @since v10.0.0
|
111
|
+
*/
|
112
|
+
readonly categories: string;
|
113
|
+
/**
|
114
|
+
* Disables this `Tracing` object.
|
115
|
+
*
|
116
|
+
* Only trace event categories _not_ covered by other enabled `Tracing`
|
117
|
+
* objects and _not_ specified by the `--trace-event-categories` flag
|
118
|
+
* will be disabled.
|
119
|
+
*
|
120
|
+
* ```js
|
121
|
+
* import trace_events from 'node:trace_events';
|
122
|
+
* const t1 = trace_events.createTracing({ categories: ['node', 'v8'] });
|
123
|
+
* const t2 = trace_events.createTracing({ categories: ['node.perf', 'node'] });
|
124
|
+
* t1.enable();
|
125
|
+
* t2.enable();
|
126
|
+
*
|
127
|
+
* // Prints 'node,node.perf,v8'
|
128
|
+
* console.log(trace_events.getEnabledCategories());
|
129
|
+
*
|
130
|
+
* t2.disable(); // Will only disable emission of the 'node.perf' category
|
131
|
+
*
|
132
|
+
* // Prints 'node,v8'
|
133
|
+
* console.log(trace_events.getEnabledCategories());
|
134
|
+
* ```
|
135
|
+
* @since v10.0.0
|
136
|
+
*/
|
137
|
+
disable(): void;
|
138
|
+
/**
|
139
|
+
* Enables this `Tracing` object for the set of categories covered by
|
140
|
+
* the `Tracing` object.
|
141
|
+
* @since v10.0.0
|
142
|
+
*/
|
143
|
+
enable(): void;
|
144
|
+
/**
|
145
|
+
* `true` only if the `Tracing` object has been enabled.
|
146
|
+
* @since v10.0.0
|
147
|
+
*/
|
148
|
+
readonly enabled: boolean;
|
149
|
+
}
|
150
|
+
interface CreateTracingOptions {
|
151
|
+
/**
|
152
|
+
* An array of trace category names. Values included in the array are
|
153
|
+
* coerced to a string when possible. An error will be thrown if the
|
154
|
+
* value cannot be coerced.
|
155
|
+
*/
|
156
|
+
categories: string[];
|
157
|
+
}
|
158
|
+
/**
|
159
|
+
* Creates and returns a `Tracing` object for the given set of `categories`.
|
160
|
+
*
|
161
|
+
* ```js
|
162
|
+
* import trace_events from 'node:trace_events';
|
163
|
+
* const categories = ['node.perf', 'node.async_hooks'];
|
164
|
+
* const tracing = trace_events.createTracing({ categories });
|
165
|
+
* tracing.enable();
|
166
|
+
* // do stuff
|
167
|
+
* tracing.disable();
|
168
|
+
* ```
|
169
|
+
* @since v10.0.0
|
170
|
+
*/
|
171
|
+
function createTracing(options: CreateTracingOptions): Tracing;
|
172
|
+
/**
|
173
|
+
* Returns a comma-separated list of all currently-enabled trace event
|
174
|
+
* categories. The current set of enabled trace event categories is determined
|
175
|
+
* by the _union_ of all currently-enabled `Tracing` objects and any categories
|
176
|
+
* enabled using the `--trace-event-categories` flag.
|
177
|
+
*
|
178
|
+
* 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.
|
179
|
+
*
|
180
|
+
* ```js
|
181
|
+
* import trace_events from 'node:trace_events';
|
182
|
+
* const t1 = trace_events.createTracing({ categories: ['node.async_hooks'] });
|
183
|
+
* const t2 = trace_events.createTracing({ categories: ['node.perf'] });
|
184
|
+
* const t3 = trace_events.createTracing({ categories: ['v8'] });
|
185
|
+
*
|
186
|
+
* t1.enable();
|
187
|
+
* t2.enable();
|
188
|
+
*
|
189
|
+
* console.log(trace_events.getEnabledCategories());
|
190
|
+
* ```
|
191
|
+
* @since v10.0.0
|
192
|
+
*/
|
193
|
+
function getEnabledCategories(): string | undefined;
|
194
|
+
}
|
195
|
+
declare module "node:trace_events" {
|
196
|
+
export * from "trace_events";
|
197
|
+
}
|
@@ -0,0 +1,385 @@
|
|
1
|
+
declare module "buffer" {
|
2
|
+
global {
|
3
|
+
interface BufferConstructor {
|
4
|
+
// see ../buffer.d.ts for implementation shared with all TypeScript versions
|
5
|
+
|
6
|
+
/**
|
7
|
+
* Allocates a new buffer containing the given {str}.
|
8
|
+
*
|
9
|
+
* @param str String to store in buffer.
|
10
|
+
* @param encoding encoding to use, optional. Default is 'utf8'
|
11
|
+
* @deprecated since v10.0.0 - Use `Buffer.from(string[, encoding])` instead.
|
12
|
+
*/
|
13
|
+
new(str: string, encoding?: BufferEncoding): Buffer;
|
14
|
+
/**
|
15
|
+
* Allocates a new buffer of {size} octets.
|
16
|
+
*
|
17
|
+
* @param size count of octets to allocate.
|
18
|
+
* @deprecated since v10.0.0 - Use `Buffer.alloc()` instead (also see `Buffer.allocUnsafe()`).
|
19
|
+
*/
|
20
|
+
new(size: number): Buffer;
|
21
|
+
/**
|
22
|
+
* Allocates a new buffer containing the given {array} of octets.
|
23
|
+
*
|
24
|
+
* @param array The octets to store.
|
25
|
+
* @deprecated since v10.0.0 - Use `Buffer.from(array)` instead.
|
26
|
+
*/
|
27
|
+
new(array: Uint8Array): Buffer;
|
28
|
+
/**
|
29
|
+
* Produces a Buffer backed by the same allocated memory as
|
30
|
+
* the given {ArrayBuffer}/{SharedArrayBuffer}.
|
31
|
+
*
|
32
|
+
* @param arrayBuffer The ArrayBuffer with which to share memory.
|
33
|
+
* @deprecated since v10.0.0 - Use `Buffer.from(arrayBuffer[, byteOffset[, length]])` instead.
|
34
|
+
*/
|
35
|
+
new(arrayBuffer: ArrayBuffer | SharedArrayBuffer): Buffer;
|
36
|
+
/**
|
37
|
+
* Allocates a new buffer containing the given {array} of octets.
|
38
|
+
*
|
39
|
+
* @param array The octets to store.
|
40
|
+
* @deprecated since v10.0.0 - Use `Buffer.from(array)` instead.
|
41
|
+
*/
|
42
|
+
new(array: readonly any[]): Buffer;
|
43
|
+
/**
|
44
|
+
* Copies the passed {buffer} data onto a new {Buffer} instance.
|
45
|
+
*
|
46
|
+
* @param buffer The buffer to copy.
|
47
|
+
* @deprecated since v10.0.0 - Use `Buffer.from(buffer)` instead.
|
48
|
+
*/
|
49
|
+
new(buffer: Buffer): Buffer;
|
50
|
+
/**
|
51
|
+
* Allocates a new `Buffer` using an `array` of bytes in the range `0` – `255`.
|
52
|
+
* Array entries outside that range will be truncated to fit into it.
|
53
|
+
*
|
54
|
+
* ```js
|
55
|
+
* import { Buffer } from 'node:buffer';
|
56
|
+
*
|
57
|
+
* // Creates a new Buffer containing the UTF-8 bytes of the string 'buffer'.
|
58
|
+
* const buf = Buffer.from([0x62, 0x75, 0x66, 0x66, 0x65, 0x72]);
|
59
|
+
* ```
|
60
|
+
*
|
61
|
+
* If `array` is an `Array`\-like object (that is, one with a `length` property of
|
62
|
+
* type `number`), it is treated as if it is an array, unless it is a `Buffer` or
|
63
|
+
* a `Uint8Array`. This means all other `TypedArray` variants get treated as an `Array`. To create a `Buffer` from the bytes backing a `TypedArray`, use `Buffer.copyBytesFrom()`.
|
64
|
+
*
|
65
|
+
* A `TypeError` will be thrown if `array` is not an `Array` or another type
|
66
|
+
* appropriate for `Buffer.from()` variants.
|
67
|
+
*
|
68
|
+
* `Buffer.from(array)` and `Buffer.from(string)` may also use the internal `Buffer` pool like `Buffer.allocUnsafe()` does.
|
69
|
+
* @since v5.10.0
|
70
|
+
*/
|
71
|
+
from(
|
72
|
+
arrayBuffer: WithImplicitCoercion<ArrayBuffer | SharedArrayBuffer>,
|
73
|
+
byteOffset?: number,
|
74
|
+
length?: number,
|
75
|
+
): Buffer;
|
76
|
+
/**
|
77
|
+
* Creates a new Buffer using the passed {data}
|
78
|
+
* @param data data to create a new Buffer
|
79
|
+
*/
|
80
|
+
from(data: Uint8Array | readonly number[]): Buffer;
|
81
|
+
from(data: WithImplicitCoercion<Uint8Array | readonly number[] | string>): Buffer;
|
82
|
+
/**
|
83
|
+
* Creates a new Buffer containing the given JavaScript string {str}.
|
84
|
+
* If provided, the {encoding} parameter identifies the character encoding.
|
85
|
+
* If not provided, {encoding} defaults to 'utf8'.
|
86
|
+
*/
|
87
|
+
from(
|
88
|
+
str:
|
89
|
+
| WithImplicitCoercion<string>
|
90
|
+
| {
|
91
|
+
[Symbol.toPrimitive](hint: "string"): string;
|
92
|
+
},
|
93
|
+
encoding?: BufferEncoding,
|
94
|
+
): Buffer;
|
95
|
+
/**
|
96
|
+
* Creates a new Buffer using the passed {data}
|
97
|
+
* @param values to create a new Buffer
|
98
|
+
*/
|
99
|
+
of(...items: number[]): Buffer;
|
100
|
+
/**
|
101
|
+
* Returns a new `Buffer` which is the result of concatenating all the `Buffer` instances in the `list` together.
|
102
|
+
*
|
103
|
+
* If the list has no items, or if the `totalLength` is 0, then a new zero-length `Buffer` is returned.
|
104
|
+
*
|
105
|
+
* If `totalLength` is not provided, it is calculated from the `Buffer` instances
|
106
|
+
* in `list` by adding their lengths.
|
107
|
+
*
|
108
|
+
* If `totalLength` is provided, it is coerced to an unsigned integer. If the
|
109
|
+
* combined length of the `Buffer`s in `list` exceeds `totalLength`, the result is
|
110
|
+
* truncated to `totalLength`.
|
111
|
+
*
|
112
|
+
* ```js
|
113
|
+
* import { Buffer } from 'node:buffer';
|
114
|
+
*
|
115
|
+
* // Create a single `Buffer` from a list of three `Buffer` instances.
|
116
|
+
*
|
117
|
+
* const buf1 = Buffer.alloc(10);
|
118
|
+
* const buf2 = Buffer.alloc(14);
|
119
|
+
* const buf3 = Buffer.alloc(18);
|
120
|
+
* const totalLength = buf1.length + buf2.length + buf3.length;
|
121
|
+
*
|
122
|
+
* console.log(totalLength);
|
123
|
+
* // Prints: 42
|
124
|
+
*
|
125
|
+
* const bufA = Buffer.concat([buf1, buf2, buf3], totalLength);
|
126
|
+
*
|
127
|
+
* console.log(bufA);
|
128
|
+
* // Prints: <Buffer 00 00 00 00 ...>
|
129
|
+
* console.log(bufA.length);
|
130
|
+
* // Prints: 42
|
131
|
+
* ```
|
132
|
+
*
|
133
|
+
* `Buffer.concat()` may also use the internal `Buffer` pool like `Buffer.allocUnsafe()` does.
|
134
|
+
* @since v0.7.11
|
135
|
+
* @param list List of `Buffer` or {@link Uint8Array} instances to concatenate.
|
136
|
+
* @param totalLength Total length of the `Buffer` instances in `list` when concatenated.
|
137
|
+
*/
|
138
|
+
concat(list: readonly Uint8Array[], totalLength?: number): Buffer;
|
139
|
+
/**
|
140
|
+
* Copies the underlying memory of `view` into a new `Buffer`.
|
141
|
+
*
|
142
|
+
* ```js
|
143
|
+
* const u16 = new Uint16Array([0, 0xffff]);
|
144
|
+
* const buf = Buffer.copyBytesFrom(u16, 1, 1);
|
145
|
+
* u16[1] = 0;
|
146
|
+
* console.log(buf.length); // 2
|
147
|
+
* console.log(buf[0]); // 255
|
148
|
+
* console.log(buf[1]); // 255
|
149
|
+
* ```
|
150
|
+
* @since v19.8.0
|
151
|
+
* @param view The {TypedArray} to copy.
|
152
|
+
* @param [offset=0] The starting offset within `view`.
|
153
|
+
* @param [length=view.length - offset] The number of elements from `view` to copy.
|
154
|
+
*/
|
155
|
+
copyBytesFrom(view: NodeJS.TypedArray, offset?: number, length?: number): Buffer;
|
156
|
+
/**
|
157
|
+
* Allocates a new `Buffer` of `size` bytes. If `fill` is `undefined`, the`Buffer` will be zero-filled.
|
158
|
+
*
|
159
|
+
* ```js
|
160
|
+
* import { Buffer } from 'node:buffer';
|
161
|
+
*
|
162
|
+
* const buf = Buffer.alloc(5);
|
163
|
+
*
|
164
|
+
* console.log(buf);
|
165
|
+
* // Prints: <Buffer 00 00 00 00 00>
|
166
|
+
* ```
|
167
|
+
*
|
168
|
+
* If `size` is larger than {@link constants.MAX_LENGTH} or smaller than 0, `ERR_OUT_OF_RANGE` is thrown.
|
169
|
+
*
|
170
|
+
* If `fill` is specified, the allocated `Buffer` will be initialized by calling `buf.fill(fill)`.
|
171
|
+
*
|
172
|
+
* ```js
|
173
|
+
* import { Buffer } from 'node:buffer';
|
174
|
+
*
|
175
|
+
* const buf = Buffer.alloc(5, 'a');
|
176
|
+
*
|
177
|
+
* console.log(buf);
|
178
|
+
* // Prints: <Buffer 61 61 61 61 61>
|
179
|
+
* ```
|
180
|
+
*
|
181
|
+
* If both `fill` and `encoding` are specified, the allocated `Buffer` will be
|
182
|
+
* initialized by calling `buf.fill(fill, encoding)`.
|
183
|
+
*
|
184
|
+
* ```js
|
185
|
+
* import { Buffer } from 'node:buffer';
|
186
|
+
*
|
187
|
+
* const buf = Buffer.alloc(11, 'aGVsbG8gd29ybGQ=', 'base64');
|
188
|
+
*
|
189
|
+
* console.log(buf);
|
190
|
+
* // Prints: <Buffer 68 65 6c 6c 6f 20 77 6f 72 6c 64>
|
191
|
+
* ```
|
192
|
+
*
|
193
|
+
* Calling `Buffer.alloc()` can be measurably slower than the alternative `Buffer.allocUnsafe()` but ensures that the newly created `Buffer` instance
|
194
|
+
* contents will never contain sensitive data from previous allocations, including
|
195
|
+
* data that might not have been allocated for `Buffer`s.
|
196
|
+
*
|
197
|
+
* A `TypeError` will be thrown if `size` is not a number.
|
198
|
+
* @since v5.10.0
|
199
|
+
* @param size The desired length of the new `Buffer`.
|
200
|
+
* @param [fill=0] A value to pre-fill the new `Buffer` with.
|
201
|
+
* @param [encoding='utf8'] If `fill` is a string, this is its encoding.
|
202
|
+
*/
|
203
|
+
alloc(size: number, fill?: string | Uint8Array | number, encoding?: BufferEncoding): Buffer;
|
204
|
+
/**
|
205
|
+
* Allocates a new `Buffer` of `size` bytes. If `size` is larger than {@link constants.MAX_LENGTH} or smaller than 0, `ERR_OUT_OF_RANGE` is thrown.
|
206
|
+
*
|
207
|
+
* The underlying memory for `Buffer` instances created in this way is _not_
|
208
|
+
* _initialized_. The contents of the newly created `Buffer` are unknown and _may contain sensitive data_. Use `Buffer.alloc()` instead to initialize`Buffer` instances with zeroes.
|
209
|
+
*
|
210
|
+
* ```js
|
211
|
+
* import { Buffer } from 'node:buffer';
|
212
|
+
*
|
213
|
+
* const buf = Buffer.allocUnsafe(10);
|
214
|
+
*
|
215
|
+
* console.log(buf);
|
216
|
+
* // Prints (contents may vary): <Buffer a0 8b 28 3f 01 00 00 00 50 32>
|
217
|
+
*
|
218
|
+
* buf.fill(0);
|
219
|
+
*
|
220
|
+
* console.log(buf);
|
221
|
+
* // Prints: <Buffer 00 00 00 00 00 00 00 00 00 00>
|
222
|
+
* ```
|
223
|
+
*
|
224
|
+
* A `TypeError` will be thrown if `size` is not a number.
|
225
|
+
*
|
226
|
+
* The `Buffer` module pre-allocates an internal `Buffer` instance of
|
227
|
+
* size `Buffer.poolSize` that is used as a pool for the fast allocation of new `Buffer` instances created using `Buffer.allocUnsafe()`, `Buffer.from(array)`,
|
228
|
+
* and `Buffer.concat()` only when `size` is less than `Buffer.poolSize >>> 1` (floor of `Buffer.poolSize` divided by two).
|
229
|
+
*
|
230
|
+
* Use of this pre-allocated internal memory pool is a key difference between
|
231
|
+
* calling `Buffer.alloc(size, fill)` vs. `Buffer.allocUnsafe(size).fill(fill)`.
|
232
|
+
* Specifically, `Buffer.alloc(size, fill)` will _never_ use the internal `Buffer`pool, while `Buffer.allocUnsafe(size).fill(fill)`_will_ use the internal`Buffer` pool if `size` is less
|
233
|
+
* than or equal to half `Buffer.poolSize`. The
|
234
|
+
* difference is subtle but can be important when an application requires the
|
235
|
+
* additional performance that `Buffer.allocUnsafe()` provides.
|
236
|
+
* @since v5.10.0
|
237
|
+
* @param size The desired length of the new `Buffer`.
|
238
|
+
*/
|
239
|
+
allocUnsafe(size: number): Buffer;
|
240
|
+
/**
|
241
|
+
* Allocates a new `Buffer` of `size` bytes. If `size` is larger than {@link constants.MAX_LENGTH} or smaller than 0, `ERR_OUT_OF_RANGE` is thrown. A zero-length `Buffer` is created if
|
242
|
+
* `size` is 0.
|
243
|
+
*
|
244
|
+
* The underlying memory for `Buffer` instances created in this way is _not_
|
245
|
+
* _initialized_. The contents of the newly created `Buffer` are unknown and _may contain sensitive data_. Use `buf.fill(0)` to initialize
|
246
|
+
* such `Buffer` instances with zeroes.
|
247
|
+
*
|
248
|
+
* When using `Buffer.allocUnsafe()` to allocate new `Buffer` instances,
|
249
|
+
* allocations under 4 KiB are sliced from a single pre-allocated `Buffer`. This
|
250
|
+
* allows applications to avoid the garbage collection overhead of creating many
|
251
|
+
* individually allocated `Buffer` instances. This approach improves both
|
252
|
+
* performance and memory usage by eliminating the need to track and clean up as
|
253
|
+
* many individual `ArrayBuffer` objects.
|
254
|
+
*
|
255
|
+
* However, in the case where a developer may need to retain a small chunk of
|
256
|
+
* memory from a pool for an indeterminate amount of time, it may be appropriate
|
257
|
+
* to create an un-pooled `Buffer` instance using `Buffer.allocUnsafeSlow()` and
|
258
|
+
* then copying out the relevant bits.
|
259
|
+
*
|
260
|
+
* ```js
|
261
|
+
* import { Buffer } from 'node:buffer';
|
262
|
+
*
|
263
|
+
* // Need to keep around a few small chunks of memory.
|
264
|
+
* const store = [];
|
265
|
+
*
|
266
|
+
* socket.on('readable', () => {
|
267
|
+
* let data;
|
268
|
+
* while (null !== (data = readable.read())) {
|
269
|
+
* // Allocate for retained data.
|
270
|
+
* const sb = Buffer.allocUnsafeSlow(10);
|
271
|
+
*
|
272
|
+
* // Copy the data into the new allocation.
|
273
|
+
* data.copy(sb, 0, 0, 10);
|
274
|
+
*
|
275
|
+
* store.push(sb);
|
276
|
+
* }
|
277
|
+
* });
|
278
|
+
* ```
|
279
|
+
*
|
280
|
+
* A `TypeError` will be thrown if `size` is not a number.
|
281
|
+
* @since v5.12.0
|
282
|
+
* @param size The desired length of the new `Buffer`.
|
283
|
+
*/
|
284
|
+
allocUnsafeSlow(size: number): Buffer;
|
285
|
+
}
|
286
|
+
interface Buffer extends Uint8Array {
|
287
|
+
// see ../buffer.d.ts for implementation shared with all TypeScript versions
|
288
|
+
|
289
|
+
/**
|
290
|
+
* Returns a new `Buffer` that references the same memory as the original, but
|
291
|
+
* offset and cropped by the `start` and `end` indices.
|
292
|
+
*
|
293
|
+
* This method is not compatible with the `Uint8Array.prototype.slice()`,
|
294
|
+
* which is a superclass of `Buffer`. To copy the slice, use`Uint8Array.prototype.slice()`.
|
295
|
+
*
|
296
|
+
* ```js
|
297
|
+
* import { Buffer } from 'node:buffer';
|
298
|
+
*
|
299
|
+
* const buf = Buffer.from('buffer');
|
300
|
+
*
|
301
|
+
* const copiedBuf = Uint8Array.prototype.slice.call(buf);
|
302
|
+
* copiedBuf[0]++;
|
303
|
+
* console.log(copiedBuf.toString());
|
304
|
+
* // Prints: cuffer
|
305
|
+
*
|
306
|
+
* console.log(buf.toString());
|
307
|
+
* // Prints: buffer
|
308
|
+
*
|
309
|
+
* // With buf.slice(), the original buffer is modified.
|
310
|
+
* const notReallyCopiedBuf = buf.slice();
|
311
|
+
* notReallyCopiedBuf[0]++;
|
312
|
+
* console.log(notReallyCopiedBuf.toString());
|
313
|
+
* // Prints: cuffer
|
314
|
+
* console.log(buf.toString());
|
315
|
+
* // Also prints: cuffer (!)
|
316
|
+
* ```
|
317
|
+
* @since v0.3.0
|
318
|
+
* @deprecated Use `subarray` instead.
|
319
|
+
* @param [start=0] Where the new `Buffer` will start.
|
320
|
+
* @param [end=buf.length] Where the new `Buffer` will end (not inclusive).
|
321
|
+
*/
|
322
|
+
slice(start?: number, end?: number): Buffer;
|
323
|
+
/**
|
324
|
+
* Returns a new `Buffer` that references the same memory as the original, but
|
325
|
+
* offset and cropped by the `start` and `end` indices.
|
326
|
+
*
|
327
|
+
* Specifying `end` greater than `buf.length` will return the same result as
|
328
|
+
* that of `end` equal to `buf.length`.
|
329
|
+
*
|
330
|
+
* This method is inherited from [`TypedArray.prototype.subarray()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/subarray).
|
331
|
+
*
|
332
|
+
* Modifying the new `Buffer` slice will modify the memory in the original `Buffer`because the allocated memory of the two objects overlap.
|
333
|
+
*
|
334
|
+
* ```js
|
335
|
+
* import { Buffer } from 'node:buffer';
|
336
|
+
*
|
337
|
+
* // Create a `Buffer` with the ASCII alphabet, take a slice, and modify one byte
|
338
|
+
* // from the original `Buffer`.
|
339
|
+
*
|
340
|
+
* const buf1 = Buffer.allocUnsafe(26);
|
341
|
+
*
|
342
|
+
* for (let i = 0; i < 26; i++) {
|
343
|
+
* // 97 is the decimal ASCII value for 'a'.
|
344
|
+
* buf1[i] = i + 97;
|
345
|
+
* }
|
346
|
+
*
|
347
|
+
* const buf2 = buf1.subarray(0, 3);
|
348
|
+
*
|
349
|
+
* console.log(buf2.toString('ascii', 0, buf2.length));
|
350
|
+
* // Prints: abc
|
351
|
+
*
|
352
|
+
* buf1[0] = 33;
|
353
|
+
*
|
354
|
+
* console.log(buf2.toString('ascii', 0, buf2.length));
|
355
|
+
* // Prints: !bc
|
356
|
+
* ```
|
357
|
+
*
|
358
|
+
* Specifying negative indexes causes the slice to be generated relative to the
|
359
|
+
* end of `buf` rather than the beginning.
|
360
|
+
*
|
361
|
+
* ```js
|
362
|
+
* import { Buffer } from 'node:buffer';
|
363
|
+
*
|
364
|
+
* const buf = Buffer.from('buffer');
|
365
|
+
*
|
366
|
+
* console.log(buf.subarray(-6, -1).toString());
|
367
|
+
* // Prints: buffe
|
368
|
+
* // (Equivalent to buf.subarray(0, 5).)
|
369
|
+
*
|
370
|
+
* console.log(buf.subarray(-6, -2).toString());
|
371
|
+
* // Prints: buff
|
372
|
+
* // (Equivalent to buf.subarray(0, 4).)
|
373
|
+
*
|
374
|
+
* console.log(buf.subarray(-5, -2).toString());
|
375
|
+
* // Prints: uff
|
376
|
+
* // (Equivalent to buf.subarray(1, 4).)
|
377
|
+
* ```
|
378
|
+
* @since v3.0.0
|
379
|
+
* @param [start=0] Where the new `Buffer` will start.
|
380
|
+
* @param [end=buf.length] Where the new `Buffer` will end (not inclusive).
|
381
|
+
*/
|
382
|
+
subarray(start?: number, end?: number): Buffer;
|
383
|
+
}
|
384
|
+
}
|
385
|
+
}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
export {}; // Make this a module
|
2
|
+
|
3
|
+
declare global {
|
4
|
+
namespace NodeJS {
|
5
|
+
type TypedArray =
|
6
|
+
| Uint8Array
|
7
|
+
| Uint8ClampedArray
|
8
|
+
| Uint16Array
|
9
|
+
| Uint32Array
|
10
|
+
| Int8Array
|
11
|
+
| Int16Array
|
12
|
+
| Int32Array
|
13
|
+
| BigUint64Array
|
14
|
+
| BigInt64Array
|
15
|
+
| Float32Array
|
16
|
+
| Float64Array;
|
17
|
+
type ArrayBufferView = TypedArray | DataView;
|
18
|
+
}
|
19
|
+
}
|