zerc20-client-sdk 0.1.13 → 0.1.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (404) hide show
  1. package/README.md +261 -0
  2. package/dist/constants.d.ts +15 -0
  3. package/dist/constants.d.ts.map +1 -1
  4. package/dist/constants.js +15 -0
  5. package/dist/constants.js.map +1 -1
  6. package/dist/decider/__tests__/prover.test.d.ts +2 -0
  7. package/dist/decider/__tests__/prover.test.d.ts.map +1 -0
  8. package/dist/decider/__tests__/prover.test.js +246 -0
  9. package/dist/decider/__tests__/prover.test.js.map +1 -0
  10. package/dist/decider/prover.d.ts +36 -4
  11. package/dist/decider/prover.d.ts.map +1 -1
  12. package/dist/decider/prover.js +48 -38
  13. package/dist/decider/prover.js.map +1 -1
  14. package/dist/ic/__tests__/candid.test.d.ts +2 -0
  15. package/dist/ic/__tests__/candid.test.d.ts.map +1 -0
  16. package/dist/ic/__tests__/candid.test.js +44 -0
  17. package/dist/ic/__tests__/candid.test.js.map +1 -0
  18. package/dist/ic/__tests__/client.test.d.ts +2 -0
  19. package/dist/ic/__tests__/client.test.d.ts.map +1 -0
  20. package/dist/ic/__tests__/client.test.js +522 -0
  21. package/dist/ic/__tests__/client.test.js.map +1 -0
  22. package/dist/ic/__tests__/config.test.d.ts +2 -0
  23. package/dist/ic/__tests__/config.test.d.ts.map +1 -0
  24. package/dist/ic/__tests__/config.test.js +72 -0
  25. package/dist/ic/__tests__/config.test.js.map +1 -0
  26. package/dist/ic/__tests__/connections.test.d.ts +2 -0
  27. package/dist/ic/__tests__/connections.test.d.ts.map +1 -0
  28. package/dist/ic/__tests__/connections.test.js +385 -0
  29. package/dist/ic/__tests__/connections.test.js.map +1 -0
  30. package/dist/ic/__tests__/invoice.test.d.ts +2 -0
  31. package/dist/ic/__tests__/invoice.test.d.ts.map +1 -0
  32. package/dist/ic/__tests__/invoice.test.js +95 -0
  33. package/dist/ic/__tests__/invoice.test.js.map +1 -0
  34. package/dist/ic/authorization.d.ts +28 -0
  35. package/dist/ic/authorization.d.ts.map +1 -1
  36. package/dist/ic/authorization.js +24 -0
  37. package/dist/ic/authorization.js.map +1 -1
  38. package/dist/ic/candid.d.ts +72 -0
  39. package/dist/ic/candid.d.ts.map +1 -0
  40. package/dist/ic/candid.js +35 -0
  41. package/dist/ic/candid.js.map +1 -0
  42. package/dist/ic/client.d.ts +57 -59
  43. package/dist/ic/client.d.ts.map +1 -1
  44. package/dist/ic/client.js +59 -81
  45. package/dist/ic/client.js.map +1 -1
  46. package/dist/ic/config.d.ts +27 -0
  47. package/dist/ic/config.d.ts.map +1 -1
  48. package/dist/ic/config.js +27 -0
  49. package/dist/ic/config.js.map +1 -1
  50. package/dist/ic/connections.d.ts +99 -4
  51. package/dist/ic/connections.d.ts.map +1 -1
  52. package/dist/ic/connections.js +222 -30
  53. package/dist/ic/connections.js.map +1 -1
  54. package/dist/ic/encryption.d.ts +33 -0
  55. package/dist/ic/encryption.d.ts.map +1 -1
  56. package/dist/ic/encryption.js +21 -0
  57. package/dist/ic/encryption.js.map +1 -1
  58. package/dist/ic/errors.d.ts +15 -0
  59. package/dist/ic/errors.d.ts.map +1 -1
  60. package/dist/ic/errors.js +15 -0
  61. package/dist/ic/errors.js.map +1 -1
  62. package/dist/ic/idl.d.ts +26 -0
  63. package/dist/ic/idl.d.ts.map +1 -0
  64. package/dist/ic/idl.js +84 -0
  65. package/dist/ic/idl.js.map +1 -0
  66. package/dist/ic/index.d.ts +1 -1
  67. package/dist/ic/index.d.ts.map +1 -1
  68. package/dist/ic/index.js +1 -1
  69. package/dist/ic/index.js.map +1 -1
  70. package/dist/ic/invoice.d.ts.map +1 -1
  71. package/dist/ic/invoice.js.map +1 -1
  72. package/dist/ic/types.d.ts +42 -0
  73. package/dist/ic/types.d.ts.map +1 -1
  74. package/dist/index.d.ts +1 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +1 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/onchain/__tests__/contracts.test.d.ts +2 -0
  79. package/dist/onchain/__tests__/contracts.test.d.ts.map +1 -0
  80. package/dist/onchain/__tests__/contracts.test.js +42 -0
  81. package/dist/onchain/__tests__/contracts.test.js.map +1 -0
  82. package/dist/onchain/contracts.d.ts +22 -0
  83. package/dist/onchain/contracts.d.ts.map +1 -1
  84. package/dist/onchain/contracts.js +22 -0
  85. package/dist/onchain/contracts.js.map +1 -1
  86. package/dist/operations/__tests__/invoice.test.d.ts +2 -0
  87. package/dist/operations/__tests__/invoice.test.d.ts.map +1 -0
  88. package/dist/operations/__tests__/invoice.test.js +261 -0
  89. package/dist/operations/__tests__/invoice.test.js.map +1 -0
  90. package/dist/operations/__tests__/privateSend.test.d.ts +2 -0
  91. package/dist/operations/__tests__/privateSend.test.d.ts.map +1 -0
  92. package/dist/operations/__tests__/privateSend.test.js +135 -0
  93. package/dist/operations/__tests__/privateSend.test.js.map +1 -0
  94. package/dist/operations/__tests__/reexports.test.d.ts +2 -0
  95. package/dist/operations/__tests__/reexports.test.d.ts.map +1 -0
  96. package/dist/operations/__tests__/reexports.test.js +22 -0
  97. package/dist/operations/__tests__/reexports.test.js.map +1 -0
  98. package/dist/operations/__tests__/scanner.test.d.ts +2 -0
  99. package/dist/operations/__tests__/scanner.test.d.ts.map +1 -0
  100. package/dist/operations/__tests__/scanner.test.js +201 -0
  101. package/dist/operations/__tests__/scanner.test.js.map +1 -0
  102. package/dist/operations/__tests__/teleport.test.d.ts +2 -0
  103. package/dist/operations/__tests__/teleport.test.d.ts.map +1 -0
  104. package/dist/operations/__tests__/teleport.test.js +35 -0
  105. package/dist/operations/__tests__/teleport.test.js.map +1 -0
  106. package/dist/operations/__tests__/teleportProof.test.d.ts +2 -0
  107. package/dist/operations/__tests__/teleportProof.test.d.ts.map +1 -0
  108. package/dist/operations/__tests__/teleportProof.test.js +126 -0
  109. package/dist/operations/__tests__/teleportProof.test.js.map +1 -0
  110. package/dist/operations/invoice.d.ts +44 -0
  111. package/dist/operations/invoice.d.ts.map +1 -1
  112. package/dist/operations/invoice.js +30 -0
  113. package/dist/operations/invoice.js.map +1 -1
  114. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts +2 -0
  115. package/dist/operations/liquidityManager/__tests__/balance.test.d.ts.map +1 -0
  116. package/dist/operations/liquidityManager/__tests__/balance.test.js +104 -0
  117. package/dist/operations/liquidityManager/__tests__/balance.test.js.map +1 -0
  118. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts +2 -0
  119. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.d.ts.map +1 -0
  120. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js +198 -0
  121. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js.map +1 -0
  122. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts +2 -0
  123. package/dist/operations/liquidityManager/__tests__/helpers.test.d.ts.map +1 -0
  124. package/dist/operations/liquidityManager/__tests__/helpers.test.js +126 -0
  125. package/dist/operations/liquidityManager/__tests__/helpers.test.js.map +1 -0
  126. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts +2 -0
  127. package/dist/operations/liquidityManager/__tests__/unwrap.test.d.ts.map +1 -0
  128. package/dist/operations/liquidityManager/__tests__/unwrap.test.js +224 -0
  129. package/dist/operations/liquidityManager/__tests__/unwrap.test.js.map +1 -0
  130. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts +2 -0
  131. package/dist/operations/liquidityManager/__tests__/wrap.test.d.ts.map +1 -0
  132. package/dist/operations/liquidityManager/__tests__/wrap.test.js +144 -0
  133. package/dist/operations/liquidityManager/__tests__/wrap.test.js.map +1 -0
  134. package/dist/operations/liquidityManager/balance.d.ts +19 -0
  135. package/dist/operations/liquidityManager/balance.d.ts.map +1 -0
  136. package/dist/operations/liquidityManager/balance.js +62 -0
  137. package/dist/operations/liquidityManager/balance.js.map +1 -0
  138. package/dist/operations/liquidityManager/crossUnwrap.d.ts +73 -0
  139. package/dist/operations/liquidityManager/crossUnwrap.d.ts.map +1 -0
  140. package/dist/operations/liquidityManager/crossUnwrap.js +189 -0
  141. package/dist/operations/liquidityManager/crossUnwrap.js.map +1 -0
  142. package/dist/operations/liquidityManager/helpers.d.ts +15521 -0
  143. package/dist/operations/liquidityManager/helpers.d.ts.map +1 -0
  144. package/dist/operations/liquidityManager/helpers.js +81 -0
  145. package/dist/operations/liquidityManager/helpers.js.map +1 -0
  146. package/dist/operations/liquidityManager/index.d.ts +12 -0
  147. package/dist/operations/liquidityManager/index.d.ts.map +1 -0
  148. package/dist/operations/liquidityManager/index.js +9 -0
  149. package/dist/operations/liquidityManager/index.js.map +1 -0
  150. package/dist/operations/liquidityManager/types.d.ts +90 -0
  151. package/dist/operations/liquidityManager/types.d.ts.map +1 -0
  152. package/dist/operations/liquidityManager/types.js +5 -0
  153. package/dist/operations/liquidityManager/types.js.map +1 -0
  154. package/dist/operations/liquidityManager/unwrap.d.ts +54 -0
  155. package/dist/operations/liquidityManager/unwrap.d.ts.map +1 -0
  156. package/dist/operations/liquidityManager/unwrap.js +80 -0
  157. package/dist/operations/liquidityManager/unwrap.js.map +1 -0
  158. package/dist/operations/liquidityManager/wrap.d.ts +38 -0
  159. package/dist/operations/liquidityManager/wrap.d.ts.map +1 -0
  160. package/dist/operations/liquidityManager/wrap.js +53 -0
  161. package/dist/operations/liquidityManager/wrap.js.map +1 -0
  162. package/dist/operations/liquidityManager.d.ts +3 -104
  163. package/dist/operations/liquidityManager.d.ts.map +1 -1
  164. package/dist/operations/liquidityManager.js +3 -343
  165. package/dist/operations/liquidityManager.js.map +1 -1
  166. package/dist/operations/privateSend.d.ts +26 -0
  167. package/dist/operations/privateSend.d.ts.map +1 -1
  168. package/dist/operations/privateSend.js +11 -0
  169. package/dist/operations/privateSend.js.map +1 -1
  170. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts +2 -0
  171. package/dist/operations/receive/__tests__/announcementStatus.test.d.ts.map +1 -0
  172. package/dist/operations/receive/__tests__/announcementStatus.test.js +223 -0
  173. package/dist/operations/receive/__tests__/announcementStatus.test.js.map +1 -0
  174. package/dist/operations/receive/__tests__/cache.test.d.ts +2 -0
  175. package/dist/operations/receive/__tests__/cache.test.d.ts.map +1 -0
  176. package/dist/operations/receive/__tests__/cache.test.js +339 -0
  177. package/dist/operations/receive/__tests__/cache.test.js.map +1 -0
  178. package/dist/operations/receive/__tests__/helpers.test.d.ts +2 -0
  179. package/dist/operations/receive/__tests__/helpers.test.d.ts.map +1 -0
  180. package/dist/operations/receive/__tests__/helpers.test.js +80 -0
  181. package/dist/operations/receive/__tests__/helpers.test.js.map +1 -0
  182. package/dist/operations/receive/__tests__/redeemContext.test.d.ts +2 -0
  183. package/dist/operations/receive/__tests__/redeemContext.test.d.ts.map +1 -0
  184. package/dist/operations/receive/__tests__/redeemContext.test.js +230 -0
  185. package/dist/operations/receive/__tests__/redeemContext.test.js.map +1 -0
  186. package/dist/operations/receive/announcementStatus.d.ts +12 -0
  187. package/dist/operations/receive/announcementStatus.d.ts.map +1 -0
  188. package/dist/operations/receive/announcementStatus.js +56 -0
  189. package/dist/operations/receive/announcementStatus.js.map +1 -0
  190. package/dist/operations/receive/cache.d.ts +69 -0
  191. package/dist/operations/receive/cache.d.ts.map +1 -0
  192. package/dist/operations/receive/cache.js +105 -0
  193. package/dist/operations/receive/cache.js.map +1 -0
  194. package/dist/operations/receive/helpers.d.ts +16 -0
  195. package/dist/operations/receive/helpers.d.ts.map +1 -0
  196. package/dist/operations/receive/helpers.js +33 -0
  197. package/dist/operations/receive/helpers.js.map +1 -0
  198. package/dist/operations/receive/index.d.ts +9 -0
  199. package/dist/operations/receive/index.d.ts.map +1 -0
  200. package/dist/operations/receive/index.js +9 -0
  201. package/dist/operations/receive/index.js.map +1 -0
  202. package/dist/operations/receive/redeemContext.d.ts +16 -0
  203. package/dist/operations/receive/redeemContext.d.ts.map +1 -0
  204. package/dist/operations/receive/redeemContext.js +107 -0
  205. package/dist/operations/receive/redeemContext.js.map +1 -0
  206. package/dist/operations/receive/types.d.ts +141 -0
  207. package/dist/operations/receive/types.d.ts.map +1 -0
  208. package/dist/operations/receive/types.js +5 -0
  209. package/dist/operations/receive/types.js.map +1 -0
  210. package/dist/operations/receive.d.ts +5 -66
  211. package/dist/operations/receive.d.ts.map +1 -1
  212. package/dist/operations/receive.js +5 -173
  213. package/dist/operations/receive.js.map +1 -1
  214. package/dist/operations/scanner.d.ts +37 -0
  215. package/dist/operations/scanner.d.ts.map +1 -1
  216. package/dist/operations/scanner.js +21 -0
  217. package/dist/operations/scanner.js.map +1 -1
  218. package/dist/operations/teleport.d.ts +5 -0
  219. package/dist/operations/teleport.d.ts.map +1 -1
  220. package/dist/operations/teleport.js +5 -0
  221. package/dist/operations/teleport.js.map +1 -1
  222. package/dist/operations/teleportProof.d.ts +34 -0
  223. package/dist/operations/teleportProof.d.ts.map +1 -1
  224. package/dist/operations/teleportProof.js +16 -0
  225. package/dist/operations/teleportProof.js.map +1 -1
  226. package/dist/registry/__tests__/helpers.test.d.ts +2 -0
  227. package/dist/registry/__tests__/helpers.test.d.ts.map +1 -0
  228. package/dist/registry/__tests__/helpers.test.js +98 -0
  229. package/dist/registry/__tests__/helpers.test.js.map +1 -0
  230. package/dist/registry/__tests__/loader.test.d.ts +2 -0
  231. package/dist/registry/__tests__/loader.test.d.ts.map +1 -0
  232. package/dist/registry/__tests__/loader.test.js +300 -0
  233. package/dist/registry/__tests__/loader.test.js.map +1 -0
  234. package/dist/registry/__tests__/normalize.test.d.ts +2 -0
  235. package/dist/registry/__tests__/normalize.test.d.ts.map +1 -0
  236. package/dist/registry/__tests__/normalize.test.js +180 -0
  237. package/dist/registry/__tests__/normalize.test.js.map +1 -0
  238. package/dist/registry/__tests__/parsing.test.d.ts +2 -0
  239. package/dist/registry/__tests__/parsing.test.d.ts.map +1 -0
  240. package/dist/registry/__tests__/parsing.test.js +188 -0
  241. package/dist/registry/__tests__/parsing.test.js.map +1 -0
  242. package/dist/registry/helpers.d.ts +14 -0
  243. package/dist/registry/helpers.d.ts.map +1 -0
  244. package/dist/registry/helpers.js +29 -0
  245. package/dist/registry/helpers.js.map +1 -0
  246. package/dist/registry/index.d.ts +13 -0
  247. package/dist/registry/index.d.ts.map +1 -0
  248. package/dist/registry/index.js +15 -0
  249. package/dist/registry/index.js.map +1 -0
  250. package/dist/registry/loader.d.ts +57 -0
  251. package/dist/registry/loader.d.ts.map +1 -0
  252. package/dist/registry/loader.js +188 -0
  253. package/dist/registry/loader.js.map +1 -0
  254. package/dist/registry/normalize.d.ts +29 -0
  255. package/dist/registry/normalize.d.ts.map +1 -0
  256. package/dist/registry/normalize.js +81 -0
  257. package/dist/registry/normalize.js.map +1 -0
  258. package/dist/registry/parsing.d.ts +55 -0
  259. package/dist/registry/parsing.d.ts.map +1 -0
  260. package/dist/registry/parsing.js +139 -0
  261. package/dist/registry/parsing.js.map +1 -0
  262. package/dist/registry/tokens.d.ts +6 -42
  263. package/dist/registry/tokens.d.ts.map +1 -1
  264. package/dist/registry/tokens.js +6 -231
  265. package/dist/registry/tokens.js.map +1 -1
  266. package/dist/registry/types.d.ts +81 -0
  267. package/dist/registry/types.d.ts.map +1 -0
  268. package/dist/registry/types.js +2 -0
  269. package/dist/registry/types.js.map +1 -0
  270. package/dist/sdk.d.ts +57 -0
  271. package/dist/sdk.d.ts.map +1 -1
  272. package/dist/sdk.js +21 -0
  273. package/dist/sdk.js.map +1 -1
  274. package/dist/sdk.publicApi.test.d.ts +2 -0
  275. package/dist/sdk.publicApi.test.d.ts.map +1 -0
  276. package/dist/sdk.publicApi.test.js +78 -0
  277. package/dist/sdk.publicApi.test.js.map +1 -0
  278. package/dist/types.d.ts +159 -0
  279. package/dist/types.d.ts.map +1 -1
  280. package/dist/utils/__tests__/branded.test.d.ts +2 -0
  281. package/dist/utils/__tests__/branded.test.d.ts.map +1 -0
  282. package/dist/utils/__tests__/branded.test.js +293 -0
  283. package/dist/utils/__tests__/branded.test.js.map +1 -0
  284. package/dist/utils/__tests__/fees.test.d.ts +2 -0
  285. package/dist/utils/__tests__/fees.test.d.ts.map +1 -0
  286. package/dist/utils/__tests__/fees.test.js +84 -0
  287. package/dist/utils/__tests__/fees.test.js.map +1 -0
  288. package/dist/utils/__tests__/hex.test.d.ts +2 -0
  289. package/dist/utils/__tests__/hex.test.d.ts.map +1 -0
  290. package/dist/utils/__tests__/hex.test.js +252 -0
  291. package/dist/utils/__tests__/hex.test.js.map +1 -0
  292. package/dist/utils/__tests__/http.test.d.ts +2 -0
  293. package/dist/utils/__tests__/http.test.d.ts.map +1 -0
  294. package/dist/utils/__tests__/http.test.js +295 -0
  295. package/dist/utils/__tests__/http.test.js.map +1 -0
  296. package/dist/utils/branded.d.ts +154 -0
  297. package/dist/utils/branded.d.ts.map +1 -0
  298. package/dist/utils/branded.js +177 -0
  299. package/dist/utils/branded.js.map +1 -0
  300. package/dist/utils/fees.d.ts +6 -0
  301. package/dist/utils/fees.d.ts.map +1 -1
  302. package/dist/utils/fees.js +4 -0
  303. package/dist/utils/fees.js.map +1 -1
  304. package/dist/utils/hex.d.ts +37 -0
  305. package/dist/utils/hex.d.ts.map +1 -1
  306. package/dist/utils/hex.js +30 -0
  307. package/dist/utils/hex.js.map +1 -1
  308. package/dist/utils/http.d.ts +100 -0
  309. package/dist/utils/http.d.ts.map +1 -1
  310. package/dist/utils/http.js +158 -0
  311. package/dist/utils/http.js.map +1 -1
  312. package/dist/utils/merkle.d.ts +26 -0
  313. package/dist/utils/merkle.d.ts.map +1 -1
  314. package/dist/utils/merkle.js +26 -0
  315. package/dist/utils/merkle.js.map +1 -1
  316. package/dist/wasm/__tests__/artifacts.test.d.ts +2 -0
  317. package/dist/wasm/__tests__/artifacts.test.d.ts.map +1 -0
  318. package/dist/wasm/__tests__/artifacts.test.js +437 -0
  319. package/dist/wasm/__tests__/artifacts.test.js.map +1 -0
  320. package/dist/wasm/__tests__/functions.test.d.ts +2 -0
  321. package/dist/wasm/__tests__/functions.test.d.ts.map +1 -0
  322. package/dist/wasm/__tests__/functions.test.js +34 -0
  323. package/dist/wasm/__tests__/functions.test.js.map +1 -0
  324. package/dist/wasm/__tests__/helpers.test.d.ts +2 -0
  325. package/dist/wasm/__tests__/helpers.test.d.ts.map +1 -0
  326. package/dist/wasm/__tests__/helpers.test.js +128 -0
  327. package/dist/wasm/__tests__/helpers.test.js.map +1 -0
  328. package/dist/wasm/__tests__/loader.test.d.ts +2 -0
  329. package/dist/wasm/__tests__/loader.test.d.ts.map +1 -0
  330. package/dist/wasm/__tests__/loader.test.js +201 -0
  331. package/dist/wasm/__tests__/loader.test.js.map +1 -0
  332. package/dist/wasm/__tests__/runtime.test.d.ts +2 -0
  333. package/dist/wasm/__tests__/runtime.test.d.ts.map +1 -0
  334. package/dist/wasm/__tests__/runtime.test.js +335 -0
  335. package/dist/wasm/__tests__/runtime.test.js.map +1 -0
  336. package/dist/wasm/__tests__/serialization.test.d.ts +2 -0
  337. package/dist/wasm/__tests__/serialization.test.d.ts.map +1 -0
  338. package/dist/wasm/__tests__/serialization.test.js +226 -0
  339. package/dist/wasm/__tests__/serialization.test.js.map +1 -0
  340. package/dist/wasm/__tests__/validation.test.js +15 -15
  341. package/dist/wasm/__tests__/validation.test.js.map +1 -1
  342. package/dist/wasm/artifacts.d.ts +121 -3
  343. package/dist/wasm/artifacts.d.ts.map +1 -1
  344. package/dist/wasm/artifacts.js +175 -50
  345. package/dist/wasm/artifacts.js.map +1 -1
  346. package/dist/wasm/functions.d.ts +77 -0
  347. package/dist/wasm/functions.d.ts.map +1 -0
  348. package/dist/wasm/functions.js +120 -0
  349. package/dist/wasm/functions.js.map +1 -0
  350. package/dist/wasm/helpers.d.ts +32 -0
  351. package/dist/wasm/helpers.d.ts.map +1 -0
  352. package/dist/wasm/helpers.js +79 -0
  353. package/dist/wasm/helpers.js.map +1 -0
  354. package/dist/wasm/index.d.ts +13 -68
  355. package/dist/wasm/index.d.ts.map +1 -1
  356. package/dist/wasm/index.js +14 -514
  357. package/dist/wasm/index.js.map +1 -1
  358. package/dist/wasm/loader.d.ts +76 -0
  359. package/dist/wasm/loader.d.ts.map +1 -0
  360. package/dist/wasm/loader.js +145 -0
  361. package/dist/wasm/loader.js.map +1 -0
  362. package/dist/wasm/runtime.d.ts +65 -0
  363. package/dist/wasm/runtime.d.ts.map +1 -0
  364. package/dist/wasm/runtime.js +227 -0
  365. package/dist/wasm/runtime.js.map +1 -0
  366. package/dist/wasm/serialization.d.ts +113 -0
  367. package/dist/wasm/serialization.d.ts.map +1 -0
  368. package/dist/wasm/serialization.js +188 -0
  369. package/dist/wasm/serialization.js.map +1 -0
  370. package/dist/wasm/types.d.ts +30 -0
  371. package/dist/wasm/types.d.ts.map +1 -0
  372. package/dist/wasm/types.js +2 -0
  373. package/dist/wasm/types.js.map +1 -0
  374. package/dist/zkp/__tests__/proofService.test.d.ts +2 -0
  375. package/dist/zkp/__tests__/proofService.test.d.ts.map +1 -0
  376. package/dist/zkp/__tests__/proofService.test.js +283 -0
  377. package/dist/zkp/__tests__/proofService.test.js.map +1 -0
  378. package/dist/zkp/__tests__/proofUtils.test.js +86 -0
  379. package/dist/zkp/__tests__/proofUtils.test.js.map +1 -1
  380. package/dist/zkp/__tests__/runNovaProver.test.js +13 -1
  381. package/dist/zkp/__tests__/runNovaProver.test.js.map +1 -1
  382. package/dist/zkp/__tests__/workerClient.test.d.ts +2 -0
  383. package/dist/zkp/__tests__/workerClient.test.d.ts.map +1 -0
  384. package/dist/zkp/__tests__/workerClient.test.js +415 -0
  385. package/dist/zkp/__tests__/workerClient.test.js.map +1 -0
  386. package/dist/zkp/index.d.ts +1 -1
  387. package/dist/zkp/index.d.ts.map +1 -1
  388. package/dist/zkp/index.js +1 -1
  389. package/dist/zkp/index.js.map +1 -1
  390. package/dist/zkp/proofService.d.ts +27 -0
  391. package/dist/zkp/proofService.d.ts.map +1 -1
  392. package/dist/zkp/proofService.js +29 -21
  393. package/dist/zkp/proofService.js.map +1 -1
  394. package/dist/zkp/proofUtils.d.ts +36 -0
  395. package/dist/zkp/proofUtils.d.ts.map +1 -1
  396. package/dist/zkp/proofUtils.js +50 -0
  397. package/dist/zkp/proofUtils.js.map +1 -1
  398. package/dist/zkp/workerClient.d.ts +65 -0
  399. package/dist/zkp/workerClient.d.ts.map +1 -1
  400. package/dist/zkp/workerClient.js +135 -61
  401. package/dist/zkp/workerClient.js.map +1 -1
  402. package/dist/zkp/workerTypes.d.ts +27 -0
  403. package/dist/zkp/workerTypes.d.ts.map +1 -1
  404. package/package.json +7 -3
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Represents a single token configuration entry.
3
+ * @remarks
4
+ * Most fields correspond to deployed contracts and per-chain RPC configuration.
5
+ * Addresses are expected to be `0x`-prefixed hex strings (see normalization helpers).
6
+ */
7
+ export interface TokenEntry {
8
+ /** Human-readable label used for display and debugging. */
9
+ label: string;
10
+ /** zERC20 token contract address on this chain. */
11
+ tokenAddress: string;
12
+ /** Verifier contract address for this zERC20 instance. */
13
+ verifierAddress: string;
14
+ /** Optional minter contract address (if applicable for this deployment). */
15
+ minterAddress?: string;
16
+ /** Optional liquidity manager contract address (wrap/unwrap flows). */
17
+ liquidityManagerAddress?: string;
18
+ /** Optional LayerZero adaptor address (cross-chain unwrap flows). */
19
+ adaptorAddress?: string;
20
+ /**
21
+ * Optional LayerZero endpoint id (EID) for cross-chain operations.
22
+ * @remarks Required for OFT send / cross-chain unwrap flows.
23
+ */
24
+ eid?: number;
25
+ /** EVM chain id for this entry. */
26
+ chainId: bigint;
27
+ /** Block number where the token was deployed (used for event scanning/indexer bootstrapping). */
28
+ deployedBlockNumber: bigint;
29
+ /** One or more RPC URLs for this chain. */
30
+ rpcUrls: string[];
31
+ /**
32
+ * Whether to use legacy (type-0) transactions for this chain.
33
+ * @remarks Useful for chains/providers that do not support EIP-1559 style fees.
34
+ */
35
+ legacyTx: boolean;
36
+ }
37
+ /**
38
+ * Represents a hub configuration entry.
39
+ * @remarks
40
+ * The hub is used when fetching aggregation tree state.
41
+ */
42
+ export interface HubEntry {
43
+ /** Hub contract address. */
44
+ hubAddress: string;
45
+ /** EVM chain id for the hub chain. */
46
+ chainId: bigint;
47
+ /**
48
+ * Optional LayerZero endpoint id (EID) for the hub chain.
49
+ * @remarks Required for certain cross-chain flows.
50
+ */
51
+ eid?: number;
52
+ /** One or more RPC URLs for the hub chain. */
53
+ rpcUrls: string[];
54
+ }
55
+ /**
56
+ * Raw tokens file structure before normalization.
57
+ * @remarks
58
+ * Callers typically use `normalizeTokens` / `loadTokens` to validate and normalize this structure.
59
+ */
60
+ export interface TokensFile {
61
+ hub?: HubEntry;
62
+ tokens: TokenEntry[];
63
+ }
64
+ /**
65
+ * Normalized tokens with raw data preserved.
66
+ */
67
+ export interface NormalizedTokens {
68
+ hub?: HubEntry;
69
+ tokens: TokenEntry[];
70
+ raw: TokensFile;
71
+ }
72
+ /**
73
+ * Options for loading tokens from compressed data.
74
+ */
75
+ export interface LoadTokensOptions {
76
+ cacheKey?: string;
77
+ cache?: Map<string, Promise<NormalizedTokens>>;
78
+ decoder?: TextDecoder;
79
+ decompress?: (data: Uint8Array) => Uint8Array | ArrayBuffer;
80
+ }
81
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IACzB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAC;IACxB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,qEAAqE;IACrE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,iGAAiG;IACjG,mBAAmB,EAAE,MAAM,CAAC;IAC5B,2CAA2C;IAC3C,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACvB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8CAA8C;IAC9C,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,UAAU,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,GAAG,EAAE,UAAU,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,UAAU,GAAG,WAAW,CAAC;CAC7D"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/registry/types.ts"],"names":[],"mappings":""}
package/dist/sdk.d.ts CHANGED
@@ -7,18 +7,39 @@ import type { TeleportProofClientOptions } from "./operations/teleportProof.js";
7
7
  import { TeleportProofClient } from "./operations/teleportProof.js";
