zerc20-client-sdk 0.1.13 → 0.1.14

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 (404) hide show
  1. package/README.md +261 -0
  2. package/dist/constants.d.ts +15 -0
  3. package/dist/constants.d.ts.map +1 -1
  4. package/dist/constants.js +15 -0
  5. package/dist/constants.js.map +1 -1
  6. package/dist/decider/__tests__/prover.test.d.ts +2 -0
  7. package/dist/decider/__tests__/prover.test.d.ts.map +1 -0
  8. package/dist/decider/__tests__/prover.test.js +246 -0
  9. package/dist/decider/__tests__/prover.test.js.map +1 -0
  10. package/dist/decider/prover.d.ts +36 -4
  11. package/dist/decider/prover.d.ts.map +1 -1
  12. package/dist/decider/prover.js +48 -38
  13. package/dist/decider/prover.js.map +1 -1
  14. package/dist/ic/__tests__/candid.test.d.ts +2 -0
  15. package/dist/ic/__tests__/candid.test.d.ts.map +1 -0
  16. package/dist/ic/__tests__/candid.test.js +44 -0
  17. package/dist/ic/__tests__/candid.test.js.map +1 -0
  18. package/dist/ic/__tests__/client.test.d.ts +2 -0
  19. package/dist/ic/__tests__/client.test.d.ts.map +1 -0
  20. package/dist/ic/__tests__/client.test.js +522 -0
  21. package/dist/ic/__tests__/client.test.js.map +1 -0
  22. package/dist/ic/__tests__/config.test.d.ts +2 -0
  23. package/dist/ic/__tests__/config.test.d.ts.map +1 -0
  24. package/dist/ic/__tests__/config.test.js +72 -0
  25. package/dist/ic/__tests__/config.test.js.map +1 -0
  26. package/dist/ic/__tests__/connections.test.d.ts +2 -0
  27. package/dist/ic/__tests__/connections.test.d.ts.map +1 -0
  28. package/dist/ic/__tests__/connections.test.js +385 -0
  29. package/dist/ic/__tests__/connections.test.js.map +1 -0
  30. package/dist/ic/__tests__/invoice.test.d.ts +2 -0
  31. package/dist/ic/__tests__/invoice.test.d.ts.map +1 -0
  32. package/dist/ic/__tests__/invoice.test.js +95 -0
  33. package/dist/ic/__tests__/invoice.test.js.map +1 -0
  34. package/dist/ic/authorization.d.ts +28 -0
  35. package/dist/ic/authorization.d.ts.map +1 -1
  36. package/dist/ic/authorization.js +24 -0
  37. package/dist/ic/authorization.js.map +1 -1
  38. package/dist/ic/candid.d.ts +72 -0
  39. package/dist/ic/candid.d.ts.map +1 -0
  40. package/dist/ic/candid.js +35 -0
  41. package/dist/ic/candid.js.map +1 -0
  42. package/dist/ic/client.d.ts +57 -59
  43. package/dist/ic/client.d.ts.map +1 -1
  44. package/dist/ic/client.js +59 -81
  45. package/dist/ic/client.js.map +1 -1
  46. package/dist/ic/config.d.ts +27 -0
  47. package/dist/ic/config.d.ts.map +1 -1
  48. package/dist/ic/config.js +27 -0
  49. package/dist/ic/config.js.map +1 -1
  50. package/dist/ic/connections.d.ts +99 -4
  51. package/dist/ic/connections.d.ts.map +1 -1
  52. package/dist/ic/connections.js +222 -30
  53. package/dist/ic/connections.js.map +1 -1
  54. package/dist/ic/encryption.d.ts +33 -0
  55. package/dist/ic/encryption.d.ts.map +1 -1
  56. package/dist/ic/encryption.js +21 -0
  57. package/dist/ic/encryption.js.map +1 -1
  58. package/dist/ic/errors.d.ts +15 -0
  59. package/dist/ic/errors.d.ts.map +1 -1
  60. package/dist/ic/errors.js +15 -0
  61. package/dist/ic/errors.js.map +1 -1
  62. package/dist/ic/idl.d.ts +26 -0
  63. package/dist/ic/idl.d.ts.map +1 -0
  64. package/dist/ic/idl.js +84 -0
  65. package/dist/ic/idl.js.map +1 -0
  66. package/dist/ic/index.d.ts +1 -1
  67. package/dist/ic/index.d.ts.map +1 -1
  68. package/dist/ic/index.js +1 -1
  69. package/dist/ic/index.js.map +1 -1
  70. package/dist/ic/invoice.d.ts.map +1 -1
  71. package/dist/ic/invoice.js.map +1 -1
  72. package/dist/ic/types.d.ts +42 -0
  73. package/dist/ic/types.d.ts.map +1 -1
  74. package/dist/index.d.ts +1 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +1 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/onchain/__tests__/contracts.test.d.ts +2 -0
  79. package/dist/onchain/__tests__/contracts.test.d.ts.map +1 -0
  80. package/dist/onchain/__tests__/contracts.test.js +42 -0
  81. package/dist/onchain/__tests__/contracts.test.js.map +1 -0
  82. package/dist/onchain/contracts.d.ts +22 -0
  83. package/dist/onchain/contracts.d.ts.map +1 -1
  84. package/dist/onchain/contracts.js +22 -0
  85. package/dist/onchain/contracts.js.map +1 -1
  86. package/dist/operations/__tests__/invoice.test.d.ts +2 -0
  87. package/dist/operations/__tests__/invoice.test.d.ts.map +1 -0
  88. package/dist/operations/__tests__/invoice.test.js +261 -0
  89. package/dist/operations/__tests__/invoice.test.js.map +1 -0
  90. package/dist/operations/__tests__/privateSend.test.d.ts +2 -0
  91. package/dist/operations/__tests__/privateSend.test.d.ts.map +1 -0
  92. package/dist/operations/__tests__/privateSend.test.js +135 -0
  93. package/dist/operations/__tests__/privateSend.test.js.map +1 -0
  94. package/dist/operations/__tests__/reexports.test.d.ts +2 -0
  95. package/dist/operations/__tests__/reexports.test.d.ts.map +1 -0
  96. package/dist/operations/__tests__/reexports.test.js +22 -0
  97. package/dist/operations/__tests__/reexports.test.js.map +1 -0
  98. package/dist/operations/__tests__/scanner.test.d.ts +2 -0
  99. package/dist/operations/__tests__/scanner.test.d.ts.map +1 -0
  100. package/dist/operations/__tests__/scanner.test.js +201 -0
  101. package/dist/operations/__tests__/scanner.test.js.map +1 -0
  102. package/dist/operations/__tests__/teleport.test.d.ts +2 -0
  103. package/dist/operations/__tests__/teleport.test.d.ts.map +1 -0
  104. package/dist/operations/__tests__/teleport.test.js +35 -0
  105. package/dist/operations/__tests__/teleport.test.js.map +1 -0
  106. package/dist/operations/__tests__/teleportProof.test.d.ts +2 -0
  107. package/dist/operations/__tests__/teleportProof.test.d.ts.map +1 -0
  108. package/dist/operations/__tests__/teleportProof.test.js +126 -0
  109. package/dist/operations/__tests__/teleportProof.test.js.map +1 -0
  110. package/dist/operations/invoice.d.ts +44 -0
  111. package/dist/operations/invoice.d.ts.map +1 -1
  112. package/dist/operations/invoice.js +30 -0
  113. package/dist/operations/invoice.js.map +1 -1
  114. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts +2 -0
  115. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts.map +1 -0
  116. package/dist/operations/liquidityManager/__tests__/balance.test.js +104 -0
  117. package/dist/operations/liquidityManager/__tests__/balance.test.js.map +1 -0
  118. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts +2 -0
  119. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts.map +1 -0
  120. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js +198 -0
  121. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js.map +1 -0
  122. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts +2 -0
  123. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts.map +1 -0
  124. package/dist/operations/liquidityManager/__tests__/helpers.test.js +126 -0
  125. package/dist/operations/liquidityManager/__tests__/helpers.test.js.map +1 -0
  126. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts +2 -0
  127. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts.map +1 -0
  128. package/dist/operations/liquidityManager/__tests__/unwrap.test.js +224 -0
  129. package/dist/operations/liquidityManager/__tests__/unwrap.test.js.map +1 -0
  130. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts +2 -0
  131. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts.map +1 -0
  132. package/dist/operations/liquidityManager/__tests__/wrap.test.js +144 -0
  133. package/dist/operations/liquidityManager/__tests__/wrap.test.js.map +1 -0
  134. package/dist/operations/liquidityManager/balance.d.ts +19 -0
  135. package/dist/operations/liquidityManager/balance.d.ts.map +1 -0
  136. package/dist/operations/liquidityManager/balance.js +62 -0
  137. package/dist/operations/liquidityManager/balance.js.map +1 -0
  138. package/dist/operations/liquidityManager/crossUnwrap.d.ts +73 -0
  139. package/dist/operations/liquidityManager/crossUnwrap.d.ts.map +1 -0
  140. package/dist/operations/liquidityManager/crossUnwrap.js +189 -0
  141. package/dist/operations/liquidityManager/crossUnwrap.js.map +1 -0
  142. package/dist/operations/liquidityManager/helpers.d.ts +15521 -0
  143. package/dist/operations/liquidityManager/helpers.d.ts.map +1 -0
  144. package/dist/operations/liquidityManager/helpers.js +81 -0
  145. package/dist/operations/liquidityManager/helpers.js.map +1 -0
  146. package/dist/operations/liquidityManager/index.d.ts +12 -0
  147. package/dist/operations/liquidityManager/index.d.ts.map +1 -0
  148. package/dist/operations/liquidityManager/index.js +9 -0
  149. package/dist/operations/liquidityManager/index.js.map +1 -0
  150. package/dist/operations/liquidityManager/types.d.ts +90 -0
  151. package/dist/operations/liquidityManager/types.d.ts.map +1 -0
  152. package/dist/operations/liquidityManager/types.js +5 -0
  153. package/dist/operations/liquidityManager/types.js.map +1 -0
  154. package/dist/operations/liquidityManager/unwrap.d.ts +54 -0
  155. package/dist/operations/liquidityManager/unwrap.d.ts.map +1 -0
  156. package/dist/operations/liquidityManager/unwrap.js +80 -0
  157. package/dist/operations/liquidityManager/unwrap.js.map +1 -0
  158. package/dist/operations/liquidityManager/wrap.d.ts +38 -0
  159. package/dist/operations/liquidityManager/wrap.d.ts.map +1 -0
  160. package/dist/operations/liquidityManager/wrap.js +53 -0
  161. package/dist/operations/liquidityManager/wrap.js.map +1 -0
  162. package/dist/operations/liquidityManager.d.ts +3 -104
  163. package/dist/operations/liquidityManager.d.ts.map +1 -1
  164. package/dist/operations/liquidityManager.js +3 -343
  165. package/dist/operations/liquidityManager.js.map +1 -1
  166. package/dist/operations/privateSend.d.ts +26 -0
  167. package/dist/operations/privateSend.d.ts.map +1 -1
  168. package/dist/operations/privateSend.js +11 -0
  169. package/dist/operations/privateSend.js.map +1 -1
  170. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts +2 -0
  171. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts.map +1 -0
  172. package/dist/operations/receive/__tests__/announcementStatus.test.js +223 -0
  173. package/dist/operations/receive/__tests__/announcementStatus.test.js.map +1 -0
  174. package/dist/operations/receive/__tests__/cache.test.d.ts +2 -0
  175. package/dist/operations/receive/__tests__/cache.test.d.ts.map +1 -0
  176. package/dist/operations/receive/__tests__/cache.test.js +339 -0
  177. package/dist/operations/receive/__tests__/cache.test.js.map +1 -0
  178. package/dist/operations/receive/__tests__/helpers.test.d.ts +2 -0
  179. package/dist/operations/receive/__tests__/helpers.test.d.ts.map +1 -0
  180. package/dist/operations/receive/__tests__/helpers.test.js +80 -0
  181. package/dist/operations/receive/__tests__/helpers.test.js.map +1 -0
  182. package/dist/operations/receive/__tests__/redeemContext.test.d.ts +2 -0
  183. package/dist/operations/receive/__tests__/redeemContext.test.d.ts.map +1 -0
  184. package/dist/operations/receive/__tests__/redeemContext.test.js +230 -0
  185. package/dist/operations/receive/__tests__/redeemContext.test.js.map +1 -0
  186. package/dist/operations/receive/announcementStatus.d.ts +12 -0
  187. package/dist/operations/receive/announcementStatus.d.ts.map +1 -0
  188. package/dist/operations/receive/announcementStatus.js +56 -0
  189. package/dist/operations/receive/announcementStatus.js.map +1 -0
  190. package/dist/operations/receive/cache.d.ts +69 -0
  191. package/dist/operations/receive/cache.d.ts.map +1 -0
  192. package/dist/operations/receive/cache.js +105 -0
  193. package/dist/operations/receive/cache.js.map +1 -0
  194. package/dist/operations/receive/helpers.d.ts +16 -0
  195. package/dist/operations/receive/helpers.d.ts.map +1 -0
  196. package/dist/operations/receive/helpers.js +33 -0
  197. package/dist/operations/receive/helpers.js.map +1 -0
  198. package/dist/operations/receive/index.d.ts +9 -0
  199. package/dist/operations/receive/index.d.ts.map +1 -0
  200. package/dist/operations/receive/index.js +9 -0
  201. package/dist/operations/receive/index.js.map +1 -0
  202. package/dist/operations/receive/redeemContext.d.ts +16 -0
  203. package/dist/operations/receive/redeemContext.d.ts.map +1 -0
  204. package/dist/operations/receive/redeemContext.js +107 -0
  205. package/dist/operations/receive/redeemContext.js.map +1 -0
  206. package/dist/operations/receive/types.d.ts +141 -0
  207. package/dist/operations/receive/types.d.ts.map +1 -0
  208. package/dist/operations/receive/types.js +5 -0
  209. package/dist/operations/receive/types.js.map +1 -0
  210. package/dist/operations/receive.d.ts +5 -66
  211. package/dist/operations/receive.d.ts.map +1 -1
  212. package/dist/operations/receive.js +5 -173
  213. package/dist/operations/receive.js.map +1 -1
  214. package/dist/operations/scanner.d.ts +37 -0
  215. package/dist/operations/scanner.d.ts.map +1 -1
  216. package/dist/operations/scanner.js +21 -0
  217. package/dist/operations/scanner.js.map +1 -1
  218. package/dist/operations/teleport.d.ts +5 -0
  219. package/dist/operations/teleport.d.ts.map +1 -1
  220. package/dist/operations/teleport.js +5 -0
  221. package/dist/operations/teleport.js.map +1 -1
  222. package/dist/operations/teleportProof.d.ts +34 -0
  223. package/dist/operations/teleportProof.d.ts.map +1 -1
  224. package/dist/operations/teleportProof.js +16 -0
  225. package/dist/operations/teleportProof.js.map +1 -1
  226. package/dist/registry/__tests__/helpers.test.d.ts +2 -0
  227. package/dist/registry/__tests__/helpers.test.d.ts.map +1 -0
  228. package/dist/registry/__tests__/helpers.test.js +98 -0
  229. package/dist/registry/__tests__/helpers.test.js.map +1 -0
  230. package/dist/registry/__tests__/loader.test.d.ts +2 -0
  231. package/dist/registry/__tests__/loader.test.d.ts.map +1 -0
  232. package/dist/registry/__tests__/loader.test.js +300 -0
  233. package/dist/registry/__tests__/loader.test.js.map +1 -0
  234. package/dist/registry/__tests__/normalize.test.d.ts +2 -0
  235. package/dist/registry/__tests__/normalize.test.d.ts.map +1 -0
  236. package/dist/registry/__tests__/normalize.test.js +180 -0
  237. package/dist/registry/__tests__/normalize.test.js.map +1 -0
  238. package/dist/registry/__tests__/parsing.test.d.ts +2 -0
  239. package/dist/registry/__tests__/parsing.test.d.ts.map +1 -0
  240. package/dist/registry/__tests__/parsing.test.js +188 -0
  241. package/dist/registry/__tests__/parsing.test.js.map +1 -0
  242. package/dist/registry/helpers.d.ts +14 -0
  243. package/dist/registry/helpers.d.ts.map +1 -0
  244. package/dist/registry/helpers.js +29 -0
  245. package/dist/registry/helpers.js.map +1 -0
  246. package/dist/registry/index.d.ts +13 -0
  247. package/dist/registry/index.d.ts.map +1 -0
  248. package/dist/registry/index.js +15 -0
  249. package/dist/registry/index.js.map +1 -0
  250. package/dist/registry/loader.d.ts +57 -0
  251. package/dist/registry/loader.d.ts.map +1 -0
  252. package/dist/registry/loader.js +188 -0
  253. package/dist/registry/loader.js.map +1 -0
  254. package/dist/registry/normalize.d.ts +29 -0
  255. package/dist/registry/normalize.d.ts.map +1 -0
  256. package/dist/registry/normalize.js +81 -0
  257. package/dist/registry/normalize.js.map +1 -0
  258. package/dist/registry/parsing.d.ts +55 -0
  259. package/dist/registry/parsing.d.ts.map +1 -0
  260. package/dist/registry/parsing.js +139 -0
  261. package/dist/registry/parsing.js.map +1 -0
  262. package/dist/registry/tokens.d.ts +6 -42
  263. package/dist/registry/tokens.d.ts.map +1 -1
  264. package/dist/registry/tokens.js +6 -231
  265. package/dist/registry/tokens.js.map +1 -1
  266. package/dist/registry/types.d.ts +81 -0
  267. package/dist/registry/types.d.ts.map +1 -0
  268. package/dist/registry/types.js +2 -0
  269. package/dist/registry/types.js.map +1 -0
  270. package/dist/sdk.d.ts +57 -0
  271. package/dist/sdk.d.ts.map +1 -1
  272. package/dist/sdk.js +21 -0
  273. package/dist/sdk.js.map +1 -1
  274. package/dist/sdk.publicApi.test.d.ts +2 -0
  275. package/dist/sdk.publicApi.test.d.ts.map +1 -0
  276. package/dist/sdk.publicApi.test.js +78 -0
  277. package/dist/sdk.publicApi.test.js.map +1 -0
  278. package/dist/types.d.ts +159 -0
  279. package/dist/types.d.ts.map +1 -1
  280. package/dist/utils/__tests__/branded.test.d.ts +2 -0
  281. package/dist/utils/__tests__/branded.test.d.ts.map +1 -0
  282. package/dist/utils/__tests__/branded.test.js +293 -0
  283. package/dist/utils/__tests__/branded.test.js.map +1 -0
  284. package/dist/utils/__tests__/fees.test.d.ts +2 -0
  285. package/dist/utils/__tests__/fees.test.d.ts.map +1 -0
  286. package/dist/utils/__tests__/fees.test.js +84 -0
  287. package/dist/utils/__tests__/fees.test.js.map +1 -0
  288. package/dist/utils/__tests__/hex.test.d.ts +2 -0
  289. package/dist/utils/__tests__/hex.test.d.ts.map +1 -0
  290. package/dist/utils/__tests__/hex.test.js +252 -0
  291. package/dist/utils/__tests__/hex.test.js.map +1 -0
  292. package/dist/utils/__tests__/http.test.d.ts +2 -0
  293. package/dist/utils/__tests__/http.test.d.ts.map +1 -0
  294. package/dist/utils/__tests__/http.test.js +295 -0
  295. package/dist/utils/__tests__/http.test.js.map +1 -0
  296. package/dist/utils/branded.d.ts +154 -0
  297. package/dist/utils/branded.d.ts.map +1 -0
  298. package/dist/utils/branded.js +177 -0
  299. package/dist/utils/branded.js.map +1 -0
  300. package/dist/utils/fees.d.ts +6 -0
  301. package/dist/utils/fees.d.ts.map +1 -1
  302. package/dist/utils/fees.js +4 -0
  303. package/dist/utils/fees.js.map +1 -1
  304. package/dist/utils/hex.d.ts +37 -0
  305. package/dist/utils/hex.d.ts.map +1 -1
  306. package/dist/utils/hex.js +30 -0
  307. package/dist/utils/hex.js.map +1 -1
  308. package/dist/utils/http.d.ts +100 -0
  309. package/dist/utils/http.d.ts.map +1 -1
  310. package/dist/utils/http.js +158 -0
  311. package/dist/utils/http.js.map +1 -1
  312. package/dist/utils/merkle.d.ts +26 -0
  313. package/dist/utils/merkle.d.ts.map +1 -1
  314. package/dist/utils/merkle.js +26 -0
  315. package/dist/utils/merkle.js.map +1 -1
  316. package/dist/wasm/__tests__/artifacts.test.d.ts +2 -0
  317. package/dist/wasm/__tests__/artifacts.test.d.ts.map +1 -0
  318. package/dist/wasm/__tests__/artifacts.test.js +437 -0
  319. package/dist/wasm/__tests__/artifacts.test.js.map +1 -0
  320. package/dist/wasm/__tests__/functions.test.d.ts +2 -0
  321. package/dist/wasm/__tests__/functions.test.d.ts.map +1 -0
  322. package/dist/wasm/__tests__/functions.test.js +34 -0
  323. package/dist/wasm/__tests__/functions.test.js.map +1 -0
  324. package/dist/wasm/__tests__/helpers.test.d.ts +2 -0
  325. package/dist/wasm/__tests__/helpers.test.d.ts.map +1 -0
  326. package/dist/wasm/__tests__/helpers.test.js +128 -0
  327. package/dist/wasm/__tests__/helpers.test.js.map +1 -0
  328. package/dist/wasm/__tests__/loader.test.d.ts +2 -0
  329. package/dist/wasm/__tests__/loader.test.d.ts.map +1 -0
  330. package/dist/wasm/__tests__/loader.test.js +201 -0
  331. package/dist/wasm/__tests__/loader.test.js.map +1 -0
  332. package/dist/wasm/__tests__/runtime.test.d.ts +2 -0
  333. package/dist/wasm/__tests__/runtime.test.d.ts.map +1 -0
  334. package/dist/wasm/__tests__/runtime.test.js +335 -0
  335. package/dist/wasm/__tests__/runtime.test.js.map +1 -0
  336. package/dist/wasm/__tests__/serialization.test.d.ts +2 -0
  337. package/dist/wasm/__tests__/serialization.test.d.ts.map +1 -0
  338. package/dist/wasm/__tests__/serialization.test.js +226 -0
  339. package/dist/wasm/__tests__/serialization.test.js.map +1 -0
  340. package/dist/wasm/__tests__/validation.test.js +15 -15
  341. package/dist/wasm/__tests__/validation.test.js.map +1 -1
  342. package/dist/wasm/artifacts.d.ts +121 -3
  343. package/dist/wasm/artifacts.d.ts.map +1 -1
  344. package/dist/wasm/artifacts.js +175 -50
  345. package/dist/wasm/artifacts.js.map +1 -1
  346. package/dist/wasm/functions.d.ts +77 -0
  347. package/dist/wasm/functions.d.ts.map +1 -0
  348. package/dist/wasm/functions.js +120 -0
  349. package/dist/wasm/functions.js.map +1 -0
  350. package/dist/wasm/helpers.d.ts +32 -0
  351. package/dist/wasm/helpers.d.ts.map +1 -0
  352. package/dist/wasm/helpers.js +79 -0
  353. package/dist/wasm/helpers.js.map +1 -0
  354. package/dist/wasm/index.d.ts +13 -68
  355. package/dist/wasm/index.d.ts.map +1 -1
  356. package/dist/wasm/index.js +14 -514
  357. package/dist/wasm/index.js.map +1 -1
  358. package/dist/wasm/loader.d.ts +76 -0
  359. package/dist/wasm/loader.d.ts.map +1 -0
  360. package/dist/wasm/loader.js +145 -0
  361. package/dist/wasm/loader.js.map +1 -0
  362. package/dist/wasm/runtime.d.ts +65 -0
  363. package/dist/wasm/runtime.d.ts.map +1 -0
  364. package/dist/wasm/runtime.js +227 -0
  365. package/dist/wasm/runtime.js.map +1 -0
  366. package/dist/wasm/serialization.d.ts +113 -0
  367. package/dist/wasm/serialization.d.ts.map +1 -0
  368. package/dist/wasm/serialization.js +188 -0
  369. package/dist/wasm/serialization.js.map +1 -0
  370. package/dist/wasm/types.d.ts +30 -0
  371. package/dist/wasm/types.d.ts.map +1 -0
  372. package/dist/wasm/types.js +2 -0
  373. package/dist/wasm/types.js.map +1 -0
  374. package/dist/zkp/__tests__/proofService.test.d.ts +2 -0
  375. package/dist/zkp/__tests__/proofService.test.d.ts.map +1 -0
  376. package/dist/zkp/__tests__/proofService.test.js +283 -0
  377. package/dist/zkp/__tests__/proofService.test.js.map +1 -0
  378. package/dist/zkp/__tests__/proofUtils.test.js +86 -0
  379. package/dist/zkp/__tests__/proofUtils.test.js.map +1 -1
  380. package/dist/zkp/__tests__/runNovaProver.test.js +13 -1
  381. package/dist/zkp/__tests__/runNovaProver.test.js.map +1 -1
  382. package/dist/zkp/__tests__/workerClient.test.d.ts +2 -0
  383. package/dist/zkp/__tests__/workerClient.test.d.ts.map +1 -0
  384. package/dist/zkp/__tests__/workerClient.test.js +415 -0
  385. package/dist/zkp/__tests__/workerClient.test.js.map +1 -0
  386. package/dist/zkp/index.d.ts +1 -1
  387. package/dist/zkp/index.d.ts.map +1 -1
  388. package/dist/zkp/index.js +1 -1
  389. package/dist/zkp/index.js.map +1 -1
  390. package/dist/zkp/proofService.d.ts +27 -0
  391. package/dist/zkp/proofService.d.ts.map +1 -1
  392. package/dist/zkp/proofService.js +29 -21
  393. package/dist/zkp/proofService.js.map +1 -1
  394. package/dist/zkp/proofUtils.d.ts +36 -0
  395. package/dist/zkp/proofUtils.d.ts.map +1 -1
  396. package/dist/zkp/proofUtils.js +50 -0
  397. package/dist/zkp/proofUtils.js.map +1 -1
  398. package/dist/zkp/workerClient.d.ts +65 -0
  399. package/dist/zkp/workerClient.d.ts.map +1 -1
  400. package/dist/zkp/workerClient.js +135 -61
  401. package/dist/zkp/workerClient.js.map +1 -1
  402. package/dist/zkp/workerTypes.d.ts +27 -0
  403. package/dist/zkp/workerTypes.d.ts.map +1 -1
  404. package/package.json +7 -3
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/operations/receive/helpers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAQH,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,QAA8B;IAE9B,OAAO,OAAQ,QAAiC,CAAC,IAAI,EAAE,eAAe,KAAK,UAAU,CAAC;AACxF,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,QAA8B,EAC9B,WAAmB;IAEnB,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC,KAAiC,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,OAAQ,QAAmC,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;QAC/E,MAAM,KAAK,GAAG,MAAO,QAAmC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACtF,OAAO,MAAM,CAAC,KAAiC,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Receive operations for scanning announcements and collecting redeem context.
3
+ */
4
+ export type { ViemVerifierContract, LegacyVerifierContract, VerifierContractLike, RedeemChainContext, RedeemContext, RedeemContextParams, AnnouncementStatus, AnnouncementStatusParams, } from "./types.js";
5
+ export type { FetchAggregationStateParams } from "./cache.js";
6
+ export { AggregationStateCacheManager, fetchAggregationTreeStateWithCache, clearAggregationStateCache, resetAggregationStateCache, getDefaultAggregationStateCacheManager, } from "./cache.js";
7
+ export { collectRedeemContext } from "./redeemContext.js";
8
+ export { getAnnouncementStatus } from "./announcementStatus.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/operations/receive/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AAGpB,YAAY,EAAE,2BAA2B,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EACL,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,EAC1B,0BAA0B,EAC1B,sCAAsC,GACvC,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Receive operations for scanning announcements and collecting redeem context.
3
+ */
4
+ export { AggregationStateCacheManager, fetchAggregationTreeStateWithCache, clearAggregationStateCache, resetAggregationStateCache, getDefaultAggregationStateCacheManager, } from "./cache.js";
5
+ // Redeem context
6
+ export { collectRedeemContext } from "./redeemContext.js";
7
+ // Announcement status
8
+ export { getAnnouncementStatus } from "./announcementStatus.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/operations/receive/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAgBH,OAAO,EACL,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,EAC1B,0BAA0B,EAC1B,sCAAsC,GACvC,MAAM,YAAY,CAAC;AAEpB,iBAAiB;AACjB,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,sBAAsB;AACtB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Redeem context collection for receive operations.
3
+ */
4
+ import type { RedeemContext, RedeemContextParams } from "./types.js";
5
+ /**
6
+ * Collect redeem context by combining indexer events, aggregation state, and verifier contract reads.
7
+ * @remarks
8
+ * This performs the following steps:
9
+ * - Fetch aggregation tree state for the primary chain
10
+ * - Fetch transfer events from the indexer across all configured tokens/chains
11
+ * - Split events into eligible vs ineligible (pending) against the aggregation state
12
+ * - For eligible events, fetch local merkle proofs and generate global proofs
13
+ * - Read `totalTeleported` from the verifier contract for the burn recipient
14
+ */
15
+ export declare function collectRedeemContext(params: RedeemContextParams): Promise<RedeemContext>;
16
+ //# sourceMappingURL=redeemContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redeemContext.d.ts","sourceRoot":"","sources":["../../../src/operations/receive/redeemContext.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH,OAAO,KAAK,EAAsB,aAAa,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEzF;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC,CAiH9F"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Redeem context collection for receive operations.
3
+ */
4
+ import { DEFAULT_INDEXER_FETCH_LIMIT } from "../../constants.js";
5
+ import { findTokenByChain } from "../../registry/tokens.js";
6
+ import { normalizeHex } from "../../utils/hex.js";
7
+ import { fetchAggregationTreeState, fetchLocalTeleportMerkleProofs as fetchLocalTeleportProofs, fetchTransferEvents, generateGlobalTeleportMerkleProofs as generateGlobalTeleportProofs, separateEventsByEligibility, } from "../../wasm/index.js";
8
+ import { getTreeIndexForChain } from "../teleport.js";
9
+ import { readTotalTeleported } from "./helpers.js";
10
+ /**
11
+ * Collect redeem context by combining indexer events, aggregation state, and verifier contract reads.
12
+ * @remarks
13
+ * This performs the following steps:
14
+ * - Fetch aggregation tree state for the primary chain
15
+ * - Fetch transfer events from the indexer across all configured tokens/chains
16
+ * - Split events into eligible vs ineligible (pending) against the aggregation state
17
+ * - For eligible events, fetch local merkle proofs and generate global proofs
18
+ * - Read `totalTeleported` from the verifier contract for the burn recipient
19
+ */
20
+ export async function collectRedeemContext(params) {
21
+ const primaryChainId = params.burn.generalRecipient.chainId;
22
+ const primaryToken = findTokenByChain(params.tokens, primaryChainId);
23
+ const aggregationState = await fetchAggregationTreeState({
24
+ hub: params.hub,
25
+ token: primaryToken,
26
+ eventBlockSpan: params.eventBlockSpan,
27
+ });
28
+ const chainEvents = await fetchTransferEvents({
29
+ indexerUrl: params.indexerUrl,
30
+ tokens: params.tokens,
31
+ burnAddresses: [params.burn.burnAddress],
32
+ indexerFetchLimit: params.indexerFetchLimit ?? DEFAULT_INDEXER_FETCH_LIMIT,
33
+ });
34
+ const separatedChains = await separateEventsByEligibility({
35
+ aggregationState,
36
+ events: chainEvents,
37
+ });
38
+ const eventsByChain = new Map();
39
+ for (const entry of separatedChains) {
40
+ eventsByChain.set(entry.chainId, entry.events);
41
+ }
42
+ const perChain = [];
43
+ const combinedEvents = { eligible: [], ineligible: [] };
44
+ const combinedGlobalProofs = [];
45
+ const combinedEligibleProofs = [];
46
+ for (const tokenEntry of params.tokens) {
47
+ const chainEventsForToken = eventsByChain.get(tokenEntry.chainId) ?? {
48
+ eligible: [],
49
+ ineligible: [],
50
+ };
51
+ combinedEvents.eligible.push(...chainEventsForToken.eligible);
52
+ combinedEvents.ineligible.push(...chainEventsForToken.ineligible);
53
+ const totalEligibleValue = chainEventsForToken.eligible.reduce((acc, event) => acc + event.value, 0n);
54
+ const totalPendingValue = chainEventsForToken.ineligible.reduce((acc, event) => acc + event.value, 0n);
55
+ const totalIndexedValue = totalEligibleValue + totalPendingValue;
56
+ let globalProofs = [];
57
+ let eligibleProofs = [];
58
+ if (chainEventsForToken.eligible.length > 0) {
59
+ const treeRootIndex = getTreeIndexForChain(aggregationState, tokenEntry.chainId);
60
+ eligibleProofs = await fetchLocalTeleportProofs({
61
+ indexerUrl: params.indexerUrl,
62
+ token: tokenEntry,
63
+ treeIndex: treeRootIndex,
64
+ events: chainEventsForToken.eligible,
65
+ });
66
+ globalProofs = await generateGlobalTeleportProofs({
67
+ aggregationState,
68
+ chains: [
69
+ {
70
+ chainId: tokenEntry.chainId,
71
+ proofs: eligibleProofs,
72
+ },
73
+ ],
74
+ });
75
+ }
76
+ perChain.push({
77
+ chainId: tokenEntry.chainId,
78
+ token: tokenEntry,
79
+ events: chainEventsForToken,
80
+ globalProofs,
81
+ eligibleProofs,
82
+ totalEligibleValue,
83
+ totalPendingValue,
84
+ totalIndexedValue,
85
+ });
86
+ combinedGlobalProofs.push(...globalProofs);
87
+ combinedEligibleProofs.push(...eligibleProofs);
88
+ }
89
+ const totalEligibleValue = perChain.reduce((acc, chainContext) => acc + chainContext.totalEligibleValue, 0n);
90
+ const totalPendingValue = perChain.reduce((acc, chainContext) => acc + chainContext.totalPendingValue, 0n);
91
+ const totalIndexedValue = totalEligibleValue + totalPendingValue;
92
+ const recipientFr = normalizeHex(params.burn.generalRecipient.fr);
93
+ const totalTeleported = await readTotalTeleported(params.verifierContract, recipientFr);
94
+ return {
95
+ token: primaryToken,
96
+ aggregationState,
97
+ events: combinedEvents,
98
+ globalProofs: combinedGlobalProofs,
99
+ eligibleProofs: combinedEligibleProofs,
100
+ totalEligibleValue,
101
+ totalPendingValue,
102
+ totalIndexedValue,
103
+ totalTeleported,
104
+ chains: perChain,
105
+ };
106
+ }
107
+ //# sourceMappingURL=redeemContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redeemContext.js","sourceRoot":"","sources":["../../../src/operations/receive/redeemContext.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * Type definitions for receive operations.
3
+ */
4
+ import type { TokenEntry } from "../../registry/tokens.js";
5
+ import type { AggregationTreeState, BurnArtifacts, EventsWithEligibility, GlobalTeleportProofWithEvent, LocalTeleportProof, SeparatedChainEvents } from "../../types.js";
6
+ /**
7
+ * Minimal viem-style verifier contract shape used by receive operations.
8
+ * @remarks This matches contracts created by `viem.getContract(...)`.
9
+ */
10
+ export type ViemVerifierContract = {
11
+ read: {
12
+ totalTeleported: (args: readonly [string]) => Promise<bigint | number | string>;
13
+ };
14
+ };
15
+ /**
16
+ * Minimal legacy verifier contract shape used by older callers.
17
+ * @remarks This matches an "ethers-like" contract with direct methods.
18
+ */
19
+ export type LegacyVerifierContract = {
20
+ totalTeleported: (recipientFr: string) => Promise<bigint | number | string>;
21
+ };
22
+ /**
23
+ * Union type accepted by receive operations for verifier contracts.
24
+ */
25
+ export type VerifierContractLike = ViemVerifierContract | LegacyVerifierContract;
26
+ /**
27
+ * Per-chain breakdown for redeem context.
28
+ */
29
+ export interface RedeemChainContext {
30
+ /** Chain id for the token/network. */
31
+ chainId: bigint;
32
+ /** Token entry corresponding to this chain. */
33
+ token: TokenEntry;
34
+ /** Transfer events split by eligibility against the aggregation tree state. */
35
+ events: EventsWithEligibility;
36
+ /** Global teleport proofs generated for eligible events on this chain. */
37
+ globalProofs: GlobalTeleportProofWithEvent[];
38
+ /** Local teleport proofs (Merkle proofs) for eligible events on this chain. */
39
+ eligibleProofs: LocalTeleportProof[];
40
+ /** Sum of values from eligible events. */
41
+ totalEligibleValue: bigint;
42
+ /** Sum of values from ineligible (pending/indexer-not-yet-aggregated) events. */
43
+ totalPendingValue: bigint;
44
+ /** `totalEligibleValue + totalPendingValue`. */
45
+ totalIndexedValue: bigint;
46
+ }
47
+ /**
48
+ * Combined redeem context across all configured chains for a burn recipient.
49
+ * @remarks
50
+ * This output is typically used to:
51
+ * - Display pending vs eligible amounts
52
+ * - Construct redeem/teleport proofs
53
+ * - Compare indexed totals with on-chain `totalTeleported`
54
+ */
55
+ export interface RedeemContext {
56
+ /** Primary token entry (matching `burn.generalRecipient.chainId`). */
57
+ token: TokenEntry;
58
+ /** Aggregation tree state for the primary chain. */
59
+ aggregationState: AggregationTreeState;
60
+ /** Combined events across all chains. */
61
+ events: EventsWithEligibility;
62
+ /** Combined global proofs across all chains. */
63
+ globalProofs: GlobalTeleportProofWithEvent[];
64
+ /** Combined eligible local proofs across all chains. */
65
+ eligibleProofs: LocalTeleportProof[];
66
+ /** Sum of values from all eligible events. */
67
+ totalEligibleValue: bigint;
68
+ /** Sum of values from all ineligible events. */
69
+ totalPendingValue: bigint;
70
+ /** `totalEligibleValue + totalPendingValue`. */
71
+ totalIndexedValue: bigint;
72
+ /** On-chain total teleported amount (verifier contract). */
73
+ totalTeleported: bigint;
74
+ /** Per-chain breakdown used to build proofs and display totals. */
75
+ chains: RedeemChainContext[];
76
+ }
77
+ /**
78
+ * Parameters for `collectRedeemContext`.
79
+ */
80
+ export interface RedeemContextParams {
81
+ /** Burn artifact bundle produced by the sender side. */
82
+ burn: BurnArtifacts;
83
+ /** Tokens to include when scanning the indexer. */
84
+ tokens: readonly TokenEntry[];
85
+ /** Hub configuration for aggregation tree state reads. */
86
+ hub: import("../../registry/tokens.js").HubEntry;
87
+ /** Verifier contract used to read `totalTeleported(recipientFr)`. */
88
+ verifierContract: VerifierContractLike;
89
+ /** Base URL for the indexer service. */
90
+ indexerUrl: string;
91
+ /** Max number of indexer events to fetch per request. Defaults to `DEFAULT_INDEXER_FETCH_LIMIT`. */
92
+ indexerFetchLimit?: number;
93
+ /** Optional block span used when fetching aggregation tree state (performance tuning). */
94
+ eventBlockSpan?: bigint | number;
95
+ }
96
+ /**
97
+ * Summary status for announcements for a burn recipient.
98
+ */
99
+ export interface AnnouncementStatus {
100
+ /** Primary token entry (matching `burn.generalRecipient.chainId`). */
101
+ token: TokenEntry;
102
+ /** Aggregation tree state for the primary chain. */
103
+ aggregationState: AggregationTreeState;
104
+ /** Combined events across all chains. */
105
+ events: EventsWithEligibility;
106
+ /** Per-chain separated events used to compute totals. */
107
+ chains: SeparatedChainEvents[];
108
+ /** Sum of values from all eligible events. */
109
+ totalEligibleValue: bigint;
110
+ /** Sum of values from all ineligible events. */
111
+ totalPendingValue: bigint;
112
+ /** `totalEligibleValue + totalPendingValue`. */
113
+ totalIndexedValue: bigint;
114
+ /** On-chain total teleported amount (verifier contract). */
115
+ totalTeleported: bigint;
116
+ }
117
+ /**
118
+ * Parameters for `getAnnouncementStatus`.
119
+ */
120
+ export interface AnnouncementStatusParams {
121
+ /** Burn artifact bundle produced by the sender side. */
122
+ burn: BurnArtifacts;
123
+ /** Tokens to include when scanning the indexer. */
124
+ tokens: readonly TokenEntry[];
125
+ /** Hub configuration for aggregation tree state reads. */
126
+ hub: import("../../registry/tokens.js").HubEntry;
127
+ /** Verifier contract used to read `totalTeleported(recipientFr)`. */
128
+ verifierContract: VerifierContractLike;
129
+ /** Base URL for the indexer service. */
130
+ indexerUrl: string;
131
+ /** Max number of indexer events to fetch per request. Defaults to `DEFAULT_INDEXER_FETCH_LIMIT`. */
132
+ indexerFetchLimit?: number;
133
+ /** Optional block span used when fetching aggregation tree state (performance tuning). */
134
+ eventBlockSpan?: bigint | number;
135
+ /**
136
+ * Optional cache TTL for aggregation tree state reads (in milliseconds).
137
+ * @remarks When provided, aggregation state is fetched via the default cache manager.
138
+ */
139
+ cacheTtlMs?: number;
140
+ }
141
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/operations/receive/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EACV,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,gBAAgB,CAAC;AAMxB;;;GAGG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,IAAI,EAAE;QACJ,eAAe,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;KACjF,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,eAAe,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC;CAC7E,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;AAMjF;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,KAAK,EAAE,UAAU,CAAC;IAClB,+EAA+E;IAC/E,MAAM,EAAE,qBAAqB,CAAC;IAC9B,0EAA0E;IAC1E,YAAY,EAAE,4BAA4B,EAAE,CAAC;IAC7C,+EAA+E;IAC/E,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,0CAA0C;IAC1C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iFAAiF;IACjF,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,KAAK,EAAE,UAAU,CAAC;IAClB,oDAAoD;IACpD,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,yCAAyC;IACzC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,gDAAgD;IAChD,YAAY,EAAE,4BAA4B,EAAE,CAAC;IAC7C,wDAAwD;IACxD,cAAc,EAAE,kBAAkB,EAAE,CAAC;IACrC,8CAA8C;IAC9C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,eAAe,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,MAAM,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,wDAAwD;IACxD,IAAI,EAAE,aAAa,CAAC;IACpB,mDAAmD;IACnD,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,0DAA0D;IAC1D,GAAG,EAAE,OAAO,0BAA0B,EAAE,QAAQ,CAAC;IACjD,qEAAqE;IACrE,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,oGAAoG;IACpG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAClC;AAMD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sEAAsE;IACtE,KAAK,EAAE,UAAU,CAAC;IAClB,oDAAoD;IACpD,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,yCAAyC;IACzC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,yDAAyD;IACzD,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAC/B,8CAA8C;IAC9C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,wDAAwD;IACxD,IAAI,EAAE,aAAa,CAAC;IACpB,mDAAmD;IACnD,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,0DAA0D;IAC1D,GAAG,EAAE,OAAO,0BAA0B,EAAE,QAAQ,CAAC;IACjD,qEAAqE;IACrE,gBAAgB,EAAE,oBAAoB,CAAC;IACvC,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,oGAAoG;IACpG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,0FAA0F;IAC1F,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACjC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for receive operations.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/operations/receive/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -1,67 +1,6 @@
1
- import { HubEntry, TokenEntry } from "../registry/tokens.js";
2
- import { AggregationTreeState, BurnArtifacts, EventsWithEligibility, GlobalTeleportProofWithEvent, LocalTeleportProof, SeparatedChainEvents } from "../types.js";
3
- export declare function clearAggregationStateCache(): void;
4
- export interface RedeemChainContext {
5
- chainId: bigint;
6
- token: TokenEntry;
7
- events: EventsWithEligibility;
8
- globalProofs: GlobalTeleportProofWithEvent[];
9
- eligibleProofs: LocalTeleportProof[];
10
- totalEligibleValue: bigint;
11
- totalPendingValue: bigint;
12
- totalIndexedValue: bigint;
13
- }
14
- export interface RedeemContext {
15
- token: TokenEntry;
16
- aggregationState: AggregationTreeState;
17
- events: EventsWithEligibility;
18
- globalProofs: GlobalTeleportProofWithEvent[];
19
- eligibleProofs: LocalTeleportProof[];
20
- totalEligibleValue: bigint;
21
- totalPendingValue: bigint;
22
- totalIndexedValue: bigint;
23
- totalTeleported: bigint;
24
- chains: RedeemChainContext[];
25
- }
26
- type ViemVerifierContract = {
27
- read: {
28
- totalTeleported: (args: readonly [string]) => Promise<bigint | number | string>;
29
- };
30
- };
31
- type LegacyVerifierContract = {
32
- totalTeleported: (recipientFr: string) => Promise<bigint | number | string>;
33
- };
34
- type VerifierContractLike = ViemVerifierContract | LegacyVerifierContract;
35
- export interface RedeemContextParams {
36
- burn: BurnArtifacts;
37
- tokens: readonly TokenEntry[];
38
- hub: HubEntry;
39
- verifierContract: VerifierContractLike;
40
- indexerUrl: string;
41
- indexerFetchLimit?: number;
42
- eventBlockSpan?: bigint | number;
43
- }
44
- export interface AnnouncementStatus {
45
- token: TokenEntry;
46
- aggregationState: AggregationTreeState;
47
- events: EventsWithEligibility;
48
- chains: SeparatedChainEvents[];
49
- totalEligibleValue: bigint;
50
- totalPendingValue: bigint;
51
- totalIndexedValue: bigint;
52
- totalTeleported: bigint;
53
- }
54
- export interface AnnouncementStatusParams {
55
- burn: BurnArtifacts;
56
- tokens: readonly TokenEntry[];
57
- hub: HubEntry;
58
- verifierContract: VerifierContractLike;
59
- indexerUrl: string;
60
- indexerFetchLimit?: number;
61
- eventBlockSpan?: bigint | number;
62
- cacheTtlMs?: number;
63
- }
64
- export declare function collectRedeemContext(params: RedeemContextParams): Promise<RedeemContext>;
65
- export declare function getAnnouncementStatus(params: AnnouncementStatusParams): Promise<AnnouncementStatus>;
66
- export {};
1
+ /**
2
+ * Re-export from receive module.
3
+ * @deprecated Import from 'zerc20-client-sdk' or './receive/index.js' directly.
4
+ */
5
+ export * from "./receive/index.js";
67
6
  //# sourceMappingURL=receive.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"receive.d.ts","sourceRoot":"","sources":["../../src/operations/receive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receive.d.ts","sourceRoot":"","sources":["../../src/operations/receive.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,oBAAoB,CAAC"}
