jagproject 26.3.23 → 26.3.26

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 (209) hide show
  1. package/WAProto/GenerateStatics.sh +3 -4
  2. package/WAProto/WAProto.proto +1215 -511
  3. package/WAProto/fix-imports.js +73 -0
  4. package/WAProto/index.d.ts +14017 -0
  5. package/WAProto/index.js +64857 -145167
  6. package/engine-requirements.js +4 -7
  7. package/lib/Defaults/index.d.ts +74 -0
  8. package/lib/Defaults/index.js +49 -35
  9. package/lib/Defaults/phonenumber-mcc.json +223 -0
  10. package/lib/Defaults/wileys-version.json +2 -2
  11. package/lib/Signal/Group/ciphertext-message.d.ts +10 -0
  12. package/lib/Signal/Group/group-session-builder.d.ts +15 -0
  13. package/lib/Signal/Group/group-session-builder.js +5 -3
  14. package/lib/Signal/Group/group_cipher.d.ts +17 -0
  15. package/lib/Signal/Group/group_cipher.js +35 -46
  16. package/lib/Signal/Group/index.d.ts +12 -0
  17. package/lib/Signal/Group/index.js +21 -21
  18. package/lib/Signal/Group/keyhelper.d.ts +11 -0
  19. package/lib/Signal/Group/keyhelper.js +2 -2
  20. package/lib/Signal/Group/sender-chain-key.d.ts +14 -0
  21. package/lib/Signal/Group/sender-chain-key.js +5 -10
  22. package/lib/Signal/Group/sender-key-distribution-message.d.ts +17 -0
  23. package/lib/Signal/Group/sender-key-distribution-message.js +7 -7
  24. package/lib/Signal/Group/sender-key-message.d.ts +19 -0
  25. package/lib/Signal/Group/sender-key-message.js +8 -8
  26. package/lib/Signal/Group/sender-key-name.d.ts +18 -0
  27. package/lib/Signal/Group/sender-key-record.d.ts +31 -0
  28. package/lib/Signal/Group/sender-key-record.js +7 -16
  29. package/lib/Signal/Group/sender-key-state.d.ts +39 -0
  30. package/lib/Signal/Group/sender-key-state.js +25 -37
  31. package/lib/Signal/Group/sender-message-key.d.ts +12 -0
  32. package/lib/Signal/Group/sender-message-key.js +2 -2
  33. package/lib/Signal/libsignal.d.ts +5 -0
  34. package/lib/Signal/libsignal.js +358 -54
  35. package/lib/Signal/lid-mapping.d.ts +19 -0
  36. package/lib/Signal/lid-mapping.js +274 -0
  37. package/lib/Socket/Client/index.d.ts +3 -0
  38. package/lib/Socket/Client/index.js +2 -2
  39. package/lib/Socket/Client/types.d.ts +16 -0
  40. package/lib/Socket/Client/types.js +1 -0
  41. package/lib/Socket/Client/websocket.d.ts +13 -0
  42. package/lib/Socket/Client/websocket.js +18 -30
  43. package/lib/Socket/business.d.ts +202 -0
  44. package/lib/Socket/business.js +160 -38
  45. package/lib/Socket/chats.d.ts +111 -0
  46. package/lib/Socket/chats.js +497 -314
  47. package/lib/Socket/communities.d.ts +258 -0
  48. package/lib/Socket/communities.js +438 -0
  49. package/lib/Socket/community.js +333 -0
  50. package/lib/Socket/groups.d.ts +150 -0
  51. package/lib/Socket/groups.js +229 -91
  52. package/lib/Socket/index.d.ts +245 -0
  53. package/lib/Socket/index.js +9 -6
  54. package/lib/Socket/messages-recv.d.ts +187 -0
  55. package/lib/Socket/messages-recv.js +1105 -501
  56. package/lib/Socket/messages-send.d.ts +183 -0
  57. package/lib/Socket/messages-send.js +1181 -501
  58. package/lib/Socket/mex.d.ts +3 -0
  59. package/lib/Socket/mex.js +45 -0
  60. package/lib/Socket/newsletter.d.ts +160 -0
  61. package/lib/Socket/newsletter.js +227 -200
  62. package/lib/Socket/socket.d.ts +55 -0
  63. package/lib/Socket/socket.js +507 -206
  64. package/lib/Socket/usync.js +6 -6
  65. package/lib/Store/index.js +17 -5
  66. package/lib/Store/make-cache-manager-store.js +83 -0
  67. package/lib/Store/make-in-memory-store.js +48 -89
  68. package/lib/Store/make-ordered-dictionary.js +1 -1
  69. package/lib/Types/Auth.d.ts +116 -0
  70. package/lib/Types/Bussines.d.ts +25 -0
  71. package/lib/Types/Bussines.js +2 -0
  72. package/lib/Types/Call.d.ts +15 -0
  73. package/lib/Types/Chat.d.ts +123 -0
  74. package/lib/Types/Chat.js +7 -1
  75. package/lib/Types/Contact.d.ts +24 -0
  76. package/lib/Types/Events.d.ts +237 -0
  77. package/lib/Types/Events.js +1 -0
  78. package/lib/Types/GroupMetadata.d.ts +67 -0
  79. package/lib/Types/Label.d.ts +47 -0
  80. package/lib/Types/Label.js +1 -3
  81. package/lib/Types/LabelAssociation.d.ts +30 -0
  82. package/lib/Types/LabelAssociation.js +1 -3
  83. package/lib/Types/Message.d.ts +305 -0
  84. package/lib/Types/Message.js +9 -5
  85. package/lib/Types/MexUpdates.js +11 -0
  86. package/lib/Types/Newsletter.d.ts +135 -0
  87. package/lib/Types/Newsletter.js +36 -11
  88. package/lib/Types/Product.d.ts +79 -0
  89. package/lib/Types/Signal.d.ts +76 -0
  90. package/lib/Types/Signal.js +1 -0
  91. package/lib/Types/Socket.d.ts +133 -0
  92. package/lib/Types/Socket.js +1 -0
  93. package/lib/Types/State.d.ts +39 -0
  94. package/lib/Types/State.js +12 -0
  95. package/lib/Types/USync.d.ts +26 -0
  96. package/lib/Types/USync.js +1 -0
  97. package/lib/Types/index.d.ts +65 -0
  98. package/lib/Types/index.js +14 -14
  99. package/lib/Utils/audioToBuffer.js +31 -0
  100. package/lib/Utils/auth-utils.d.ts +19 -0
  101. package/lib/Utils/auth-utils.js +222 -123
  102. package/lib/Utils/baileys-event-stream.js +60 -0
  103. package/lib/Utils/bridge-runtime.d.ts +1 -0
  104. package/lib/Utils/bridge-runtime.js +14 -0
  105. package/lib/Utils/browser-utils.d.ts +4 -0
  106. package/lib/Utils/browser-utils.js +38 -29
  107. package/lib/Utils/business.d.ts +23 -0
  108. package/lib/Utils/business.js +54 -48
  109. package/lib/Utils/chat-utils.d.ts +70 -0
  110. package/lib/Utils/chat-utils.js +284 -189
  111. package/lib/Utils/crypto.d.ts +37 -0
  112. package/lib/Utils/crypto.js +16 -41
  113. package/lib/Utils/decode-wa-message.d.ts +48 -0
  114. package/lib/Utils/decode-wa-message.js +128 -48
  115. package/lib/Utils/event-buffer.d.ts +34 -0
  116. package/lib/Utils/event-buffer.js +124 -62
  117. package/lib/Utils/generics.d.ts +91 -0
  118. package/lib/Utils/generics.js +154 -138
  119. package/lib/Utils/history.d.ts +22 -0
  120. package/lib/Utils/history.js +77 -34
  121. package/lib/Utils/identity-change-handler.d.ts +37 -0
  122. package/lib/Utils/identity-change-handler.js +54 -0
  123. package/lib/Utils/index.d.ts +22 -0
  124. package/lib/Utils/index.js +32 -19
  125. package/lib/Utils/link-preview.d.ts +21 -0
  126. package/lib/Utils/link-preview.js +12 -17
  127. package/lib/Utils/logger.d.ts +13 -0
  128. package/lib/Utils/lt-hash.d.ts +8 -0
  129. package/lib/Utils/lt-hash.js +2 -43
  130. package/lib/Utils/make-mutex.d.ts +9 -0
  131. package/lib/Utils/make-mutex.js +21 -27
  132. package/lib/Utils/message-retry-manager.d.ts +110 -0
  133. package/lib/Utils/message-retry-manager.js +143 -45
  134. package/lib/Utils/messages-media.d.ts +130 -0
  135. package/lib/Utils/messages-media.js +429 -502
  136. package/lib/Utils/messages-newsletter.d.ts +84 -0
  137. package/lib/Utils/messages-newsletter.js +295 -0
  138. package/lib/Utils/messages.d.ts +92 -0
  139. package/lib/Utils/messages.js +1025 -674
  140. package/lib/Utils/noise-handler.d.ts +20 -0
  141. package/lib/Utils/noise-handler.js +145 -91
  142. package/lib/Utils/pre-key-manager.d.ts +28 -0
  143. package/lib/Utils/pre-key-manager.js +112 -0
  144. package/lib/Utils/process-message.d.ts +60 -0
  145. package/lib/Utils/process-message.js +316 -184
  146. package/lib/Utils/reporting-utils.d.ts +11 -0
  147. package/lib/Utils/reporting-utils.js +262 -0
  148. package/lib/Utils/resolve-jid.d.ts +43 -0
  149. package/lib/Utils/resolve-jid.js +95 -0
  150. package/lib/Utils/rust-bridge-shim.d.ts +22 -0
  151. package/lib/Utils/rust-bridge-shim.js +70 -0
  152. package/lib/Utils/serial-task-queue.js +29 -0
  153. package/lib/Utils/signal.d.ts +34 -0
  154. package/lib/Utils/signal.js +56 -39
  155. package/lib/Utils/streamToBuffer.js +17 -0
  156. package/lib/Utils/sync-action-utils.d.ts +19 -0
  157. package/lib/Utils/sync-action-utils.js +52 -0
  158. package/lib/Utils/tc-token-utils.d.ts +12 -0
  159. package/lib/Utils/tc-token-utils.js +20 -0
  160. package/lib/Utils/use-mongo-file-auth-state.js +71 -0
  161. package/lib/Utils/use-multi-file-auth-state.d.ts +13 -0
  162. package/lib/Utils/use-multi-file-auth-state.js +11 -12
  163. package/lib/Utils/use-single-file-auth-state.js +73 -0
  164. package/lib/Utils/validate-connection.d.ts +11 -0
  165. package/lib/Utils/validate-connection.js +59 -82
  166. package/lib/Utils/wileys-event-stream.js +1 -61
  167. package/lib/WABinary/constants.d.ts +28 -0
  168. package/lib/WABinary/decode.d.ts +7 -0
  169. package/lib/WABinary/decode.js +39 -4
  170. package/lib/WABinary/encode.d.ts +3 -0
  171. package/lib/WABinary/encode.js +17 -11
  172. package/lib/WABinary/generic-utils.d.ts +15 -0
  173. package/lib/WABinary/generic-utils.js +46 -18
  174. package/lib/WABinary/index.d.ts +6 -0
  175. package/lib/WABinary/index.js +9 -5
  176. package/lib/WABinary/jid-utils.d.ts +48 -0
  177. package/lib/WABinary/jid-utils.js +67 -37
  178. package/lib/WABinary/types.d.ts +19 -0
  179. package/lib/WABinary/types.js +34 -0
  180. package/lib/WAM/BinaryInfo.d.ts +9 -0
  181. package/lib/WAM/constants.d.ts +40 -0
  182. package/lib/WAM/constants.js +19183 -11678
  183. package/lib/WAM/encode.d.ts +3 -0
  184. package/lib/WAM/encode.js +15 -17
  185. package/lib/WAM/index.d.ts +4 -0
  186. package/lib/WAM/index.js +3 -3
  187. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +10 -0
  188. package/lib/WAUSync/Protocols/USyncContactProtocol.js +6 -6
  189. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +23 -0
  190. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +9 -9
  191. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +13 -0
  192. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +6 -6
  193. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +13 -0
  194. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +7 -8
  195. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.d.ts +26 -0
  196. package/lib/WAUSync/Protocols/UsyncBotProfileProtocol.js +18 -17
  197. package/lib/WAUSync/Protocols/UsyncLIDProtocol.d.ts +10 -0
  198. package/lib/WAUSync/Protocols/UsyncLIDProtocol.js +11 -3
  199. package/lib/WAUSync/Protocols/index.d.ts +5 -0
  200. package/lib/WAUSync/Protocols/index.js +6 -4
  201. package/lib/WAUSync/USyncQuery.d.ts +29 -0
  202. package/lib/WAUSync/USyncQuery.js +38 -30
  203. package/lib/WAUSync/USyncUser.d.ts +13 -0
  204. package/lib/WAUSync/index.d.ts +4 -0
  205. package/lib/WAUSync/index.js +3 -3
  206. package/lib/index.d.ts +12 -0
  207. package/lib/index.js +3 -5
  208. package/package.json +7 -4
  209. package/LICENSE +0 -21