8
8
  import type { WasmRuntimeOptions } from "./wasm/index.js";
9
9
  import { WasmRuntime } from "./wasm/index.js";
10
+ /**
11
+ * Configuration required to instantiate an {@link StealthCanisterClient}.
12
+ */
10
13
  export interface StealthClientConfig {
14
+ /** Dfinity agent used to communicate with canisters. */
11
15
  agent: Agent;
16
+ /** Storage canister principal (text or `Principal`). */
12
17
  storageCanisterId: string | Principal;
18
+ /** Key manager canister principal (text or `Principal`). */
13
19
  keyManagerCanisterId: string | Principal;
14
20
  }
15
21
  export interface StealthClientFactoryOptions {
22
+ /**
23
+ * Default values applied when creating clients.
24
+ * @remarks Explicit values provided to {@link StealthClientFactory.create} override these defaults.
25
+ */
16
26
  defaults?: Partial<StealthClientConfig>;
17
27
  }
28
+ /**
29
+ * Factory for creating {@link StealthCanisterClient} instances with optional defaults.
30
+ */
18
31
  export declare class StealthClientFactory {
19
32
  private readonly defaults;
20
33
  constructor(defaults?: Partial<StealthClientConfig>);
34
+ /**
35
+ * Create a new {@link StealthCanisterClient}.
36
+ * @param config - Partial configuration. Missing required fields are filled from factory defaults.
37
+ * @throws If required config values are missing after merging defaults.
38
+ */
21
39
  create(config?: Partial<StealthClientConfig>): StealthCanisterClient;
40
+ /**
41
+ * Create a new factory that merges the provided defaults with the current ones.
42
+ */
22
43
  withDefaults(defaults: Partial<StealthClientConfig>): StealthClientFactory;
23
44
  }
