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
@@ -1,70 +1,195 @@
1
- let artifactLoader;
2
- let teleportArtifactsPromise;
3
- let singleArtifactsPromise;
4
- let batchArtifactsPromise;
5
- function resetCaches() {
6
- teleportArtifactsPromise = undefined;
7
- singleArtifactsPromise = undefined;
8
- batchArtifactsPromise = undefined;
1
+ // ============================================================================
2
+ // TeleportArtifactsManager Class
3
+ // ============================================================================
4
+ /**
5
+ * Manager for teleport WASM artifacts with caching support.
6
+ * Handles loading and caching of single and batch teleport artifacts.
7
+ */
8
+ export class TeleportArtifactsManager {
9
+ loader;
10
+ allPromise;
11
+ singlePromise;
12
+ batchPromise;
13
+ /**
14
+ * Configures the loader function for loading artifacts.
15
+ * Clears any existing cache when reconfigured.
16
+ */
17
+ configure(loader) {
18
+ this.loader = loader;
19
+ this.clearCache();
20
+ }
21
+ /**
22
+ * Clears all cached artifacts.
23
+ */
24
+ clearCache() {
25
+ this.allPromise = undefined;
26
+ this.singlePromise = undefined;
27
+ this.batchPromise = undefined;
28
+ }
29
+ /**
30
+ * Resets the manager to its initial state.
31
+ * Useful for testing to ensure clean state between tests.
32
+ */
33
+ reset() {
34
+ this.loader = undefined;
35
+ this.clearCache();
36
+ }
37
+ /**
38
+ * Returns true if a loader has been configured.
39
+ */
40
+ isConfigured() {
41
+ return this.loader !== undefined;
42
+ }
43
+ /**
44
+ * Primes all artifact caches.
45
+ */
46
+ primeAll(artifacts) {
47
+ this.allPromise = Promise.resolve(artifacts);
48
+ this.singlePromise = Promise.resolve(artifacts.single);
49
+ this.batchPromise = Promise.resolve(artifacts.batch);
50
+ }
51
+ /**
52
+ * Primes the single artifacts cache.
53
+ */
54
+ primeSingle(artifacts) {
55
+ this.singlePromise = Promise.resolve(artifacts);
56
+ }
57
+ /**
58
+ * Primes the batch artifacts cache.
59
+ */
60
+ primeBatch(artifacts) {
61
+ this.batchPromise = Promise.resolve(artifacts);
62
+ }
63
+ /**
64
+ * Loads all teleport artifacts.
65
+ * @param _options Reserved for future use (e.g., custom fetchImpl). Kept for API consistency.
66
+ * @throws Error if loader is not configured.
67
+ * @remarks Use this to pre-warm caches at app startup.
68
+ */
69
+ async loadAll(_options = {}) {
70
+ const artifacts = await this.resolveAll();
71
+ if (!this.singlePromise) {
72
+ this.singlePromise = Promise.resolve(artifacts.single);
73
+ }
74
+ if (!this.batchPromise) {
75
+ this.batchPromise = Promise.resolve(artifacts.batch);
76
+ }
77
+ return artifacts;
78
+ }
79
+ /**
80
+ * Loads single teleport artifacts.
81
+ * @throws Error if loader is not configured.
82
+ * @remarks This caches the resolved artifacts.
83
+ */
84
+ async loadSingle(options = {}) {
85
+ if (this.singlePromise) {
86
+ return this.singlePromise;
87
+ }
88
+ const promise = this.loadAll(options).then((artifacts) => artifacts.single);
89
+ this.singlePromise = promise;
90
+ return promise;
91
+ }
92
+ /**
93
+ * Loads batch teleport artifacts.
94
+ * @throws Error if loader is not configured.
95
+ * @remarks This caches the resolved artifacts.
96
+ */
97
+ async loadBatch(options = {}) {
98
+ if (this.batchPromise) {
99
+ return this.batchPromise;
100
+ }
101
+ const promise = this.loadAll(options).then((artifacts) => artifacts.batch);
102
+ this.batchPromise = promise;
103
+ return promise;
104
+ }
105
+ requireLoader() {
106
+ if (!this.loader) {
107
+ throw new Error("Teleport artifact loader is not configured. Call configureTeleportArtifactsLoader() first.");
108
+ }
109
+ return this.loader;
110
+ }
111
+ async resolveAll() {
112
+ if (!this.allPromise) {
113
+ const loader = this.requireLoader();
114
+ this.allPromise = Promise.resolve().then(() => loader());
115
+ }
116
+ return this.allPromise;
117
+ }
9
118
  }
119
+ // ============================================================================
120
+ // Default Singleton & Backward-Compatible Functions
121
+ // ============================================================================
122
+ const defaultManager = new TeleportArtifactsManager();
123
+ /**
124
+ * Configures the teleport artifacts loader.
125
+ * Clears any existing cache when reconfigured.
126
+ */
10
127
  export function configureTeleportArtifactsLoader(loader) {
11
- artifactLoader = loader;
12
- resetCaches();
128
+ defaultManager.configure(loader);
13
129
  }
130
+ /**
131
+ * Clears all cached teleport artifacts.
132
+ */
14
133
  export function clearTeleportArtifactsCache() {
15
- resetCaches();
134
+ defaultManager.clearCache();
16
135
  }
136
+ /**
137
+ * @deprecated Use clearTeleportArtifactsCache instead.
138
+ */
17
139
  export function clearTeleportArtifactCache(_url) {
18
140
  clearTeleportArtifactsCache();
19
141
  }
142
+ /**
143
+ * Primes all teleport artifact caches.
144
+ */
20
145
  export function primeTeleportArtifacts(artifacts) {
21
- teleportArtifactsPromise = Promise.resolve(artifacts);
22
- singleArtifactsPromise = Promise.resolve(artifacts.single);
23
- batchArtifactsPromise = Promise.resolve(artifacts.batch);
146
+ defaultManager.primeAll(artifacts);
24
147
  }
148
+ /**
149
+ * Primes the single teleport artifacts cache.
150
+ */
25
151
  export function primeSingleTeleportArtifacts(artifacts) {
26
- singleArtifactsPromise = Promise.resolve(artifacts);
152
+ defaultManager.primeSingle(artifacts);
27
153
  }
154
+ /**
155
+ * Primes the batch teleport artifacts cache.
156
+ */
28
157
  export function primeBatchTeleportArtifacts(artifacts) {
29
- batchArtifactsPromise = Promise.resolve(artifacts);
30
- }
31
- function requireLoader() {
32
- if (!artifactLoader) {
33
- throw new Error("Teleport artifact loader is not configured. Call configureTeleportArtifactsLoader() first.");
34
- }
35
- return artifactLoader;
158
+ defaultManager.primeBatch(artifacts);
36
159
  }
37
- async function resolveTeleportArtifacts() {
38
- if (!teleportArtifactsPromise) {
39
- const loader = requireLoader();
40
- teleportArtifactsPromise = Promise.resolve().then(() => loader());
41
- }
42
- return teleportArtifactsPromise;
43
- }
44
- export async function loadTeleportArtifacts(_options = {}) {
45
- const artifacts = await resolveTeleportArtifacts();
46
- if (!singleArtifactsPromise) {
47
- singleArtifactsPromise = Promise.resolve(artifacts.single);
48
- }
49
- if (!batchArtifactsPromise) {
50
- batchArtifactsPromise = Promise.resolve(artifacts.batch);
51
- }
52
- return artifacts;
160
+ /**
161
+ * Loads all teleport artifacts.
162
+ * @throws Error if loader is not configured.
163
+ */
164
+ export async function loadTeleportArtifacts(options = {}) {
165
+ return defaultManager.loadAll(options);
53
166
  }
167
+ /**
168
+ * Loads single teleport artifacts.
169
+ * @throws Error if loader is not configured.
170
+ */
54
171
  export async function loadSingleTeleportArtifacts(options = {}) {
55
- if (singleArtifactsPromise) {
56
- return singleArtifactsPromise;
57
- }
58
- const promise = loadTeleportArtifacts(options).then((artifacts) => artifacts.single);
59
- singleArtifactsPromise = promise;
60
- return promise;
172
+ return defaultManager.loadSingle(options);
61
173
  }
174
+ /**
175
+ * Loads batch teleport artifacts.
176
+ * @throws Error if loader is not configured.
177
+ */
62
178
  export async function loadBatchTeleportArtifacts(options = {}) {
63
- if (batchArtifactsPromise) {
64
- return batchArtifactsPromise;
65
- }
66
- const promise = loadTeleportArtifacts(options).then((artifacts) => artifacts.batch);
67
- batchArtifactsPromise = promise;
68
- return promise;
179
+ return defaultManager.loadBatch(options);
180
+ }
181
+ /**
182
+ * Resets the default teleport artifacts manager to its initial state.
183
+ * Useful for testing to ensure clean state between tests.
184
+ */
185
+ export function resetTeleportArtifactsManager() {
186
+ defaultManager.reset();
187
+ }
188
+ /**
189
+ * Returns the default teleport artifacts manager instance.
190
+ * Useful when you need direct access to the manager.
191
+ */
192
+ export function getDefaultTeleportArtifactsManager() {
193
+ return defaultManager;
69
194
  }
70
195
  //# sourceMappingURL=artifacts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/wasm/artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/wasm/artifacts.ts"],"names":[],"mappings":"AA4CA,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IAC3B,MAAM,CAAsC;IAC5C,UAAU,CAA6C;IACvD,aAAa,CAAmD;IAChE,YAAY,CAAkD;IAEtE;;;OAGG;IACH,SAAS,CAAC,MAA+B;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,KAAK;QACH,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,CAAC,UAAU,EAAE,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,YAAY;QACV,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,SAAgC;QACvC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,WAAW,CAAC,SAAsC;QAChD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,SAAqC;QAC9C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACjD,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CAAC,WAAyC,EAAE;QACvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU,CACd,UAAwC,EAAE;QAE1C,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC7B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,SAAS,CAAC,UAAwC,EAAE;QACxD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC3E,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,aAAa;QACnB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,4FAA4F,CAC7F,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;CACF;AAED,+EAA+E;AAC/E,oDAAoD;AACpD,+EAA+E;AAE/E,MAAM,cAAc,GAAG,IAAI,wBAAwB,EAAE,CAAC;AAEtD;;;GAGG;AACH,MAAM,UAAU,gCAAgC,CAAC,MAA+B;IAC9E,cAAc,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B;IACzC,cAAc,CAAC,UAAU,EAAE,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,0BAA0B,CAAC,IAAa;IACtD,2BAA2B,EAAE,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAgC;IACrE,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,4BAA4B,CAAC,SAAsC;IACjF,cAAc,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,SAAqC;IAC/E,cAAc,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,UAAwC,EAAE;IAE1C,OAAO,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AACzC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,UAAwC,EAAE;IAE1C,OAAO,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,UAAwC,EAAE;IAE1C,OAAO,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,6BAA6B;IAC3C,cAAc,CAAC,KAAK,EAAE,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kCAAkC;IAChD,OAAO,cAAc,CAAC;AACxB,CAAC"}
@@ -0,0 +1,77 @@
1
+ import type { SingleWithdrawWasm, WithdrawNovaWasm } from "../assets/wasm/web/zerc20_wasm.js";
2
+ import type { AggregationTreeState, BurnArtifacts, ChainEvents, FetchAggregationTreeStateParams, FetchLocalTeleportProofsParams, FetchTransferEventsParams, GenerateGlobalTeleportProofsParams, GlobalTeleportProofWithEvent, LocalTeleportProof, SecretAndTweak, SeparateEventsByEligibilityParams, SeparatedChainEvents } from "../types.js";
3
+ import { WasmRuntime } from "./runtime.js";
4
+ import type { WasmRuntimeOptions } from "./types.js";
5
+ /**
6
+ * Returns the default singleton WasmRuntime instance.
7
+ */
8
+ export declare function getDefaultWasmRuntime(): WasmRuntime;
9
+ /**
10
+ * Configures the default WASM runtime with the specified options.
11
+ */
12
+ export declare function configureWasmLocator(options?: WasmRuntimeOptions): void;
13
+ /**
14
+ * Gets the seed message for signing.
15
+ */
16
+ export declare function getSeedMessage(): Promise<string>;
17
+ /**
18
+ * Derives payment advice from a seed.
19
+ */
20
+ export declare function derivePaymentAdvice(seedHex: string, paymentAdviceIdHex: string, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
21
+ /**
22
+ * Derives a single invoice from a seed.
23
+ */
24
+ export declare function deriveInvoiceSingle(seedHex: string, invoiceIdHex: string, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
25
+ /**
26
+ * Derives a batch invoice from a seed.
27
+ */
28
+ export declare function deriveInvoiceBatch(seedHex: string, invoiceIdHex: string, subId: number, recipientChainId: bigint | number, recipientAddress: string): Promise<SecretAndTweak>;
29
+ /**
30
+ * Builds a full burn address for a recipient.
31
+ */
32
+ export declare function buildFullBurnAddress(recipientChainId: bigint | number, recipientAddress: string, secretHex: string, tweakHex: string): Promise<BurnArtifacts>;
33
+ /**
34
+ * Decodes a full burn address payload.
35
+ */
36
+ export declare function decodeFullBurnAddress(payloadHex: string): Promise<BurnArtifacts>;
37
+ /**
38
+ * Computes the general recipient field element.
39
+ */
40
+ export declare function generalRecipientFr(chainId: bigint | number, recipientAddress: string, tweakHex: string): Promise<string>;
41
+ /**
42
+ * Computes the aggregation root from a snapshot.
43
+ */
44
+ export declare function aggregationRoot(snapshot: readonly string[]): Promise<string>;
45
+ /**
46
+ * Generates a merkle proof for the aggregation tree.
47
+ */
48
+ export declare function aggregationMerkleProof(snapshot: readonly string[], index: number): Promise<string[]>;
49
+ /**
50
+ * Fetches the aggregation tree state from the indexer.
51
+ */
52
+ export declare function fetchAggregationTreeState(params: FetchAggregationTreeStateParams): Promise<AggregationTreeState>;
53
+ /**
54
+ * Fetches transfer events from the indexer.
55
+ */
56
+ export declare function fetchTransferEvents(params: FetchTransferEventsParams): Promise<ChainEvents[]>;
57
+ /**
58
+ * Separates events by their eligibility for inclusion.
59
+ */
60
+ export declare function separateEventsByEligibility(params: SeparateEventsByEligibilityParams): Promise<SeparatedChainEvents[]>;
61
+ /**
62
+ * Fetches local teleport merkle proofs from the indexer.
63
+ */
64
+ export declare function fetchLocalTeleportMerkleProofs(params: FetchLocalTeleportProofsParams): Promise<LocalTeleportProof[]>;
65
+ /**
66
+ * Generates global teleport merkle proofs.
67
+ */
68
+ export declare function generateGlobalTeleportMerkleProofs(params: GenerateGlobalTeleportProofsParams): Promise<GlobalTeleportProofWithEvent[]>;
69
+ /**
70
+ * Creates a single withdraw WASM program for Groth16 proofs.
71
+ */
72
+ export declare function createSingleWithdrawWasm(localPk: Uint8Array, localVk: Uint8Array, globalPk: Uint8Array, globalVk: Uint8Array): Promise<SingleWithdrawWasm>;
73
+ /**
74
+ * Creates a withdraw Nova WASM program for incremental proofs.
75
+ */
76
+ export declare function createWithdrawNovaWasm(localPp: Uint8Array, localVp: Uint8Array, globalPp: Uint8Array, globalVp: Uint8Array): Promise<WithdrawNovaWasm>;
77
+ //# sourceMappingURL=functions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../src/wasm/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ import { WasmRuntime } from "./runtime.js";
2
+ /**
3
+ * Default singleton WasmRuntime instance.
4
+ */
5
+ const defaultRuntime = new WasmRuntime();
6
+ /**
7
+ * Returns the default singleton WasmRuntime.
8
+ */
9
+ function runtime() {
10
+ return defaultRuntime;
11
+ }
12
+ /**
13
+ * Returns the default singleton WasmRuntime instance.
14
+ */
15
+ export function getDefaultWasmRuntime() {
16
+ return runtime();
17
+ }
18
+ /**
19
+ * Configures the default WASM runtime with the specified options.
20
+ */
21
+ export function configureWasmLocator(options = {}) {
22
+ runtime().configure(options);
23
+ }
24
+ /**
25
+ * Gets the seed message for signing.
26
+ */
27
+ export async function getSeedMessage() {
28
+ return runtime().getSeedMessage();
29
+ }
30
+ /**
31
+ * Derives payment advice from a seed.
32
+ */
33
+ export async function derivePaymentAdvice(seedHex, paymentAdviceIdHex, recipientChainId, recipientAddress) {
34
+ return runtime().derivePaymentAdvice(seedHex, paymentAdviceIdHex, recipientChainId, recipientAddress);
35
+ }
36
+ /**
37
+ * Derives a single invoice from a seed.
38
+ */
39
+ export async function deriveInvoiceSingle(seedHex, invoiceIdHex, recipientChainId, recipientAddress) {
40
+ return runtime().deriveInvoiceSingle(seedHex, invoiceIdHex, recipientChainId, recipientAddress);
41
+ }
42
+ /**
43
+ * Derives a batch invoice from a seed.
44
+ */
45
+ export async function deriveInvoiceBatch(seedHex, invoiceIdHex, subId, recipientChainId, recipientAddress) {
46
+ return runtime().deriveInvoiceBatch(seedHex, invoiceIdHex, subId, recipientChainId, recipientAddress);
47
+ }
48
+ /**
49
+ * Builds a full burn address for a recipient.
50
+ */
51
+ export async function buildFullBurnAddress(recipientChainId, recipientAddress, secretHex, tweakHex) {
52
+ return runtime().buildFullBurnAddress(recipientChainId, recipientAddress, secretHex, tweakHex);
53
+ }
54
+ /**
55
+ * Decodes a full burn address payload.
56
+ */
57
+ export async function decodeFullBurnAddress(payloadHex) {
58
+ return runtime().decodeFullBurnAddress(payloadHex);
59
+ }
60
+ /**
61
+ * Computes the general recipient field element.
62
+ */
63
+ export async function generalRecipientFr(chainId, recipientAddress, tweakHex) {
64
+ return runtime().generalRecipientFr(chainId, recipientAddress, tweakHex);
65
+ }
66
+ /**
67
+ * Computes the aggregation root from a snapshot.
68
+ */
69
+ export async function aggregationRoot(snapshot) {
70
+ return runtime().aggregationRoot(snapshot);
71
+ }
72
+ /**
73
+ * Generates a merkle proof for the aggregation tree.
74
+ */
75
+ export async function aggregationMerkleProof(snapshot, index) {
76
+ return runtime().aggregationMerkleProof(snapshot, index);
77
+ }
78
+ /**
79
+ * Fetches the aggregation tree state from the indexer.
80
+ */
81
+ export async function fetchAggregationTreeState(params) {
82
+ return runtime().fetchAggregationTreeState(params);
83
+ }
84
+ /**
85
+ * Fetches transfer events from the indexer.
86
+ */
87
+ export async function fetchTransferEvents(params) {
88
+ return runtime().fetchTransferEvents(params);
89
+ }
90
+ /**
91
+ * Separates events by their eligibility for inclusion.
92
+ */
93
+ export async function separateEventsByEligibility(params) {
94
+ return runtime().separateEventsByEligibility(params);
95
+ }
96
+ /**
97
+ * Fetches local teleport merkle proofs from the indexer.
98
+ */
99
+ export async function fetchLocalTeleportMerkleProofs(params) {
100
+ return runtime().fetchLocalTeleportMerkleProofs(params);
101
+ }
102
+ /**
103
+ * Generates global teleport merkle proofs.
104
+ */
105
+ export async function generateGlobalTeleportMerkleProofs(params) {
106
+ return runtime().generateGlobalTeleportMerkleProofs(params);
107
+ }
108
+ /**
109
+ * Creates a single withdraw WASM program for Groth16 proofs.
110
+ */
111
+ export async function createSingleWithdrawWasm(localPk, localVk, globalPk, globalVk) {
112
+ return runtime().createSingleWithdrawProgram(localPk, localVk, globalPk, globalVk);
113
+ }
114
+ /**
115
+ * Creates a withdraw Nova WASM program for incremental proofs.
116
+ */
117
+ export async function createWithdrawNovaWasm(localPp, localVp, globalPp, globalVp) {
118
+ return runtime().createWithdrawNovaProgram(localPp, localVp, globalPp, globalVp);
119
+ }
120
+ //# sourceMappingURL=functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../src/wasm/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Normalizes an override URL by trimming whitespace.
3
+ * Returns undefined for empty or whitespace-only strings.
4
+ */
5
+ export declare function normalizeOverride(url?: string): string | undefined;
6
+ /**
7
+ * Ensures a URL string ends with a trailing slash.
8
+ * @remarks Used when constructing `new URL(path, baseUrl)` candidates.
9
+ */
10
+ export declare function ensureTrailingSlash(value: string): string;
11
+ /**
12
+ * Logs a warning when WASM fails to load from a URL and falls back to another.
13
+ * @remarks This is intentionally a `console.warn` so host applications can filter logs if desired.
14
+ */
15
+ export declare function logWasmFallbackWarning(url: string, error: unknown): void;
16
+ /**
17
+ * Formats an error for display in error messages.
18
+ * @remarks Avoids leaking non-Error objects into user-facing messages.
19
+ */
20
+ export declare function formatError(error: unknown): string;
21
+ /**
22
+ * Validates that a subId is within the valid range for batch invoices.
23
+ * @throws Error if subId is not a valid integer within bounds.
24
+ */
25
+ export declare function assertValidInvoiceSubId(subId: number): void;
26
+ /**
27
+ * Converts a number or bigint to a safe JavaScript number.
28
+ * @throws Error if the value is negative, not finite, or exceeds safe integer range.
29
+ * @remarks This is used for WASM boundary values that must fit in JS number space.
30
+ */
31
+ export declare function toSafeNumber(value: number | bigint, label: string): number;
32
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/wasm/helpers.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAMlE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAQxE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQlD;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAO3D;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAkB1E"}
@@ -0,0 +1,79 @@
1
+ import { NUM_BATCH_INVOICES } from "../constants.js";
2
+ /**
3
+ * Normalizes an override URL by trimming whitespace.
4
+ * Returns undefined for empty or whitespace-only strings.
5
+ */
6
+ export function normalizeOverride(url) {
7
+ if (!url) {
8
+ return undefined;
9
+ }
10
+ const trimmed = url.trim();
11
+ return trimmed.length > 0 ? trimmed : undefined;
12
+ }
13
+ /**
14
+ * Ensures a URL string ends with a trailing slash.
15
+ * @remarks Used when constructing `new URL(path, baseUrl)` candidates.
16
+ */
17
+ export function ensureTrailingSlash(value) {
18
+ return value.endsWith("/") ? value : `${value}/`;
19
+ }
20
+ /**
21
+ * Logs a warning when WASM fails to load from a URL and falls back to another.
22
+ * @remarks This is intentionally a `console.warn` so host applications can filter logs if desired.
23
+ */
24
+ export function logWasmFallbackWarning(url, error) {
25
+ if (typeof console === "undefined" || typeof console.warn !== "function") {
26
+ return;
27
+ }
28
+ console.warn(`zerc20 wasm failed to load from '${url}'. Falling back to the next candidate.`, error);
29
+ }
30
+ /**
31
+ * Formats an error for display in error messages.
32
+ * @remarks Avoids leaking non-Error objects into user-facing messages.
33
+ */
34
+ export function formatError(error) {
35
+ if (!error) {
36
+ return "unknown error";
37
+ }
38
+ if (error instanceof Error) {
39
+ return error.message;
40
+ }
41
+ return String(error);
42
+ }
43
+ /**
44
+ * Validates that a subId is within the valid range for batch invoices.
45
+ * @throws Error if subId is not a valid integer within bounds.
46
+ */
47
+ export function assertValidInvoiceSubId(subId) {
48
+ if (!Number.isFinite(subId) || !Number.isInteger(subId)) {
49
+ throw new Error("subId must be a finite integer");
50
+ }
51
+ if (subId < 0 || subId >= NUM_BATCH_INVOICES) {
52
+ throw new Error(`subId must be between 0 and ${NUM_BATCH_INVOICES - 1}`);
53
+ }
54
+ }
55
+ /**
56
+ * Converts a number or bigint to a safe JavaScript number.
57
+ * @throws Error if the value is negative, not finite, or exceeds safe integer range.
58
+ * @remarks This is used for WASM boundary values that must fit in JS number space.
59
+ */
60
+ export function toSafeNumber(value, label) {
61
+ if (typeof value === "number") {
62
+ if (!Number.isFinite(value) || !Number.isInteger(value)) {
63
+ throw new Error(`${label} must be a finite integer`);
64
+ }
65
+ if (value < 0) {
66
+ throw new Error(`${label} must be non-negative`);
67
+ }
68
+ return value;
69
+ }
70
+ if (value < 0n) {
71
+ throw new Error(`${label} must be non-negative`);
72
+ }
73
+ const asNumber = Number(value);
74
+ if (!Number.isFinite(asNumber) || BigInt(asNumber) !== value) {
75
+ throw new Error(`${label} exceeds JavaScript safe integer range`);
76
+ }
77
+ return asNumber;
78
+ }
79
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/wasm/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,GAAY;IAC5C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IAC3B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CAAC,GAAW,EAAE,KAAc;IAChE,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACzE,OAAO;IACT,CAAC;IACD,OAAO,CAAC,IAAI,CACV,oCAAoC,GAAG,wCAAwC,EAC/E,KAAK,CACN,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,KAAc;IACxC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAa;IACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,kBAAkB,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,+BAA+B,kBAAkB,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAsB,EAAE,KAAa;IAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,2BAA2B,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uBAAuB,CAAC,CAAC;QACnD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,uBAAuB,CAAC,CAAC;IACnD,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,KAAK,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,wCAAwC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}