@@ -4,26 +4,28 @@ exports.uploadingNecessaryImages = exports.parseProductNode = exports.toProductN
4
4
  exports.uploadingNecessaryImagesOfProduct = uploadingNecessaryImagesOfProduct;
5
5
  const boom_1 = require("@hapi/boom");
6
6
  const crypto_1 = require("crypto");
7
- const WABinary_1 = require("../WABinary");
8
- const messages_media_1 = require("./messages-media");
7
+ const fs_1 = require("fs");
8
+ const os_1 = require("os");
9
+ const path_1 = require("path");
10
+ const index_js_1 = require("../WABinary/index.js");
11
+ const generics_js_1 = require("./generics.js");
12
+ const messages_media_js_1 = require("./messages-media.js");
9
13
  const parseCatalogNode = (node) => {
10
- const catalogNode = (0, WABinary_1.getBinaryNodeChild)(node, 'product_catalog');
11
- const products = (0, WABinary_1.getBinaryNodeChildren)(catalogNode, 'product').map(exports.parseProductNode);
12
- const paging = (0, WABinary_1.getBinaryNodeChild)(catalogNode, 'paging');
14
+ const catalogNode = (0, index_js_1.getBinaryNodeChild)(node, 'product_catalog');
15
+ const products = (0, index_js_1.getBinaryNodeChildren)(catalogNode, 'product').map(exports.parseProductNode);
16
+ const paging = (0, index_js_1.getBinaryNodeChild)(catalogNode, 'paging');
13
17
  return {
14
18
  products,
15
- nextPageCursor: paging
16
- ? (0, WABinary_1.getBinaryNodeChildString)(paging, 'after')
17
- : undefined
19
+ nextPageCursor: paging ? (0, index_js_1.getBinaryNodeChildString)(paging, 'after') : undefined
18
20
  };
19
21
  };