24
45
  type TeleportProofInit = TeleportProofClient | TeleportProofClientOptions | undefined;
@@ -26,20 +47,56 @@ type DeciderInit = HttpDeciderClient | (DeciderClientOptions & {
26
47
  baseUrl: string;
27
48
  }) | undefined;
28
49
  type StealthFactoryInit = StealthClientFactory | StealthClientFactoryOptions | undefined;
50
+ /**
51
+ * Options for constructing a {@link Zerc20Sdk}.
52
+ * @remarks
53
+ * Most callers should use {@link createSdk} which creates a default instance.
54
+ *
55
+ * You can override sub-components for:
56
+ * - Sharing a single {@link WasmRuntime} across multiple SDK instances
57
+ * - Injecting a pre-configured proof client / decider client
58
+ * - Providing defaults for IC canister IDs / agent
59
+ */
29
60
  export interface Zerc20SdkOptions {
61
+ /**
62
+ * WASM runtime configuration or a pre-created runtime instance.
63
+ * @remarks In browsers, make sure the runtime is initialized/ready before use.
64
+ */
30
65
  wasm?: WasmRuntime | WasmRuntimeOptions;
66
+ /**
67
+ * Teleport proof client configuration or a pre-created client instance.
68
+ * @remarks If omitted, a default {@link TeleportProofClient} is created using the resolved WASM runtime.
69
+ */
31
70
  teleportProofs?: TeleportProofInit;
71
+ /**
72
+ * Decider client configuration or a pre-created client instance.
73
+ * @remarks If provided, the SDK will expose `sdk.decider`.
74
+ */
32
75
  decider?: DeciderInit;
76
+ /**
77
+ * Stealth client factory or factory options.
78
+ * @remarks If omitted, a default {@link StealthClientFactory} is created with no defaults.
79
+ */
33
80
  stealth?: StealthFactoryInit;
34
81
  }
