zerc20-client-sdk 0.1.14 → 0.2.0

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 (304) hide show
  1. package/README.md +239 -25
  2. package/dist/chain/__tests__/metadata.test.d.ts +2 -0
  3. package/dist/chain/__tests__/metadata.test.d.ts.map +1 -0
  4. package/dist/chain/__tests__/metadata.test.js +162 -0
  5. package/dist/chain/__tests__/metadata.test.js.map +1 -0
  6. package/dist/chain/index.d.ts +3 -0
  7. package/dist/chain/index.d.ts.map +1 -0
  8. package/dist/chain/index.js +2 -0
  9. package/dist/chain/index.js.map +1 -0
  10. package/dist/chain/metadata.d.ts +38 -0
  11. package/dist/chain/metadata.d.ts.map +1 -0
  12. package/dist/chain/metadata.js +158 -0
  13. package/dist/chain/metadata.js.map +1 -0
  14. package/dist/chain/types.d.ts +18 -0
  15. package/dist/chain/types.d.ts.map +1 -0
  16. package/dist/chain/types.js +2 -0
  17. package/dist/chain/types.js.map +1 -0
  18. package/dist/constants.d.ts +3 -3
  19. package/dist/constants.js +3 -3
  20. package/dist/ic/__tests__/connections.test.js +16 -152
  21. package/dist/ic/__tests__/connections.test.js.map +1 -1
  22. package/dist/ic/__tests__/recipient.test.d.ts +2 -0
  23. package/dist/ic/__tests__/recipient.test.d.ts.map +1 -0
  24. package/dist/ic/__tests__/recipient.test.js +47 -0
  25. package/dist/ic/__tests__/recipient.test.js.map +1 -0
  26. package/dist/ic/authorization.js +2 -2
  27. package/dist/ic/authorization.js.map +1 -1
  28. package/dist/ic/connections.d.ts +0 -50
  29. package/dist/ic/connections.d.ts.map +1 -1
  30. package/dist/ic/connections.js +0 -127
  31. package/dist/ic/connections.js.map +1 -1
  32. package/dist/ic/index.d.ts +4 -8
  33. package/dist/ic/index.d.ts.map +1 -1
  34. package/dist/ic/index.js +3 -8
  35. package/dist/ic/index.js.map +1 -1
  36. package/dist/ic/recipient.d.ts +10 -0
  37. package/dist/ic/recipient.d.ts.map +1 -1
  38. package/dist/ic/recipient.js +21 -1
  39. package/dist/ic/recipient.js.map +1 -1
  40. package/dist/index.d.ts +14 -5
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +8 -5
  43. package/dist/index.js.map +1 -1
  44. package/dist/onchain/__tests__/contracts.test.js +2 -32
  45. package/dist/onchain/__tests__/contracts.test.js.map +1 -1
  46. package/dist/onchain/__tests__/decode.test.d.ts +2 -0
  47. package/dist/onchain/__tests__/decode.test.d.ts.map +1 -0
  48. package/dist/onchain/__tests__/decode.test.js +155 -0
  49. package/dist/onchain/__tests__/decode.test.js.map +1 -0
  50. package/dist/onchain/__tests__/tokenReads.test.d.ts +2 -0
  51. package/dist/onchain/__tests__/tokenReads.test.d.ts.map +1 -0
  52. package/dist/onchain/__tests__/tokenReads.test.js +60 -0
  53. package/dist/onchain/__tests__/tokenReads.test.js.map +1 -0
  54. package/dist/onchain/contracts.d.ts +3 -29734
  55. package/dist/onchain/contracts.d.ts.map +1 -1
  56. package/dist/onchain/contracts.js +3 -59
  57. package/dist/onchain/contracts.js.map +1 -1
  58. package/dist/onchain/decode.d.ts +39 -0
  59. package/dist/onchain/decode.d.ts.map +1 -0
  60. package/dist/onchain/decode.js +100 -0
  61. package/dist/onchain/decode.js.map +1 -0
  62. package/dist/onchain/tokenReads.d.ts +30 -0
  63. package/dist/onchain/tokenReads.d.ts.map +1 -0
  64. package/dist/onchain/tokenReads.js +51 -0
  65. package/dist/onchain/tokenReads.js.map +1 -0
  66. package/dist/operations/__tests__/invoice.test.js +52 -1
  67. package/dist/operations/__tests__/invoice.test.js.map +1 -1
  68. package/dist/operations/__tests__/privateSendTransfer.test.d.ts +2 -0
  69. package/dist/operations/__tests__/privateSendTransfer.test.d.ts.map +1 -0
  70. package/dist/operations/__tests__/privateSendTransfer.test.js +60 -0
  71. package/dist/operations/__tests__/privateSendTransfer.test.js.map +1 -0
  72. package/dist/operations/__tests__/reexports.test.js +1 -1
  73. package/dist/operations/__tests__/reexports.test.js.map +1 -1
  74. package/dist/operations/__tests__/teleportProof.test.js +35 -75
  75. package/dist/operations/__tests__/teleportProof.test.js.map +1 -1
  76. package/dist/operations/invoice.d.ts +14 -0
  77. package/dist/operations/invoice.d.ts.map +1 -1
  78. package/dist/operations/invoice.js +22 -0
  79. package/dist/operations/invoice.js.map +1 -1
  80. package/dist/operations/layerzeroScan/__tests__/codec.decode.test.d.ts +2 -0
  81. package/dist/operations/layerzeroScan/__tests__/codec.decode.test.d.ts.map +1 -0
  82. package/dist/operations/layerzeroScan/__tests__/codec.decode.test.js +57 -0
  83. package/dist/operations/layerzeroScan/__tests__/codec.decode.test.js.map +1 -0
  84. package/dist/operations/layerzeroScan/__tests__/codec.test.d.ts +2 -0
  85. package/dist/operations/layerzeroScan/__tests__/codec.test.d.ts.map +1 -0
  86. package/dist/operations/layerzeroScan/__tests__/codec.test.js +120 -0
  87. package/dist/operations/layerzeroScan/__tests__/codec.test.js.map +1 -0
  88. package/dist/operations/layerzeroScan/__tests__/formatters.test.d.ts +2 -0
  89. package/dist/operations/layerzeroScan/__tests__/formatters.test.d.ts.map +1 -0
  90. package/dist/operations/layerzeroScan/__tests__/formatters.test.js +164 -0
  91. package/dist/operations/layerzeroScan/__tests__/formatters.test.js.map +1 -0
  92. package/dist/operations/layerzeroScan/__tests__/integration.test.d.ts +2 -0
  93. package/dist/operations/layerzeroScan/__tests__/integration.test.d.ts.map +1 -0
  94. package/dist/operations/layerzeroScan/__tests__/integration.test.js +164 -0
  95. package/dist/operations/layerzeroScan/__tests__/integration.test.js.map +1 -0
  96. package/dist/operations/layerzeroScan/__tests__/scan.test.d.ts +2 -0
  97. package/dist/operations/layerzeroScan/__tests__/scan.test.d.ts.map +1 -0
  98. package/dist/operations/layerzeroScan/__tests__/scan.test.js +103 -0
  99. package/dist/operations/layerzeroScan/__tests__/scan.test.js.map +1 -0
  100. package/dist/operations/layerzeroScan/__tests__/status.test.d.ts +2 -0
  101. package/dist/operations/layerzeroScan/__tests__/status.test.d.ts.map +1 -0
  102. package/dist/operations/layerzeroScan/__tests__/status.test.js +153 -0
  103. package/dist/operations/layerzeroScan/__tests__/status.test.js.map +1 -0
  104. package/dist/operations/layerzeroScan/codec.d.ts +34 -0
  105. package/dist/operations/layerzeroScan/codec.d.ts.map +1 -0
  106. package/dist/operations/layerzeroScan/codec.js +79 -0
  107. package/dist/operations/layerzeroScan/codec.js.map +1 -0
  108. package/dist/operations/layerzeroScan/formatters.d.ts +26 -0
  109. package/dist/operations/layerzeroScan/formatters.d.ts.map +1 -0
  110. package/dist/operations/layerzeroScan/formatters.js +75 -0
  111. package/dist/operations/layerzeroScan/formatters.js.map +1 -0
  112. package/dist/operations/layerzeroScan/index.d.ts +9 -0
  113. package/dist/operations/layerzeroScan/index.d.ts.map +1 -0
  114. package/dist/operations/layerzeroScan/index.js +12 -0
  115. package/dist/operations/layerzeroScan/index.js.map +1 -0
  116. package/dist/operations/layerzeroScan/scan.d.ts +21 -0
  117. package/dist/operations/layerzeroScan/scan.d.ts.map +1 -0
  118. package/dist/operations/layerzeroScan/scan.js +70 -0
  119. package/dist/operations/layerzeroScan/scan.js.map +1 -0
  120. package/dist/operations/layerzeroScan/status.d.ts +17 -0
  121. package/dist/operations/layerzeroScan/status.d.ts.map +1 -0
  122. package/dist/operations/layerzeroScan/status.js +178 -0
  123. package/dist/operations/layerzeroScan/status.js.map +1 -0
  124. package/dist/operations/layerzeroScan/types.d.ts +181 -0
  125. package/dist/operations/layerzeroScan/types.d.ts.map +1 -0
  126. package/dist/operations/layerzeroScan/types.js +5 -0
  127. package/dist/operations/layerzeroScan/types.js.map +1 -0
  128. package/dist/operations/layerzeroScan.d.ts +5 -0
  129. package/dist/operations/layerzeroScan.d.ts.map +1 -0
  130. package/dist/operations/layerzeroScan.js +5 -0
  131. package/dist/operations/layerzeroScan.js.map +1 -0
  132. package/dist/operations/liquidityManager/__tests__/balance.test.js +24 -37
  133. package/dist/operations/liquidityManager/__tests__/balance.test.js.map +1 -1
  134. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js +51 -31
  135. package/dist/operations/liquidityManager/__tests__/crossUnwrap.test.js.map +1 -1
  136. package/dist/operations/liquidityManager/__tests__/helpers.test.js +11 -8
  137. package/dist/operations/liquidityManager/__tests__/helpers.test.js.map +1 -1
  138. package/dist/operations/liquidityManager/__tests__/unwrap.test.js +68 -82
  139. package/dist/operations/liquidityManager/__tests__/unwrap.test.js.map +1 -1
  140. package/dist/operations/liquidityManager/__tests__/wrap.test.js +55 -64
  141. package/dist/operations/liquidityManager/__tests__/wrap.test.js.map +1 -1
  142. package/dist/operations/liquidityManager/abi.d.ts +57 -0
  143. package/dist/operations/liquidityManager/abi.d.ts.map +1 -0
  144. package/dist/operations/liquidityManager/abi.js +41 -0
  145. package/dist/operations/liquidityManager/abi.js.map +1 -0
  146. package/dist/operations/liquidityManager/balance.d.ts +3 -3
  147. package/dist/operations/liquidityManager/balance.d.ts.map +1 -1
  148. package/dist/operations/liquidityManager/balance.js +22 -15
  149. package/dist/operations/liquidityManager/balance.js.map +1 -1
  150. package/dist/operations/liquidityManager/crossUnwrap.d.ts +13 -11
  151. package/dist/operations/liquidityManager/crossUnwrap.d.ts.map +1 -1
  152. package/dist/operations/liquidityManager/crossUnwrap.js +44 -20
  153. package/dist/operations/liquidityManager/crossUnwrap.js.map +1 -1
  154. package/dist/operations/liquidityManager/helpers.d.ts +10 -15474
  155. package/dist/operations/liquidityManager/helpers.d.ts.map +1 -1
  156. package/dist/operations/liquidityManager/helpers.js +28 -18
  157. package/dist/operations/liquidityManager/helpers.js.map +1 -1
  158. package/dist/operations/liquidityManager/index.d.ts +1 -0
  159. package/dist/operations/liquidityManager/index.d.ts.map +1 -1
  160. package/dist/operations/liquidityManager/index.js +2 -0
  161. package/dist/operations/liquidityManager/index.js.map +1 -1
  162. package/dist/operations/liquidityManager/types.d.ts +1 -1
  163. package/dist/operations/liquidityManager/types.d.ts.map +1 -1
  164. package/dist/operations/liquidityManager/unwrap.d.ts +9 -9
  165. package/dist/operations/liquidityManager/unwrap.d.ts.map +1 -1
  166. package/dist/operations/liquidityManager/unwrap.js +48 -24
  167. package/dist/operations/liquidityManager/unwrap.js.map +1 -1
  168. package/dist/operations/liquidityManager/wrap.d.ts +7 -7
  169. package/dist/operations/liquidityManager/wrap.d.ts.map +1 -1
  170. package/dist/operations/liquidityManager/wrap.js +35 -16
  171. package/dist/operations/liquidityManager/wrap.js.map +1 -1
  172. package/dist/operations/privateSend.d.ts +33 -0
  173. package/dist/operations/privateSend.d.ts.map +1 -1
  174. package/dist/operations/privateSend.js +26 -0
  175. package/dist/operations/privateSend.js.map +1 -1
  176. package/dist/operations/receive/__tests__/announcementStatus.test.js +34 -11
  177. package/dist/operations/receive/__tests__/announcementStatus.test.js.map +1 -1
  178. package/dist/operations/receive/__tests__/cache.test.js +28 -167
  179. package/dist/operations/receive/__tests__/cache.test.js.map +1 -1
  180. package/dist/operations/receive/__tests__/createVerifierReader.test.d.ts +2 -0
  181. package/dist/operations/receive/__tests__/createVerifierReader.test.d.ts.map +1 -0
  182. package/dist/operations/receive/__tests__/createVerifierReader.test.js +28 -0
  183. package/dist/operations/receive/__tests__/createVerifierReader.test.js.map +1 -0
  184. package/dist/operations/receive/__tests__/helpers.test.js +9 -9
  185. package/dist/operations/receive/__tests__/helpers.test.js.map +1 -1
  186. package/dist/operations/receive/__tests__/redeemTransaction.test.d.ts +2 -0
  187. package/dist/operations/receive/__tests__/redeemTransaction.test.d.ts.map +1 -0
  188. package/dist/operations/receive/__tests__/redeemTransaction.test.js +258 -0
  189. package/dist/operations/receive/__tests__/redeemTransaction.test.js.map +1 -0
  190. package/dist/operations/receive/__tests__/submitRedeem.test.d.ts +2 -0
  191. package/dist/operations/receive/__tests__/submitRedeem.test.d.ts.map +1 -0
  192. package/dist/operations/receive/__tests__/submitRedeem.test.js +58 -0
  193. package/dist/operations/receive/__tests__/submitRedeem.test.js.map +1 -0
  194. package/dist/operations/receive/announcementStatus.d.ts +1 -1
  195. package/dist/operations/receive/announcementStatus.d.ts.map +1 -1
  196. package/dist/operations/receive/announcementStatus.js +7 -5
  197. package/dist/operations/receive/announcementStatus.js.map +1 -1
  198. package/dist/operations/receive/cache.d.ts +0 -18
  199. package/dist/operations/receive/cache.d.ts.map +1 -1
  200. package/dist/operations/receive/cache.js +0 -30
  201. package/dist/operations/receive/cache.js.map +1 -1
  202. package/dist/operations/receive/helpers.d.ts +14 -3
  203. package/dist/operations/receive/helpers.d.ts.map +1 -1
  204. package/dist/operations/receive/helpers.js +33 -3
  205. package/dist/operations/receive/helpers.js.map +1 -1
  206. package/dist/operations/receive/index.d.ts +6 -2
  207. package/dist/operations/receive/index.d.ts.map +1 -1
  208. package/dist/operations/receive/index.js +6 -1
  209. package/dist/operations/receive/index.js.map +1 -1
  210. package/dist/operations/receive/redeemTransaction.d.ts +30 -0
  211. package/dist/operations/receive/redeemTransaction.d.ts.map +1 -0
  212. package/dist/operations/receive/redeemTransaction.js +104 -0
  213. package/dist/operations/receive/redeemTransaction.js.map +1 -0
  214. package/dist/operations/receive/submitRedeem.d.ts +32 -0
  215. package/dist/operations/receive/submitRedeem.d.ts.map +1 -0
  216. package/dist/operations/receive/submitRedeem.js +27 -0
  217. package/dist/operations/receive/submitRedeem.js.map +1 -0
  218. package/dist/operations/receive/types.d.ts +53 -5
  219. package/dist/operations/receive/types.d.ts.map +1 -1
  220. package/dist/operations/teleportProof.d.ts +10 -31
  221. package/dist/operations/teleportProof.d.ts.map +1 -1
  222. package/dist/operations/teleportProof.js +14 -26
  223. package/dist/operations/teleportProof.js.map +1 -1
  224. package/dist/registry/__tests__/helpers.test.js +2 -44
  225. package/dist/registry/__tests__/helpers.test.js.map +1 -1
  226. package/dist/registry/__tests__/loader.test.js +17 -191
  227. package/dist/registry/__tests__/loader.test.js.map +1 -1
  228. package/dist/registry/__tests__/normalize.test.js +109 -1
  229. package/dist/registry/__tests__/normalize.test.js.map +1 -1
  230. package/dist/registry/helpers.d.ts +0 -7
  231. package/dist/registry/helpers.d.ts.map +1 -1
  232. package/dist/registry/helpers.js +0 -14
  233. package/dist/registry/helpers.js.map +1 -1
  234. package/dist/registry/index.d.ts +5 -5
  235. package/dist/registry/index.d.ts.map +1 -1
  236. package/dist/registry/index.js +4 -4
  237. package/dist/registry/index.js.map +1 -1
  238. package/dist/registry/loader.d.ts +0 -25
  239. package/dist/registry/loader.d.ts.map +1 -1
  240. package/dist/registry/loader.js +0 -68
  241. package/dist/registry/loader.js.map +1 -1
  242. package/dist/registry/normalize.d.ts +13 -1
  243. package/dist/registry/normalize.d.ts.map +1 -1
  244. package/dist/registry/normalize.js +43 -0
  245. package/dist/registry/normalize.js.map +1 -1
  246. package/dist/registry/types.d.ts +13 -2
  247. package/dist/registry/types.d.ts.map +1 -1
  248. package/dist/types/__tests__/evm.test.d.ts +2 -0
  249. package/dist/types/__tests__/evm.test.d.ts.map +1 -0
  250. package/dist/types/__tests__/evm.test.js +15 -0
  251. package/dist/types/__tests__/evm.test.js.map +1 -0
  252. package/dist/types/evm.d.ts +95 -0
  253. package/dist/types/evm.d.ts.map +1 -0
  254. package/dist/types/evm.js +11 -0
  255. package/dist/types/evm.js.map +1 -0
  256. package/dist/types.d.ts +15 -13
  257. package/dist/types.d.ts.map +1 -1
  258. package/dist/utils/__tests__/fees.test.js +66 -29
  259. package/dist/utils/__tests__/fees.test.js.map +1 -1
  260. package/dist/utils/__tests__/hex.test.js +64 -1
  261. package/dist/utils/__tests__/hex.test.js.map +1 -1
  262. package/dist/utils/__tests__/http.test.js +2 -64
  263. package/dist/utils/__tests__/http.test.js.map +1 -1
  264. package/dist/utils/fees.d.ts +7 -2
  265. package/dist/utils/fees.d.ts.map +1 -1
  266. package/dist/utils/fees.js +32 -16
  267. package/dist/utils/fees.js.map +1 -1
  268. package/dist/utils/hex.d.ts +11 -0
  269. package/dist/utils/hex.d.ts.map +1 -1
  270. package/dist/utils/hex.js +16 -1
  271. package/dist/utils/hex.js.map +1 -1
  272. package/dist/utils/http.d.ts +0 -27
  273. package/dist/utils/http.d.ts.map +1 -1
  274. package/dist/utils/http.js +0 -36
  275. package/dist/utils/http.js.map +1 -1
  276. package/dist/wasm/__tests__/functions.test.js +56 -1
  277. package/dist/wasm/__tests__/functions.test.js.map +1 -1
  278. package/dist/wasm/functions.d.ts +6 -0
  279. package/dist/wasm/functions.d.ts.map +1 -1
  280. package/dist/wasm/functions.js +17 -0
  281. package/dist/wasm/functions.js.map +1 -1
  282. package/dist/wasm/index.d.ts +1 -1
  283. package/dist/wasm/index.d.ts.map +1 -1
  284. package/dist/wasm/index.js +1 -1
  285. package/dist/wasm/index.js.map +1 -1
  286. package/dist/zkp/__tests__/proofService.test.js +34 -52
  287. package/dist/zkp/__tests__/proofService.test.js.map +1 -1
  288. package/dist/zkp/__tests__/workerClient.test.js +1 -40
  289. package/dist/zkp/__tests__/workerClient.test.js.map +1 -1
  290. package/dist/zkp/index.d.ts +1 -1
  291. package/dist/zkp/index.d.ts.map +1 -1
  292. package/dist/zkp/index.js +1 -1
  293. package/dist/zkp/index.js.map +1 -1
  294. package/dist/zkp/proofService.d.ts +6 -2
  295. package/dist/zkp/proofService.d.ts.map +1 -1
  296. package/dist/zkp/proofService.js +12 -15
  297. package/dist/zkp/proofService.js.map +1 -1
  298. package/dist/zkp/worker.js +2142 -42
  299. package/dist/zkp/worker.js.map +1 -1
  300. package/dist/zkp/workerClient.d.ts +0 -24
  301. package/dist/zkp/workerClient.d.ts.map +1 -1
  302. package/dist/zkp/workerClient.js +0 -36
  303. package/dist/zkp/workerClient.js.map +1 -1
  304. package/package.json +7 -6
