@zaiinlin/bails 0.0.0-stage → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/README.md +1 -3
  2. package/WAProto/GenerateStatics.sh +3 -0
  3. package/WAProto/WAProto.proto +7772 -0
  4. package/WAProto/fix-imports.js +85 -0
  5. package/WAProto/index.d.ts +79257 -0
  6. package/WAProto/index.js +242946 -0
  7. package/engine-requirements.js +10 -0
  8. package/lib/Defaults/index.js +131 -0
  9. package/lib/Signal/Group/ciphertext-message.js +12 -0
  10. package/lib/Signal/Group/group-session-builder.js +30 -0
  11. package/lib/Signal/Group/group_cipher.js +82 -0
  12. package/lib/Signal/Group/index.js +12 -0
  13. package/lib/Signal/Group/keyhelper.js +18 -0
  14. package/lib/Signal/Group/sender-chain-key.js +26 -0
  15. package/lib/Signal/Group/sender-key-distribution-message.js +63 -0
  16. package/lib/Signal/Group/sender-key-message.js +66 -0
  17. package/lib/Signal/Group/sender-key-name.js +48 -0
  18. package/lib/Signal/Group/sender-key-record.js +41 -0
  19. package/lib/Signal/Group/sender-key-state.js +84 -0
  20. package/lib/Signal/Group/sender-message-key.js +26 -0
  21. package/lib/Signal/libsignal.js +431 -0
  22. package/lib/Signal/lid-mapping.js +277 -0
  23. package/lib/Socket/Client/index.js +3 -0
  24. package/lib/Socket/Client/types.js +11 -0
  25. package/lib/Socket/Client/websocket.js +54 -0
  26. package/lib/Socket/MessageBuilder.js +3729 -0
  27. package/lib/Socket/business.js +379 -0
  28. package/lib/Socket/chats.js +1198 -0
  29. package/lib/Socket/communities.js +431 -0
  30. package/lib/Socket/graphql.js +716 -0
  31. package/lib/Socket/groups.js +374 -0
  32. package/lib/Socket/index.js +29 -0
  33. package/lib/Socket/interop.js +463 -0
  34. package/lib/Socket/luxu.js +387 -0
  35. package/lib/Socket/message-builder.js +556 -0
  36. package/lib/Socket/messages-recv.js +1916 -0
  37. package/lib/Socket/messages-send.js +1516 -0
  38. package/lib/Socket/mex.js +54 -0
  39. package/lib/Socket/newsletter.js +699 -0
  40. package/lib/Socket/privacy.js +318 -0
  41. package/lib/Socket/socket.js +1115 -0
  42. package/lib/Socket/username.js +236 -0
  43. package/lib/Store/index.js +10 -0
  44. package/lib/Store/keyed-db.js +108 -0
  45. package/lib/Store/make-cache-manager-store.js +85 -0
  46. package/lib/Store/make-in-memory-store.js +244 -0
  47. package/lib/Store/make-ordered-dictionary.js +75 -0
  48. package/lib/Store/object-repository.js +32 -0
  49. package/lib/Types/Auth.js +2 -0
  50. package/lib/Types/Bussines.js +2 -0
  51. package/lib/Types/Call.js +2 -0
  52. package/lib/Types/Chat.js +8 -0
  53. package/lib/Types/Contact.js +2 -0
  54. package/lib/Types/Events.js +2 -0
  55. package/lib/Types/GroupMetadata.js +2 -0
  56. package/lib/Types/Label.js +25 -0
  57. package/lib/Types/LabelAssociation.js +7 -0
  58. package/lib/Types/Message.js +11 -0
  59. package/lib/Types/Mex.js +111 -0
  60. package/lib/Types/Product.js +2 -0
  61. package/lib/Types/Signal.js +2 -0
  62. package/lib/Types/Socket.js +3 -0
  63. package/lib/Types/State.js +56 -0
  64. package/lib/Types/USync.js +2 -0
  65. package/lib/Types/index.js +26 -0
  66. package/lib/Utils/auth-utils.js +302 -0
  67. package/lib/Utils/browser-utils.js +48 -0
  68. package/lib/Utils/business.js +231 -0
  69. package/lib/Utils/chat-utils.js +872 -0
  70. package/lib/Utils/companion-reg-client-utils.js +35 -0
  71. package/lib/Utils/crypto.js +118 -0
  72. package/lib/Utils/decode-wa-message.js +350 -0
  73. package/lib/Utils/event-buffer.js +622 -0
  74. package/lib/Utils/generics.js +403 -0
  75. package/lib/Utils/history.js +134 -0
  76. package/lib/Utils/identity-change-handler.js +50 -0
  77. package/lib/Utils/index.js +24 -0
  78. package/lib/Utils/link-preview.js +85 -0
  79. package/lib/Utils/logger.js +3 -0
  80. package/lib/Utils/lt-hash.js +8 -0
  81. package/lib/Utils/make-mutex.js +33 -0
  82. package/lib/Utils/message-composer.js +273 -0
  83. package/lib/Utils/message-retry-manager.js +265 -0
  84. package/lib/Utils/messages-media.js +870 -0
  85. package/lib/Utils/messages.js +1394 -0
  86. package/lib/Utils/noise-handler.js +201 -0
  87. package/lib/Utils/offline-node-processor.js +40 -0
  88. package/lib/Utils/pre-key-manager.js +106 -0
  89. package/lib/Utils/process-message.js +630 -0
  90. package/lib/Utils/reporting-utils.js +258 -0
  91. package/lib/Utils/signal.js +201 -0
  92. package/lib/Utils/stanza-ack.js +38 -0
  93. package/lib/Utils/sticker.js +133 -0
  94. package/lib/Utils/sync-action-utils.js +49 -0
  95. package/lib/Utils/tc-token-utils.js +163 -0
  96. package/lib/Utils/use-multi-file-auth-state.js +121 -0
  97. package/lib/Utils/use-sqlite-auth-state.js +162 -0
  98. package/lib/Utils/validate-connection.js +203 -0
  99. package/lib/WABinary/constants.js +1301 -0
  100. package/lib/WABinary/decode.js +262 -0
  101. package/lib/WABinary/encode.js +220 -0
  102. package/lib/WABinary/generic-utils.js +204 -0
  103. package/lib/WABinary/index.js +6 -0
  104. package/lib/WABinary/jid-utils.js +98 -0
  105. package/lib/WABinary/types.js +2 -0
  106. package/lib/WAM/BinaryInfo.js +10 -0
  107. package/lib/WAM/constants.js +22853 -0
  108. package/lib/WAM/encode.js +150 -0
  109. package/lib/WAM/index.js +4 -0
  110. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +53 -0
  111. package/lib/WAUSync/Protocols/USyncBusinessProtocol.js +43 -0
  112. package/lib/WAUSync/Protocols/USyncContactProtocol.js +54 -0
  113. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +57 -0
  114. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +30 -0
  115. package/lib/WAUSync/Protocols/USyncFeatureProtocol.js +58 -0
  116. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +30 -0
  117. package/lib/WAUSync/Protocols/USyncPictureProtocol.js +32 -0
  118. package/lib/WAUSync/Protocols/USyncSidelistProtocol.js +28 -0
  119. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +39 -0
  120. package/lib/WAUSync/Protocols/USyncTextStatusProtocol.js +38 -0
  121. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +27 -0
  122. package/lib/WAUSync/Protocols/index.js +12 -0
  123. package/lib/WAUSync/USyncQuery.js +151 -0
  124. package/lib/WAUSync/USyncUser.js +56 -0
  125. package/lib/WAUSync/index.js +3 -0
  126. package/lib/index.js +92 -0
  127. package/package.json +143 -4
  128. package/readme.md +456 -0
