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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zkp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/zkp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC"}
package/dist/zkp/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  export { ProofService } from "./proofService.js";
2
- export { canUseZkpWorker, disableZkpWorker } from "./workerClient.js";
2
+ export { ZkpWorkerClient, canUseZkpWorker, disableZkpWorker, resetZkpWorker, getDefaultZkpWorkerClient, } from "./workerClient.js";
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zkp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/zkp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,eAAe,EAEf,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC"}
@@ -1,9 +1,36 @@
1
1
  import type { NovaProverInput, NovaProverOutput, SingleTeleportArtifacts, SingleTeleportParams } from "../types.js";
2
2
  import type { WasmRuntime } from "../wasm/index.js";
3
+ /**
4
+ * High-level proof orchestration service.
5
+ * @remarks
6
+ * This service:
7
+ * - Loads required prover artifacts
8
+ * - Optionally runs jobs in a Web Worker (when available)
9
+ * - Falls back to main-thread computation on worker failures
10
+ *
11
+ * Errors thrown by the underlying WASM prover are wrapped with a stable prefix for easier handling.
12
+ */
3
13
  export declare class ProofService {
4
14
  private readonly wasm;
15
+ /**
16
+ * Create a proof service bound to a {@link WasmRuntime}.
17
+ */
5
18
  constructor(wasm: WasmRuntime);
19
+ /**
20
+ * Create a single teleport (Groth16) proof for an eligible event.
21
+ * @remarks
22
+ * - Verifies global teleport proofs before proving.
23
+ * - Uses a worker when available; falls back to main thread if the worker fails.
24
+ * @throws If proof verification fails or the prover fails.
25
+ */
6
26
  createSingleTeleportProof(params: SingleTeleportParams): Promise<SingleTeleportArtifacts>;
27
+ /**
28
+ * Run the Nova batch prover to produce an IVC proof for multiple events.
29
+ * @remarks
30
+ * - Requires `events.length === proofs.length` and that each event/proof pair correspond by index.
31
+ * - Uses a worker when available; falls back to main thread if the worker fails.
32
+ * @throws If inputs are invalid, proof verification fails, or the prover fails.
33
+ */
7
34
  runNovaProver(params: NovaProverInput): Promise<NovaProverOutput>;
8
35
  private shouldUseWorker;
9
36
  private computeSingleTeleportProof;
@@ -1 +1 @@
1
- {"version":3,"file":"proofService.d.ts","sourceRoot":"","sources":["../../src/zkp/proofService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AASrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAapD,qBAAa,YAAY;IACX,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,WAAW;IAExC,yBAAyB,CAC7B,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,uBAAuB,CAAC;IAmB7B,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmBvE,OAAO,CAAC,eAAe;YAIT,0BAA0B;YA2D1B,gBAAgB;CAkE/B"}
1
+ {"version":3,"file":"proofService.d.ts","sourceRoot":"","sources":["../../src/zkp/proofService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,gBAAgB,EAChB,uBAAuB,EACvB,oBAAoB,EACrB,MAAM,aAAa,CAAC;AASrB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAUpD;;;;;;;;;GASG;AACH,qBAAa,YAAY;IAIX,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHjC;;OAEG;gBAC0B,IAAI,EAAE,WAAW;IAE9C;;;;;;OAMG;IACG,yBAAyB,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB/F;;;;;;OAMG;IACG,aAAa,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgBvE,OAAO,CAAC,eAAe;YAIT,0BAA0B;YA+C1B,gBAAgB;CA6D/B"}
@@ -1,13 +1,33 @@
1
1
  import { hexToBytes, normalizeHex } from "../utils/hex.js";
2
2
  import { verifyGlobalTeleportProofs } from "../utils/merkle.js";
3
3
  import { loadBatchTeleportArtifacts, loadSingleTeleportArtifacts, } from "../wasm/artifacts.js";
4
- import { appendDummySteps, formatFieldElement, toFieldHex, toLeafIndexString, } from "./proofUtils.js";
5
- import { canUseZkpWorker, disableZkpWorker, runZkpWorkerJob, } from "./workerClient.js";
4
+ import { appendDummySteps, formatFieldElement, sortProofsByLeafIndex, toFieldHex, toLeafIndexString, } from "./proofUtils.js";
5
+ import { canUseZkpWorker, disableZkpWorker, runZkpWorkerJob } from "./workerClient.js";
6
+ /**
7
+ * High-level proof orchestration service.
8
+ * @remarks
9
+ * This service:
10
+ * - Loads required prover artifacts
11
+ * - Optionally runs jobs in a Web Worker (when available)
12
+ * - Falls back to main-thread computation on worker failures
13
+ *
14
+ * Errors thrown by the underlying WASM prover are wrapped with a stable prefix for easier handling.
15
+ */
6
16
  export class ProofService {
7
17
  wasm;
18
+ /**
19
+ * Create a proof service bound to a {@link WasmRuntime}.
20
+ */
8
21
  constructor(wasm) {
9
22
  this.wasm = wasm;
10
23
  }
24
+ /**
25
+ * Create a single teleport (Groth16) proof for an eligible event.
26
+ * @remarks
27
+ * - Verifies global teleport proofs before proving.
28
+ * - Uses a worker when available; falls back to main thread if the worker fails.
29
+ * @throws If proof verification fails or the prover fails.
30
+ */
11
31
  async createSingleTeleportProof(params) {
12
32
  const wasmArtifacts = await loadSingleTeleportArtifacts();
13
33
  if (this.shouldUseWorker()) {
@@ -24,6 +44,13 @@ export class ProofService {
24
44
  }
25
45
  return this.computeSingleTeleportProof(params, wasmArtifacts);
26
46
  }
47
+ /**
48
+ * Run the Nova batch prover to produce an IVC proof for multiple events.
49
+ * @remarks
50
+ * - Requires `events.length === proofs.length` and that each event/proof pair correspond by index.
51
+ * - Uses a worker when available; falls back to main thread if the worker fails.
52
+ * @throws If inputs are invalid, proof verification fails, or the prover fails.
53
+ */
27
54
  async runNovaProver(params) {
28
55
  const wasmArtifacts = await loadBatchTeleportArtifacts();
29
56
  if (this.shouldUseWorker()) {
@@ -120,23 +147,4 @@ export class ProofService {
120
147
  }
121
148
  }
122
149
  }
123
- function sortProofsByLeafIndex(events, proofs) {
124
- const proofEventPairs = events.map((event, idx) => ({
125
- event,
126
- proof: proofs[idx],
127
- }));
128
- proofEventPairs.sort((a, b) => {
129
- if (a.proof.leafIndex < b.proof.leafIndex) {
130
- return -1;
131
- }
132
- if (a.proof.leafIndex > b.proof.leafIndex) {
133
- return 1;
134
- }
135
- return 0;
136
- });
137
- return {
138
- events: proofEventPairs.map((pair) => pair.event),
139
- proofs: proofEventPairs.map((pair) => pair.proof),
140
- };
141
- }
142
150
  //# sourceMappingURL=proofService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proofService.js","sourceRoot":"","sources":["../../src/zkp/proofService.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAEL,0BAA0B,EAC1B,2BAA2B,GAE5B,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,OAAO,YAAY;IACM;IAA7B,YAA6B,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;IAAG,CAAC;IAElD,KAAK,CAAC,yBAAyB,CAC7B,MAA4B;QAE5B,MAAM,aAAa,GAAG,MAAM,2BAA2B,EAAE,CAAC;QAC1D,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,OAAO,MAAM,eAAe,CAAC,gBAAgB,EAAE;oBAC7C,MAAM;oBACN,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CACV,mEAAmE,EACnE,KAAK,CACN,CAAC;gBACF,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,MAAuB;QACzC,MAAM,aAAa,GAAG,MAAM,0BAA0B,EAAE,CAAC;QACzD,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,OAAO,MAAM,eAAe,CAAC,MAAM,EAAE;oBACnC,MAAM;oBACN,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CACV,kEAAkE,EAClE,KAAK,CACN,CAAC;gBACF,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;IAEO,eAAe;QACrB,OAAO,eAAe,EAAE,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,MAA4B,EAC5B,aAA0C;QAE1C,0BAA0B,CAAC;YACzB,eAAe,EAAE,MAAM,CAAC,gBAAgB,CAAC,eAAe;YACxD,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;YACtB,MAAM,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;SACvB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,2BAA2B,CACtD,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,QAAQ,EACtB,aAAa,CAAC,QAAQ,CACvB,CAAC;QACF,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,kBAAkB,CAC5B,MAAM,CAAC,gBAAgB,CAAC,eAAe,EACvC,YAAY,CACb;YACD,SAAS,EAAE,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC;YAC9D,aAAa,EAAE,kBAAkB,CAC/B,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAC9B,eAAe,CAChB;YACD,IAAI,EAAE,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC;YACnD,KAAK,EAAE,kBAAkB,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;YAClE,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC;YACtD,SAAS,EAAE,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;YACpD,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,CACnD,kBAAkB,CAAC,OAAO,EAAE,kBAAkB,GAAG,GAAG,CAAC,CACtD;SACF,CAAC;QACF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzC,OAAO;gBACL,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC;gBACjD,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CACtD,YAAY,CAAC,KAAK,CAAC,CACpB;gBACD,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,2CAA2C,EAC3C,OAAO,EACP,KAAK,CACN,CAAC;YACF,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE;gBAClD,CAAC,CAAC,iCAAiC,MAAM,CAAC,KAAK,CAAC,EAAE,CACrD,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,MAAuB,EACvB,aAAyC;QAEzC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAClD,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,GAClD,qBAAqB,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAEtD,0BAA0B,CAAC;YACzB,eAAe,EAAE,MAAM,CAAC,gBAAgB,CAAC,eAAe;YACxD,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,YAAY;SACrB,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,yBAAyB,CACpD,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,QAAQ,EACtB,aAAa,CAAC,QAAQ,CACvB,CAAC;QACF,MAAM,EAAE,GAAG;YACT,kBAAkB,CAAC,MAAM,CAAC,gBAAgB,CAAC,eAAe,EAAE,OAAO,CAAC;YACpE,kBAAkB,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC;YAC/C,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC;YAClC,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC;SACnC,CAAC;QACF,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;YAC9C,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;YAC3D,KAAK,EAAE,kBAAkB,CACvB,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,EACvB,UAAU,GAAG,SAAS,CACvB;YACD,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,GAAG,UAAU,CAAC;YACrE,SAAS,EAAE,iBAAiB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;YACzD,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAC/D,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,cAAc,UAAU,GAAG,CAAC,CACtE;SACF,CAAC,CAAC,CAAC;QAEJ,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAChD,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACvD,OAAO;gBACL,QAAQ,EAAE,aAAa;gBACvB,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CACvD,YAAY,CAAC,KAAK,CAAC,CACpB;gBACD,KAAK,EAAE,WAAW,CAAC,KAAK;aACzB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,CAAC,CAAC;YACzE,MAAM,IAAI,KAAK,CACb,KAAK,YAAY,KAAK;gBACpB,CAAC,CAAC,gCAAgC,KAAK,CAAC,OAAO,EAAE;gBACjD,CAAC,CAAC,gCAAgC,MAAM,CAAC,KAAK,CAAC,EAAE,CACpD,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED,SAAS,qBAAqB,CAC5B,MAA+B,EAC/B,MAAsC;IAEtC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAClD,KAAK;QACL,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;KACnB,CAAC,CAAC,CAAC;IACJ,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC5B,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC1C,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YAC1C,OAAO,CAAC,CAAC;QACX,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;QACjD,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;KAClD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"proofService.js","sourceRoot":"","sources":["../../src/zkp/proofService.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,43 @@
1
+ import type { GlobalTeleportProof, IndexedEvent } from "../types.js";
2
+ /**
3
+ * Convert a bigint to a fixed-width hex string.
4
+ * @param value - Non-negative integer value.
5
+ * @param bytes - Desired byte width. Defaults to 32.
6
+ * @throws If `value` is negative.
7
+ */
1
8
  export declare function toFixedHex(value: bigint, bytes?: number): string;
9
+ /**
10
+ * Convert a bigint to a 32-byte field element hex string.
11
+ */
2
12
  export declare function toFieldHex(value: bigint): string;
13
+ /**
14
+ * Convert a leaf index to its decimal string representation.
15
+ * @remarks Nova circuits often expect indices as decimal strings.
16
+ */
3
17
  export declare function toLeafIndexString(index: bigint): string;
4
18
  export declare function formatFieldElement(value: string, label: string): string;
19
+ /**
20
+ * Choose a small number of dummy steps to append to a Nova batch.
21
+ * @remarks Uses `crypto.getRandomValues` when available; otherwise returns a minimal default.
22
+ */
5
23
  export declare function randomDummySteps(): number;
24
+ /**
25
+ * Append protocol-specific dummy steps to a list of Nova steps.
26
+ * @remarks
27
+ * Dummy steps are placed at the end of the global transfer tree to avoid collisions.
28
+ */
6
29
  export declare function appendDummySteps(steps: any[]): void;
30
+ /**
31
+ * Sorts events and proofs by leaf index in ascending order.
32
+ * Used for Nova batch proofs to ensure correct ordering.
33
+ *
34
+ * @remarks
35
+ * This function assumes that events and proofs arrays have the same length
36
+ * and are indexed correspondingly (events[i] pairs with proofs[i]).
37
+ * Callers should validate length equality before calling this function.
38
+ */
39
+ export declare function sortProofsByLeafIndex(events: readonly IndexedEvent[], proofs: readonly GlobalTeleportProof[]): {
40
+ events: IndexedEvent[];
41
+ proofs: GlobalTeleportProof[];
42
+ };
7
43
  //# sourceMappingURL=proofUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proofUtils.d.ts","sourceRoot":"","sources":["../../src/zkp/proofUtils.ts"],"names":[],"mappings":"AAGA,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAMpE;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAiBD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAUzC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAmBnD"}
1
+ {"version":3,"file":"proofUtils.d.ts","sourceRoot":"","sources":["../../src/zkp/proofUtils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGrE;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAMpE;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvD;AAiBD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAUzC;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI,CAmBnD;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,MAAM,EAAE,SAAS,mBAAmB,EAAE,GACrC;IAAE,MAAM,EAAE,YAAY,EAAE,CAAC;IAAC,MAAM,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAkB3D"}
@@ -1,5 +1,11 @@
1
1
  import { GLOBAL_TRANSFER_TREE_HEIGHT } from "../constants.js";
2
2
  import { normalizeHex } from "../utils/hex.js";
3
+ /**
4
+ * Convert a bigint to a fixed-width hex string.
5
+ * @param value - Non-negative integer value.
6
+ * @param bytes - Desired byte width. Defaults to 32.
7
+ * @throws If `value` is negative.
8
+ */
3
9
  export function toFixedHex(value, bytes = 32) {
4
10
  if (value < 0n) {
5
11
  throw new Error("toFixedHex: negative values are not supported");
@@ -7,9 +13,16 @@ export function toFixedHex(value, bytes = 32) {
7
13
  const hex = value.toString(16).padStart(bytes * 2, "0");
8
14
  return `0x${hex}`;
9
15
  }
16
+ /**
17
+ * Convert a bigint to a 32-byte field element hex string.
18
+ */
10
19
  export function toFieldHex(value) {
11
20
  return toFixedHex(value, 32);
12
21
  }
22
+ /**
23
+ * Convert a leaf index to its decimal string representation.
24
+ * @remarks Nova circuits often expect indices as decimal strings.
25
+ */
13
26
  export function toLeafIndexString(index) {
14
27
  return index.toString(10);
15
28
  }
@@ -30,6 +43,10 @@ function zeroPadField(value, label) {
30
43
  export function formatFieldElement(value, label) {
31
44
  return zeroPadField(value, label);
32
45
  }
46
+ /**
47
+ * Choose a small number of dummy steps to append to a Nova batch.
48
+ * @remarks Uses `crypto.getRandomValues` when available; otherwise returns a minimal default.
49
+ */
33
50
  export function randomDummySteps() {
34
51
  const MIN_DUMMY_STEPS = 1;
35
52
  const MAX_DUMMY_STEPS = 3;
@@ -41,6 +58,11 @@ export function randomDummySteps() {
41
58
  }
42
59
  return MIN_DUMMY_STEPS;
43
60
  }
61
+ /**
62
+ * Append protocol-specific dummy steps to a list of Nova steps.
63
+ * @remarks
64
+ * Dummy steps are placed at the end of the global transfer tree to avoid collisions.
65
+ */
44
66
  export function appendDummySteps(steps) {
45
67
  const dummySteps = randomDummySteps();
46
68
  const maxLeaves = 1n << BigInt(GLOBAL_TRANSFER_TREE_HEIGHT);
@@ -59,4 +81,32 @@ export function appendDummySteps(steps) {
59
81
  });
60
82
  }
61
83
  }
84
+ /**
85
+ * Sorts events and proofs by leaf index in ascending order.
86
+ * Used for Nova batch proofs to ensure correct ordering.
87
+ *
88
+ * @remarks
89
+ * This function assumes that events and proofs arrays have the same length
90
+ * and are indexed correspondingly (events[i] pairs with proofs[i]).
91
+ * Callers should validate length equality before calling this function.
92
+ */
93
+ export function sortProofsByLeafIndex(events, proofs) {
94
+ const proofEventPairs = events.map((event, idx) => ({
95
+ event,
96
+ proof: proofs[idx],
97
+ }));
98
+ proofEventPairs.sort((a, b) => {
99
+ if (a.proof.leafIndex < b.proof.leafIndex) {
100
+ return -1;
101
+ }
102
+ if (a.proof.leafIndex > b.proof.leafIndex) {
103
+ return 1;
104
+ }
105
+ return 0;
106
+ });
107
+ return {
108
+ events: proofEventPairs.map((pair) => pair.event),
109
+ proofs: proofEventPairs.map((pair) => pair.proof),
110
+ };
111
+ }
62
112
  //# sourceMappingURL=proofUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"proofUtils.js","sourceRoot":"","sources":["../../src/zkp/proofUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proofUtils.js","sourceRoot":"","sources":["../../src/zkp/proofUtils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,70 @@
1
1
  import type { ProofWorkerJobType, ProofWorkerPayloads, ProofWorkerResults } from "./workerTypes.js";
2
+ /**
3
+ * Options for creating a ZkpWorkerClient.
4
+ */
5
+ export interface ZkpWorkerClientOptions {
6
+ /** Custom worker factory for testing */
7
+ createWorker?: () => Worker;
8
+ }
9
+ /**
10
+ * Client for running ZKP proof jobs in a Web Worker.
11
+ * Manages worker lifecycle, job queue, and error handling.
12
+ */
13
+ export declare class ZkpWorkerClient {
14
+ private worker;
15
+ private failed;
16
+ private nextJobId;
17
+ private readonly pendingJobs;
18
+ private readonly createWorkerFn;
19
+ constructor(options?: ZkpWorkerClientOptions);
20
+ /**
21
+ * Returns true if this client can run jobs (Worker API available and not failed).
22
+ */
23
+ canUse(): boolean;
24
+ /**
25
+ * Runs a ZKP proof job in the worker.
26
+ *
27
+ * **Important:** Always await or catch the returned promise.
28
+ * Calling `disable()` or `reset()` will reject pending jobs,
29
+ * which can cause unhandled rejections if not properly awaited.
30
+ *
31
+ * @throws Error if worker is not available or has failed.
32
+ */
33
+ runJob<T extends ProofWorkerJobType>(type: T, payload: ProofWorkerPayloads[T]): Promise<ProofWorkerResults[T]>;
34
+ /**
35
+ * Disables the worker and rejects all pending jobs.
36
+ */
37
+ disable(error?: unknown): void;
38
+ /**
39
+ * Resets the client to its initial state. Useful for testing.
40
+ */
41
+ reset(): void;
42
+ private ensureWorker;
43
+ private handleMessage;
44
+ private handleError;
45
+ }
46
+ /**
47
+ * Returns true if ZKP worker can be used (Worker API available and not failed).
48
+ */
2
49
  export declare function canUseZkpWorker(): boolean;
50
+ /**
51
+ * Runs a ZKP proof job in the default worker.
52
+ *
53
+ * **Important:** Always await or catch the returned promise to avoid unhandled rejections.
54
+ */
3
55
  export declare function runZkpWorkerJob<T extends ProofWorkerJobType>(type: T, payload: ProofWorkerPayloads[T]): Promise<ProofWorkerResults[T]>;
56
+ /**
57
+ * Disables the default ZKP worker and rejects all pending jobs.
58
+ */
4
59
  export declare function disableZkpWorker(error?: unknown): void;
60
+ /**
61
+ * Resets the default ZKP worker to its initial state.
62
+ * Useful for testing to ensure clean state between tests.
63
+ */
64
+ export declare function resetZkpWorker(): void;
65
+ /**
66
+ * Returns the default ZKP worker client instance.
67
+ * Useful when you need direct access to the client.
68
+ */
69
+ export declare function getDefaultZkpWorkerClient(): ZkpWorkerClient;
5
70
  //# sourceMappingURL=workerClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"workerClient.d.ts","sourceRoot":"","sources":["../../src/zkp/workerClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAGnB,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAkE1B,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED,wBAAsB,eAAe,CAAC,CAAC,SAAS,kBAAkB,EAChE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAYhC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAQtD"}
1
+ {"version":3,"file":"workerClient.d.ts","sourceRoot":"","sources":["../../src/zkp/workerClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EAGnB,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAO1B;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,wCAAwC;IACxC,YAAY,CAAC,EAAE,MAAM,MAAM,CAAC;CAC7B;AAMD;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAiC;IAC7D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;gBAEhD,OAAO,GAAE,sBAA2B;IAIhD;;OAEG;IACH,MAAM,IAAI,OAAO;IAIjB;;;;;;;;OAQG;IACG,MAAM,CAAC,CAAC,SAAS,kBAAkB,EACvC,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;IAcjC;;OAEG;IACH,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI;IAY9B;;OAEG;IACH,KAAK,IAAI,IAAI;IAUb,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,aAAa;IAuBrB,OAAO,CAAC,WAAW;CAWpB;AAKD;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,CAAC,SAAS,kBAAkB,EAChE,IAAI,EAAE,CAAC,EACP,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAEhC;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAEtD;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,IAAI,eAAe,CAE3D"}
@@ -1,80 +1,154 @@
1
- let worker = null;
2
- let workerFailed = false;
3
- let nextJobId = 0;
4
- const pendingJobs = new Map();
5
1
  function hasWorkerSupport() {
6
2
  return typeof Worker !== "undefined";
7
3
  }
8
- function handleWorkerMessage(event) {
9
- const message = event.data;
10
- if (!message || typeof message !== "object") {
11
- return;
4
+ /**
5
+ * Client for running ZKP proof jobs in a Web Worker.
6
+ * Manages worker lifecycle, job queue, and error handling.
7
+ */
8
+ export class ZkpWorkerClient {
9
+ worker = null;
10
+ failed = false;
11
+ nextJobId = 0;
12
+ pendingJobs = new Map();
13
+ createWorkerFn;
14
+ constructor(options = {}) {
15
+ this.createWorkerFn = options.createWorker;
12
16
  }
13
- const pending = pendingJobs.get(message.id);
14
- if (!pending) {
15
- return;
17
+ /**
18
+ * Returns true if this client can run jobs (Worker API available and not failed).
19
+ */
20
+ canUse() {
21
+ return hasWorkerSupport() && !this.failed;
16
22
  }
17
- pendingJobs.delete(message.id);
18
- if (message.type === "result") {
19
- pending.resolve(message.result);
20
- }
21
- else if (message.type === "error") {
22
- const error = new Error(message.error?.message ?? "ZKP worker failure");
23
- error.stack = message.error?.stack;
24
- pending.reject(error);
23
+ /**
24
+ * Runs a ZKP proof job in the worker.
25
+ *
26
+ * **Important:** Always await or catch the returned promise.
27
+ * Calling `disable()` or `reset()` will reject pending jobs,
28
+ * which can cause unhandled rejections if not properly awaited.
29
+ *
30
+ * @throws Error if worker is not available or has failed.
31
+ */
32
+ async runJob(type, payload) {
33
+ const instance = this.ensureWorker();
34
+ const jobId = this.nextJobId++;
35
+ const message = { id: jobId, type, payload };
36
+ const promise = new Promise((resolve, reject) => {
37
+ this.pendingJobs.set(jobId, {
38
+ resolve: (value) => resolve(value),
39
+ reject,
40
+ });
41
+ });
42
+ instance.postMessage(message);
43
+ return promise;
25
44
  }
26
- else {
27
- pending.reject(new Error(`ZKP worker returned unexpected message type ${message.type}`));
45
+ /**
46
+ * Disables the worker and rejects all pending jobs.
47
+ */
48
+ disable(error) {
49
+ this.failed = true;
50
+ if (this.worker) {
51
+ this.worker.terminate();
52
+ this.worker = null;
53
+ }
54
+ this.pendingJobs.forEach((pending) => pending.reject(error ?? new Error("ZKP worker disabled")));
55
+ this.pendingJobs.clear();
28
56
  }
29
- }
30
- function handleWorkerError(event) {
31
- pendingJobs.forEach((pending) => pending.reject(event.error ?? new Error("ZKP worker error")));
32
- pendingJobs.clear();
33
- workerFailed = true;
34
- if (worker) {
35
- worker.terminate();
36
- worker = null;
57
+ /**
58
+ * Resets the client to its initial state. Useful for testing.
59
+ */
60
+ reset() {
61
+ if (this.worker) {
62
+ this.worker.terminate();
63
+ this.worker = null;
64
+ }
65
+ this.failed = false;
66
+ this.nextJobId = 0;
67
+ this.pendingJobs.clear();
37
68
  }
38
- }
39
- function ensureWorker() {
40
- if (workerFailed) {
41
- throw new Error("ZKP worker previously failed and has been disabled");
69
+ ensureWorker() {
70
+ if (this.failed) {
71
+ throw new Error("ZKP worker previously failed and has been disabled");
72
+ }
73
+ if (!hasWorkerSupport()) {
74
+ throw new Error("Web Worker API is not available in this environment");
75
+ }
76
+ if (!this.worker) {
77
+ const instance = this.createWorkerFn
78
+ ? this.createWorkerFn()
79
+ : new Worker(new URL("./worker.js", import.meta.url), { type: "module" });
80
+ instance.addEventListener("message", (event) => this.handleMessage(event));
81
+ instance.addEventListener("error", (event) => this.handleError(event));
82
+ this.worker = instance;
83
+ }
84
+ return this.worker;
42
85
  }
43
- if (!hasWorkerSupport()) {
44
- throw new Error("Web Worker API is not available in this environment");
86
+ handleMessage(event) {
87
+ const message = event.data;
88
+ if (!message || typeof message !== "object") {
89
+ return;
90
+ }
91
+ const pending = this.pendingJobs.get(message.id);
92
+ if (!pending) {
93
+ return;
94
+ }
95
+ this.pendingJobs.delete(message.id);
96
+ if (message.type === "result") {
97
+ pending.resolve(message.result);
98
+ }
99
+ else if (message.type === "error") {
100
+ const error = new Error(message.error?.message ?? "ZKP worker failure");
101
+ error.stack = message.error?.stack;
102
+ pending.reject(error);
103
+ }
104
+ else {
105
+ pending.reject(new Error(`ZKP worker returned unexpected message type ${message.type}`));
106
+ }
45
107
  }
46
- if (!worker) {
47
- const workerUrl = new URL("./worker.js", import.meta.url);
48
- const instance = new Worker(workerUrl, { type: "module" });
49
- instance.addEventListener("message", handleWorkerMessage);
50
- instance.addEventListener("error", (event) => handleWorkerError(event));
51
- worker = instance;
108
+ handleError(event) {
109
+ this.pendingJobs.forEach((pending) => pending.reject(event.error ?? new Error("ZKP worker error")));
110
+ this.pendingJobs.clear();
111
+ this.failed = true;
112
+ if (this.worker) {
113
+ this.worker.terminate();
114
+ this.worker = null;
115
+ }
52
116
  }
53
- return worker;
54
117
  }
118
+ // Default singleton instance
119
+ const defaultClient = new ZkpWorkerClient();
120
+ /**
121
+ * Returns true if ZKP worker can be used (Worker API available and not failed).
122
+ */
55
123
  export function canUseZkpWorker() {
56
- return hasWorkerSupport() && !workerFailed;
124
+ return defaultClient.canUse();
57
125
  }
126
+ /**
127
+ * Runs a ZKP proof job in the default worker.
128
+ *
129
+ * **Important:** Always await or catch the returned promise to avoid unhandled rejections.
130
+ */
58
131
  export async function runZkpWorkerJob(type, payload) {
59
- const instance = ensureWorker();
60
- const jobId = nextJobId++;
61
- const message = { id: jobId, type, payload };
62
- const promise = new Promise((resolve, reject) => {
63
- pendingJobs.set(jobId, {
64
- resolve: (value) => resolve(value),
65
- reject,
66
- });
67
- });
68
- instance.postMessage(message);
69
- return promise;
132
+ return defaultClient.runJob(type, payload);
70
133
  }
134
+ /**
135
+ * Disables the default ZKP worker and rejects all pending jobs.
136
+ */
71
137
  export function disableZkpWorker(error) {
72
- workerFailed = true;
73
- if (worker) {
74
- worker.terminate();
75
- worker = null;
76
- }
77
- pendingJobs.forEach((pending) => pending.reject(error ?? new Error("ZKP worker disabled")));
78
- pendingJobs.clear();
138
+ defaultClient.disable(error);
139
+ }
140
+ /**
141
+ * Resets the default ZKP worker to its initial state.
142
+ * Useful for testing to ensure clean state between tests.
143
+ */
144
+ export function resetZkpWorker() {
145
+ defaultClient.reset();
146
+ }
147
+ /**
148
+ * Returns the default ZKP worker client instance.
149
+ * Useful when you need direct access to the client.
150
+ */
151
+ export function getDefaultZkpWorkerClient() {
152
+ return defaultClient;
79
153
  }
80
154
  //# sourceMappingURL=workerClient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workerClient.js","sourceRoot":"","sources":["../../src/zkp/workerClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workerClient.js","sourceRoot":"","sources":["../../src/zkp/workerClient.ts"],"names":[],"mappings":"AAqBA,SAAS,gBAAgB;IACvB,OAAO,OAAO,MAAM,KAAK,WAAW,CAAC;AACvC,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,eAAe;IAClB,MAAM,GAAkB,IAAI,CAAC;IAC7B,MAAM,GAAG,KAAK,CAAC;IACf,SAAS,GAAG,CAAC,CAAC;IACL,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAC5C,cAAc,CAA6B;IAE5D,YAAY,UAAkC,EAAE;QAC9C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IAC5C,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CACV,IAAO,EACP,OAA+B;QAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAA2B,CAAC;QACtE,MAAM,OAAO,GAAG,IAAI,OAAO,CAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC1B,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAA8B,CAAC;gBAC3D,MAAM;aACP,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC9B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,OAAO,CAAC,KAAe;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAC1D,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;IAEO,YAAY;QAClB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc;gBAClC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE;gBACvB,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC5E,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;YAC3E,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAmB,CAAC,CAAC,CAAC;YACrF,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;QACzB,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,aAAa,CAAC,KAAwC;QAC5D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QAC3B,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,IAAI,oBAAoB,CAAC,CAAC;YACxE,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;YACnC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CACZ,IAAI,KAAK,CAAC,+CAAgD,OAAe,CAAC,IAAI,EAAE,CAAC,CAClF,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAiB;QACnC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACnC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAC7D,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACxB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AAED,6BAA6B;AAC7B,MAAM,aAAa,GAAG,IAAI,eAAe,EAAE,CAAC;AAE5C;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,aAAa,CAAC,MAAM,EAAE,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAO,EACP,OAA+B;IAE/B,OAAO,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAe;IAC9C,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,aAAa,CAAC,KAAK,EAAE,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO,aAAa,CAAC;AACvB,CAAC"}