@@ -0,0 +1,158 @@
1
+ /**
2
+ * Built-in chain metadata keyed by EVM chain ID.
3
+ *
4
+ * @remarks
5
+ * Covers mainnet and testnet chains supported by the zERC20 protocol.
6
+ * This map is intentionally not exported — use the lookup helpers instead
7
+ * so that fallback behaviour is consistent.
8
+ */
9
+ const CHAIN_METADATA = new Map([
10
+ // ── Mainnet ──
11
+ [1, { name: "Ethereum", shortName: "ETH", explorerUrl: "https://etherscan.io" }],
12
+ [42161, { name: "Arbitrum", shortName: "ARB", explorerUrl: "https://arbiscan.io" }],
13
+ [10, { name: "Optimism", shortName: "OP", explorerUrl: "https://optimistic.etherscan.io" }],
14
+ [8453, { name: "Base", shortName: "BASE", explorerUrl: "https://basescan.org" }],
15
+ [56, { name: "BNB Chain", shortName: "BNB", explorerUrl: "https://bscscan.com" }],
16
+ // ── Testnet ──
17
+ [
18
+ 11155111,
19
+ { name: "Ethereum Sepolia", shortName: "ETH", explorerUrl: "https://sepolia.etherscan.io" },
20
+ ],
21
+ [
22
+ 421614,
23
+ { name: "Arbitrum Sepolia", shortName: "ARB", explorerUrl: "https://sepolia.arbiscan.io" },
24
+ ],
25
+ [
26
+ 11155420,
27
+ {
28
+ name: "Optimism Sepolia",
29
+ shortName: "OP",
30
+ explorerUrl: "https://sepolia-optimism.etherscan.io",
31
+ },
32
+ ],
33
+ [84532, { name: "Base Sepolia", shortName: "BASE", explorerUrl: "https://sepolia.basescan.org" }],
34
+ [97, { name: "BNB Testnet", shortName: "BNB", explorerUrl: "https://testnet.bscscan.com" }],
35
+ ]);
36
+ /**
37
+ * Alias table: chain name / token label → chainId.
38
+ *
39
+ * @remarks
40
+ * Covers short aliases ("arb"), app token labels ("arb-sepolia"),
41
+ * and LayerZero chain names ("arbitrum-sepolia").
42
+ */
43
+ const CHAIN_NAME_TO_ID = new Map([
44
+ // ── Mainnet ──
45
+ ["ethereum", 1],
46
+ ["eth", 1],
47
+ ["eth-mainnet", 1],
48
+ ["arbitrum", 42161],
49
+ ["arb", 42161],
50
+ ["arb-mainnet", 42161],
51
+ ["optimism", 10],
52
+ ["op", 10],
53
+ ["op-mainnet", 10],
54
+ ["base", 8453],
55
+ ["base-mainnet", 8453],
56
+ ["bnb", 56],
57
+ ["bsc", 56],
58
+ // ── Testnet ──
59
+ ["sepolia", 11155111],
60
+ ["ethereum-sepolia", 11155111],
61
+ ["arb-sepolia", 421614],
62
+ ["arbitrum-sepolia", 421614],
63
+ ["op-sepolia", 11155420],
64
+ ["optimism-sepolia", 11155420],
65
+ ["base-sepolia", 84532],
66
+ ["bnb-testnet", 97],
67
+ ["bsc-testnet", 97],
68
+ ]);
69
+ /**
70
+ * Display name overrides for token labels that don't map directly
71
+ * through {@link resolveChainId} → {@link getChainMetadata}.
72
+ *
73
+ * @remarks
74
+ * Certain labels (e.g. "sepolia") resolve to a chainId whose metadata
75
+ * name ("Ethereum Sepolia") already works. This table is only for
76
+ * labels that either have no chainId mapping or need a different display
77
+ * name than what metadata provides.
78
+ */
79
+ const LABEL_DISPLAY_OVERRIDES = new Map([
80
+ // none currently needed — all labels resolve via CHAIN_NAME_TO_ID + CHAIN_METADATA
81
+ ]);
82
+ // ────────────────────────────────────────────────────────────────────
83
+ // Internal helpers
84
+ // ────────────────────────────────────────────────────────────────────
85
+ /** Coerce number | bigint to a Map-compatible number key. */
86
+ function toNumericId(chainId) {
87
+ return typeof chainId === "bigint" ? Number(chainId) : chainId;
88
+ }
89
+ // ────────────────────────────────────────────────────────────────────
90
+ // Public API
91
+ // ────────────────────────────────────────────────────────────────────
92
+ /**
93
+ * Returns chain metadata for the given chain ID, or `undefined` if unknown.
94
+ * Accepts both `number` and `bigint` to align with SDK's `TokenEntry.chainId`.
95
+ */
96
+ export function getChainMetadata(chainId) {
97
+ return CHAIN_METADATA.get(toNumericId(chainId));
98
+ }
99
+ /**
100
+ * Returns a human-readable chain name.
101
+ * Falls back to `"Chain {chainId}"` when the chain is not recognised.
102
+ */
103
+ export function getChainDisplayName(chainId) {
104
+ const id = toNumericId(chainId);
105
+ return CHAIN_METADATA.get(id)?.name ?? `Chain ${id}`;
106
+ }
107
+ /**
108
+ * Returns the short label for a chain (e.g. "ARB", "ETH").
109
+ * Falls back to `undefined` when the chain is not recognised.
110
+ */
111
+ export function getChainShortName(chainId) {
112
+ return CHAIN_METADATA.get(toNumericId(chainId))?.shortName;
113
+ }
114
+ /**
115
+ * Builds a block-explorer transaction URL.
116
+ * Returns `undefined` when the chain is not recognised.
117
+ */
118
+ export function getExplorerTxUrl(chainId, txHash) {
119
+ const meta = CHAIN_METADATA.get(toNumericId(chainId));
120
+ if (!meta)
121
+ return undefined;
122
+ return `${meta.explorerUrl}/tx/${txHash}`;
123
+ }
124
+ /**
125
+ * Resolves a chain name or token label to an EVM chain ID.
126
+ * The lookup is case-insensitive.
127
+ * Returns `undefined` when the name is not recognised.
128
+ */
129
+ export function resolveChainId(name) {
130
+ return CHAIN_NAME_TO_ID.get(name.toLowerCase().trim());
131
+ }
132
+ /**
133
+ * Converts a token / network label (e.g. "arb-sepolia", "ethereum")
134
+ * to a user-friendly display name (e.g. "Arbitrum Sepolia", "Ethereum").
135
+ *
136
+ * Resolution order:
137
+ * 1. Override table ({@link LABEL_DISPLAY_OVERRIDES})
138
+ * 2. Resolve label → chainId → metadata name
139
+ * 3. Capitalize the first letter of the label as a last resort
140
+ */
141
+ export function resolveNetworkDisplayName(label) {
142
+ const key = label.toLowerCase().trim();
143
+ const override = LABEL_DISPLAY_OVERRIDES.get(key);
144
+ if (override)
145
+ return override;
146
+ const chainId = CHAIN_NAME_TO_ID.get(key);
147
+ if (chainId !== undefined) {
148
+ const meta = CHAIN_METADATA.get(chainId);
149
+ if (meta)
150
+ return meta.name;
151
+ }
152
+ // fallback: capitalize first letter, preserving original casing
153
+ const trimmed = label.trim();
154
+ if (!trimmed)
155
+ return label;
156
+ return trimmed.charAt(0).toUpperCase() + trimmed.slice(1);
157
+ }
158
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/chain/metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Metadata for an EVM-compatible chain.
3
+ *
4
+ * @remarks
5
+ * Covers the fields commonly needed across products:
6
+ * display name, short name, and block explorer URL.
7
+ * UI-specific assets (icons, slugs) are intentionally excluded
8
+ * because they belong in each consuming application.
9
+ */
10
+ export interface ChainMetadata {
11
+ /** Full human-readable name (e.g. "Arbitrum", "Ethereum Sepolia"). */
12
+ name: string;
13
+ /** Short label for compact displays (e.g. "ARB", "ETH"). */
14
+ shortName: string;
15
+ /** Block explorer base URL without trailing slash (e.g. "https://arbiscan.io"). */
16
+ explorerUrl: string;
17
+ }
18
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/chain/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,4DAA4D;IAC5D,SAAS,EAAE,MAAM,CAAC;IAClB,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAC;CACrB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/chain/types.ts"],"names":[],"mappings":""}
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Global protocol and SDK defaults.
2
+ * Protocol-fixed constants and internal SDK defaults.
3
3
  * @remarks