20
22
  exports.parseCatalogNode = parseCatalogNode;
21
23
  const parseCollectionsNode = (node) => {
22
- const collectionsNode = (0, WABinary_1.getBinaryNodeChild)(node, 'collections');
23
- const collections = (0, WABinary_1.getBinaryNodeChildren)(collectionsNode, 'collection').map(collectionNode => {
24
- const id = (0, WABinary_1.getBinaryNodeChildString)(collectionNode, 'id');
25
- const name = (0, WABinary_1.getBinaryNodeChildString)(collectionNode, 'name');
26
- const products = (0, WABinary_1.getBinaryNodeChildren)(collectionNode, 'product').map(exports.parseProductNode);
24
+ const collectionsNode = (0, index_js_1.getBinaryNodeChild)(node, 'collections');
25
+ const collections = (0, index_js_1.getBinaryNodeChildren)(collectionsNode, 'collection').map(collectionNode => {
26
+ const id = (0, index_js_1.getBinaryNodeChildString)(collectionNode, 'id');
27
+ const name = (0, index_js_1.getBinaryNodeChildString)(collectionNode, 'name');
28
+ const products = (0, index_js_1.getBinaryNodeChildren)(collectionNode, 'product').map(exports.parseProductNode);
27
29
  return {
28
30
  id,
29
31
  name,
@@ -37,23 +39,23 @@ const parseCollectionsNode = (node) => {
37
39
  };
38
40
  exports.parseCollectionsNode = parseCollectionsNode;
39
41
  const parseOrderDetailsNode = (node) => {
40
- const orderNode = (0, WABinary_1.getBinaryNodeChild)(node, 'order');
41
- const products = (0, WABinary_1.getBinaryNodeChildren)(orderNode, 'product').map(productNode => {
42
- const imageNode = (0, WABinary_1.getBinaryNodeChild)(productNode, 'image');
42
+ const orderNode = (0, index_js_1.getBinaryNodeChild)(node, 'order');
43
+ const products = (0, index_js_1.getBinaryNodeChildren)(orderNode, 'product').map(productNode => {
44
+ const imageNode = (0, index_js_1.getBinaryNodeChild)(productNode, 'image');
43
45
  return {
44
- id: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'id'),
45
- name: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'name'),
46
- imageUrl: (0, WABinary_1.getBinaryNodeChildString)(imageNode, 'url'),
47
- price: +(0, WABinary_1.getBinaryNodeChildString)(productNode, 'price'),
48
- currency: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'currency'),
49
- quantity: +(0, WABinary_1.getBinaryNodeChildString)(productNode, 'quantity')
46
+ id: (0, index_js_1.getBinaryNodeChildString)(productNode, 'id'),
47
+ name: (0, index_js_1.getBinaryNodeChildString)(productNode, 'name'),
48
+ imageUrl: (0, index_js_1.getBinaryNodeChildString)(imageNode, 'url'),
49
+ price: +(0, index_js_1.getBinaryNodeChildString)(productNode, 'price'),
50
+ currency: (0, index_js_1.getBinaryNodeChildString)(productNode, 'currency'),
51
+ quantity: +(0, index_js_1.getBinaryNodeChildString)(productNode, 'quantity')
50
52
  };
51
53
  });
52
- const priceNode = (0, WABinary_1.getBinaryNodeChild)(orderNode, 'price');
54
+ const priceNode = (0, index_js_1.getBinaryNodeChild)(orderNode, 'price');
53
55
  const orderDetails = {
54
56
  price: {
55
- total: +(0, WABinary_1.getBinaryNodeChildString)(priceNode, 'total'),
56
- currency: (0, WABinary_1.getBinaryNodeChildString)(priceNode, 'currency'),
57
+ total: +(0, index_js_1.getBinaryNodeChildString)(priceNode, 'total'),
58
+ currency: (0, index_js_1.getBinaryNodeChildString)(priceNode, 'currency')
57
59
  },
58
60
  products
59
61
  };
@@ -158,23 +160,23 @@ const toProductNode = (productId, product) => {
158
160
  exports.toProductNode = toProductNode;
159
161
  const parseProductNode = (productNode) => {
160
162
  const isHidden = productNode.attrs.is_hidden === 'true';
161
- const id = (0, WABinary_1.getBinaryNodeChildString)(productNode, 'id');
162
- const mediaNode = (0, WABinary_1.getBinaryNodeChild)(productNode, 'media');
163
- const statusInfoNode = (0, WABinary_1.getBinaryNodeChild)(productNode, 'status_info');
163
+ const id = (0, index_js_1.getBinaryNodeChildString)(productNode, 'id');
164
+ const mediaNode = (0, index_js_1.getBinaryNodeChild)(productNode, 'media');
165
+ const statusInfoNode = (0, index_js_1.getBinaryNodeChild)(productNode, 'status_info');
164
166
  const product = {
165
167
  id,
166
168
  imageUrls: parseImageUrls(mediaNode),
167
169
  reviewStatus: {
168
- whatsapp: (0, WABinary_1.getBinaryNodeChildString)(statusInfoNode, 'status'),
170
+ whatsapp: (0, index_js_1.getBinaryNodeChildString)(statusInfoNode, 'status')
169
171
  },
170
172
  availability: 'in stock',
171
- name: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'name'),
172
- retailerId: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'retailer_id'),
173
- url: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'url'),
174
- description: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'description'),
175
- price: +(0, WABinary_1.getBinaryNodeChildString)(productNode, 'price'),
176
- currency: (0, WABinary_1.getBinaryNodeChildString)(productNode, 'currency'),
177
- isHidden,
173
+ name: (0, index_js_1.getBinaryNodeChildString)(productNode, 'name'),
174
+ retailerId: (0, index_js_1.getBinaryNodeChildString)(productNode, 'retailer_id'),
175
+ url: (0, index_js_1.getBinaryNodeChildString)(productNode, 'url'),
176
+ description: (0, index_js_1.getBinaryNodeChildString)(productNode, 'description'),
177
+ price: +(0, index_js_1.getBinaryNodeChildString)(productNode, 'price'),
178
+ currency: (0, index_js_1.getBinaryNodeChildString)(productNode, 'currency'),
179
+ isHidden
178
180
  };
179
181
  return product;
180
182
  };
@@ -185,7 +187,9 @@ exports.parseProductNode = parseProductNode;
185
187
  async function uploadingNecessaryImagesOfProduct(product, waUploadToServer, timeoutMs = 30000) {
186
188
  product = {
187
189
  ...product,
188
- images: product.images ? await (0, exports.uploadingNecessaryImages)(product.images, waUploadToServer, timeoutMs) : product.images
190
+ images: product.images
191
+ ? await (0, exports.uploadingNecessaryImages)(product.images, waUploadToServer, timeoutMs)
192
+ : product.images
189
193
  };
190
194
  return product;
191
195
  }
@@ -200,35 +204,37 @@ const uploadingNecessaryImages = async (images, waUploadToServer, timeoutMs = 30
200
204
  return { url };
201
205
  }
202
206
  }
203
- const { stream } = await (0, messages_media_1.getStream)(img);
207
+ const { stream } = await (0, messages_media_js_1.getStream)(img);
204
208
  const hasher = (0, crypto_1.createHash)('sha256');
205
- const contentBlocks = [];
209
+ const filePath = (0, path_1.join)((0, os_1.tmpdir)(), 'img' + (0, generics_js_1.generateMessageIDV2)());
210
+ const encFileWriteStream = (0, fs_1.createWriteStream)(filePath);
206
211
  for await (const block of stream) {
207
212
  hasher.update(block);
208
- contentBlocks.push(block);
213
+ encFileWriteStream.write(block);
209
214
  }
210
215
  const sha = hasher.digest('base64');
211
- const { directPath } = await waUploadToServer((0, messages_media_1.toReadable)(Buffer.concat(contentBlocks)), {
216
+ const { directPath } = await waUploadToServer(filePath, {
212
217
  mediaType: 'product-catalog-image',
213
218
  fileEncSha256B64: sha,
214
219
  timeoutMs
215
220
  });
216
- return { url: (0, messages_media_1.getUrlFromDirectPath)(directPath) };
221
+ await fs_1.promises.unlink(filePath).catch(err => console.log('Error deleting temp file ', err));
222
+ return { url: (0, messages_media_js_1.getUrlFromDirectPath)(directPath) };
217
223
  }));
218
224
  return results;
219
225
  };
