zerc20-client-sdk 0.1.15 → 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 +13 -137
  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 +3 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.d.ts","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/formatters.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAEhG,wBAAgB,aAAa,CAAC,QAAQ,CAAC,EAAE,iBAAiB,GAAG,IAAI,GAAG,MAAM,CAEzE;AAED,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,oBAAoB,GAAG,IAAI,GAAG,MAAM,GAAG,SAAS,CAO3F;AAeD,wBAAgB,cAAc,CAAC,KAAK,CAAC,EAAE;IACrC,EAAE,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CAC1E,GAAG,MAAM,GAAG,SAAS,CAYrB;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB;;;;;;cAY1D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAW/F;AAED,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,oBAAoB,EAC7B,MAAM,EAAE,UAAU,EAAE,GACnB,UAAU,GAAG,SAAS,CAYxB"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Formatting utilities for LayerZero Scan messages.
3
+ */
4
+ export function endpointChain(endpoint) {
5
+ return endpoint?.chain ?? "-";
6
+ }
7
+ export function destinationTx(destination) {
8
+ return (destination?.tx?.txHash ||
9
+ destination?.lzCompose?.txs?.[0]?.txHash ||
10
+ destination?.nativeDrop?.tx?.txHash ||
11
+ undefined);
12
+ }
13
+ function formatTimestamp(unixSeconds) {
14
+ const date = new Date(unixSeconds * 1000);
15
+ return date.toLocaleString("en-US", {
16
+ year: "numeric",
17
+ month: "short",
18
+ day: "numeric",
19
+ hour: "2-digit",
20
+ minute: "2-digit",
21
+ second: "2-digit",
22
+ hour12: false,
23
+ });
24
+ }
25
+ export function summarizeBlock(stage) {
26
+ const blockNumber = stage?.tx?.blockNumber;
27
+ if (blockNumber === undefined || blockNumber === null) {
28
+ return undefined;
29
+ }
30
+ const asNumber = typeof blockNumber === "string" ? Number(blockNumber) : blockNumber;
31
+ const timestamp = stage?.tx?.blockTimestamp;
32
+ if (timestamp === undefined || timestamp === null) {
33
+ return asNumber ? asNumber.toString() : `${blockNumber}`;
34
+ }
35
+ const tsNumber = typeof timestamp === "string" ? Number(timestamp) : timestamp;
36
+ return `${asNumber ?? blockNumber} (${formatTimestamp(tsNumber)})`;
37
+ }
38
+ export function formatPathway(message) {
39
+ const pathway = message.pathway;
40
+ if (!pathway) {
41
+ return undefined;
42
+ }
43
+ return {
44
+ src: endpointChain(pathway.sender),
45
+ dst: endpointChain(pathway.receiver),
46
+ nonce: pathway.nonce,
47
+ srcEid: pathway.srcEid ? Number(pathway.srcEid) : undefined,
48
+ dstEid: pathway.dstEid ? Number(pathway.dstEid) : undefined,
49
+ };
50
+ }
51
+ /**
52
+ * Check if a LayerZero message belongs to the specified tokens by matching sender address.
53
+ */
54
+ export function isMessageForTokens(message, tokens) {
55
+ const senderAddress = message.pathway?.sender?.address?.toLowerCase();
56
+ if (!senderAddress) {
57
+ return false;
58
+ }
59
+ return tokens.some((token) => token.tokenAddress.toLowerCase() === senderAddress ||
60
+ (token.adaptorAddress && token.adaptorAddress.toLowerCase() === senderAddress));
61
+ }
62
+ export function findTokenForMessage(message, tokens) {
63
+ const srcEid = message.pathway?.srcEid;
64
+ const srcChain = message.pathway?.sender?.chain?.toLowerCase();
65
+ return tokens.find((token) => {
66
+ if (srcEid && token.eid && Number(token.eid) === Number(srcEid)) {
67
+ return true;
68
+ }
69
+ if (srcChain && token.label.toLowerCase() === srcChain) {
70
+ return true;
71
+ }
72
+ return false;
73
+ });
74
+ }
75
+ //# sourceMappingURL=formatters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatters.js","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/formatters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * LayerZero Scan operations for tracking cross-chain message status.
3
+ */
4
+ export type { LayerZeroScanConfig, CreateReadProvider, WalletMessagesParams, ScanMessagesResponse, LayerZeroScanMessage, LayerZeroEndpoint, LayerZeroStage, LayerZeroTxInfo, LayerZeroTxOptions, LayerZeroDestination, LayerZeroDestinationTx, LayerZeroCompose, LayerZeroComposeTx, BridgeRequestSummary, SendPayloadSummary, ComposeFollowupSummary, LayerZeroMessageSummary, WalletStatusResult, TokenMetadata, FetchWalletStatusParams, } from "./types.js";
5
+ export { fetchWalletMessages, fetchTxMessages, getWalletMessagesUrl } from "./scan.js";
6
+ export { tryDecodeBridgeRequest, decodeSendSummary, fetchOftSentAmount, decorateSendSummary, } from "./codec.js";
7
+ export { endpointChain, destinationTx, summarizeBlock, formatPathway, isMessageForTokens, findTokenForMessage, } from "./formatters.js";
8
+ export { fetchWalletStatus } from "./status.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,EAClB,aAAa,EACb,uBAAuB,GACxB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAGvF,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * LayerZero Scan operations for tracking cross-chain message status.
3
+ */
4
+ // Scan API client
5
+ export { fetchWalletMessages, fetchTxMessages, getWalletMessagesUrl } from "./scan.js";
6
+ // Codec
7
+ export { tryDecodeBridgeRequest, decodeSendSummary, fetchOftSentAmount, decorateSendSummary, } from "./codec.js";
8
+ // Formatters
9
+ export { endpointChain, destinationTx, summarizeBlock, formatPathway, isMessageForTokens, findTokenForMessage, } from "./formatters.js";
10
+ // Status orchestration
11
+ export { fetchWalletStatus } from "./status.js";
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0BH,kBAAkB;AAClB,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AAEvF,QAAQ;AACR,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,aAAa;AACb,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,uBAAuB;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * LayerZero Scan API client.
3
+ *
4
+ * All functions take a `LayerZeroScanConfig` parameter instead of reading
5
+ * from module-level state, making them framework-agnostic and testable.
6
+ */
7
+ import type { LayerZeroScanConfig, LayerZeroScanMessage, ScanMessagesResponse, WalletMessagesParams } from "./types.js";
8
+ /**
9
+ * Build the wallet messages URL for a given address (useful for deep-links).
10
+ */
11
+ export declare function getWalletMessagesUrl(config: LayerZeroScanConfig, address: string): string;
12
+ /**
13
+ * Fetch LayerZero messages for a wallet address.
14
+ */
15
+ export declare function fetchWalletMessages(config: LayerZeroScanConfig, address: string, params?: WalletMessagesParams): Promise<ScanMessagesResponse<LayerZeroScanMessage>>;
16
+ /**
17
+ * Fetch LayerZero messages for a specific transaction hash.
18
+ * Returns `null` when the transaction is not found (404).
19
+ */
20
+ export declare function fetchTxMessages(config: LayerZeroScanConfig, txHash: string): Promise<ScanMessagesResponse<LayerZeroScanMessage> | null>;
21
+ //# sourceMappingURL=scan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/scan.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AA2BpB;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGzF;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,oBAAoB,GAC5B,OAAO,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAC,CAcrD;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAAC,CAe5D"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * LayerZero Scan API client.
3
+ *
4
+ * All functions take a `LayerZeroScanConfig` parameter instead of reading
5
+ * from module-level state, making them framework-agnostic and testable.
6
+ */
7
+ import { HttpClient } from "../../utils/http.js";
8
+ function createClient(config) {
9
+ return new HttpClient(config.baseUrl, {
10
+ defaultHeaders: config.apiKey ? { "x-api-key": config.apiKey } : {},
11
+ });
12
+ }
13
+ function normalizeAddress(address) {
14
+ return address.startsWith("0x") ? address : `0x${address}`;
15
+ }
16
+ function parseScanResponse(raw) {
17
+ const payload = raw;
18
+ return {
19
+ data: payload.data ?? [],
20
+ nextToken: payload.nextToken ?? payload.next_token,
21
+ };
22
+ }
23
+ /**
24
+ * Build the wallet messages URL for a given address (useful for deep-links).
25
+ */
26
+ export function getWalletMessagesUrl(config, address) {
27
+ const client = createClient(config);
28
+ return client.url(`messages/wallet/${normalizeAddress(address)}`);
29
+ }
30
+ /**
31
+ * Fetch LayerZero messages for a wallet address.
32
+ */
33
+ export async function fetchWalletMessages(config, address, params) {
34
+ const client = createClient(config);
35
+ const normalized = normalizeAddress(address);
36
+ const searchParams = new URLSearchParams();
37
+ if (params?.limit)
38
+ searchParams.set("limit", params.limit.toString());
39
+ if (params?.start)
40
+ searchParams.set("start", params.start);
41
+ if (params?.end)
42
+ searchParams.set("end", params.end);
43
+ if (params?.nextToken)
44
+ searchParams.set("nextToken", params.nextToken);
45
+ const query = searchParams.toString();
46
+ const path = `messages/wallet/${normalized}${query ? `?${query}` : ""}`;
47
+ const raw = await client.getJson(path);
48
+ return parseScanResponse(raw);
49
+ }
50
+ /**
51
+ * Fetch LayerZero messages for a specific transaction hash.
52
+ * Returns `null` when the transaction is not found (404).
53
+ */
54
+ export async function fetchTxMessages(config, txHash) {
55
+ if (!txHash) {
56
+ return null;
57
+ }
58
+ const client = createClient(config);
59
+ try {
60
+ const raw = await client.getJson(`messages/tx/${txHash}`);
61
+ return parseScanResponse(raw);
62
+ }
63
+ catch (error) {
64
+ if (error instanceof Error && /404/.test(error.message)) {
65
+ return null;
66
+ }
67
+ throw error;
68
+ }
69
+ }
70
+ //# sourceMappingURL=scan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/scan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Orchestration layer for fetching and decoding LayerZero message status.
3
+ *
4
+ * This is the main entry point — `fetchWalletStatus` aggregates API data,
5
+ * decodes transaction payloads, and resolves compose followup messages.
6
+ */
7
+ import type { FetchWalletStatusParams, WalletStatusResult } from "./types.js";
8
+ /**
9
+ * Fetch and decode LayerZero message history for a wallet.
10
+ *
11
+ * This is the main orchestration function that:
12
+ * 1. Fetches messages from the LayerZero Scan API
13
+ * 2. Optionally filters by token addresses
14
+ * 3. Decodes send payloads and resolves compose followup messages
15
+ */
16
+ export declare function fetchWalletStatus(params: FetchWalletStatusParams): Promise<WalletStatusResult>;
17
+ //# sourceMappingURL=status.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/status.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoBH,OAAO,KAAK,EAGV,uBAAuB,EAMvB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAwKpB;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA8C7B"}
@@ -0,0 +1,178 @@
1
+ /**
2
+ * Orchestration layer for fetching and decoding LayerZero message status.
3
+ *
4
+ * This is the main entry point — `fetchWalletStatus` aggregates API data,
5
+ * decodes transaction payloads, and resolves compose followup messages.
6
+ */
7
+ import { readDecimalConversionRate, readTokenDecimals } from "../../onchain/tokenReads.js";
8
+ import { decodeSendSummary, decorateSendSummary, fetchOftSentAmount, isHexStrict, } from "./codec.js";
9
+ import { destinationTx, endpointChain, findTokenForMessage, formatPathway, isMessageForTokens, summarizeBlock, } from "./formatters.js";
10
+ import { fetchTxMessages, fetchWalletMessages, getWalletMessagesUrl } from "./scan.js";
11
+ // ---------------------------------------------------------------------------
12
+ // Token metadata cache (module-level, same lifetime as the SDK instance)
13
+ // ---------------------------------------------------------------------------
14
+ const tokenMetadataCache = new Map();
15
+ async function fetchTokenMetadata(createReadProvider, token) {
16
+ if (!token?.tokenAddress)
17
+ return null;
18
+ const cacheKey = `${token.chainId}:${token.tokenAddress.toLowerCase()}`;
19
+ const cached = tokenMetadataCache.get(cacheKey);
20
+ if (cached) {
21
+ return cached;
22
+ }
23
+ const promise = (async () => {
24
+ try {
25
+ const provider = createReadProvider(token);
26
+ const [decimalsResult, conversionResult] = await Promise.allSettled([
27
+ readTokenDecimals(provider, token.tokenAddress),
28
+ readDecimalConversionRate(provider, token.tokenAddress),
29
+ ]);
30
+ const decimals = decimalsResult.status === "fulfilled" && decimalsResult.value !== undefined
31
+ ? decimalsResult.value
32
+ : undefined;
33
+ const decimalConversionRate = conversionResult.status === "fulfilled" ? conversionResult.value : undefined;
34
+ return { decimals, decimalConversionRate };
35
+ }
36
+ catch {
37
+ return {};
38
+ }
39
+ })();
40
+ tokenMetadataCache.set(cacheKey, promise);
41
+ return promise;
42
+ }
43
+ // ---------------------------------------------------------------------------
44
+ // Internal decode helpers
45
+ // ---------------------------------------------------------------------------
46
+ async function decodeSendFromMessage(message, tokens, createReadProvider) {
47
+ const token = findTokenForMessage(message, tokens);
48
+ const txHash = message.source?.tx?.txHash;
49
+ if (txHash && token) {
50
+ try {
51
+ const provider = createReadProvider(token);
52
+ if (provider.getTransaction) {
53
+ const tx = await provider.getTransaction({ hash: txHash });
54
+ if (tx?.input && tx.input !== "0x") {
55
+ const summary = decodeSendSummary(tx.input);
56
+ return decorateSendSummary({ ...summary, source: "tx" }, token, (t) => fetchTokenMetadata(createReadProvider, t));
57
+ }
58
+ }
59
+ }
60
+ catch {
61
+ // getTransaction failed — fall through to payload decode below
62
+ }
63
+ }
64
+ const payload = message.source?.tx?.payload;
65
+ if (isHexStrict(payload)) {
66
+ try {
67
+ const summary = decodeSendSummary(payload);
68
+ return decorateSendSummary(summary, token, (t) => fetchTokenMetadata(createReadProvider, t));
69
+ }
70
+ catch (error) {
71
+ return {
72
+ source: "payload",
73
+ error: error instanceof Error ? error.message : String(error),
74
+ };
75
+ }
76
+ }
77
+ return null;
78
+ }
79
+ async function fetchComposeFollowups(message, tokens, createReadProvider, scanConfig) {
80
+ const compose = message.destination?.lzCompose;
81
+ if (!compose?.txs?.length) {
82
+ return [];
83
+ }
84
+ const results = await Promise.allSettled(compose.txs.map(async (tx) => {
85
+ if (!tx.txHash) {
86
+ return null;
87
+ }
88
+ const response = await fetchTxMessages(scanConfig, tx.txHash);
89
+ const followup = response?.data?.[0] ??
90
+ (message.destination?.tx?.txHash
91
+ ? (await fetchTxMessages(scanConfig, message.destination.tx.txHash))?.data?.[0]
92
+ : undefined);
93
+ if (!followup) {
94
+ // Return-leg not yet indexed — treat as not successful
95
+ const srcChain = endpointChain(message.pathway?.receiver);
96
+ const dstChain = endpointChain(message.pathway?.sender);
97
+ return {
98
+ srcChain,
99
+ dstChain,
100
+ sourceTx: tx.txHash,
101
+ destTx: "-",
102
+ success: false,
103
+ };
104
+ }
105
+ const srcChain = endpointChain(followup.pathway?.receiver);
106
+ const dstChain = endpointChain(followup.pathway?.sender);
107
+ const sourceTx = followup.source?.tx?.txHash ?? "-";
108
+ const destTx = destinationTx(followup.destination) ?? "-";
109
+ const delivered = followup.status?.name?.toLowerCase() === "delivered" ||
110
+ followup.destination?.status?.toLowerCase() === "delivered";
111
+ const tokenEntry = findTokenForMessage(followup, tokens);
112
+ const sendSummary = await decodeSendFromMessage(followup, tokens, createReadProvider);
113
+ const oftProvider = tokenEntry ? createReadProvider(tokenEntry) : undefined;
114
+ const oftAmountReceived = oftProvider
115
+ ? await fetchOftSentAmount(oftProvider, tx.txHash)
116
+ : undefined;
117
+ const metadata = tokenEntry ? await fetchTokenMetadata(createReadProvider, tokenEntry) : null;
118
+ return {
119
+ srcChain,
120
+ dstChain,
121
+ sourceTx,
122
+ destTx,
123
+ success: delivered,
124
+ amount: sendSummary?.amount,
125
+ amountSent: sendSummary?.amountSent ?? sendSummary?.amount,
126
+ amountReceived: oftAmountReceived ?? sendSummary?.amountReceived,
127
+ decimals: sendSummary?.decimals ?? metadata?.decimals,
128
+ };
129
+ }));
130
+ return results
131
+ .map((result) => (result.status === "fulfilled" ? result.value : null))
132
+ .filter((value) => value !== null);
133
+ }
134
+ // ---------------------------------------------------------------------------
135
+ // Public API
136
+ // ---------------------------------------------------------------------------
137
+ /**
138
+ * Fetch and decode LayerZero message history for a wallet.
139
+ *
140
+ * This is the main orchestration function that:
141
+ * 1. Fetches messages from the LayerZero Scan API
142
+ * 2. Optionally filters by token addresses
143
+ * 3. Decodes send payloads and resolves compose followup messages
144
+ */
145
+ export async function fetchWalletStatus(params) {
146
+ const { address, tokens, scanConfig, createReadProvider, limit, nextToken, filterByToken } = params;
147
+ const response = await fetchWalletMessages(scanConfig, address, {
148
+ limit,
149
+ nextToken,
150
+ });
151
+ const filteredData = filterByToken
152
+ ? response.data.filter((message) => isMessageForTokens(message, tokens))
153
+ : response.data;
154
+ const items = await Promise.all(filteredData.map(async (message) => {
155
+ const send = await decodeSendFromMessage(message, tokens, createReadProvider);
156
+ const composeFollowups = await fetchComposeFollowups(message, tokens, createReadProvider, scanConfig);
157
+ const sourceTx = message.source?.tx?.txHash;
158
+ const sourceBlock = summarizeBlock(message.source);
159
+ const destTx = destinationTx(message.destination);
160
+ return {
161
+ guid: message.guid,
162
+ pathway: formatPathway(message),
163
+ sourceTx,
164
+ sourceBlock,
165
+ destinationTx: destTx,
166
+ send,
167
+ composeFollowups,
168
+ status: message.status?.name ?? message.destination?.status,
169
+ raw: message,
170
+ };
171
+ }));
172
+ return {
173
+ items,
174
+ nextToken: response.nextToken,
175
+ walletUrl: getWalletMessagesUrl(scanConfig, address),
176
+ };
177
+ }
178
+ //# sourceMappingURL=status.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Type definitions for LayerZero Scan operations.
3
+ */
4
+ import type { EvmReadProvider } from "../../types/evm.js";
5
+ import type { TokenEntry } from "../../registry/types.js";
6
+ /** Configuration for the LayerZero Scan API client. */
7
+ export interface LayerZeroScanConfig {
8
+ /** Base URL for the LayerZero Scan API (e.g. "https://scan.layerzero-api.com/v1/"). */
9
+ baseUrl: string;
10
+ /** Optional API key for authenticated requests. */
11
+ apiKey?: string;
12
+ }
13
+ /** Factory function that creates a read provider for a given token entry. */
14
+ export type CreateReadProvider = (token: TokenEntry) => EvmReadProvider;
15
+ export interface WalletMessagesParams {
16
+ limit?: number;
17
+ start?: string;
18
+ end?: string;
19
+ nextToken?: string;
20
+ }
21
+ export interface ScanMessagesResponse<T> {
22
+ data: T[];
23
+ nextToken?: string;
24
+ }
25
+ export interface LayerZeroScanMessage {
26
+ status?: {
27
+ name?: string;
28
+ message?: string;
29
+ };
30
+ pathway?: {
31
+ srcEid?: number;
32
+ dstEid?: number;
33
+ sender?: LayerZeroEndpoint;
34
+ receiver?: LayerZeroEndpoint;
35
+ id?: string;
36
+ nonce?: number;
37
+ };
38
+ source?: LayerZeroStage;
39
+ destination?: LayerZeroDestination;
40
+ verification?: {
41
+ dvn?: {
42
+ status?: string;
43
+ };
44
+ };
45
+ sealer?: {
46
+ status?: string;
47
+ tx?: LayerZeroTxInfo;
48
+ };
49
+ guid?: string;
50
+ }
51
+ export interface LayerZeroEndpoint {
52
+ address?: string;
53
+ chain?: string;
54
+ }
55
+ export interface LayerZeroStage {
56
+ status?: string;
57
+ tx?: LayerZeroTxInfo;
58
+ }
59
+ export interface LayerZeroTxInfo {
60
+ txHash?: string;
61
+ blockHash?: string;
62
+ blockNumber?: number | string;
63
+ blockTimestamp?: number | string;
64
+ from?: string;
65
+ payload?: string;
66
+ readinessTimestamp?: number | string;
67
+ options?: LayerZeroTxOptions;
68
+ }
69
+ export interface LayerZeroTxOptions {
70
+ lzReceive?: {
71
+ gas?: number | string;
72
+ value?: number | string;
73
+ };
74
+ compose?: Array<{
75
+ index?: number | string;
76
+ gas?: number | string;
77
+ value?: number | string;
78
+ }>;
79
+ ordered?: boolean;
80
+ }
81
+ export interface LayerZeroDestination {
82
+ status?: string;
83
+ tx?: LayerZeroDestinationTx;
84
+ lzCompose?: LayerZeroCompose;
85
+ nativeDrop?: {
86
+ status?: string;
87
+ tx?: LayerZeroDestinationTx;
88
+ };
89
+ payload?: string;
90
+ }
91
+ export interface LayerZeroDestinationTx {
92
+ txHash?: string;
93
+ blockHash?: string;
94
+ blockNumber?: number | string;
95
+ blockTimestamp?: number | string;
96
+ from?: string;
97
+ to?: string;
98
+ }
99
+ export interface LayerZeroCompose {
100
+ txs: LayerZeroComposeTx[];
101
+ status?: string;
102
+ failedTx?: Array<{
103
+ txHash?: string;
104
+ txError?: string;
105
+ }>;
106
+ }
107
+ export interface LayerZeroComposeTx {
108
+ txHash?: string;
109
+ blockHash?: string;
110
+ blockNumber?: number | string;
111
+ blockTimestamp?: number | string;
112
+ from?: string;
113
+ to?: string;
114
+ }
115
+ export interface BridgeRequestSummary {
116
+ dstEid?: number;
117
+ to?: string;
118
+ refundAddress?: string;
119
+ minAmountOut?: bigint;
120
+ }
121
+ export interface SendPayloadSummary {
122
+ dstEid?: number;
123
+ to?: string;
124
+ amount?: bigint;
125
+ minAmount?: bigint;
126
+ compose?: BridgeRequestSummary | null;
127
+ source: "tx" | "payload";
128
+ error?: string;
129
+ amountSent?: bigint;
130
+ amountReceived?: bigint;
131
+ decimals?: number;
132
+ decimalConversionRate?: bigint;
133
+ }
134
+ export interface ComposeFollowupSummary {
135
+ srcChain: string;
136
+ dstChain: string;
137
+ sourceTx: string;
138
+ destTx: string;
139
+ success: boolean;
140
+ amount?: bigint;
141
+ amountSent?: bigint;
142
+ amountReceived?: bigint;
143
+ decimals?: number;
144
+ }
145
+ export interface LayerZeroMessageSummary {
146
+ guid?: string;
147
+ pathway?: {
148
+ src?: string;
149
+ dst?: string;
150
+ nonce?: number;
151
+ srcEid?: number;
152
+ dstEid?: number;
153
+ };
154
+ sourceTx?: string;
155
+ sourceBlock?: string;
156
+ destinationTx?: string;
157
+ send?: SendPayloadSummary | null;
158
+ composeFollowups?: ComposeFollowupSummary[];
159
+ status?: string;
160
+ raw: LayerZeroScanMessage;
161
+ }
162
+ export interface WalletStatusResult {
163
+ items: LayerZeroMessageSummary[];
164
+ nextToken?: string;
165
+ walletUrl: string;
166
+ }
167
+ export interface TokenMetadata {
168
+ decimals?: number;
169
+ decimalConversionRate?: bigint;
170
+ }
171
+ /** Parameters for the top-level `fetchWalletStatus` function. */
172
+ export interface FetchWalletStatusParams {
173
+ address: string;
174
+ tokens: TokenEntry[];
175
+ scanConfig: LayerZeroScanConfig;
176
+ createReadProvider: CreateReadProvider;
177
+ limit?: number;
178
+ nextToken?: string;
179
+ filterByToken?: boolean;
180
+ }
181
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for LayerZero Scan operations.
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/operations/layerzeroScan/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Re-export from layerzeroScan module.
3
+ */
4
+ export * from "./layerzeroScan/index.js";
5
+ //# sourceMappingURL=layerzeroScan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layerzeroScan.d.ts","sourceRoot":"","sources":["../../src/operations/layerzeroScan.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Re-export from layerzeroScan module.
3
+ */
4
+ export * from "./layerzeroScan/index.js";
5
+ //# sourceMappingURL=layerzeroScan.js.map