4
- * These constants are part of the public API. Changing them may affect proof compatibility,
5
- * indexer interactions, and IC storage routing.
4
+ * Only the protocol constants (tree heights, batch sizes) are exported from the public API.
5
+ * The `DEFAULT_*` values are internal tuning defaults, overridable via optional parameters.
6
6
  */
7
7
  /** Height of the aggregation tree (number of levels). */
8
8
  export declare const AGGREGATION_TREE_HEIGHT = 6;
package/dist/constants.js CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Global protocol and SDK defaults.
2
+ * Protocol-fixed constants and internal SDK defaults.
3
3
  * @remarks
4
- * These constants are part of the public API. Changing them may affect proof compatibility,
5
- * indexer interactions, and IC storage routing.
4
+ * Only the protocol constants (tree heights, batch sizes) are exported from the public API.
5
+ * The `DEFAULT_*` values are internal tuning defaults, overridable via optional parameters.
6
6
  */
7
7
  /** Height of the aggregation tree (number of levels). */
8
8
  export const AGGREGATION_TREE_HEIGHT = 6;
@@ -1,5 +1,5 @@
1
- import { afterEach, describe, expect, test, vi } from "vitest";
2
- import { StealthClientCacheManager, DeciderClientCacheManager, isLocalReplica, createStealthClient, getStealthClientFromConfig, clearStealthClientCache, resetStealthClientCache, getDefaultStealthClientCacheManager, getDeciderClient, clearDeciderClientCache, resetDeciderClientCache, getDefaultDeciderClientCacheManager, } from "../connections.js";
1
+ import { describe, expect, test, vi } from "vitest";
2
+ import { StealthClientCacheManager, DeciderClientCacheManager, isLocalReplica, createStealthClient, } from "../connections.js";
3
3
  // Mock the dependencies