82
+ /**
83
+ * Main SDK entrypoint that bundles WASM, proof, decider, and IC helpers.
84
+ */
35
85
  export declare class Zerc20Sdk {
36
86
  readonly wasm: WasmRuntime;
37
87
  readonly teleportProofs: TeleportProofClient;
38
88
  readonly decider?: HttpDeciderClient;
39
89
  readonly stealth: StealthClientFactory;
40
90
  constructor(options?: Zerc20SdkOptions);
91
+ /**
92
+ * Create a {@link StealthCanisterClient} (IC canister client).
93
+ * @remarks This is a convenience wrapper around {@link StealthClientFactory.create}.
94
+ */
41
95
  createStealthClient(options?: Partial<StealthClientConfig>): StealthCanisterClient;
42
96
  }
97
+ /**
98
+ * Create a new {@link Zerc20Sdk} instance.
99
+ */
43
100
  export declare function createSdk(options?: Zerc20SdkOptions): Zerc20Sdk;
44
101
  export {};
45
102
  //# sourceMappingURL=sdk.d.ts.map
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAA6B,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAMD,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACzC;AA+BD,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAExE,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;IAapE,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,oBAAoB;CAM3E;AAED,KAAK,iBAAiB,GAAG,mBAAmB,GAAG,0BAA0B,GAAG,SAAS,CAAC;AACtF,KAAK,WAAW,GAAG,iBAAiB,GAAG,CAAC,oBAAoB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,CAAC;AAChG,KAAK,kBAAkB,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,SAAS,CAAC;AAEzF,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,WAAW,GAAG,kBAAkB,CAAC;IACxC,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED,qBAAa,SAAS;IACpB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;gBAE3B,OAAO,GAAE,gBAAqB;IAO1C,mBAAmB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;CAGnF;AAED,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAEnE"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAA6B,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,wDAAwD;IACxD,KAAK,EAAE,KAAK,CAAC;IACb,wDAAwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;IACtC,4DAA4D;IAC5D,oBAAoB,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAMD,MAAM,WAAW,2BAA2B;IAC1C;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACzC;AA+BD;;GAEG;AACH,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,GAAE,OAAO,CAAC,mBAAmB,CAAM;IAExE;;;;OAIG;IACH,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;IAapE;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,oBAAoB;CAM3E;AAED,KAAK,iBAAiB,GAAG,mBAAmB,GAAG,0BAA0B,GAAG,SAAS,CAAC;AACtF,KAAK,WAAW,GAAG,iBAAiB,GAAG,CAAC,oBAAoB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,CAAC;AAChG,KAAK,kBAAkB,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,SAAS,CAAC;AAEzF;;;;;;;;;GASG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,WAAW,GAAG,kBAAkB,CAAC;IACxC;;;OAGG;IACH,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC;;;OAGG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;OAGG;IACH,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED;;GAEG;AACH,qBAAa,SAAS;IACpB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,mBAAmB,CAAC;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC;gBAE3B,OAAO,GAAE,gBAAqB;IAO1C;;;OAGG;IACH,mBAAmB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GAAG,qBAAqB;CAGnF;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAEnE"}
package/dist/sdk.js CHANGED
@@ -26,11 +26,19 @@ function normalizeStealthConfig(config) {
26
26
  keyManagerCanisterId: asPrincipal(config.keyManagerCanisterId),
27
27
  };