220
226
  exports.uploadingNecessaryImages = uploadingNecessaryImages;
221
227
  const parseImageUrls = (mediaNode) => {
222
- const imgNode = (0, WABinary_1.getBinaryNodeChild)(mediaNode, 'image');
228
+ const imgNode = (0, index_js_1.getBinaryNodeChild)(mediaNode, 'image');
223
229
  return {
224
- requested: (0, WABinary_1.getBinaryNodeChildString)(imgNode, 'request_image_url'),
225
- original: (0, WABinary_1.getBinaryNodeChildString)(imgNode, 'original_image_url')
230
+ requested: (0, index_js_1.getBinaryNodeChildString)(imgNode, 'request_image_url'),
231
+ original: (0, index_js_1.getBinaryNodeChildString)(imgNode, 'original_image_url')
226
232
  };
227
233
  };
228
234
  const parseStatusInfo = (mediaNode) => {
229
- const node = (0, WABinary_1.getBinaryNodeChild)(mediaNode, 'status_info');
235
+ const node = (0, index_js_1.getBinaryNodeChild)(mediaNode, 'status_info');
230
236
  return {
231
- status: (0, WABinary_1.getBinaryNodeChildString)(node, 'status'),
232
- canAppeal: (0, WABinary_1.getBinaryNodeChildString)(node, 'can_appeal') === 'true',
237
+ status: (0, index_js_1.getBinaryNodeChildString)(node, 'status'),
238
+ canAppeal: (0, index_js_1.getBinaryNodeChildString)(node, 'can_appeal') === 'true'
233
239
  };
234
240
  };