4
4
  vi.mock("@dfinity/agent", () => {
5
5
  return {
@@ -230,156 +230,20 @@ describe("DeciderClientCacheManager", () => {
230
230
  });
231
231
  });
232
232
  });
233
- describe("module-level functions (stealth client)", () => {
234
- afterEach(() => {
235
- resetStealthClientCache();
236
- });
237
- describe("createStealthClient", () => {
238
- test("creates new client without caching", async () => {
239
- const client1 = await createStealthClient({
240
- icReplicaUrl: "http://localhost:4943",
241
- storageCanisterId: "storage-id",
242
- keyManagerCanisterId: "key-manager-id",
243
- });
244
- const client2 = await createStealthClient({
245
- icReplicaUrl: "http://localhost:4943",
246
- storageCanisterId: "storage-id",
247
- keyManagerCanisterId: "key-manager-id",
248
- });
249
- // Should create new instances each time
250
- expect(client1).not.toBe(client2);
251
- });
252
- });
253
- describe("getStealthClientFromConfig", () => {
254
- test("uses default cache", async () => {
255
- const client1 = await getStealthClientFromConfig({
256
- icReplicaUrl: "http://localhost:4943",
257
- storageCanisterId: "storage-id",
258
- keyManagerCanisterId: "key-manager-id",
259
- });
260
- const client2 = await getStealthClientFromConfig({
261
- icReplicaUrl: "http://localhost:4943",
262
- storageCanisterId: "storage-id",
263
- keyManagerCanisterId: "key-manager-id",
264
- });
265
- expect(client1).toBe(client2);
266
- });
267
- test("uses custom cache when provided", async () => {
268
- const customCache = new Map();
269
- await getStealthClientFromConfig({
270
- icReplicaUrl: "http://localhost:4943",
271
- storageCanisterId: "storage-id",
272
- keyManagerCanisterId: "key-manager-id",
273
- cache: customCache,
274
- });
275
- expect(customCache.size).toBe(1);
276
- // Default cache should be empty since we used custom cache
277
- expect(getDefaultStealthClientCacheManager().size()).toBe(0);
278
- });
279
- test("removes failed promise from custom cache", async () => {
280
- const customCache = new Map();
281
- // Mock Principal.fromText to throw once
282
- const { Principal } = await import("@dfinity/principal");
283
- let shouldFail = true;
284
- const mockFromText = vi.fn((text) => {
285
- if (shouldFail && text === "fail-storage-2") {
286
- shouldFail = false;
287
- throw new Error("Invalid canister ID");
288
- }
289
- return { toText: () => text };
290
- });
291
- Principal.fromText = mockFromText;
292
- // First call should fail
293
- await expect(getStealthClientFromConfig({
294
- icReplicaUrl: "http://localhost:4943",
295
- storageCanisterId: "fail-storage-2",
296
- keyManagerCanisterId: "key-manager-id",
297
- cache: customCache,
298
- cacheKey: "custom-fail-key",
299
- })).rejects.toThrow("Invalid canister ID");
300
- // Custom cache should be empty after failure
301
- expect(customCache.has("custom-fail-key")).toBe(false);
302
- expect(customCache.size).toBe(0);
303
- });
304
- });
305
- describe("clearStealthClientCache", () => {
306
- test("clears default cache", async () => {
307
- await getStealthClientFromConfig({
308
- icReplicaUrl: "http://localhost:4943",
309
- storageCanisterId: "storage-id",
310
- keyManagerCanisterId: "key-manager-id",
311
- });
312
- expect(getDefaultStealthClientCacheManager().size()).toBe(1);
313
- clearStealthClientCache();
314
- expect(getDefaultStealthClientCacheManager().size()).toBe(0);
315
- });
316
- test("clears custom cache when provided", async () => {
317
- const customCache = new Map();
318
- customCache.set("key1", Promise.resolve({}));
319
- customCache.set("key2", Promise.resolve({}));
320
- clearStealthClientCache(customCache, "key1");
321
- expect(customCache.size).toBe(1);
322
- expect(customCache.has("key2")).toBe(true);
323
- });
324
- });
325
- describe("getDefaultStealthClientCacheManager", () => {
326
- test("returns the default manager", () => {
327
- const manager = getDefaultStealthClientCacheManager();
328
- expect(manager).toBeInstanceOf(StealthClientCacheManager);
329
- });
330
- test("returns the same instance", () => {
331
- const manager1 = getDefaultStealthClientCacheManager();
332
- const manager2 = getDefaultStealthClientCacheManager();
333
- expect(manager1).toBe(manager2);
334
- });
335
- });
336
- });
337
- describe("module-level functions (decider client)", () => {
338
- afterEach(() => {
339
- resetDeciderClientCache();
340
- });
341
- describe("getDeciderClient", () => {
342
- test("uses default cache", () => {
343
- const client1 = getDeciderClient({ baseUrl: "http://decider.example.com" });
344
- const client2 = getDeciderClient({ baseUrl: "http://decider.example.com" });
345
- expect(client1).toBe(client2);
346
- });
347
- test("uses custom cache when provided", () => {
348
- const customCache = new Map();
349
- getDeciderClient({
350
- baseUrl: "http://decider.example.com",
351
- cache: customCache,
352
- });
353
- expect(customCache.size).toBe(1);
354
- expect(getDefaultDeciderClientCacheManager().size()).toBe(0);
355
- });
356
- });
357
- describe("clearDeciderClientCache", () => {
358
- test("clears default cache", () => {
359
- getDeciderClient({ baseUrl: "http://decider.example.com" });
360
- expect(getDefaultDeciderClientCacheManager().size()).toBe(1);
361
- clearDeciderClientCache();
362
- expect(getDefaultDeciderClientCacheManager().size()).toBe(0);
363
- });
364
- test("clears custom cache when provided", () => {
365
- const customCache = new Map();
366
- customCache.set("key1", {});
367
- customCache.set("key2", {});
368
- clearDeciderClientCache(customCache, "key1");
369
- expect(customCache.size).toBe(1);
370
- expect(customCache.has("key2")).toBe(true);
371
- });
372
- });
373
- describe("getDefaultDeciderClientCacheManager", () => {
374
- test("returns the default manager", () => {
375
- const manager = getDefaultDeciderClientCacheManager();
376
- expect(manager).toBeInstanceOf(DeciderClientCacheManager);
377
- });
378
- test("returns the same instance", () => {
379
- const manager1 = getDefaultDeciderClientCacheManager();
380
- const manager2 = getDefaultDeciderClientCacheManager();
381
- expect(manager1).toBe(manager2);
382
- });
233
+ describe("createStealthClient", () => {
234
+ test("creates new client without caching", async () => {
235
+ const client1 = await createStealthClient({
236
+ icReplicaUrl: "http://localhost:4943",
237
+ storageCanisterId: "storage-id",
238
+ keyManagerCanisterId: "key-manager-id",
239
+ });
240
+ const client2 = await createStealthClient({
241
+ icReplicaUrl: "http://localhost:4943",
242
+ storageCanisterId: "storage-id",
243
+ keyManagerCanisterId: "key-manager-id",
244
+ });
245
+ // Should create new instances each time
246
+ expect(client1).not.toBe(client2);
383
247
  });
384
248
  });
385
249
  //# sourceMappingURL=connections.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connections.test.js","sourceRoot":"","sources":["../../../src/ic/__tests__/connections.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connections.test.js","sourceRoot":"","sources":["../../../src/ic/__tests__/connections.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=recipient.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipient.test.d.ts","sourceRoot":"","sources":["../../../src/ic/__tests__/recipient.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,47 @@
1
+ import { VetKey } from "@dfinity/vetkeys";
2
+ import { describe, expect, test, vi } from "vitest";
3
+ import { serializeVetKey, deserializeVetKey } from "../recipient.js";
4
+ import { StealthError } from "../errors.js";
5
+ vi.mock("@dfinity/vetkeys", () => {
6
+ class MockVetKey {
7
+ bytes;
8
+ constructor(bytes) {
9
+ this.bytes = bytes;
10
+ }
11
+ serialize() {
12
+ return this.bytes;
13
+ }
14
+ static deserialize(bytes) {
15
+ if (bytes.length === 0) {
16
+ throw new Error("invalid bytes");
17
+ }
18
+ return new MockVetKey(bytes);
19
+ }
20
+ }
21
+ return { VetKey: MockVetKey };
22
+ });
23
+ describe("serializeVetKey / deserializeVetKey", () => {
24
+ test("round-trips through hex serialization", () => {
25
+ const keyBytes = new Uint8Array([0xab, 0xcd, 0xef]);
26
+ const original = VetKey.deserialize(keyBytes);
27
+ const hex = serializeVetKey(original);
28
+ expect(hex).toBe("0xabcdef");
29
+ const restored = deserializeVetKey(hex);
30
+ expect(restored.serialize()).toEqual(keyBytes);
31
+ });
32
+ test("deserializeVetKey handles hex without 0x prefix", () => {
33
+ const restored = deserializeVetKey("abcdef");
34
+ expect(restored.serialize()).toEqual(new Uint8Array([0xab, 0xcd, 0xef]));
35
+ });
36
+ test("serializeVetKey returns 0x-prefixed string", () => {
37
+ const keyBytes = new Uint8Array([0x01, 0x02, 0x03]);
38
+ const vetKey = VetKey.deserialize(keyBytes);
39
+ const hex = serializeVetKey(vetKey);
40
+ expect(hex.startsWith("0x")).toBe(true);
41
+ });
42
+ test("deserializeVetKey throws StealthError for invalid input", () => {
43
+ expect(() => deserializeVetKey("not-hex")).toThrow(StealthError);
44
+ expect(() => deserializeVetKey("not-hex")).toThrow("failed to deserialize vet key");
45
+ });
46
+ });
47
+ //# sourceMappingURL=recipient.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipient.test.js","sourceRoot":"","sources":["../../../src/ic/__tests__/recipient.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,EAAE,CAAC,IAAI,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC/B,MAAM,UAAU;QACG,KAAK,CAAa;QACnC,YAAY,KAAiB;YAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC;QACD,SAAS;YACP,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;QACD,MAAM,CAAC,WAAW,CAAC,KAAiB;YAClC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;KACF;IACD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;AAChC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE9C,MAAM,GAAG,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE7B,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;QACtD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE5C,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QACpC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,yDAAyD,EAAE,GAAG,EAAE;QACnE,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { secp256k1 } from "@noble/curves/secp256k1.js";
2
- import { keccak256, toHex } from "viem";
2
+ import { toHex } from "viem";
3
3
  import { privateKeyToAccount } from "viem/accounts";
4
- import { bytesToHex, hexToBytes } from "../utils/hex.js";
4
+ import { bytesToHex, hexToBytes, keccak256 } from "../utils/hex.js";
5
5
  const encoder = new TextEncoder();
6
6
  const decoder = new TextDecoder();
7
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../../src/ic/authorization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authorization.js","sourceRoot":"","sources":["../../src/ic/authorization.ts"],"names":[],"mappings":"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"}
@@ -10,15 +10,6 @@ export interface StealthClientConnectionOptions {
10
10
  agentOptions?: HttpAgentOptions;
11
11
  fetchRootKey?: boolean;
12
12
  }
13
- export interface CachedStealthClientOptions extends StealthClientConnectionOptions {
14
- cacheKey?: string;
15
- cache?: Map<string, Promise<StealthCanisterClient>>;
16
- }
17
- export interface DeciderClientConfig extends DeciderClientOptions {
18
- baseUrl: string;
19
- cacheKey?: string;
20
- cache?: Map<string, HttpDeciderClient>;
21
- }
22
13
  export declare function isLocalReplica(url: string): boolean;
23
14
  /**
24
15
  * Manager for caching StealthCanisterClient instances.
@@ -79,45 +70,4 @@ export declare class DeciderClientCacheManager {
79
70
  * Creates a new stealth client without caching.
80
71
  */
81
72
  export declare function createStealthClient(options: StealthClientConnectionOptions): Promise<StealthCanisterClient>;
82
- /**
83
- * Gets a stealth client from cache or creates a new one.
84
- * Supports custom cache via options.
85
- * If creation fails, the failed promise is removed from the cache to allow retry.
86
- */
87
- export declare function getStealthClientFromConfig(options: CachedStealthClientOptions): Promise<StealthCanisterClient>;
88
- /**
89
- * Clears the stealth client cache.
90
- * @param cache Optional custom cache to clear. Defaults to the global cache.
91
- * @param key Optional specific key to clear. If not provided, clears all entries.
92
- */
93
- export declare function clearStealthClientCache(cache?: Map<string, Promise<StealthCanisterClient>>, key?: string): void;
94
- /**
95
- * Resets the default stealth client cache to its initial state.
96
- * Useful for testing.
97
- */
98
- export declare function resetStealthClientCache(): void;
99
- /**
100
- * Returns the default stealth client cache manager.
101
- */
102
- export declare function getDefaultStealthClientCacheManager(): StealthClientCacheManager;
103
- /**
104
- * Gets a decider client from cache or creates a new one.
105
- * Supports custom cache via config.
106
- */
107
- export declare function getDeciderClient(config: DeciderClientConfig): HttpDeciderClient;
108
- /**
109
- * Clears the decider client cache.
110
- * @param cache Optional custom cache to clear. Defaults to the global cache.
111
- * @param key Optional specific key to clear. If not provided, clears all entries.
112
- */
113
- export declare function clearDeciderClientCache(cache?: Map<string, HttpDeciderClient>, key?: string): void;
114
- /**
115
- * Resets the default decider client cache to its initial state.
116
- * Useful for testing.
117
- */
118
- export declare function resetDeciderClientCache(): void;
119
- /**
120
- * Returns the default decider client cache manager.
121
- */
122
- export declare function getDefaultDeciderClientCacheManager(): DeciderClientCacheManager;
123
73
  //# sourceMappingURL=connections.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../src/ic/connections.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connections.d.ts","sourceRoot":"","sources":["../../src/ic/connections.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAI9D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAMpD,MAAM,WAAW,8BAA8B;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAMD,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAEnD;AA8BD;;GAEG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAqD;IAE3E;;;OAGG;IACG,WAAW,CACf,OAAO,EAAE,8BAA8B,EACvC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC;IAcjC;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAG1B;AAMD;;GAEG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAwC;IAE9D;;OAEG;IACH,WAAW,CACT,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,oBAAoB,EAC9B,QAAQ,CAAC,EAAE,MAAM,GAChB,iBAAiB;IAQpB;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAQzB;;;OAGG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,IAAI,IAAI,MAAM;IAId;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;CAG1B;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,qBAAqB,CAAC,CAEhC"}