28
28
  }
29
+ /**
30
+ * Factory for creating {@link StealthCanisterClient} instances with optional defaults.
31
+ */
29
32
  export class StealthClientFactory {
30
33
  defaults;
31
34
  constructor(defaults = {}) {
32
35
  this.defaults = defaults;
33
36
  }
37
+ /**
38
+ * Create a new {@link StealthCanisterClient}.
39
+ * @param config - Partial configuration. Missing required fields are filled from factory defaults.
40
+ * @throws If required config values are missing after merging defaults.
41
+ */
34
42
  create(config) {
35
43
  const merged = {
36
44
  ...this.defaults,
@@ -39,6 +47,9 @@ export class StealthClientFactory {
39
47
  const normalized = normalizeStealthConfig(requireStealthConfig(merged));
40
48
  return new StealthCanisterClient(normalized.agent, normalized.storageCanisterId, normalized.keyManagerCanisterId);
41
49
  }
50
+ /**
51
+ * Create a new factory that merges the provided defaults with the current ones.
52
+ */
42
53
  withDefaults(defaults) {
43
54
  return new StealthClientFactory({
44
55
  ...this.defaults,
@@ -46,6 +57,9 @@ export class StealthClientFactory {
46
57
  });
47
58
  }
48
59
  }
60
+ /**
61
+ * Main SDK entrypoint that bundles WASM, proof, decider, and IC helpers.
62
+ */
49
63
  export class Zerc20Sdk {
50
64
  wasm;
51
65
  teleportProofs;
@@ -57,10 +71,17 @@ export class Zerc20Sdk {
57
71
  this.decider = resolveDeciderClient(options.decider);
58
72
  this.stealth = resolveStealthFactory(options.stealth);
59
73
  }
74
+ /**
75
+ * Create a {@link StealthCanisterClient} (IC canister client).
76
+ * @remarks This is a convenience wrapper around {@link StealthClientFactory.create}.
77
+ */
60
78
  createStealthClient(options) {
61
79
  return this.stealth.create(options);
62
80
  }
63
81
  }
82
+ /**
83
+ * Create a new {@link Zerc20Sdk} instance.
84
+ */
64
85
  export function createSdk(options = {}) {
65
86
  return new Zerc20Sdk(options);
66
87
  }
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sdk.publicApi.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.publicApi.test.d.ts","sourceRoot":"","sources":["../src/sdk.publicApi.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,78 @@
1
+ import { beforeEach, describe, expect, it, vi } from "vitest";
2
+ vi.mock("./decider/prover.js", () => {
3
+ class HttpDeciderClient {
4
+ baseUrl;
5
+ options;
6
+ constructor(baseUrl, options) {
7
+ this.baseUrl = baseUrl;
8
+ this.options = options;
9
+ }
10
+ }
11
+ return { HttpDeciderClient };
12
+ });
13
+ vi.mock("./operations/teleportProof.js", () => {
14
+ class TeleportProofClient {
15
+ options;
16
+ constructor(options) {
17
+ this.options = options;
18
+ }
19
+ }
20
+ const createTeleportProofClient = vi.fn((options = {}) => new TeleportProofClient(options));
21
+ return {
22
+ TeleportProofClient,
23
+ createTeleportProofClient,
24
+ };
25
+ });
26
+ describe("sdk public wiring", () => {
27
+ beforeEach(() => {
28
+ vi.resetModules();
29
+ vi.clearAllMocks();
30
+ });
31
+ it("createSdk passes the SDK wasm runtime to createTeleportProofClient by default", async () => {
32
+ const teleportModule = await import("./operations/teleportProof.js");
33
+ vi.mocked(teleportModule.createTeleportProofClient).mockClear();
34
+ const { createSdk } = await import("./sdk.js");
35
+ const sdk = createSdk();
36
+ expect(teleportModule.createTeleportProofClient).toHaveBeenCalledTimes(1);
37
+ const callArg = teleportModule.createTeleportProofClient.mock.calls[0][0];
38
+ expect(callArg.wasm).toBe(sdk.wasm);
39
+ });
40
+ it("createSdk reuses a provided TeleportProofClient instance", async () => {
41
+ const teleportModule = await import("./operations/teleportProof.js");
42
+ vi.mocked(teleportModule.createTeleportProofClient).mockClear();
43
+ const { createSdk } = await import("./sdk.js");
44
+ const provided = new teleportModule.TeleportProofClient({});
45
+ const sdk = createSdk({ teleportProofs: provided });
46
+ expect(sdk.teleportProofs).toBe(provided);
47
+ expect(teleportModule.createTeleportProofClient).not.toHaveBeenCalled();
48
+ });
49
+ it("createSdk uses TeleportProofClientOptions.wasm when provided", async () => {
50
+ const teleportModule = await import("./operations/teleportProof.js");
51
+ vi.mocked(teleportModule.createTeleportProofClient).mockClear();
52
+ const { WasmRuntime } = await import("./wasm/index.js");
53
+ const { createSdk } = await import("./sdk.js");
54
+ const customWasm = new WasmRuntime();
55
+ const sdk = createSdk({ teleportProofs: { wasm: customWasm } });
56
+ expect(sdk.wasm).not.toBe(customWasm);
57
+ expect(teleportModule.createTeleportProofClient).toHaveBeenCalledTimes(1);
58
+ const callArg = teleportModule.createTeleportProofClient.mock.calls[0][0];
59
+ expect(callArg.wasm).toBe(customWasm);
60
+ });
61
+ it("createSdk reuses a provided HttpDeciderClient instance", async () => {
62
+ const { HttpDeciderClient } = await import("./decider/prover.js");
63
+ const { createSdk } = await import("./sdk.js");
64
+ const decider = new HttpDeciderClient("https://decider.example");
65
+ const sdk = createSdk({ decider: decider });
66
+ expect(sdk.decider).toBe(decider);
67
+ });
68
+ it("createSdk constructs HttpDeciderClient from config", async () => {
69
+ const { createSdk } = await import("./sdk.js");
70
+ const sdk = createSdk({
71
+ decider: { baseUrl: "https://decider.example", pollIntervalMs: 123 },
72
+ });
73
+ expect(sdk.decider).toBeDefined();
74
+ expect(sdk.decider.baseUrl).toBe("https://decider.example");
75
+ expect(sdk.decider.options.pollIntervalMs).toBe(123);
76
+ });
77
+ });
78
+ //# sourceMappingURL=sdk.publicApi.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.publicApi.test.js","sourceRoot":"","sources":["../src/sdk.publicApi.test.ts"],"names":[],"mappings":"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"}