@@ -0,0 +1,151 @@
1
+ import { getBinaryNodeChild } from '../WABinary/index.js'
2
+ import { USyncBotProfileProtocol } from './Protocols/USyncBotProfileProtocol.js'
3
+ import { USyncLIDProtocol } from './Protocols/USyncLIDProtocol.js'
4
+ import { USyncBusinessProtocol } from './Protocols/USyncBusinessProtocol.js'
5
+ import { USyncPictureProtocol } from './Protocols/USyncPictureProtocol.js'
6
+ import { USyncTextStatusProtocol } from './Protocols/USyncTextStatusProtocol.js'
7
+ import { USyncSidelistProtocol } from './Protocols/USyncSidelistProtocol.js'
8
+ import { USyncFeatureProtocol } from './Protocols/USyncFeatureProtocol.js'
9
+ import {
10
+ USyncContactProtocol,
11
+ USyncDeviceProtocol,
12
+ USyncDisappearingModeProtocol,
13
+ USyncStatusProtocol,
14
+ USyncUsernameProtocol
15
+ } from './Protocols/index.js'
16
+
17
+ export class USyncQuery {
18
+ constructor() {
19
+ this.protocols = []
20
+ this.users = []
21
+ this.context = 'interactive'
22
+ this.mode = 'query'
23
+ }
24
+
25
+ withMode(mode) {
26
+ this.mode = mode
27
+ return this
28
+ }
29
+
30
+ withContext(context) {
31
+ this.context = context
32
+ return this
33
+ }
34
+
35
+ withUser(user) {
36
+ this.users.push(user)
37
+ return this
38
+ }
39
+
40
+ parseUSyncQueryResult(result) {
41
+ if (result?.attrs.type !== 'result') {
42
+ return
43
+ }
44
+ const protocolMap = Object.fromEntries(
45
+ this.protocols.map(protocol => [protocol.name, protocol.parser])
46
+ )
47
+ const queryResult = {
48
+ list: [],
49
+ sideList: []
50
+ }
51
+ const usyncNode = getBinaryNodeChild(result, 'usync')
52
+
53
+ const parseUserNodes = nodes => {
54
+ return nodes.reduce((acc, node) => {
55
+ const id = node?.attrs.jid
56
+ if (id) {
57
+ const data = Array.isArray(node?.content)
58
+ ? Object.fromEntries(
59
+ node.content.map(content => {
60
+ const protocol = content.tag
61
+ const parser = protocolMap[protocol]
62
+ if (!parser) {
63
+ return [protocol, null]
64
+ }
65
+ try {
66
+ return [protocol, parser(content)]
67
+ } catch (err) {
68
+ return [protocol, null]
69
+ }
70
+ })
71
+ )
72
+ : {}
73
+ acc.push({ ...data, id })
74
+ }
75
+ return acc
76
+ }, [])
77
+ }
78
+
79
+ const listNode = usyncNode ? getBinaryNodeChild(usyncNode, 'list') : undefined
80
+ if (listNode?.content && Array.isArray(listNode.content)) {
81
+ queryResult.list = parseUserNodes(listNode.content)
82
+ }
83
+
84
+ const sideListNode = usyncNode ? getBinaryNodeChild(usyncNode, 'side_list') : undefined
85
+ if (sideListNode?.content && Array.isArray(sideListNode.content)) {
86
+ queryResult.sideList = parseUserNodes(sideListNode.content)
87
+ }
88
+
89
+ return queryResult
90
+ }
91
+
92
+ withDeviceProtocol() {
93
+ this.protocols.push(new USyncDeviceProtocol())
94
+ return this
95
+ }
96
+
97
+ withContactProtocol() {
98
+ this.protocols.push(new USyncContactProtocol())
99
+ return this
100
+ }
101
+
102
+ withStatusProtocol() {
103
+ this.protocols.push(new USyncStatusProtocol())
104
+ return this
105
+ }
106
+
107
+ withDisappearingModeProtocol() {
108
+ this.protocols.push(new USyncDisappearingModeProtocol())
109
+ return this
110
+ }
111
+
112
+ withBotProfileProtocol() {
113
+ this.protocols.push(new USyncBotProfileProtocol())
114
+ return this
115
+ }
116
+
117
+ withLIDProtocol() {
118
+ this.protocols.push(new USyncLIDProtocol())
119
+ return this
120
+ }
121
+
122
+ withUsernameProtocol() {
123
+ this.protocols.push(new USyncUsernameProtocol())
124
+ return this
125
+ }
126
+
127
+ withBusinessProtocol(profileVersion) {
128
+ this.protocols.push(new USyncBusinessProtocol(profileVersion))
129
+ return this
130
+ }
131
+
132
+ withPictureProtocol(type) {
133
+ this.protocols.push(new USyncPictureProtocol(type))
134
+ return this
135
+ }
136
+
137
+ withTextStatusProtocol() {
138
+ this.protocols.push(new USyncTextStatusProtocol())
139
+ return this
140
+ }
141
+
142
+ withSidelistProtocol(useLidAddressing) {
143
+ this.protocols.push(new USyncSidelistProtocol(useLidAddressing))
144
+ return this
145
+ }
146
+
147
+ withFeatureProtocol(features) {
148
+ this.protocols.push(new USyncFeatureProtocol(features))
149
+ return this
150
+ }
151
+ }
@@ -0,0 +1,56 @@
1
+ export class USyncUser {
2
+ withId(id) {
3
+ this.id = id
4
+ return this
5
+ }
6
+
7
+ withLid(lid) {
8
+ this.lid = lid
9
+ return this
10
+ }
11
+
12
+ withPhone(phone) {
13
+ this.phone = phone
14
+ return this
15
+ }
16
+
17
+ withUsername(username) {
18
+ this.username = username
19
+ return this
20
+ }
21
+
22
+ withUsernameKey(usernameKey) {
23
+ this.usernameKey = usernameKey
24
+ return this
25
+ }
26
+
27
+ withType(type) {
28
+ this.type = type
29
+ return this
30
+ }
31
+
32
+ withPersonaId(personaId) {
33
+ this.personaId = personaId
34
+ return this
35
+ }
36
+
37
+ withPictureId(pictureId) {
38
+ this.pictureId = pictureId
39
+ return this
40
+ }
41
+
42
+ withVerifiedNameSerial(serial) {
43
+ this.verifiedNameSerial = serial
44
+ return this
45
+ }
46
+
47
+ withBusinessProfileTag(tag) {
48
+ this.businessProfileTag = tag
49
+ return this
50
+ }
51
+
52
+ withSidelistDelete(del = true) {
53
+ this.sidelistDelete = del
54
+ return this
55
+ }
56
+ }
@@ -0,0 +1,3 @@
1
+ export * from './Protocols/index.js'
2
+ export * from './USyncQuery.js'
3
+ export * from './USyncUser.js'
package/lib/index.js ADDED
@@ -0,0 +1,92 @@
1
+
2
+ import makeWASocket from './Socket/index.js';
3
+ import chalk from 'chalk';
4
+
5
+ const palette = [
6
+ '#b026ff',
7
+ '#9333ea',
8
+ '#6366ff',
9
+ '#3b82f6',
10
+ '#00bfff',
11
+ '#00ffff',
12
+ '#00ff99',
13
+ '#a3e635',
14
+ '#ffff00',
15
+ '#ff9900',
16
+ '#ff3399'
17
+ ];
18
+
19
+ function rainbow(text) {
20
+ return [...text].map((char, i) =>
21
+ char === ' '
22
+ ? char
23
+ : chalk.hex(palette[i % palette.length])(char)
24
+ ).join('');
25
+ }
26
+
27
+ // ASCII ART
28
+
29
+ const art = `
30
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣀⢀⣀⠤⠤⠤⠤⢀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
31
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡔⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠑⢤⢀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
32
+ ⠀⢤⣤⣀⣠⣤⣀⡤⠞⠉⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢢⣀⠀⠀⠀⠀⠀⠀⠀⠀
33
+ ⢰⣿⣙⣿⣿⣟⡯⠂⠀⠀⡴⠁⠀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣹⣼⣦⣤⣤⡄⠀⠀⠀
34
+ ⠈⡏⠐⠻⣿⠻⠙⠀⠀⢰⠁⠀⢼⡇⠀⠀⠀⠀⠀⠀⢰⣷⡀⠀⢣⠀⠀⠸⠸⢸⣿⣿⣿⣷⣦⠤⡄
35
+ ⠀⠰⠀⠀⠀⠀⠀⢀⡾⠆⢇⡰⠆⠀⠀⠶⠶⠶⠀⠀⠈⠉⠀⠀⠀⢇⠀⠀⠀⠀⢏⣹⣿⠹⣿⠹⡇
36
+ ⠀⠀⠈⠀⠐⠀⠉⠁⠀⠀⠀⠉⠒⠠⣤⠀⠀⠀⠀⣀⣀⣀⣈⣀⣠⢼⠓⡤⡀⠀⠀⠀⠙⠻⠋⢸⠆
37
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡿⠂⠀⠀⠀⠀⠀⡰⠛⠁⠈⠉⢢⠀⠈⠑⠒⠤⠤⠤⠒⠃⠀
38
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⡴⠚⠅⠀⠀⠀⠀⠀⠘⠁⠀⠠⠒⡄⡀⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀
39
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢇⠀⠀⠀⠀⠀⠀⠀⠠⠀⠀⠀⠀⡘⢀⠇⠀⠀⠀⠀⠀⠀⠀⠀⠀
40
+ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠁⠒⠒⠒⠒⠒⠛⠒⠀⠒⠓⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
41
+ `;
42
+
43
+ console.log('');
44
+ art.split('\n').slice(1, -1).forEach(line => {
45
+ console.log(rainbow(line));
46
+ });
47
+
48
+
49
+ console.log('');
50
+
51
+ console.log(rainbow(`
52
+ ███████╗ █████╗ ██╗██╗███╗ ██╗██╗ ██╗███╗ ██╗
53
+ ╚══███╔╝██╔══██╗██║██║████╗ ██║██║ ██║████╗ ██║
54
+ ███╔╝ ███████║██║██║██╔██╗ ██║██║ ██║██╔██╗ ██║
55
+ ███╔╝ ██╔══██║██║██║██║╚██╗██║██║ ██║██║╚██╗██║
56
+ ███████╗██║ ██║██║██║██║ ╚████║███████╗██║██║ ╚████║
57
+ ╚══════╝╚═╝ ╚═╝╚═╝╚═╝╚═╝ ╚═══╝╚══════╝╚═╝╚═╝ ╚═══╝
58
+ `));
59
+
60
+ console.log('');
61
+
62
+ console.log(
63
+ rainbow('Telegram : ') + chalk.white('@momykamu')
64
+ );
65
+
66
+ console.log(
67
+ rainbow('TikTok : ') + chalk.white('@cyraww')
68
+ );
69
+
70
+ console.log(
71
+ rainbow('WhatsApp : ') + chalk.white('wa.me/6281936654099')
72
+ );
73
+
74
+ console.log('');
75
+
76
+ console.log(rainbow('developer : @zaiinlin For More Update'));
77
+
78
+ console.log('');
79
+
80
+ // Baileys exports tetap di bawah
81
+ export * from '../WAProto/index.js';
82
+ export * from './Utils/index.js';
83
+ export * from './Types/index.js';
84
+ export * from './Defaults/index.js';
85
+ export * from './WABinary/index.js';
86
+ export * from './WAM/index.js';
87
+ export * from './WAUSync/index.js';
88
+ export * from './Store/index.js';
89
+ export { makeWASocket };
90
+ export default makeWASocket;
91
+ export * as MessageBuilder from './Socket/MessageBuilder.js';
92
+ export { default as MB } from './Socket/MessageBuilder.js';
package/package.json CHANGED
@@ -1,6 +1,145 @@
1
+
1
2
  {
2
3
  "name": "@zaiinlin/bails",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
4
+ "version": "1.0.2",
5
+ "description": "A WebSockets library for interacting with WhatsApp Web.",
6
+ "keywords": [
7
+ "baileys",
8
+ "whatsapp",
9
+ "whatsapp-baileys"
10
+ ],
11
+ "homepage": "https://github.com/zaiinlin/bailys#readme",
12
+ "repository": {
13
+ "type": "git",
14
+ "url": "https://github.com/zaiinlin/bailys.git"
15
+ },
16
+ "license": "MIT",
17
+ "author": "VinnxsynC",
18
+ "main": "lib/index.js",
19
+ "files": [
20
+ "lib/**/*",
21
+ "WAProto/**/*",
22
+ "engine-requirements.js"
23
+ ],
24
+ "scripts": {
25
+ "build:all": "tsc && typedoc",
26
+ "build:docs": "typedoc",
27
+ "build:tsc": "tsc",
28
+ "changelog:last": "conventional-changelog -p angular -r 2",
29
+ "changelog:preview": "conventional-changelog -p angular -u",
30
+ "gen:protobuf": "sh WAProto/GenerateStatics.sh",
31
+ "lint": "eslint src --ext .js,.ts,.jsx,.tsx",
32
+ "lint:fix": "eslint src --fix --ext .js,.ts,.jsx,.tsx",
33
+ "prepack": "",
34
+ "prepare": "",
35
+ "preinstall": "node ./engine-requirements.js",
36
+ "release": "release-it",
37
+ "test": "jest"
38
+ },
39
+ "dependencies": {
40
+ "@cacheable/node-cache": "^1.4.0",
41
+ "@hapi/boom": "^9.1.3",
42
+ "async-mutex": "^0.5.0",
43
+ "fluent-ffmpeg": "*",
44
+ "libsignal": "^6.0.0",
45
+ "lru-cache": "^11.1.0",
46
+ "music-metadata": "^11.12.3",
47
+ "p-queue": "^9.0.0",
48
+ "pino": "^9.6",
49
+ "protobufjs": "^7.5.6",
50
+ "whatsapp-rust-bridge": "0.5.4",
51
+ "ws": "^8.13.0",
52
+ "chalk": "^4.1.2",
53
+ "cache-manager": "^7.2.8",
54
+ "sharp": "*"
55
+ },
56
+ "devDependencies": {
57
+ "@eslint/eslintrc": "^3.3.1",
58
+ "@eslint/js": "^9.31.0",
59
+ "@types/jest": "^30.0.0",
60
+ "@types/node": "^20.9.0",
61
+ "@types/ws": "^8.0.0",
62
+ "@typescript-eslint/eslint-plugin": "^8",
63
+ "@typescript-eslint/parser": "^8",
64
+ "@whiskeysockets/eslint-config": "^1.0.0",
65
+ "conventional-changelog": "^7.1.1",
66
+ "conventional-changelog-angular": "^8.0.0",
67
+ "esbuild-register": "^3.6.0",
68
+ "eslint": "^9",
69
+ "eslint-config-prettier": "^10.1.2",
70
+ "eslint-plugin-prettier": "^5.4.0",
71
+ "jest": "^30.0.5",
72
+ "jimp": "^1.6.1",
73
+ "jiti": "^2.4.2",
74
+ "json": "^11.0.0",
75
+ "link-preview-js": "^3.0.0",
76
+ "lru-cache": "^11.1.0",
77
+ "open": "^8.4.2",
78
+ "pino-pretty": "^13.1.1",
79
+ "prettier": "^3.5.3",
80
+ "protobufjs-cli": "^1.1.3",
81
+ "release-it": "^20.0.1",
82
+ "ts-jest": "^29.4.0",
83
+ "tsc-esm-fix": "^3.1.2",
84
+ "tsx": "^4.20.3",
85
+ "typedoc": "^0.27.9",
86
+ "typedoc-plugin-markdown": "4.4.2",
87
+ "typescript": "^5.8.2"
88
+ },
89
+ "peerDependencies": {
90
+ "audio-decode": "^2.1.3",
91
+ "jimp": "^1.6.1",
92
+ "link-preview-js": "^3.0.0"
93
+ },
94
+ "resolutions": {
95
+ "ajv@npm:^6.12.4": "^6.14.0",
96
+ "basic-ftp": "^5.2.4",
97
+ "brace-expansion@npm:^1.1.7": "^1.1.13",
98
+ "brace-expansion@npm:^2.0.1": "^2.0.3",
99
+ "flatted": "^3.4.2",
100
+ "glob@npm:^10.2.2": "^10.5.0",
101
+ "glob@npm:^10.3.10": "^10.5.0",
102
+ "glob@npm:^10.5.0": "^10.5.0",
103
+ "handlebars": "^4.7.9",
104
+ "ip-address": "^10.1.1",
105
+ "js-yaml@npm:^3.13.1": "^3.14.2",
106
+ "js-yaml@npm:^4.1.0": "^4.1.1",
107
+ "markdown-it": "^14.1.1",
108
+ "minimatch@npm:^3.0.4": "^3.1.5",
109
+ "minimatch@npm:^3.1.2": "^3.1.5",
110
+ "minimatch@npm:^5.0.1": "^5.1.8",
111
+ "minimatch@npm:^9.0.4": "^9.0.9",
112
+ "minimatch@npm:^9.0.5": "^9.0.9",
113
+ "picomatch@npm:^2.0.4": "^2.3.2",
114
+ "picomatch@npm:^2.3.1": "^2.3.2",
115
+ "picomatch@npm:^4.0.0": "^4.0.4",
116
+ "picomatch@npm:^4.0.2": "^4.0.4",
117
+ "socks": "^2.8.8",
118
+ "tar": "^7.5.11",
119
+ "tmp": "^0.2.5",
120
+ "underscore": "^1.13.8",
121
+ "yaml@npm:^2.6.1": "^2.8.4"
122
+ },
123
+ "peerDependenciesMeta": {
124
+ "audio-decode": {
125
+ "optional": true
126
+ },
127
+ "jimp": {
128
+ "optional": true
129
+ },
130
+ "link-preview-js": {
131
+ "optional": true
132
+ }
133
+ },
134
+ "packageManager": "yarn@4.9.2",
135
+ "engines": {
136
+ "node": ">=20.0.0"
137
+ },
138
+ "bugs": {
139
+ "url": "https://github.com/zaiinlin/bailys/issues"
140
+ },
141
+ "publishConfig": {
142
+ "access": "public",
143
+ "registry": "https://registry.npmjs.org/"
144
+ }
145
+ }