@@ -0,0 +1,70 @@
1
+ import { proto } from '../../WAProto/index.js';
2
+ import type { BaileysEventEmitter, ChatModification, ChatMutation, Contact, InitialAppStateSyncOptions, LTHashState, WAPatchCreate, WAPatchName } from '../Types/index.js';
3
+ import { type BinaryNode } from '../WABinary/index.js';
4
+ import type { ILogger } from './logger.js';
5
+ type FetchAppStateSyncKey = (keyId: string) => Promise<proto.Message.IAppStateSyncKeyData | null | undefined>;
6
+ export type ChatMutationMap = {
7
+ [index: string]: ChatMutation;
8
+ };
9
+ export declare const newLTHashState: () => LTHashState;
10
+ export declare const encodeSyncdPatch: ({ type, index, syncAction, apiVersion, operation }: WAPatchCreate, myAppStateKeyId: string, state: LTHashState, getAppStateSyncKey: FetchAppStateSyncKey) => Promise<{
11
+ patch: proto.ISyncdPatch;
12
+ state: LTHashState;
13
+ }>;
14
+ export declare const decodeSyncdMutations: (msgMutations: (proto.ISyncdMutation | proto.ISyncdRecord)[], initialState: LTHashState, getAppStateSyncKey: FetchAppStateSyncKey, onMutation: (mutation: ChatMutation) => void, validateMacs: boolean) => Promise<{
15
+ hash: Buffer<ArrayBuffer>;
16
+ indexValueMap: {
17
+ [indexMacBase64: string]: {
18
+ valueMac: Uint8Array | Buffer;
19
+ };
20
+ };
21
+ }>;
22
+ export declare const decodeSyncdPatch: (msg: proto.ISyncdPatch, name: WAPatchName, initialState: LTHashState, getAppStateSyncKey: FetchAppStateSyncKey, onMutation: (mutation: ChatMutation) => void, validateMacs: boolean) => Promise<{
23
+ hash: Buffer<ArrayBuffer>;
24
+ indexValueMap: {
25
+ [indexMacBase64: string]: {
26
+ valueMac: Uint8Array | Buffer;
27
+ };
28
+ };
29
+ }>;
30
+ export declare const extractSyncdPatches: (result: BinaryNode, options: RequestInit) => Promise<{
31
+ critical_unblock_low: {
32
+ patches: proto.ISyncdPatch[];
33
+ hasMorePatches: boolean;
34
+ snapshot?: proto.ISyncdSnapshot;
35
+ };
36
+ regular_high: {
37
+ patches: proto.ISyncdPatch[];
38
+ hasMorePatches: boolean;
39
+ snapshot?: proto.ISyncdSnapshot;
40
+ };
41
+ regular_low: {
42
+ patches: proto.ISyncdPatch[];
43
+ hasMorePatches: boolean;
44
+ snapshot?: proto.ISyncdSnapshot;
45
+ };
46
+ critical_block: {
47
+ patches: proto.ISyncdPatch[];
48
+ hasMorePatches: boolean;
49
+ snapshot?: proto.ISyncdSnapshot;
50
+ };
51
+ regular: {
52
+ patches: proto.ISyncdPatch[];
53
+ hasMorePatches: boolean;
54
+ snapshot?: proto.ISyncdSnapshot;
55
+ };
56
+ }>;
57
+ export declare const downloadExternalBlob: (blob: proto.IExternalBlobReference, options: RequestInit) => Promise<Buffer<ArrayBuffer>>;
58
+ export declare const downloadExternalPatch: (blob: proto.IExternalBlobReference, options: RequestInit) => Promise<proto.SyncdMutations>;
59
+ export declare const decodeSyncdSnapshot: (name: WAPatchName, snapshot: proto.ISyncdSnapshot, getAppStateSyncKey: FetchAppStateSyncKey, minimumVersionNumber: number | undefined, validateMacs?: boolean) => Promise<{
60
+ state: LTHashState;
61
+ mutationMap: ChatMutationMap;
62
+ }>;
63
+ export declare const decodePatches: (name: WAPatchName, syncds: proto.ISyncdPatch[], initial: LTHashState, getAppStateSyncKey: FetchAppStateSyncKey, options: RequestInit, minimumVersionNumber?: number, logger?: ILogger, validateMacs?: boolean) => Promise<{
64
+ state: LTHashState;
65
+ mutationMap: ChatMutationMap;
66
+ }>;
67
+ export declare const chatModificationToAppPatch: (mod: ChatModification, jid: string) => WAPatchCreate;
68
+ export declare const processSyncAction: (syncAction: ChatMutation, ev: BaileysEventEmitter, me: Contact, initialSyncOpts?: InitialAppStateSyncOptions, logger?: ILogger) => void;
69
+ export {};
70
+ //# sourceMappingURL=chat-utils.d.ts.map