@@ -1,174 +1,6 @@
1
- import { DEFAULT_INDEXER_FETCH_LIMIT } from "../constants.js";
2
- import { findTokenByChain } from "../registry/tokens.js";
3
- import { normalizeHex } from "../utils/hex.js";
4
- import { fetchAggregationTreeState, fetchLocalTeleportMerkleProofs as fetchLocalTeleportProofs, fetchTransferEvents, generateGlobalTeleportMerkleProofs as generateGlobalTeleportProofs, separateEventsByEligibility, } from "../wasm/index.js";
5
- import { getTreeIndexForChain } from "./teleport.js";
6
- const aggregationStateCache = new Map();
7
- function getCacheKey(hubAddress, chainId) {
8
- return `${hubAddress.toLowerCase()}-${chainId}`;
9
- }
10
- async function fetchAggregationTreeStateWithCache(params) {
11
- const cacheTtl = params.cacheTtlMs;
12
- const cacheKey = getCacheKey(params.hub.hubAddress, params.token.chainId);
13
- const cached = aggregationStateCache.get(cacheKey);
14
- const now = Date.now();
15
- if (cacheTtl != null && cached && now - cached.timestamp < cacheTtl) {
16
- return cached.state;
17
- }
18
- const state = await fetchAggregationTreeState(params);
19
- aggregationStateCache.set(cacheKey, {
20
- state,
21
- timestamp: now,
22
- chainId: params.token.chainId,
23
- });
24
- return state;
25
- }
26
- export function clearAggregationStateCache() {
27
- aggregationStateCache.clear();
28
- }
29
- export async function collectRedeemContext(params) {
30
- const primaryChainId = params.burn.generalRecipient.chainId;
31
- const primaryToken = findTokenByChain(params.tokens, primaryChainId);
32
- const aggregationState = await fetchAggregationTreeState({
33
- hub: params.hub,
34
- token: primaryToken,
35
- eventBlockSpan: params.eventBlockSpan,
36
- });
37
- const chainEvents = await fetchTransferEvents({
38
- indexerUrl: params.indexerUrl,
39
- tokens: params.tokens,
40
- burnAddresses: [params.burn.burnAddress],
41
- indexerFetchLimit: params.indexerFetchLimit ?? DEFAULT_INDEXER_FETCH_LIMIT,
42
- });
43
- const separatedChains = await separateEventsByEligibility({
44
- aggregationState,
45
- events: chainEvents,
46
- });
47
- const eventsByChain = new Map();
48
- for (const entry of separatedChains) {
49
- eventsByChain.set(entry.chainId, entry.events);
50
- }
51
- const perChain = [];
52
- const combinedEvents = { eligible: [], ineligible: [] };
53
- const combinedGlobalProofs = [];
54
- const combinedEligibleProofs = [];
55
- for (const tokenEntry of params.tokens) {
56
- const chainEventsForToken = eventsByChain.get(tokenEntry.chainId) ?? {
57
- eligible: [],
58
- ineligible: [],
59
- };
60
- combinedEvents.eligible.push(...chainEventsForToken.eligible);
61
- combinedEvents.ineligible.push(...chainEventsForToken.ineligible);
62
- const totalEligibleValue = chainEventsForToken.eligible.reduce((acc, event) => acc + event.value, 0n);
63
- const totalPendingValue = chainEventsForToken.ineligible.reduce((acc, event) => acc + event.value, 0n);
64
- const totalIndexedValue = totalEligibleValue + totalPendingValue;
65
- let globalProofs = [];
66
- let eligibleProofs = [];
67
- if (chainEventsForToken.eligible.length > 0) {
68
- const treeRootIndex = getTreeIndexForChain(aggregationState, tokenEntry.chainId);
69
- eligibleProofs = await fetchLocalTeleportProofs({
70
- indexerUrl: params.indexerUrl,
71
- token: tokenEntry,
72
- treeIndex: treeRootIndex,
73
- events: chainEventsForToken.eligible,
74
- });
75
- globalProofs = await generateGlobalTeleportProofs({
76
- aggregationState,
77
- chains: [
78
- {
79
- chainId: tokenEntry.chainId,
80
- proofs: eligibleProofs,
81
- },
82
- ],
83
- });
84
- }
85
- perChain.push({
86
- chainId: tokenEntry.chainId,
87
- token: tokenEntry,
88
- events: chainEventsForToken,
89
- globalProofs,
90
- eligibleProofs,
91
- totalEligibleValue,
92
- totalPendingValue,
93
- totalIndexedValue,
94
- });
95
- combinedGlobalProofs.push(...globalProofs);
96
- combinedEligibleProofs.push(...eligibleProofs);
97
- }
98
- const totalEligibleValue = perChain.reduce((acc, chainContext) => acc + chainContext.totalEligibleValue, 0n);
99
- const totalPendingValue = perChain.reduce((acc, chainContext) => acc + chainContext.totalPendingValue, 0n);
100
- const totalIndexedValue = totalEligibleValue + totalPendingValue;
101
- const recipientFr = normalizeHex(params.burn.generalRecipient.fr);
102
- const totalTeleported = await readTotalTeleported(params.verifierContract, recipientFr);
103
- return {
104
- token: primaryToken,
105
- aggregationState,
106
- events: combinedEvents,
107
- globalProofs: combinedGlobalProofs,
108
- eligibleProofs: combinedEligibleProofs,
109
- totalEligibleValue,
110
- totalPendingValue,
111
- totalIndexedValue,
112
- totalTeleported,
113
- chains: perChain,
114
- };
115
- }
116
- function isViemVerifierContract(contract) {
117
- return typeof contract.read?.totalTeleported === "function";
118
- }
119
- export async function getAnnouncementStatus(params) {
120
- const primaryChainId = params.burn.generalRecipient.chainId;
121
- const primaryToken = findTokenByChain(params.tokens, primaryChainId);
122
- // Use cached aggregation state for display
123
- const aggregationState = await fetchAggregationTreeStateWithCache({
124
- hub: params.hub,
125
- token: primaryToken,
126
- eventBlockSpan: params.eventBlockSpan,
127
- cacheTtlMs: params.cacheTtlMs,
128
- });
129
- const chainEvents = await fetchTransferEvents({
130
- indexerUrl: params.indexerUrl,
131
- tokens: params.tokens,
132
- burnAddresses: [params.burn.burnAddress],
133
- indexerFetchLimit: params.indexerFetchLimit ?? DEFAULT_INDEXER_FETCH_LIMIT,
134
- });
135
- const separatedChains = await separateEventsByEligibility({
136
- aggregationState,
137
- events: chainEvents,
138
- });
139
- // Combine all events from all chains
140
- const combinedEvents = { eligible: [], ineligible: [] };
141
- for (const entry of separatedChains) {
142
- combinedEvents.eligible.push(...entry.events.eligible);
143
- combinedEvents.ineligible.push(...entry.events.ineligible);
144
- }
145
- // Calculate totals
146
- const totalEligibleValue = combinedEvents.eligible.reduce((acc, event) => acc + event.value, 0n);
147
- const totalPendingValue = combinedEvents.ineligible.reduce((acc, event) => acc + event.value, 0n);
148
- const totalIndexedValue = totalEligibleValue + totalPendingValue;
149
- // Get total teleported amount
150
- const recipientFr = normalizeHex(params.burn.generalRecipient.fr);
151
- const totalTeleported = await readTotalTeleported(params.verifierContract, recipientFr);
152
- return {
153
- token: primaryToken,
154
- aggregationState,
155
- events: combinedEvents,
156
- chains: separatedChains,
157
- totalEligibleValue,
158
- totalPendingValue,
159
- totalIndexedValue,
160
- totalTeleported,
161
- };
162
- }
163
- async function readTotalTeleported(contract, recipientFr) {
164
- if (isViemVerifierContract(contract)) {
165
- const value = await contract.read.totalTeleported([recipientFr]);
166
- return BigInt(value);
167
- }
168
- if (typeof contract.totalTeleported === "function") {
169
- const value = await contract.totalTeleported(recipientFr);
170
- return BigInt(value);
171
- }
172
- throw new Error("verifier contract must expose totalTeleported");
173
- }
1
+ /**
2
+ * Re-export from receive module.
3
+ * @deprecated Import from 'zerc20-client-sdk' or './receive/index.js' directly.
4
+ */
5
+ export * from "./receive/index.js";
174
6
  //# sourceMappingURL=receive.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"receive.js","sourceRoot":"","sources":["../../src/operations/receive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"receive.js","sourceRoot":"","sources":["../../src/operations/receive.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,oBAAoB,CAAC"}