@oxidezap/baileyrs 0.0.26 → 0.0.28

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 (531) hide show
  1. package/README.md +31 -460
  2. package/lib/Bridge/adapt.d.ts +2 -0
  3. package/lib/Bridge/adapt.d.ts.map +1 -1
  4. package/lib/Bridge/adapt.js +2 -1
  5. package/lib/Bridge/adapt.js.map +1 -1
  6. package/lib/Bridge/history-sync-wire.d.ts +17 -0
  7. package/lib/Bridge/history-sync-wire.d.ts.map +1 -0
  8. package/lib/Bridge/history-sync-wire.js +61 -0
  9. package/lib/Bridge/history-sync-wire.js.map +1 -0
  10. package/lib/Bridge/index.d.ts +1 -1
  11. package/lib/Bridge/index.d.ts.map +1 -1
  12. package/lib/Bridge/index.js +3 -3
  13. package/lib/Bridge/index.js.map +1 -1
  14. package/lib/Bridge/primitives.d.ts +4 -0
  15. package/lib/Bridge/primitives.d.ts.map +1 -1
  16. package/lib/Bridge/primitives.js +14 -0
  17. package/lib/Bridge/primitives.js.map +1 -1
  18. package/lib/Bridge/schema.d.ts +9 -2
  19. package/lib/Bridge/schema.d.ts.map +1 -1
  20. package/lib/Bridge/schema.js +263 -35
  21. package/lib/Bridge/schema.js.map +1 -1
  22. package/lib/Bridge/types.d.ts +117 -3
  23. package/lib/Bridge/types.d.ts.map +1 -1
  24. package/lib/Compatibility/group-metadata.d.ts +9 -0
  25. package/lib/Compatibility/group-metadata.d.ts.map +1 -0
  26. package/lib/Compatibility/group-metadata.js +70 -0
  27. package/lib/Compatibility/group-metadata.js.map +1 -0
  28. package/lib/Compatibility/group-notifications.d.ts +22 -0
  29. package/lib/Compatibility/group-notifications.d.ts.map +1 -0
  30. package/lib/Compatibility/group-notifications.js +307 -0
  31. package/lib/Compatibility/group-notifications.js.map +1 -0
  32. package/lib/Compatibility/group-stub-params.d.ts +32 -0
  33. package/lib/Compatibility/group-stub-params.d.ts.map +1 -0
  34. package/lib/Compatibility/group-stub-params.js +57 -0
  35. package/lib/Compatibility/group-stub-params.js.map +1 -0
  36. package/lib/Compatibility/internal/async-primitives.d.ts +16 -0
  37. package/lib/Compatibility/internal/async-primitives.d.ts.map +1 -0
  38. package/lib/Compatibility/internal/async-primitives.js +42 -0
  39. package/lib/Compatibility/internal/async-primitives.js.map +1 -0
  40. package/lib/Compatibility/internal/auth-state.d.ts +15 -0
  41. package/lib/Compatibility/internal/auth-state.d.ts.map +1 -0
  42. package/lib/Compatibility/internal/auth-state.js +21 -0
  43. package/lib/Compatibility/internal/auth-state.js.map +1 -0
  44. package/lib/Compatibility/internal/cache-store.d.ts +7 -0
  45. package/lib/Compatibility/internal/cache-store.d.ts.map +1 -0
  46. package/lib/Compatibility/internal/cache-store.js +19 -0
  47. package/lib/Compatibility/internal/cache-store.js.map +1 -0
  48. package/lib/Compatibility/internal/expiring-lru-map.d.ts +21 -0
  49. package/lib/Compatibility/internal/expiring-lru-map.d.ts.map +1 -0
  50. package/lib/Compatibility/internal/expiring-lru-map.js +68 -0
  51. package/lib/Compatibility/internal/expiring-lru-map.js.map +1 -0
  52. package/lib/Compatibility/internal/make-mutex.d.ts +7 -0
  53. package/lib/Compatibility/internal/make-mutex.d.ts.map +1 -0
  54. package/lib/Compatibility/internal/make-mutex.js +31 -0
  55. package/lib/Compatibility/internal/make-mutex.js.map +1 -0
  56. package/lib/Compatibility/internal/native-memory-store.d.ts +6 -0
  57. package/lib/Compatibility/internal/native-memory-store.d.ts.map +1 -0
  58. package/lib/Compatibility/internal/native-memory-store.js +8 -0
  59. package/lib/Compatibility/internal/native-memory-store.js.map +1 -0
  60. package/lib/Compatibility/internal/numeric-enum.d.ts +8 -0
  61. package/lib/Compatibility/internal/numeric-enum.d.ts.map +1 -0
  62. package/lib/Compatibility/internal/numeric-enum.js +11 -0
  63. package/lib/Compatibility/internal/numeric-enum.js.map +1 -0
  64. package/lib/Compatibility/internal/signal-key-store.d.ts +9 -0
  65. package/lib/Compatibility/internal/signal-key-store.d.ts.map +1 -0
  66. package/lib/Compatibility/internal/signal-key-store.js +17 -0
  67. package/lib/Compatibility/internal/signal-key-store.js.map +1 -0
  68. package/lib/Compatibility/legacy-store/adapter.d.ts +4 -0
  69. package/lib/Compatibility/legacy-store/adapter.d.ts.map +1 -0
  70. package/lib/Compatibility/legacy-store/adapter.js +301 -0
  71. package/lib/Compatibility/legacy-store/adapter.js.map +1 -0
  72. package/lib/Compatibility/legacy-store/codecs/basic.d.ts +6 -0
  73. package/lib/Compatibility/legacy-store/codecs/basic.d.ts.map +1 -0
  74. package/lib/Compatibility/legacy-store/codecs/basic.js +184 -0
  75. package/lib/Compatibility/legacy-store/codecs/basic.js.map +1 -0
  76. package/lib/Compatibility/legacy-store/codecs/index.d.ts +6 -0
  77. package/lib/Compatibility/legacy-store/codecs/index.d.ts.map +1 -0
  78. package/lib/Compatibility/legacy-store/codecs/index.js +7 -0
  79. package/lib/Compatibility/legacy-store/codecs/index.js.map +1 -0
  80. package/lib/Compatibility/legacy-store/codecs/signal.d.ts +8 -0
  81. package/lib/Compatibility/legacy-store/codecs/signal.d.ts.map +1 -0
  82. package/lib/Compatibility/legacy-store/codecs/signal.js +219 -0
  83. package/lib/Compatibility/legacy-store/codecs/signal.js.map +1 -0
  84. package/lib/Compatibility/legacy-store/common.d.ts +25 -0
  85. package/lib/Compatibility/legacy-store/common.d.ts.map +1 -0
  86. package/lib/Compatibility/legacy-store/common.js +112 -0
  87. package/lib/Compatibility/legacy-store/common.js.map +1 -0
  88. package/lib/Compatibility/legacy-store/constants.d.ts +226 -0
  89. package/lib/Compatibility/legacy-store/constants.d.ts.map +1 -0
  90. package/lib/Compatibility/legacy-store/constants.js +199 -0
  91. package/lib/Compatibility/legacy-store/constants.js.map +1 -0
  92. package/lib/Compatibility/legacy-store/device.d.ts +9 -0
  93. package/lib/Compatibility/legacy-store/device.d.ts.map +1 -0
  94. package/lib/Compatibility/legacy-store/device.js +192 -0
  95. package/lib/Compatibility/legacy-store/device.js.map +1 -0
  96. package/lib/Compatibility/legacy-store/multi-file.d.ts +6 -0
  97. package/lib/Compatibility/legacy-store/multi-file.d.ts.map +1 -0
  98. package/lib/Compatibility/legacy-store/multi-file.js +84 -0
  99. package/lib/Compatibility/legacy-store/multi-file.js.map +1 -0
  100. package/lib/Compatibility/legacy-store/native-projection.d.ts +8 -0
  101. package/lib/Compatibility/legacy-store/native-projection.d.ts.map +1 -0
  102. package/lib/Compatibility/legacy-store/native-projection.js +109 -0
  103. package/lib/Compatibility/legacy-store/native-projection.js.map +1 -0
  104. package/lib/Compatibility/legacy-store/routing.d.ts +18 -0
  105. package/lib/Compatibility/legacy-store/routing.d.ts.map +1 -0
  106. package/lib/Compatibility/legacy-store/routing.js +162 -0
  107. package/lib/Compatibility/legacy-store/routing.js.map +1 -0
  108. package/lib/Compatibility/legacy-store/types.d.ts +41 -0
  109. package/lib/Compatibility/legacy-store/types.d.ts.map +1 -0
  110. package/lib/Compatibility/legacy-store/types.js +3 -0
  111. package/lib/Compatibility/legacy-store/types.js.map +1 -0
  112. package/lib/Compatibility/legacy-store/validation.d.ts +9 -0
  113. package/lib/Compatibility/legacy-store/validation.d.ts.map +1 -0
  114. package/lib/Compatibility/legacy-store/validation.js +49 -0
  115. package/lib/Compatibility/legacy-store/validation.js.map +1 -0
  116. package/lib/Compatibility/media-type.d.ts +10 -0
  117. package/lib/Compatibility/media-type.d.ts.map +1 -0
  118. package/lib/Compatibility/media-type.js +31 -0
  119. package/lib/Compatibility/media-type.js.map +1 -0
  120. package/lib/Compatibility/message-keys.d.ts +9 -0
  121. package/lib/Compatibility/message-keys.d.ts.map +1 -0
  122. package/lib/Compatibility/message-keys.js +15 -0
  123. package/lib/Compatibility/message-keys.js.map +1 -0
  124. package/lib/Compatibility/message-relay.d.ts +26 -0
  125. package/lib/Compatibility/message-relay.d.ts.map +1 -0
  126. package/lib/Compatibility/message-relay.js +61 -0
  127. package/lib/Compatibility/message-relay.js.map +1 -0
  128. package/lib/Compatibility/message-upsert.d.ts +11 -0
  129. package/lib/Compatibility/message-upsert.d.ts.map +1 -0
  130. package/lib/Compatibility/message-upsert.js +8 -0
  131. package/lib/Compatibility/message-upsert.js.map +1 -0
  132. package/lib/Compatibility/participating-refresh.d.ts +9 -0
  133. package/lib/Compatibility/participating-refresh.d.ts.map +1 -0
  134. package/lib/Compatibility/participating-refresh.js +14 -0
  135. package/lib/Compatibility/participating-refresh.js.map +1 -0
  136. package/lib/Compatibility/proto-runtime.d.ts +9 -0
  137. package/lib/Compatibility/proto-runtime.d.ts.map +1 -0
  138. package/lib/Compatibility/proto-runtime.js +567 -0
  139. package/lib/Compatibility/proto-runtime.js.map +1 -0
  140. package/lib/Compatibility/public-api/auth-utils.d.ts +6 -0
  141. package/lib/Compatibility/public-api/auth-utils.d.ts.map +1 -0
  142. package/lib/Compatibility/public-api/auth-utils.js +202 -0
  143. package/lib/Compatibility/public-api/auth-utils.js.map +1 -0
  144. package/lib/Compatibility/public-api/enum-types.d.ts +163 -0
  145. package/lib/Compatibility/public-api/enum-types.d.ts.map +1 -0
  146. package/lib/Compatibility/public-api/enum-types.js +10 -0
  147. package/lib/Compatibility/public-api/enum-types.js.map +1 -0
  148. package/lib/Compatibility/public-api/identity-change-handler.d.ts +42 -0
  149. package/lib/Compatibility/public-api/identity-change-handler.d.ts.map +1 -0
  150. package/lib/Compatibility/public-api/identity-change-handler.js +38 -0
  151. package/lib/Compatibility/public-api/identity-change-handler.js.map +1 -0
  152. package/lib/Compatibility/public-api/message-retry-manager.d.ts +62 -0
  153. package/lib/Compatibility/public-api/message-retry-manager.d.ts.map +1 -0
  154. package/lib/Compatibility/public-api/message-retry-manager.js +180 -0
  155. package/lib/Compatibility/public-api/message-retry-manager.js.map +1 -0
  156. package/lib/Compatibility/public-api/pre-key-manager.d.ts +14 -0
  157. package/lib/Compatibility/public-api/pre-key-manager.d.ts.map +1 -0
  158. package/lib/Compatibility/public-api/pre-key-manager.js +83 -0
  159. package/lib/Compatibility/public-api/pre-key-manager.js.map +1 -0
  160. package/lib/Compatibility/public-api/stanza-ack.d.ts +4 -0
  161. package/lib/Compatibility/public-api/stanza-ack.d.ts.map +1 -0
  162. package/lib/Compatibility/public-api/stanza-ack.js +20 -0
  163. package/lib/Compatibility/public-api/stanza-ack.js.map +1 -0
  164. package/lib/Compatibility/signal-repository.d.ts +12 -0
  165. package/lib/Compatibility/signal-repository.d.ts.map +1 -0
  166. package/lib/Compatibility/signal-repository.js +131 -0
  167. package/lib/Compatibility/signal-repository.js.map +1 -0
  168. package/lib/Compatibility/socket-results.d.ts +28 -0
  169. package/lib/Compatibility/socket-results.d.ts.map +1 -0
  170. package/lib/Compatibility/socket-results.js +72 -0
  171. package/lib/Compatibility/socket-results.js.map +1 -0
  172. package/lib/Compatibility/stanza-responses.d.ts +13 -0
  173. package/lib/Compatibility/stanza-responses.d.ts.map +1 -0
  174. package/lib/Compatibility/stanza-responses.js +16 -0
  175. package/lib/Compatibility/stanza-responses.js.map +1 -0
  176. package/lib/Compatibility/tagged-message-waiter.d.ts +5 -0
  177. package/lib/Compatibility/tagged-message-waiter.d.ts.map +1 -0
  178. package/lib/Compatibility/tagged-message-waiter.js +42 -0
  179. package/lib/Compatibility/tagged-message-waiter.js.map +1 -0
  180. package/lib/Compatibility/usync/adapter.d.ts +13 -0
  181. package/lib/Compatibility/usync/adapter.d.ts.map +1 -0
  182. package/lib/Compatibility/usync/adapter.js +291 -0
  183. package/lib/Compatibility/usync/adapter.js.map +1 -0
  184. package/lib/Compatibility/websocket-client.d.ts +40 -0
  185. package/lib/Compatibility/websocket-client.d.ts.map +1 -0
  186. package/lib/Compatibility/websocket-client.js +120 -0
  187. package/lib/Compatibility/websocket-client.js.map +1 -0
  188. package/lib/Defaults/index.d.ts +70 -3
  189. package/lib/Defaults/index.d.ts.map +1 -1
  190. package/lib/Defaults/index.js +107 -15
  191. package/lib/Defaults/index.js.map +1 -1
  192. package/lib/Platform/crypto.d.ts +6 -0
  193. package/lib/Platform/crypto.d.ts.map +1 -0
  194. package/lib/Platform/crypto.js +36 -0
  195. package/lib/Platform/crypto.js.map +1 -0
  196. package/lib/Socket/blocking.d.ts +2 -2
  197. package/lib/Socket/blocking.d.ts.map +1 -1
  198. package/lib/Socket/blocking.js +2 -1
  199. package/lib/Socket/blocking.js.map +1 -1
  200. package/lib/Socket/chat-actions.d.ts +2 -9
  201. package/lib/Socket/chat-actions.d.ts.map +1 -1
  202. package/lib/Socket/chat-actions.js +24 -13
  203. package/lib/Socket/chat-actions.js.map +1 -1
  204. package/lib/Socket/communities.d.ts +61 -0
  205. package/lib/Socket/communities.d.ts.map +1 -0
  206. package/lib/Socket/communities.js +72 -0
  207. package/lib/Socket/communities.js.map +1 -0
  208. package/lib/Socket/contacts.d.ts +4 -2
  209. package/lib/Socket/contacts.d.ts.map +1 -1
  210. package/lib/Socket/contacts.js +6 -4
  211. package/lib/Socket/contacts.js.map +1 -1
  212. package/lib/Socket/events.d.ts +13 -5
  213. package/lib/Socket/events.d.ts.map +1 -1
  214. package/lib/Socket/events.js +282 -57
  215. package/lib/Socket/events.js.map +1 -1
  216. package/lib/Socket/group-notifications.d.ts +1 -30
  217. package/lib/Socket/group-notifications.d.ts.map +1 -1
  218. package/lib/Socket/group-notifications.js +3 -268
  219. package/lib/Socket/group-notifications.js.map +1 -1
  220. package/lib/Socket/groups.d.ts +17 -36
  221. package/lib/Socket/groups.d.ts.map +1 -1
  222. package/lib/Socket/groups.js +111 -116
  223. package/lib/Socket/groups.js.map +1 -1
  224. package/lib/Socket/index.d.ts +140 -201
  225. package/lib/Socket/index.d.ts.map +1 -1
  226. package/lib/Socket/index.js +215 -345
  227. package/lib/Socket/index.js.map +1 -1
  228. package/lib/Socket/message-capping.d.ts +4 -0
  229. package/lib/Socket/message-capping.d.ts.map +1 -0
  230. package/lib/Socket/message-capping.js +22 -0
  231. package/lib/Socket/message-capping.js.map +1 -0
  232. package/lib/Socket/messages.d.ts +8 -14
  233. package/lib/Socket/messages.d.ts.map +1 -1
  234. package/lib/Socket/messages.js +74 -40
  235. package/lib/Socket/messages.js.map +1 -1
  236. package/lib/Socket/newsletter.d.ts +5 -0
  237. package/lib/Socket/newsletter.d.ts.map +1 -1
  238. package/lib/Socket/newsletter.js +7 -0
  239. package/lib/Socket/newsletter.js.map +1 -1
  240. package/lib/Socket/prekeys.d.ts +10 -0
  241. package/lib/Socket/prekeys.d.ts.map +1 -0
  242. package/lib/Socket/prekeys.js +21 -0
  243. package/lib/Socket/prekeys.js.map +1 -0
  244. package/lib/Socket/presence.d.ts +3 -3
  245. package/lib/Socket/presence.d.ts.map +1 -1
  246. package/lib/Socket/presence.js +2 -2
  247. package/lib/Socket/presence.js.map +1 -1
  248. package/lib/Socket/profile.d.ts +6 -8
  249. package/lib/Socket/profile.d.ts.map +1 -1
  250. package/lib/Socket/profile.js +18 -17
  251. package/lib/Socket/profile.js.map +1 -1
  252. package/lib/Socket/reachout.js +1 -1
  253. package/lib/Socket/transport.d.ts.map +1 -1
  254. package/lib/Socket/transport.js +13 -1
  255. package/lib/Socket/transport.js.map +1 -1
  256. package/lib/Socket/types.d.ts +4 -2
  257. package/lib/Socket/types.d.ts.map +1 -1
  258. package/lib/Socket/types.js.map +1 -1
  259. package/lib/Socket/usync.d.ts +12 -0
  260. package/lib/Socket/usync.d.ts.map +1 -0
  261. package/lib/Socket/usync.js +27 -0
  262. package/lib/Socket/usync.js.map +1 -0
  263. package/lib/Types/Auth.d.ts +28 -30
  264. package/lib/Types/Auth.d.ts.map +1 -1
  265. package/lib/Types/Auth.js +1 -1
  266. package/lib/Types/Auth.js.map +1 -1
  267. package/lib/Types/BinaryNode.d.ts +0 -4
  268. package/lib/Types/BinaryNode.d.ts.map +1 -1
  269. package/lib/Types/Bussines.d.ts +1 -1
  270. package/lib/Types/Bussines.d.ts.map +1 -1
  271. package/lib/Types/Call.d.ts +3 -1
  272. package/lib/Types/Call.d.ts.map +1 -1
  273. package/lib/Types/Chat.d.ts +2 -2
  274. package/lib/Types/Chat.d.ts.map +1 -1
  275. package/lib/Types/Events.d.ts +16 -5
  276. package/lib/Types/Events.d.ts.map +1 -1
  277. package/lib/Types/Events.js +1 -1
  278. package/lib/Types/Events.js.map +1 -1
  279. package/lib/Types/GroupMetadata.d.ts +4 -0
  280. package/lib/Types/GroupMetadata.d.ts.map +1 -1
  281. package/lib/Types/Label.d.ts +3 -23
  282. package/lib/Types/Label.d.ts.map +1 -1
  283. package/lib/Types/Label.js +24 -23
  284. package/lib/Types/Label.js.map +1 -1
  285. package/lib/Types/LabelAssociation.d.ts +5 -6
  286. package/lib/Types/LabelAssociation.d.ts.map +1 -1
  287. package/lib/Types/LabelAssociation.js +4 -5
  288. package/lib/Types/LabelAssociation.js.map +1 -1
  289. package/lib/Types/Message.d.ts +45 -10
  290. package/lib/Types/Message.d.ts.map +1 -1
  291. package/lib/Types/Message.js +5 -7
  292. package/lib/Types/Message.js.map +1 -1
  293. package/lib/Types/Newsletter.d.ts +5 -28
  294. package/lib/Types/Newsletter.d.ts.map +1 -1
  295. package/lib/Types/Newsletter.js +34 -30
  296. package/lib/Types/Newsletter.js.map +1 -1
  297. package/lib/Types/Product.d.ts +75 -0
  298. package/lib/Types/Product.d.ts.map +1 -0
  299. package/lib/Types/Product.js +2 -0
  300. package/lib/Types/Product.js.map +1 -0
  301. package/lib/Types/Reachout.d.ts +3 -18
  302. package/lib/Types/Reachout.d.ts.map +1 -1
  303. package/lib/Types/Reachout.js +20 -19
  304. package/lib/Types/Reachout.js.map +1 -1
  305. package/lib/Types/Signal.d.ts +91 -0
  306. package/lib/Types/Signal.d.ts.map +1 -0
  307. package/lib/Types/Signal.js +2 -0
  308. package/lib/Types/Signal.js.map +1 -0
  309. package/lib/Types/Socket.d.ts +76 -30
  310. package/lib/Types/Socket.d.ts.map +1 -1
  311. package/lib/Types/State.d.ts +19 -0
  312. package/lib/Types/State.d.ts.map +1 -1
  313. package/lib/Types/State.js +26 -1
  314. package/lib/Types/State.js.map +1 -1
  315. package/lib/Types/USync.d.ts +9 -0
  316. package/lib/Types/USync.d.ts.map +1 -0
  317. package/lib/Types/USync.js +2 -0
  318. package/lib/Types/USync.js.map +1 -0
  319. package/lib/Types/index.d.ts +9 -12
  320. package/lib/Types/index.d.ts.map +1 -1
  321. package/lib/Types/index.js +30 -30
  322. package/lib/Types/index.js.map +1 -1
  323. package/lib/Utils/auth-utils.d.ts +2 -0
  324. package/lib/Utils/auth-utils.d.ts.map +1 -0
  325. package/lib/Utils/auth-utils.js +3 -0
  326. package/lib/Utils/auth-utils.js.map +1 -0
  327. package/lib/Utils/boom.d.ts +8 -32
  328. package/lib/Utils/boom.d.ts.map +1 -1
  329. package/lib/Utils/boom.js +7 -62
  330. package/lib/Utils/boom.js.map +1 -1
  331. package/lib/Utils/browser-utils.d.ts +1 -0
  332. package/lib/Utils/browser-utils.d.ts.map +1 -1
  333. package/lib/Utils/browser-utils.js +6 -0
  334. package/lib/Utils/browser-utils.js.map +1 -1
  335. package/lib/Utils/companion-reg-client-utils.d.ts +8 -0
  336. package/lib/Utils/companion-reg-client-utils.d.ts.map +1 -0
  337. package/lib/Utils/companion-reg-client-utils.js +32 -0
  338. package/lib/Utils/companion-reg-client-utils.js.map +1 -0
  339. package/lib/Utils/crypto.d.ts +31 -0
  340. package/lib/Utils/crypto.d.ts.map +1 -0
  341. package/lib/Utils/crypto.js +81 -0
  342. package/lib/Utils/crypto.js.map +1 -0
  343. package/lib/Utils/event-buffer.d.ts +15 -4
  344. package/lib/Utils/event-buffer.d.ts.map +1 -1
  345. package/lib/Utils/event-buffer.js +471 -34
  346. package/lib/Utils/event-buffer.js.map +1 -1
  347. package/lib/Utils/generics.d.ts +52 -15
  348. package/lib/Utils/generics.d.ts.map +1 -1
  349. package/lib/Utils/generics.js +269 -25
  350. package/lib/Utils/generics.js.map +1 -1
  351. package/lib/Utils/group-stub-params.d.ts +1 -28
  352. package/lib/Utils/group-stub-params.d.ts.map +1 -1
  353. package/lib/Utils/group-stub-params.js +2 -44
  354. package/lib/Utils/group-stub-params.js.map +1 -1
  355. package/lib/Utils/identity-change-handler.d.ts +2 -0
  356. package/lib/Utils/identity-change-handler.d.ts.map +1 -0
  357. package/lib/Utils/identity-change-handler.js +4 -0
  358. package/lib/Utils/identity-change-handler.js.map +1 -0
  359. package/lib/Utils/index.d.ts +9 -0
  360. package/lib/Utils/index.d.ts.map +1 -1
  361. package/lib/Utils/index.js +19 -10
  362. package/lib/Utils/index.js.map +1 -1
  363. package/lib/Utils/logger.d.ts.map +1 -1
  364. package/lib/Utils/message-retry-manager.d.ts +2 -0
  365. package/lib/Utils/message-retry-manager.d.ts.map +1 -0
  366. package/lib/Utils/message-retry-manager.js +4 -0
  367. package/lib/Utils/message-retry-manager.js.map +1 -0
  368. package/lib/Utils/messages-media.d.ts +28 -6
  369. package/lib/Utils/messages-media.d.ts.map +1 -1
  370. package/lib/Utils/messages-media.js +119 -1
  371. package/lib/Utils/messages-media.js.map +1 -1
  372. package/lib/Utils/messages.d.ts +33 -9
  373. package/lib/Utils/messages.d.ts.map +1 -1
  374. package/lib/Utils/messages.js +106 -33
  375. package/lib/Utils/messages.js.map +1 -1
  376. package/lib/Utils/native-crypto-provider.d.ts +10 -8
  377. package/lib/Utils/native-crypto-provider.d.ts.map +1 -1
  378. package/lib/Utils/native-crypto-provider.js +13 -56
  379. package/lib/Utils/native-crypto-provider.js.map +1 -1
  380. package/lib/Utils/pre-key-manager.d.ts +2 -0
  381. package/lib/Utils/pre-key-manager.d.ts.map +1 -0
  382. package/lib/Utils/pre-key-manager.js +3 -0
  383. package/lib/Utils/pre-key-manager.js.map +1 -0
  384. package/lib/Utils/process-history-message.d.ts +15 -4
  385. package/lib/Utils/process-history-message.d.ts.map +1 -1
  386. package/lib/Utils/process-history-message.js +162 -95
  387. package/lib/Utils/process-history-message.js.map +1 -1
  388. package/lib/Utils/process-message.d.ts +25 -0
  389. package/lib/Utils/process-message.d.ts.map +1 -0
  390. package/lib/Utils/process-message.js +79 -0
  391. package/lib/Utils/process-message.js.map +1 -0
  392. package/lib/Utils/signal.d.ts +29 -0
  393. package/lib/Utils/signal.d.ts.map +1 -0
  394. package/lib/Utils/signal.js +133 -0
  395. package/lib/Utils/signal.js.map +1 -0
  396. package/lib/Utils/sparse-array.d.ts +9 -0
  397. package/lib/Utils/sparse-array.d.ts.map +1 -0
  398. package/lib/Utils/sparse-array.js +12 -0
  399. package/lib/Utils/sparse-array.js.map +1 -0
  400. package/lib/Utils/stanza-ack.d.ts +2 -0
  401. package/lib/Utils/stanza-ack.d.ts.map +1 -0
  402. package/lib/Utils/stanza-ack.js +3 -0
  403. package/lib/Utils/stanza-ack.js.map +1 -0
  404. package/lib/Utils/use-bridge-store.d.ts.map +1 -1
  405. package/lib/Utils/use-bridge-store.js +191 -7
  406. package/lib/Utils/use-bridge-store.js.map +1 -1
  407. package/lib/Utils/use-memory-store.d.ts +8 -4
  408. package/lib/Utils/use-memory-store.d.ts.map +1 -1
  409. package/lib/Utils/use-memory-store.js +87 -10
  410. package/lib/Utils/use-memory-store.js.map +1 -1
  411. package/lib/Utils/use-multi-file-auth-state.d.ts +4 -2
  412. package/lib/Utils/use-multi-file-auth-state.d.ts.map +1 -1
  413. package/lib/Utils/use-multi-file-auth-state.js +13 -5
  414. package/lib/Utils/use-multi-file-auth-state.js.map +1 -1
  415. package/lib/Utils/wrap-legacy-store.d.ts +8 -32
  416. package/lib/Utils/wrap-legacy-store.d.ts.map +1 -1
  417. package/lib/Utils/wrap-legacy-store.js +7 -1214
  418. package/lib/Utils/wrap-legacy-store.js.map +1 -1
  419. package/lib/WABinary/generic-utils.d.ts +8 -0
  420. package/lib/WABinary/generic-utils.d.ts.map +1 -1
  421. package/lib/WABinary/generic-utils.js +63 -1
  422. package/lib/WABinary/generic-utils.js.map +1 -1
  423. package/lib/WABinary/index.js +2 -2
  424. package/lib/WABinary/jid-utils.d.ts +22 -10
  425. package/lib/WABinary/jid-utils.d.ts.map +1 -1
  426. package/lib/WABinary/jid-utils.js +40 -9
  427. package/lib/WABinary/jid-utils.js.map +1 -1
  428. package/lib/WAProto/compatibility-schema.d.ts +25 -0
  429. package/lib/WAProto/compatibility-schema.d.ts.map +1 -0
  430. package/lib/WAProto/compatibility-schema.js +6 -0
  431. package/lib/WAProto/compatibility-schema.js.map +1 -0
  432. package/lib/WAProto/runtime.d.ts +14019 -0
  433. package/lib/WAProto/runtime.js +17 -0
  434. package/lib/WAProto/runtime.js.map +1 -0
  435. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.d.ts +27 -0
  436. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.d.ts.map +1 -0
  437. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js +39 -0
  438. package/lib/WAUSync/Protocols/USyncBotProfileProtocol.js.map +1 -0
  439. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts +10 -0
  440. package/lib/WAUSync/Protocols/USyncContactProtocol.d.ts.map +1 -0
  441. package/lib/WAUSync/Protocols/USyncContactProtocol.js +33 -0
  442. package/lib/WAUSync/Protocols/USyncContactProtocol.js.map +1 -0
  443. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts +23 -0
  444. package/lib/WAUSync/Protocols/USyncDeviceProtocol.d.ts.map +1 -0
  445. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js +41 -0
  446. package/lib/WAUSync/Protocols/USyncDeviceProtocol.js.map +1 -0
  447. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts +13 -0
  448. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.d.ts.map +1 -0
  449. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js +19 -0
  450. package/lib/WAUSync/Protocols/USyncDisappearingModeProtocol.js.map +1 -0
  451. package/lib/WAUSync/Protocols/USyncLIDProtocol.d.ts +10 -0
  452. package/lib/WAUSync/Protocols/USyncLIDProtocol.d.ts.map +1 -0
  453. package/lib/WAUSync/Protocols/USyncLIDProtocol.js +15 -0
  454. package/lib/WAUSync/Protocols/USyncLIDProtocol.js.map +1 -0
  455. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts +13 -0
  456. package/lib/WAUSync/Protocols/USyncStatusProtocol.d.ts.map +1 -0
  457. package/lib/WAUSync/Protocols/USyncStatusProtocol.js +25 -0
  458. package/lib/WAUSync/Protocols/USyncStatusProtocol.js.map +1 -0
  459. package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts +10 -0
  460. package/lib/WAUSync/Protocols/USyncUsernameProtocol.d.ts.map +1 -0
  461. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js +21 -0
  462. package/lib/WAUSync/Protocols/USyncUsernameProtocol.js.map +1 -0
  463. package/lib/WAUSync/Protocols/index.d.ts +6 -0
  464. package/lib/WAUSync/Protocols/index.d.ts.map +1 -0
  465. package/lib/WAUSync/Protocols/index.js +6 -0
  466. package/lib/WAUSync/Protocols/index.js.map +1 -0
  467. package/lib/WAUSync/USyncQuery.d.ts +30 -0
  468. package/lib/WAUSync/USyncQuery.d.ts.map +1 -0
  469. package/lib/WAUSync/USyncQuery.js +78 -0
  470. package/lib/WAUSync/USyncQuery.js.map +1 -0
  471. package/lib/WAUSync/USyncUser.d.ts +17 -0
  472. package/lib/WAUSync/USyncUser.d.ts.map +1 -0
  473. package/lib/WAUSync/USyncUser.js +31 -0
  474. package/lib/WAUSync/USyncUser.js.map +1 -0
  475. package/lib/WAUSync/index.d.ts +4 -0
  476. package/lib/WAUSync/index.d.ts.map +1 -0
  477. package/lib/WAUSync/index.js +4 -0
  478. package/lib/WAUSync/index.js.map +1 -0
  479. package/lib/index.d.ts +2 -1
  480. package/lib/index.d.ts.map +1 -1
  481. package/lib/index.js +9 -9
  482. package/lib/index.js.map +1 -1
  483. package/package.json +33 -15
  484. package/lib/Bridge/__tests__/adapt.test.d.ts +0 -2
  485. package/lib/Bridge/__tests__/adapt.test.d.ts.map +0 -1
  486. package/lib/Bridge/__tests__/adapt.test.js +0 -387
  487. package/lib/Bridge/__tests__/adapt.test.js.map +0 -1
  488. package/lib/Bridge/__tests__/dts-drift.test.d.ts +0 -13
  489. package/lib/Bridge/__tests__/dts-drift.test.d.ts.map +0 -1
  490. package/lib/Bridge/__tests__/dts-drift.test.js +0 -90
  491. package/lib/Bridge/__tests__/dts-drift.test.js.map +0 -1
  492. package/lib/Bridge/__tests__/fixtures.d.ts +0 -192
  493. package/lib/Bridge/__tests__/fixtures.d.ts.map +0 -1
  494. package/lib/Bridge/__tests__/fixtures.js +0 -99
  495. package/lib/Bridge/__tests__/fixtures.js.map +0 -1
  496. package/lib/Utils/__tests__/_legacy-store-fixtures.d.ts +0 -73
  497. package/lib/Utils/__tests__/_legacy-store-fixtures.d.ts.map +0 -1
  498. package/lib/Utils/__tests__/_legacy-store-fixtures.js +0 -113
  499. package/lib/Utils/__tests__/_legacy-store-fixtures.js.map +0 -1
  500. package/lib/Utils/__tests__/wrap-legacy-store-coverage.test.d.ts +0 -10
  501. package/lib/Utils/__tests__/wrap-legacy-store-coverage.test.d.ts.map +0 -1
  502. package/lib/Utils/__tests__/wrap-legacy-store-coverage.test.js +0 -291
  503. package/lib/Utils/__tests__/wrap-legacy-store-coverage.test.js.map +0 -1
  504. package/lib/Utils/__tests__/wrap-legacy-store-lid-mapping.test.d.ts +0 -8
  505. package/lib/Utils/__tests__/wrap-legacy-store-lid-mapping.test.d.ts.map +0 -1
  506. package/lib/Utils/__tests__/wrap-legacy-store-lid-mapping.test.js +0 -91
  507. package/lib/Utils/__tests__/wrap-legacy-store-lid-mapping.test.js.map +0 -1
  508. package/lib/Utils/__tests__/wrap-legacy-store-sender-key.test.d.ts +0 -10
  509. package/lib/Utils/__tests__/wrap-legacy-store-sender-key.test.d.ts.map +0 -1
  510. package/lib/Utils/__tests__/wrap-legacy-store-sender-key.test.js +0 -125
  511. package/lib/Utils/__tests__/wrap-legacy-store-sender-key.test.js.map +0 -1
  512. package/lib/Utils/__tests__/wrap-legacy-store-session-ratchet.test.d.ts +0 -2
  513. package/lib/Utils/__tests__/wrap-legacy-store-session-ratchet.test.d.ts.map +0 -1
  514. package/lib/Utils/__tests__/wrap-legacy-store-session-ratchet.test.js +0 -214
  515. package/lib/Utils/__tests__/wrap-legacy-store-session-ratchet.test.js.map +0 -1
  516. package/lib/Utils/__tests__/wrap-legacy-store-session.test.d.ts +0 -14
  517. package/lib/Utils/__tests__/wrap-legacy-store-session.test.d.ts.map +0 -1
  518. package/lib/Utils/__tests__/wrap-legacy-store-session.test.js +0 -305
  519. package/lib/Utils/__tests__/wrap-legacy-store-session.test.js.map +0 -1
  520. package/lib/Utils/bridge-call.d.ts +0 -22
  521. package/lib/Utils/bridge-call.d.ts.map +0 -1
  522. package/lib/Utils/bridge-call.js +0 -105
  523. package/lib/Utils/bridge-call.js.map +0 -1
  524. package/lib/Utils/lid-mapping-store.d.ts +0 -81
  525. package/lib/Utils/lid-mapping-store.d.ts.map +0 -1
  526. package/lib/Utils/lid-mapping-store.js +0 -126
  527. package/lib/Utils/lid-mapping-store.js.map +0 -1
  528. package/lib/__tests__/expect.d.ts +0 -44
  529. package/lib/__tests__/expect.d.ts.map +0 -1
  530. package/lib/__tests__/expect.js +0 -100
  531. package/lib/__tests__/expect.js.map +0 -1
@@ -1,90 +0,0 @@
1
- /**
2
- * Drift detection between the bridge's `WhatsAppEvent` union (the runtime
3
- * contract) and our adapter's `KNOWN_BRIDGE_EVENT_TYPES` (the set of types
4
- * we explicitly handle).
5
- *
6
- * When the bridge ships a new event variant or removes an existing one, this
7
- * test fails with a precise diff — long before the missing handler shows up
8
- * as a silently-dropped event in production. Pair with
9
- * `bun run revalidate` so any bridge bump that changes the event surface is
10
- * caught before merge.
11
- */
12
- import { readFileSync } from 'node:fs';
13
- import path from 'node:path';
14
- import { fileURLToPath } from 'node:url';
15
- import { describe, it } from 'node:test';
16
- import { KNOWN_BRIDGE_EVENT_TYPES } from "../adapt.js";
17
- import { expect } from "../../__tests__/expect.js";
18
- const `${process.platform === 'win32' ? '' : '/'}${/file:\/{2,3}(.+)\/[^/]/.exec(import.meta.url)[1]}` = path.dirname(fileURLToPath(import.meta.url));
19
- /** Resolve `whatsapp_rust_bridge.d.ts` from the installed package. */
20
- function loadBridgeDts() {
21
- const candidates = [
22
- path.resolve(`${process.platform === 'win32' ? '' : '/'}${/file:\/{2,3}(.+)\/[^/]/.exec(import.meta.url)[1]}`, '../../../node_modules/whatsapp-rust-bridge/pkg/whatsapp_rust_bridge.d.ts'),
23
- path.resolve(`${process.platform === 'win32' ? '' : '/'}${/file:\/{2,3}(.+)\/[^/]/.exec(import.meta.url)[1]}`, '../../../../whatsapp-rust-bridge/pkg/whatsapp_rust_bridge.d.ts')
24
- ];
25
- for (const candidate of candidates) {
26
- try {
27
- return readFileSync(candidate, 'utf8');
28
- }
29
- catch {
30
- /* try next */
31
- }
32
- }
33
- throw new Error(`Could not find whatsapp_rust_bridge.d.ts. Tried:\n ${candidates.join('\n ')}`);
34
- }
35
- /**
36
- * Extract every discriminator string from the `WhatsAppEvent` union. The
37
- * bridge declares it as:
38
- *
39
- * export type WhatsAppEvent =
40
- * | { type: 'connected'; data: ... }
41
- * | { type: 'disconnected'; data: ... }
42
- * ...
43
- * ;
44
- *
45
- * We slice from the `export type WhatsAppEvent =` line down to the
46
- * terminating `;` and pull out every quoted `type:` literal.
47
- */
48
- function extractWhatsAppEventTypes(dts) {
49
- const start = dts.indexOf('export type WhatsAppEvent =');
50
- if (start < 0)
51
- throw new Error('WhatsAppEvent union not found in .d.ts');
52
- const after = dts.slice(start);
53
- const end = after.indexOf(';\n');
54
- if (end < 0)
55
- throw new Error('WhatsAppEvent union has no terminator in .d.ts');
56
- const block = after.slice(0, end);
57
- // Match `type: 'foo'` or `type: "foo"` (the bridge currently uses single quotes
58
- // but stay forgiving).
59
- const re = /type:\s*['"]([a-z_]+)['"]/g;
60
- const seen = new Set();
61
- for (const m of block.matchAll(re)) {
62
- seen.add(m[1]);
63
- }
64
- if (seen.size === 0)
65
- throw new Error('Failed to parse any variant from WhatsAppEvent union');
66
- return [...seen].toSorted();
67
- }
68
- describe('Bridge .d.ts ↔ adapter drift', () => {
69
- const bridgeTypes = extractWhatsAppEventTypes(loadBridgeDts());
70
- it('every bridge event type from .d.ts is handled by the adapter', () => {
71
- const missing = bridgeTypes.filter(t => !KNOWN_BRIDGE_EVENT_TYPES.has(t));
72
- // If this fails, the bridge added a new variant we don't handle yet.
73
- // Add a `case` in `adaptBridgeEvent` and the matching string in
74
- // `KNOWN_BRIDGE_EVENT_TYPES`.
75
- expect(missing).toEqual([]);
76
- });
77
- it('KNOWN_BRIDGE_EVENT_TYPES has no entries the bridge no longer ships', () => {
78
- const stale = [...KNOWN_BRIDGE_EVENT_TYPES].filter(t => !bridgeTypes.includes(t));
79
- // If this fails, the bridge removed a variant we still claim to handle.
80
- // Remove the corresponding `case` from `adaptBridgeEvent` and the entry
81
- // from `KNOWN_BRIDGE_EVENT_TYPES`.
82
- expect(stale).toEqual([]);
83
- });
84
- it('parser found a non-trivial number of variants (sanity check)', () => {
85
- // If this drops to 0/few, the regex broke against a `.d.ts` reformat
86
- // and the two assertions above would silently pass.
87
- expect(bridgeTypes.length).toBeGreaterThanOrEqual(20);
88
- });
89
- });
90
- //# sourceMappingURL=dts-drift.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dts-drift.test.js","sourceRoot":"","sources":["../../../src/Bridge/__tests__/dts-drift.test.ts"],"names":[],"mappings":"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"}
@@ -1,192 +0,0 @@
1
- /**
2
- * Real bridge payloads kept verbatim. The PascalCase ones reproduce a
3
- * legacy-bridge serializer bug (variant names leaked instead of wire tags);
4
- * the `*WireFixture` ones reproduce what the bridge emits today (the literal
5
- * XML tag). Both must adapt to the same canonical event.
6
- */
7
- export declare const groupDemotePascalFixture: {
8
- readonly type: "group_update";
9
- readonly data: {
10
- readonly group_jid: {
11
- readonly user: "120363040237990503";
12
- readonly server: "g.us";
13
- readonly agent: 0;
14
- readonly device: 0;
15
- readonly integrator: 0;
16
- };
17
- readonly participant: {
18
- readonly user: "236395184570386";
19
- readonly server: "lid";
20
- readonly agent: 1;
21
- readonly device: 0;
22
- readonly integrator: 0;
23
- };
24
- readonly participant_pn: {
25
- readonly user: "559984726662";
26
- readonly server: "s.whatsapp.net";
27
- readonly agent: 0;
28
- readonly device: 0;
29
- readonly integrator: 0;
30
- };
31
- readonly timestamp: "2026-04-18T05:45:46Z";
32
- readonly is_lid_addressing_mode: true;
33
- readonly action: {
34
- readonly type: "Demote";
35
- readonly participants: readonly [{
36
- readonly jid: {
37
- readonly user: "65546133500078";
38
- readonly server: "lid";
39
- readonly agent: 1;
40
- readonly device: 0;
41
- readonly integrator: 0;
42
- };
43
- readonly phone_number: {
44
- readonly user: "559984246891";
45
- readonly server: "s.whatsapp.net";
46
- readonly agent: 0;
47
- readonly device: 0;
48
- readonly integrator: 0;
49
- };
50
- }];
51
- };
52
- };
53
- };
54
- export declare const groupPromotePascalFixture: {
55
- readonly type: "group_update";
56
- readonly data: {
57
- readonly group_jid: {
58
- readonly user: "120363040237990503";
59
- readonly server: "g.us";
60
- readonly agent: 0;
61
- readonly device: 0;
62
- readonly integrator: 0;
63
- };
64
- readonly participant: {
65
- readonly user: "236395184570386";
66
- readonly server: "lid";
67
- readonly agent: 1;
68
- readonly device: 0;
69
- readonly integrator: 0;
70
- };
71
- readonly participant_pn: {
72
- readonly user: "559984726662";
73
- readonly server: "s.whatsapp.net";
74
- readonly agent: 0;
75
- readonly device: 0;
76
- readonly integrator: 0;
77
- };
78
- readonly timestamp: "2026-04-18T05:45:49Z";
79
- readonly is_lid_addressing_mode: true;
80
- readonly action: {
81
- readonly type: "Promote";
82
- readonly participants: readonly [{
83
- readonly jid: {
84
- readonly user: "65546133500078";
85
- readonly server: "lid";
86
- readonly agent: 1;
87
- readonly device: 0;
88
- readonly integrator: 0;
89
- };
90
- readonly phone_number: {
91
- readonly user: "559984246891";
92
- readonly server: "s.whatsapp.net";
93
- readonly agent: 0;
94
- readonly device: 0;
95
- readonly integrator: 0;
96
- };
97
- }];
98
- };
99
- };
100
- };
101
- export declare const groupDemoteWireFixture: {
102
- readonly type: "group_update";
103
- readonly data: {
104
- readonly group_jid: {
105
- readonly user: "120363040237990503";
106
- readonly server: "g.us";
107
- };
108
- readonly participant: {
109
- readonly user: "236395184570386";
110
- readonly server: "lid";
111
- };
112
- readonly participant_pn: {
113
- readonly user: "559984726662";
114
- readonly server: "s.whatsapp.net";
115
- };
116
- readonly timestamp: 1776490677;
117
- readonly is_lid_addressing_mode: true;
118
- readonly action: {
119
- readonly type: "demote";
120
- readonly participants: readonly [{
121
- readonly jid: {
122
- readonly user: "65546133500078";
123
- readonly server: "lid";
124
- };
125
- readonly phone_number: {
126
- readonly user: "559984246891";
127
- readonly server: "s.whatsapp.net";
128
- };
129
- }];
130
- };
131
- };
132
- };
133
- /**
134
- * `Announce`/`NotAnnounce`/`RevokeInvite` are regression targets: the rust
135
- * variant names diverge from the wire tags (`announcement`/`not_announcement`/
136
- * `revoke`).
137
- */
138
- export declare const groupAnnouncementWireFixture: {
139
- readonly type: "group_update";
140
- readonly data: {
141
- readonly group_jid: {
142
- readonly user: "120363040237990503";
143
- readonly server: "g.us";
144
- };
145
- readonly participant: {
146
- readonly user: "236395184570386";
147
- readonly server: "lid";
148
- };
149
- readonly timestamp: 1776490700;
150
- readonly is_lid_addressing_mode: true;
151
- readonly action: {
152
- readonly type: "announcement";
153
- };
154
- };
155
- };
156
- export declare const groupNotAnnouncementWireFixture: {
157
- readonly type: "group_update";
158
- readonly data: {
159
- readonly group_jid: {
160
- readonly user: "120363040237990503";
161
- readonly server: "g.us";
162
- };
163
- readonly participant: {
164
- readonly user: "236395184570386";
165
- readonly server: "lid";
166
- };
167
- readonly timestamp: 1776490701;
168
- readonly is_lid_addressing_mode: true;
169
- readonly action: {
170
- readonly type: "not_announcement";
171
- };
172
- };
173
- };
174
- export declare const groupRevokeWireFixture: {
175
- readonly type: "group_update";
176
- readonly data: {
177
- readonly group_jid: {
178
- readonly user: "120363040237990503";
179
- readonly server: "g.us";
180
- };
181
- readonly participant: {
182
- readonly user: "236395184570386";
183
- readonly server: "lid";
184
- };
185
- readonly timestamp: 1776490702;
186
- readonly is_lid_addressing_mode: true;
187
- readonly action: {
188
- readonly type: "revoke";
189
- };
190
- };
191
- };
192
- //# sourceMappingURL=fixtures.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../../src/Bridge/__tests__/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkB3B,CAAA;AAEV,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkB5B,CAAA;AAEV,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkBzB,CAAA;AAEV;;;;GAIG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;CAS/B,CAAA;AAEV,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;CASlC,CAAA;AAEV,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;CASzB,CAAA"}
@@ -1,99 +0,0 @@
1
- /**
2
- * Real bridge payloads kept verbatim. The PascalCase ones reproduce a
3
- * legacy-bridge serializer bug (variant names leaked instead of wire tags);
4
- * the `*WireFixture` ones reproduce what the bridge emits today (the literal
5
- * XML tag). Both must adapt to the same canonical event.
6
- */
7
- export const groupDemotePascalFixture = {
8
- type: 'group_update',
9
- data: {
10
- group_jid: { user: '120363040237990503', server: 'g.us', agent: 0, device: 0, integrator: 0 },
11
- participant: { user: '236395184570386', server: 'lid', agent: 1, device: 0, integrator: 0 },
12
- participant_pn: { user: '559984726662', server: 's.whatsapp.net', agent: 0, device: 0, integrator: 0 },
13
- timestamp: '2026-04-18T05:45:46Z',
14
- is_lid_addressing_mode: true,
15
- action: {
16
- type: 'Demote',
17
- participants: [
18
- {
19
- jid: { user: '65546133500078', server: 'lid', agent: 1, device: 0, integrator: 0 },
20
- phone_number: { user: '559984246891', server: 's.whatsapp.net', agent: 0, device: 0, integrator: 0 }
21
- }
22
- ]
23
- }
24
- }
25
- };
26
- export const groupPromotePascalFixture = {
27
- type: 'group_update',
28
- data: {
29
- group_jid: { user: '120363040237990503', server: 'g.us', agent: 0, device: 0, integrator: 0 },
30
- participant: { user: '236395184570386', server: 'lid', agent: 1, device: 0, integrator: 0 },
31
- participant_pn: { user: '559984726662', server: 's.whatsapp.net', agent: 0, device: 0, integrator: 0 },
32
- timestamp: '2026-04-18T05:45:49Z',
33
- is_lid_addressing_mode: true,
34
- action: {
35
- type: 'Promote',
36
- participants: [
37
- {
38
- jid: { user: '65546133500078', server: 'lid', agent: 1, device: 0, integrator: 0 },
39
- phone_number: { user: '559984246891', server: 's.whatsapp.net', agent: 0, device: 0, integrator: 0 }
40
- }
41
- ]
42
- }
43
- }
44
- };
45
- export const groupDemoteWireFixture = {
46
- type: 'group_update',
47
- data: {
48
- group_jid: { user: '120363040237990503', server: 'g.us' },
49
- participant: { user: '236395184570386', server: 'lid' },
50
- participant_pn: { user: '559984726662', server: 's.whatsapp.net' },
51
- timestamp: 1776490677,
52
- is_lid_addressing_mode: true,
53
- action: {
54
- type: 'demote',
55
- participants: [
56
- {
57
- jid: { user: '65546133500078', server: 'lid' },
58
- phone_number: { user: '559984246891', server: 's.whatsapp.net' }
59
- }
60
- ]
61
- }
62
- }
63
- };
64
- /**
65
- * `Announce`/`NotAnnounce`/`RevokeInvite` are regression targets: the rust
66
- * variant names diverge from the wire tags (`announcement`/`not_announcement`/
67
- * `revoke`).
68
- */
69
- export const groupAnnouncementWireFixture = {
70
- type: 'group_update',
71
- data: {
72
- group_jid: { user: '120363040237990503', server: 'g.us' },
73
- participant: { user: '236395184570386', server: 'lid' },
74
- timestamp: 1776490700,
75
- is_lid_addressing_mode: true,
76
- action: { type: 'announcement' }
77
- }
78
- };
79
- export const groupNotAnnouncementWireFixture = {
80
- type: 'group_update',
81
- data: {
82
- group_jid: { user: '120363040237990503', server: 'g.us' },
83
- participant: { user: '236395184570386', server: 'lid' },
84
- timestamp: 1776490701,
85
- is_lid_addressing_mode: true,
86
- action: { type: 'not_announcement' }
87
- }
88
- };
89
- export const groupRevokeWireFixture = {
90
- type: 'group_update',
91
- data: {
92
- group_jid: { user: '120363040237990503', server: 'g.us' },
93
- participant: { user: '236395184570386', server: 'lid' },
94
- timestamp: 1776490702,
95
- is_lid_addressing_mode: true,
96
- action: { type: 'revoke' }
97
- }
98
- };
99
- //# sourceMappingURL=fixtures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../../src/Bridge/__tests__/fixtures.ts"],"names":[],"mappings":"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"}
@@ -1,73 +0,0 @@
1
- /**
2
- * Shared fixtures for `wrap-legacy-store` unit tests. The 4 sister test
3
- * files (sender-key / session / lid-mapping / coverage) all need the same
4
- * in-memory keys store + wrapped-store factory + byte-pattern generator.
5
- */
6
- /** Heterogeneous values held by the in-memory keys store. The bridge writes
7
- * raw `Buffer`s for Signal records, plain JS objects for sessions, and
8
- * strings for lid_mapping — `unknown` keeps each test honest about which. */
9
- export type MemKeysValue = Buffer | string | object | null;
10
- /** In-memory keys store mirroring upstream `useMultiFileAuthState`'s
11
- * `keys.get(type, ids[])` / `keys.set({ [type]: { [id]: value } })`. */
12
- export declare function makeMemKeys(): {
13
- raw: Record<string, Record<string, MemKeysValue>>;
14
- get(type: string, ids: string[]): Promise<Record<string, MemKeysValue>>;
15
- set(updates: Record<string, Record<string, MemKeysValue>>): Promise<void>;
16
- };
17
- /** Build a wrap-legacy-store wired to a fresh in-memory keys backend.
18
- * The double-cast through `unknown` is intentional: the test's keys
19
- * callback is heterogeneous (`MemKeysValue`) by design, but
20
- * `AuthenticationState['keys']` is the strongly-typed `SignalKeyStore`
21
- * union — they overlap structurally without sharing a parameterised type. */
22
- export declare function makeWrapped(): Promise<{
23
- wrapped: import("../wrap-legacy-store.js").WrappedLegacyStore;
24
- keys: {
25
- raw: Record<string, Record<string, MemKeysValue>>;
26
- get(type: string, ids: string[]): Promise<Record<string, MemKeysValue>>;
27
- set(updates: Record<string, Record<string, MemKeysValue>>): Promise<void>;
28
- };
29
- creds: import("../../index.js").AuthenticationCreds;
30
- }>;
31
- /** Deterministic byte-pattern generator. Distinct `(n, base)` pairs yield
32
- * distinct buffers, so we can pinpoint which field round-tripped wrong. */
33
- export declare const fill: (n: number, base: number) => Uint8Array<ArrayBuffer>;
34
- export declare const SAMPLE_GROUP = "120363012345678900@g.us";
35
- export declare const BRIDGE_SK_KEY_LID = "120363012345678900@g.us:100000037037034@lid.0";
36
- export declare const UPSTREAM_SK_KEY_LID = "120363012345678900@g.us::100000037037034_1::0";
37
- export declare const BRIDGE_SK_KEY_PN_DEV = "120363012345678900@g.us:559980000003:5@s.whatsapp.net.0";
38
- export declare const UPSTREAM_SK_KEY_PN_DEV = "120363012345678900@g.us::559980000003::5";
39
- export declare const BRIDGE_SESSION_KEY_LID = "100000037037034@lid.0";
40
- export declare const UPSTREAM_SESSION_KEY_LID = "100000037037034_1.0";
41
- export declare const BRIDGE_SESSION_KEY_PN = "559980000003@s.whatsapp.net.0";
42
- export declare const UPSTREAM_SESSION_KEY_PN = "559980000003.0";
43
- export declare const BRIDGE_SESSION_KEY_PN_DEV = "559980000003:5@s.whatsapp.net.0";
44
- export declare const UPSTREAM_SESSION_KEY_PN_DEV = "559980000003.5";
45
- export interface BuildSenderKeyOpts {
46
- keyId?: number;
47
- iteration?: number;
48
- chainSeed?: Uint8Array;
49
- signingPublic?: Uint8Array;
50
- signingPrivate?: Uint8Array;
51
- }
52
- /** Encode a `SenderKeyRecordStructure` with one populated state. */
53
- export declare function buildBridgeSenderKeyBytes(opts?: BuildSenderKeyOpts): Uint8Array;
54
- export interface BuildSessionOpts {
55
- rootKey?: Uint8Array;
56
- rootSeed?: number;
57
- previousCounter?: number;
58
- senderRatchetPub?: Uint8Array;
59
- senderRatchetPriv?: Uint8Array;
60
- senderChainKey?: Uint8Array;
61
- senderChainIndex?: number;
62
- receiverRatchetPub?: Uint8Array;
63
- receiverChainKey?: Uint8Array;
64
- receiverChainIndex?: number;
65
- aliceBaseKey?: Uint8Array;
66
- remoteIdentity?: Uint8Array;
67
- remoteRegistrationId?: number;
68
- localRegistrationId?: number;
69
- }
70
- /** Encode a `RecordStructure` with a single established `currentSession`
71
- * (sender chain + one receiver chain). */
72
- export declare function buildBridgeSessionBytes(opts?: BuildSessionOpts): Uint8Array;
73
- //# sourceMappingURL=_legacy-store-fixtures.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_legacy-store-fixtures.d.ts","sourceRoot":"","sources":["../../../src/Utils/__tests__/_legacy-store-fixtures.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;8EAE8E;AAC9E,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;AAE1D;yEACyE;AACzE,wBAAgB,WAAW;;cAIT,MAAM,OAAO,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;iBAM1D,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;EAUhF;AAED;;;;8EAI8E;AAC9E,wBAAsB,WAAW;;;;kBAvBf,MAAM,OAAO,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;qBAM1D,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;;;GA0BhF;AAED;4EAC4E;AAC5E,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,EAAE,MAAM,MAAM,4BAA8D,CAAA;AAG1G,eAAO,MAAM,YAAY,4BAA4B,CAAA;AAGrD,eAAO,MAAM,iBAAiB,kDAA0C,CAAA;AACxE,eAAO,MAAM,mBAAmB,kDAA0C,CAAA;AAG1E,eAAO,MAAM,oBAAoB,4DAAoD,CAAA;AACrF,eAAO,MAAM,sBAAsB,6CAAqC,CAAA;AAGxE,eAAO,MAAM,sBAAsB,0BAA0B,CAAA;AAC7D,eAAO,MAAM,wBAAwB,wBAAwB,CAAA;AAC7D,eAAO,MAAM,qBAAqB,kCAAkC,CAAA;AACpE,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AACvD,eAAO,MAAM,yBAAyB,oCAAoC,CAAA;AAC1E,eAAO,MAAM,2BAA2B,mBAAmB,CAAA;AAI3D,MAAM,WAAW,kBAAkB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,SAAS,CAAC,EAAE,UAAU,CAAA;IACtB,aAAa,CAAC,EAAE,UAAU,CAAA;IAC1B,cAAc,CAAC,EAAE,UAAU,CAAA;CAC3B;AAED,oEAAoE;AACpE,wBAAgB,yBAAyB,CAAC,IAAI,GAAE,kBAAuB,GAAG,UAAU,CAoBnF;AAED,MAAM,WAAW,gBAAgB;IAChC,OAAO,CAAC,EAAE,UAAU,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,iBAAiB,CAAC,EAAE,UAAU,CAAA;IAC9B,cAAc,CAAC,EAAE,UAAU,CAAA;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,kBAAkB,CAAC,EAAE,UAAU,CAAA;IAC/B,gBAAgB,CAAC,EAAE,UAAU,CAAA;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,cAAc,CAAC,EAAE,UAAU,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED;2CAC2C;AAC3C,wBAAgB,uBAAuB,CAAC,IAAI,GAAE,gBAAqB,GAAG,UAAU,CA4C/E"}
@@ -1,113 +0,0 @@
1
- /**
2
- * Shared fixtures for `wrap-legacy-store` unit tests. The 4 sister test
3
- * files (sender-key / session / lid-mapping / coverage) all need the same
4
- * in-memory keys store + wrapped-store factory + byte-pattern generator.
5
- */
6
- import { proto as bridgeProto } from 'whatsapp-rust-bridge/proto-types';
7
- import { initAuthCreds } from "../generics.js";
8
- import { wrapLegacyStore } from "../wrap-legacy-store.js";
9
- /** In-memory keys store mirroring upstream `useMultiFileAuthState`'s
10
- * `keys.get(type, ids[])` / `keys.set({ [type]: { [id]: value } })`. */
11
- export function makeMemKeys() {
12
- const data = {};
13
- return {
14
- raw: data,
15
- async get(type, ids) {
16
- const bucket = data[type] ?? {};
17
- const out = {};
18
- for (const id of ids)
19
- out[id] = bucket[id] ?? null;
20
- return out;
21
- },
22
- async set(updates) {
23
- for (const [type, bucket] of Object.entries(updates)) {
24
- data[type] ?? (data[type] = {});
25
- for (const [id, val] of Object.entries(bucket)) {
26
- if (val === null || val === undefined)
27
- delete data[type][id];
28
- else
29
- data[type][id] = val;
30
- }
31
- }
32
- }
33
- };
34
- }
35
- /** Build a wrap-legacy-store wired to a fresh in-memory keys backend.
36
- * The double-cast through `unknown` is intentional: the test's keys
37
- * callback is heterogeneous (`MemKeysValue`) by design, but
38
- * `AuthenticationState['keys']` is the strongly-typed `SignalKeyStore`
39
- * union — they overlap structurally without sharing a parameterised type. */
40
- export async function makeWrapped() {
41
- const creds = initAuthCreds();
42
- const keys = makeMemKeys();
43
- const state = {
44
- creds,
45
- keys: keys
46
- };
47
- const wrapped = await wrapLegacyStore(state, async () => { });
48
- return { wrapped, keys, creds };
49
- }
50
- /** Deterministic byte-pattern generator. Distinct `(n, base)` pairs yield
51
- * distinct buffers, so we can pinpoint which field round-tripped wrong. */
52
- export const fill = (n, base) => new Uint8Array(n).map((_, i) => (i * base + base) & 0xff);
53
- // ── Common LID/PN sample pairs ──
54
- export const SAMPLE_GROUP = '120363012345678900@g.us';
55
- // LID sender, no JID device (matches the mock server's default).
56
- export const BRIDGE_SK_KEY_LID = `${SAMPLE_GROUP}:100000037037034@lid.0`;
57
- export const UPSTREAM_SK_KEY_LID = `${SAMPLE_GROUP}::100000037037034_1::0`;
58
- // PN sender on s.whatsapp.net with a JID device → exercises `user:device@server`.
59
- export const BRIDGE_SK_KEY_PN_DEV = `${SAMPLE_GROUP}:559980000003:5@s.whatsapp.net.0`;
60
- export const UPSTREAM_SK_KEY_PN_DEV = `${SAMPLE_GROUP}::559980000003::5`;
61
- // Session keys (pairwise, no group prefix).
62
- export const BRIDGE_SESSION_KEY_LID = '100000037037034@lid.0';
63
- export const UPSTREAM_SESSION_KEY_LID = '100000037037034_1.0';
64
- export const BRIDGE_SESSION_KEY_PN = '559980000003@s.whatsapp.net.0';
65
- export const UPSTREAM_SESSION_KEY_PN = '559980000003.0';
66
- export const BRIDGE_SESSION_KEY_PN_DEV = '559980000003:5@s.whatsapp.net.0';
67
- export const UPSTREAM_SESSION_KEY_PN_DEV = '559980000003.5';
68
- /** Encode a `SenderKeyRecordStructure` with one populated state. */
69
- export function buildBridgeSenderKeyBytes(opts = {}) {
70
- const { keyId = 1, iteration = 0, chainSeed = fill(32, 1), signingPublic = fill(33, 2), signingPrivate = fill(32, 3) } = opts;
71
- return bridgeProto.SenderKeyRecordStructure.encode(bridgeProto.SenderKeyRecordStructure.create({
72
- senderKeyStates: [
73
- {
74
- senderKeyId: keyId,
75
- senderChainKey: { iteration, seed: chainSeed },
76
- senderSigningKey: { public: signingPublic, private: signingPrivate },
77
- senderMessageKeys: []
78
- }
79
- ]
80
- })).finish();
81
- }
82
- /** Encode a `RecordStructure` with a single established `currentSession`
83
- * (sender chain + one receiver chain). */
84
- export function buildBridgeSessionBytes(opts = {}) {
85
- const { rootKey = fill(32, opts.rootSeed ?? 1), previousCounter = 0, senderRatchetPub = fill(33, 2), senderRatchetPriv = fill(32, 3), senderChainKey = fill(32, 4), senderChainIndex = 0, receiverRatchetPub = fill(33, 5), receiverChainKey = fill(32, 6), receiverChainIndex = 1, aliceBaseKey = fill(33, 7), remoteIdentity = fill(33, 8), remoteRegistrationId = 1234, localRegistrationId = 5678 } = opts;
86
- return bridgeProto.RecordStructure.encode(bridgeProto.RecordStructure.create({
87
- currentSession: bridgeProto.SessionStructure.create({
88
- sessionVersion: 3,
89
- localIdentityPublic: fill(33, 9),
90
- remoteIdentityPublic: remoteIdentity,
91
- rootKey,
92
- previousCounter,
93
- senderChain: {
94
- senderRatchetKey: senderRatchetPub,
95
- senderRatchetKeyPrivate: senderRatchetPriv,
96
- chainKey: { index: senderChainIndex, key: senderChainKey },
97
- messageKeys: []
98
- },
99
- receiverChains: [
100
- {
101
- senderRatchetKey: receiverRatchetPub,
102
- chainKey: { index: receiverChainIndex, key: receiverChainKey },
103
- messageKeys: []
104
- }
105
- ],
106
- remoteRegistrationId,
107
- localRegistrationId,
108
- aliceBaseKey
109
- }),
110
- previousSessions: []
111
- })).finish();
112
- }
113
- //# sourceMappingURL=_legacy-store-fixtures.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_legacy-store-fixtures.js","sourceRoot":"","sources":["../../../src/Utils/__tests__/_legacy-store-fixtures.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Cross-cutting `wrap-legacy-store` coverage:
3
- * 1. Hosted JID domains (`hosted` → `_2`, `hosted.lid` → `_3`).
4
- * 2. PreKey cross-impl (proto bytes ↔ {public, private}).
5
- * 3. Identity cross-impl (32 bytes ↔ 33 bytes with 0x05 prefix + key rewrite).
6
- * 4. Idempotent round-trip (write→read→write produces identical disk bytes).
7
- * 5. messageKeys cache JS→Rust HKDF derivation (Finding 2 partial fix).
8
- */
9
- export {};
10
- //# sourceMappingURL=wrap-legacy-store-coverage.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wrap-legacy-store-coverage.test.d.ts","sourceRoot":"","sources":["../../../src/Utils/__tests__/wrap-legacy-store-coverage.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}