@wormhole-foundation/sdk-connect 0.5.0-beta.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 (427) hide show
  1. package/dist/cjs/circle-api.d.ts +16 -0
  2. package/dist/cjs/circle-api.d.ts.map +1 -0
  3. package/dist/cjs/circle-api.js +47 -0
  4. package/dist/cjs/circle-api.js.map +1 -0
  5. package/dist/cjs/common.d.ts +4 -0
  6. package/dist/cjs/common.d.ts.map +1 -0
  7. package/dist/cjs/common.js +40 -0
  8. package/dist/cjs/common.js.map +1 -0
  9. package/dist/cjs/config.d.ts +34 -0
  10. package/dist/cjs/config.d.ts.map +1 -0
  11. package/dist/cjs/config.js +52 -0
  12. package/dist/cjs/config.js.map +1 -0
  13. package/dist/cjs/index.d.ts +15 -0
  14. package/dist/cjs/index.d.ts.map +1 -0
  15. package/dist/cjs/index.js +45 -0
  16. package/dist/cjs/index.js.map +1 -0
  17. package/dist/cjs/protocols/cctp/cctpTransfer.d.ts +41 -0
  18. package/dist/cjs/protocols/cctp/cctpTransfer.d.ts.map +1 -0
  19. package/dist/cjs/protocols/cctp/cctpTransfer.js +459 -0
  20. package/dist/cjs/protocols/cctp/cctpTransfer.js.map +1 -0
  21. package/dist/cjs/protocols/cctp/index.d.ts +2 -0
  22. package/dist/cjs/protocols/cctp/index.d.ts.map +1 -0
  23. package/dist/cjs/protocols/cctp/index.js +18 -0
  24. package/dist/cjs/protocols/cctp/index.js.map +1 -0
  25. package/dist/cjs/protocols/cctpTransfer.d.ts +41 -0
  26. package/dist/cjs/protocols/cctpTransfer.d.ts.map +1 -0
  27. package/dist/cjs/protocols/cctpTransfer.js +459 -0
  28. package/dist/cjs/protocols/cctpTransfer.js.map +1 -0
  29. package/dist/cjs/protocols/gateway/gatewayTransfer.d.ts +38 -0
  30. package/dist/cjs/protocols/gateway/gatewayTransfer.d.ts.map +1 -0
  31. package/dist/cjs/protocols/gateway/gatewayTransfer.js +360 -0
  32. package/dist/cjs/protocols/gateway/gatewayTransfer.js.map +1 -0
  33. package/dist/cjs/protocols/gateway/index.d.ts +2 -0
  34. package/dist/cjs/protocols/gateway/index.d.ts.map +1 -0
  35. package/dist/cjs/protocols/gateway/index.js +18 -0
  36. package/dist/cjs/protocols/gateway/index.js.map +1 -0
  37. package/dist/cjs/protocols/gatewayTransfer.d.ts +40 -0
  38. package/dist/cjs/protocols/gatewayTransfer.d.ts.map +1 -0
  39. package/dist/cjs/protocols/gatewayTransfer.js +406 -0
  40. package/dist/cjs/protocols/gatewayTransfer.js.map +1 -0
  41. package/dist/cjs/protocols/index.d.ts +5 -0
  42. package/dist/cjs/protocols/index.d.ts.map +1 -0
  43. package/dist/cjs/protocols/index.js +21 -0
  44. package/dist/cjs/protocols/index.js.map +1 -0
  45. package/dist/cjs/protocols/tokenBridge/automatic.d.ts +16 -0
  46. package/dist/cjs/protocols/tokenBridge/automatic.d.ts.map +1 -0
  47. package/dist/cjs/protocols/tokenBridge/automatic.js +77 -0
  48. package/dist/cjs/protocols/tokenBridge/automatic.js.map +1 -0
  49. package/dist/cjs/protocols/tokenBridge/index.d.ts +5 -0
  50. package/dist/cjs/protocols/tokenBridge/index.d.ts.map +1 -0
  51. package/dist/cjs/protocols/tokenBridge/index.js +21 -0
  52. package/dist/cjs/protocols/tokenBridge/index.js.map +1 -0
  53. package/dist/cjs/protocols/tokenBridge/manual.d.ts +16 -0
  54. package/dist/cjs/protocols/tokenBridge/manual.d.ts.map +1 -0
  55. package/dist/cjs/protocols/tokenBridge/manual.js +77 -0
  56. package/dist/cjs/protocols/tokenBridge/manual.js.map +1 -0
  57. package/dist/cjs/protocols/tokenBridge/tokenTransfer.d.ts +20 -0
  58. package/dist/cjs/protocols/tokenBridge/tokenTransfer.d.ts.map +1 -0
  59. package/dist/cjs/protocols/tokenBridge/tokenTransfer.js +24 -0
  60. package/dist/cjs/protocols/tokenBridge/tokenTransfer.js.map +1 -0
  61. package/dist/cjs/protocols/tokenBridge/utils.d.ts +25 -0
  62. package/dist/cjs/protocols/tokenBridge/utils.d.ts.map +1 -0
  63. package/dist/cjs/protocols/tokenBridge/utils.js +331 -0
  64. package/dist/cjs/protocols/tokenBridge/utils.js.map +1 -0
  65. package/dist/cjs/protocols/tokenTransfer.d.ts +40 -0
  66. package/dist/cjs/protocols/tokenTransfer.d.ts.map +1 -0
  67. package/dist/cjs/protocols/tokenTransfer.js +472 -0
  68. package/dist/cjs/protocols/tokenTransfer.js.map +1 -0
  69. package/dist/cjs/protocols/tokenbridge/automatic.d.ts +16 -0
  70. package/dist/cjs/protocols/tokenbridge/automatic.d.ts.map +1 -0
  71. package/dist/cjs/protocols/tokenbridge/automatic.js +76 -0
  72. package/dist/cjs/protocols/tokenbridge/automatic.js.map +1 -0
  73. package/dist/cjs/protocols/tokenbridge/index.d.ts +2 -0
  74. package/dist/cjs/protocols/tokenbridge/index.d.ts.map +1 -0
  75. package/dist/cjs/protocols/tokenbridge/index.js +18 -0
  76. package/dist/cjs/protocols/tokenbridge/index.js.map +1 -0
  77. package/dist/cjs/protocols/tokenbridge/manual.d.ts +16 -0
  78. package/dist/cjs/protocols/tokenbridge/manual.d.ts.map +1 -0
  79. package/dist/cjs/protocols/tokenbridge/manual.js +76 -0
  80. package/dist/cjs/protocols/tokenbridge/manual.js.map +1 -0
  81. package/dist/cjs/protocols/tokenbridge/tokenTransfer.d.ts +37 -0
  82. package/dist/cjs/protocols/tokenbridge/tokenTransfer.d.ts.map +1 -0
  83. package/dist/cjs/protocols/tokenbridge/tokenTransfer.js +345 -0
  84. package/dist/cjs/protocols/tokenbridge/tokenTransfer.js.map +1 -0
  85. package/dist/cjs/protocols/wormholeTransfer.d.ts +20 -0
  86. package/dist/cjs/protocols/wormholeTransfer.d.ts.map +1 -0
  87. package/dist/cjs/protocols/wormholeTransfer.js +3 -0
  88. package/dist/cjs/protocols/wormholeTransfer.js.map +1 -0
  89. package/dist/cjs/quote.d.ts +17 -0
  90. package/dist/cjs/quote.d.ts.map +1 -0
  91. package/dist/cjs/quote.js +3 -0
  92. package/dist/cjs/quote.js.map +1 -0
  93. package/dist/cjs/receipt.d.ts +51 -0
  94. package/dist/cjs/receipt.d.ts.map +1 -0
  95. package/dist/cjs/receipt.js +31 -0
  96. package/dist/cjs/receipt.js.map +1 -0
  97. package/dist/cjs/routes/automaticTokenBridgeRoute.d.ts +28 -0
  98. package/dist/cjs/routes/automaticTokenBridgeRoute.d.ts.map +1 -0
  99. package/dist/cjs/routes/automaticTokenBridgeRoute.js +82 -0
  100. package/dist/cjs/routes/automaticTokenBridgeRoute.js.map +1 -0
  101. package/dist/cjs/routes/cctp/automatic.d.ts +46 -0
  102. package/dist/cjs/routes/cctp/automatic.d.ts.map +1 -0
  103. package/dist/cjs/routes/cctp/automatic.js +135 -0
  104. package/dist/cjs/routes/cctp/automatic.js.map +1 -0
  105. package/dist/cjs/routes/cctp/index.d.ts +3 -0
  106. package/dist/cjs/routes/cctp/index.d.ts.map +1 -0
  107. package/dist/cjs/routes/cctp/index.js +19 -0
  108. package/dist/cjs/routes/cctp/index.js.map +1 -0
  109. package/dist/cjs/routes/cctp/manual.d.ts +43 -0
  110. package/dist/cjs/routes/cctp/manual.d.ts.map +1 -0
  111. package/dist/cjs/routes/cctp/manual.js +113 -0
  112. package/dist/cjs/routes/cctp/manual.js.map +1 -0
  113. package/dist/cjs/routes/common.d.ts +13 -0
  114. package/dist/cjs/routes/common.d.ts.map +1 -0
  115. package/dist/cjs/routes/common.js +45 -0
  116. package/dist/cjs/routes/common.js.map +1 -0
  117. package/dist/cjs/routes/index.d.ts +9 -0
  118. package/dist/cjs/routes/index.d.ts.map +1 -0
  119. package/dist/cjs/routes/index.js +25 -0
  120. package/dist/cjs/routes/index.js.map +1 -0
  121. package/dist/cjs/routes/mock/automatic.d.ts +25 -0
  122. package/dist/cjs/routes/mock/automatic.d.ts.map +1 -0
  123. package/dist/cjs/routes/mock/automatic.js +88 -0
  124. package/dist/cjs/routes/mock/automatic.js.map +1 -0
  125. package/dist/cjs/routes/mock/index.d.ts +3 -0
  126. package/dist/cjs/routes/mock/index.d.ts.map +1 -0
  127. package/dist/cjs/routes/mock/index.js +19 -0
  128. package/dist/cjs/routes/mock/index.js.map +1 -0
  129. package/dist/cjs/routes/mock/manual.d.ts +24 -0
  130. package/dist/cjs/routes/mock/manual.d.ts.map +1 -0
  131. package/dist/cjs/routes/mock/manual.js +87 -0
  132. package/dist/cjs/routes/mock/manual.js.map +1 -0
  133. package/dist/cjs/routes/portico/automatic.d.ts +68 -0
  134. package/dist/cjs/routes/portico/automatic.d.ts.map +1 -0
  135. package/dist/cjs/routes/portico/automatic.js +208 -0
  136. package/dist/cjs/routes/portico/automatic.js.map +1 -0
  137. package/dist/cjs/routes/portico/index.d.ts +2 -0
  138. package/dist/cjs/routes/portico/index.d.ts.map +1 -0
  139. package/dist/cjs/routes/portico/index.js +18 -0
  140. package/dist/cjs/routes/portico/index.js.map +1 -0
  141. package/dist/cjs/routes/portico/manual.d.ts +61 -0
  142. package/dist/cjs/routes/portico/manual.d.ts.map +1 -0
  143. package/dist/cjs/routes/portico/manual.js +141 -0
  144. package/dist/cjs/routes/portico/manual.js.map +1 -0
  145. package/dist/cjs/routes/portico/porticoRoute.d.ts +56 -0
  146. package/dist/cjs/routes/portico/porticoRoute.d.ts.map +1 -0
  147. package/dist/cjs/routes/portico/porticoRoute.js +160 -0
  148. package/dist/cjs/routes/portico/porticoRoute.js.map +1 -0
  149. package/dist/cjs/routes/portico/protocol/abis.d.ts +4 -0
  150. package/dist/cjs/routes/portico/protocol/abis.d.ts.map +1 -0
  151. package/dist/cjs/routes/portico/protocol/abis.js +12 -0
  152. package/dist/cjs/routes/portico/protocol/abis.js.map +1 -0
  153. package/dist/cjs/routes/portico/protocol/consts.d.ts +18 -0
  154. package/dist/cjs/routes/portico/protocol/consts.d.ts.map +1 -0
  155. package/dist/cjs/routes/portico/protocol/consts.js +48 -0
  156. package/dist/cjs/routes/portico/protocol/consts.js.map +1 -0
  157. package/dist/cjs/routes/portico/protocol/porticoBridge.d.ts +17 -0
  158. package/dist/cjs/routes/portico/protocol/porticoBridge.d.ts.map +1 -0
  159. package/dist/cjs/routes/portico/protocol/porticoBridge.js +119 -0
  160. package/dist/cjs/routes/portico/protocol/porticoBridge.js.map +1 -0
  161. package/dist/cjs/routes/portico/protocol/types.d.ts +88 -0
  162. package/dist/cjs/routes/portico/protocol/types.d.ts.map +1 -0
  163. package/dist/cjs/routes/portico/protocol/types.js +3 -0
  164. package/dist/cjs/routes/portico/protocol/types.js.map +1 -0
  165. package/dist/cjs/routes/portico/protocol/utils.d.ts +18 -0
  166. package/dist/cjs/routes/portico/protocol/utils.d.ts.map +1 -0
  167. package/dist/cjs/routes/portico/protocol/utils.js +167 -0
  168. package/dist/cjs/routes/portico/protocol/utils.js.map +1 -0
  169. package/dist/cjs/routes/portico/utils.d.ts +1 -0
  170. package/dist/cjs/routes/portico/utils.d.ts.map +1 -0
  171. package/dist/cjs/routes/portico/utils.js +2 -0
  172. package/dist/cjs/routes/portico/utils.js.map +1 -0
  173. package/dist/cjs/routes/request.d.ts +25 -0
  174. package/dist/cjs/routes/request.d.ts.map +1 -0
  175. package/dist/cjs/routes/request.js +65 -0
  176. package/dist/cjs/routes/request.js.map +1 -0
  177. package/dist/cjs/routes/resolver.d.ts +15 -0
  178. package/dist/cjs/routes/resolver.d.ts.map +1 -0
  179. package/dist/cjs/routes/resolver.js +87 -0
  180. package/dist/cjs/routes/resolver.js.map +1 -0
  181. package/dist/cjs/routes/route.d.ts +46 -0
  182. package/dist/cjs/routes/route.d.ts.map +1 -0
  183. package/dist/cjs/routes/route.js +34 -0
  184. package/dist/cjs/routes/route.js.map +1 -0
  185. package/dist/cjs/routes/token.d.ts +12 -0
  186. package/dist/cjs/routes/token.d.ts.map +1 -0
  187. package/dist/cjs/routes/token.js +37 -0
  188. package/dist/cjs/routes/token.js.map +1 -0
  189. package/dist/cjs/routes/tokenBridge/automatic.d.ts +46 -0
  190. package/dist/cjs/routes/tokenBridge/automatic.d.ts.map +1 -0
  191. package/dist/cjs/routes/tokenBridge/automatic.js +145 -0
  192. package/dist/cjs/routes/tokenBridge/automatic.js.map +1 -0
  193. package/dist/cjs/routes/tokenBridge/index.d.ts +3 -0
  194. package/dist/cjs/routes/tokenBridge/index.d.ts.map +1 -0
  195. package/dist/cjs/routes/tokenBridge/index.js +19 -0
  196. package/dist/cjs/routes/tokenBridge/index.js.map +1 -0
  197. package/dist/cjs/routes/tokenBridge/manual.d.ts +42 -0
  198. package/dist/cjs/routes/tokenBridge/manual.d.ts.map +1 -0
  199. package/dist/cjs/routes/tokenBridge/manual.js +87 -0
  200. package/dist/cjs/routes/tokenBridge/manual.js.map +1 -0
  201. package/dist/cjs/routes/tokenBridgeRoute.d.ts +25 -0
  202. package/dist/cjs/routes/tokenBridgeRoute.d.ts.map +1 -0
  203. package/dist/cjs/routes/tokenBridgeRoute.js +78 -0
  204. package/dist/cjs/routes/tokenBridgeRoute.js.map +1 -0
  205. package/dist/cjs/routes/types.d.ts +44 -0
  206. package/dist/cjs/routes/types.d.ts.map +1 -0
  207. package/dist/cjs/routes/types.js +3 -0
  208. package/dist/cjs/routes/types.js.map +1 -0
  209. package/dist/cjs/tasks.d.ts +7 -0
  210. package/dist/cjs/tasks.d.ts.map +1 -0
  211. package/dist/cjs/tasks.js +65 -0
  212. package/dist/cjs/tasks.js.map +1 -0
  213. package/dist/cjs/types.d.ts +73 -0
  214. package/dist/cjs/types.d.ts.map +1 -0
  215. package/dist/cjs/types.js +35 -0
  216. package/dist/cjs/types.js.map +1 -0
  217. package/dist/cjs/whscan-api.d.ts +172 -0
  218. package/dist/cjs/whscan-api.d.ts.map +1 -0
  219. package/dist/cjs/whscan-api.js +243 -0
  220. package/dist/cjs/whscan-api.js.map +1 -0
  221. package/dist/cjs/wormhole.d.ts +198 -0
  222. package/dist/cjs/wormhole.d.ts.map +1 -0
  223. package/dist/cjs/wormhole.js +324 -0
  224. package/dist/cjs/wormhole.js.map +1 -0
  225. package/dist/cjs/wormholeTransfer.d.ts +78 -0
  226. package/dist/cjs/wormholeTransfer.d.ts.map +1 -0
  227. package/dist/cjs/wormholeTransfer.js +27 -0
  228. package/dist/cjs/wormholeTransfer.js.map +1 -0
  229. package/dist/esm/circle-api.d.ts +16 -0
  230. package/dist/esm/circle-api.d.ts.map +1 -0
  231. package/dist/esm/circle-api.js +39 -0
  232. package/dist/esm/circle-api.js.map +1 -0
  233. package/dist/esm/common.d.ts +4 -0
  234. package/dist/esm/common.d.ts.map +1 -0
  235. package/dist/esm/common.js +36 -0
  236. package/dist/esm/common.js.map +1 -0
  237. package/dist/esm/config.d.ts +34 -0
  238. package/dist/esm/config.d.ts.map +1 -0
  239. package/dist/esm/config.js +47 -0
  240. package/dist/esm/config.js.map +1 -0
  241. package/dist/esm/index.d.ts +15 -0
  242. package/dist/esm/index.d.ts.map +1 -0
  243. package/dist/esm/index.js +16 -0
  244. package/dist/esm/index.js.map +1 -0
  245. package/dist/esm/protocols/cctp/cctpTransfer.d.ts +41 -0
  246. package/dist/esm/protocols/cctp/cctpTransfer.d.ts.map +1 -0
  247. package/dist/esm/protocols/cctp/cctpTransfer.js +455 -0
  248. package/dist/esm/protocols/cctp/cctpTransfer.js.map +1 -0
  249. package/dist/esm/protocols/cctp/index.d.ts +2 -0
  250. package/dist/esm/protocols/cctp/index.d.ts.map +1 -0
  251. package/dist/esm/protocols/cctp/index.js +2 -0
  252. package/dist/esm/protocols/cctp/index.js.map +1 -0
  253. package/dist/esm/protocols/cctpTransfer.d.ts +41 -0
  254. package/dist/esm/protocols/cctpTransfer.d.ts.map +1 -0
  255. package/dist/esm/protocols/cctpTransfer.js +455 -0
  256. package/dist/esm/protocols/cctpTransfer.js.map +1 -0
  257. package/dist/esm/protocols/gateway/gatewayTransfer.d.ts +38 -0
  258. package/dist/esm/protocols/gateway/gatewayTransfer.d.ts.map +1 -0
  259. package/dist/esm/protocols/gateway/gatewayTransfer.js +356 -0
  260. package/dist/esm/protocols/gateway/gatewayTransfer.js.map +1 -0
  261. package/dist/esm/protocols/gateway/index.d.ts +2 -0
  262. package/dist/esm/protocols/gateway/index.d.ts.map +1 -0
  263. package/dist/esm/protocols/gateway/index.js +2 -0
  264. package/dist/esm/protocols/gateway/index.js.map +1 -0
  265. package/dist/esm/protocols/gatewayTransfer.d.ts +40 -0
  266. package/dist/esm/protocols/gatewayTransfer.d.ts.map +1 -0
  267. package/dist/esm/protocols/gatewayTransfer.js +402 -0
  268. package/dist/esm/protocols/gatewayTransfer.js.map +1 -0
  269. package/dist/esm/protocols/index.d.ts +5 -0
  270. package/dist/esm/protocols/index.d.ts.map +1 -0
  271. package/dist/esm/protocols/index.js +5 -0
  272. package/dist/esm/protocols/index.js.map +1 -0
  273. package/dist/esm/protocols/tokenBridge/automatic.d.ts +16 -0
  274. package/dist/esm/protocols/tokenBridge/automatic.d.ts.map +1 -0
  275. package/dist/esm/protocols/tokenBridge/automatic.js +73 -0
  276. package/dist/esm/protocols/tokenBridge/automatic.js.map +1 -0
  277. package/dist/esm/protocols/tokenBridge/index.d.ts +5 -0
  278. package/dist/esm/protocols/tokenBridge/index.d.ts.map +1 -0
  279. package/dist/esm/protocols/tokenBridge/index.js +5 -0
  280. package/dist/esm/protocols/tokenBridge/index.js.map +1 -0
  281. package/dist/esm/protocols/tokenBridge/manual.d.ts +16 -0
  282. package/dist/esm/protocols/tokenBridge/manual.d.ts.map +1 -0
  283. package/dist/esm/protocols/tokenBridge/manual.js +73 -0
  284. package/dist/esm/protocols/tokenBridge/manual.js.map +1 -0
  285. package/dist/esm/protocols/tokenBridge/tokenTransfer.d.ts +20 -0
  286. package/dist/esm/protocols/tokenBridge/tokenTransfer.d.ts.map +1 -0
  287. package/dist/esm/protocols/tokenBridge/tokenTransfer.js +20 -0
  288. package/dist/esm/protocols/tokenBridge/tokenTransfer.js.map +1 -0
  289. package/dist/esm/protocols/tokenBridge/utils.d.ts +25 -0
  290. package/dist/esm/protocols/tokenBridge/utils.d.ts.map +1 -0
  291. package/dist/esm/protocols/tokenBridge/utils.js +323 -0
  292. package/dist/esm/protocols/tokenBridge/utils.js.map +1 -0
  293. package/dist/esm/protocols/tokenTransfer.d.ts +40 -0
  294. package/dist/esm/protocols/tokenTransfer.d.ts.map +1 -0
  295. package/dist/esm/protocols/tokenTransfer.js +468 -0
  296. package/dist/esm/protocols/tokenTransfer.js.map +1 -0
  297. package/dist/esm/protocols/tokenbridge/automatic.d.ts +16 -0
  298. package/dist/esm/protocols/tokenbridge/automatic.d.ts.map +1 -0
  299. package/dist/esm/protocols/tokenbridge/automatic.js +72 -0
  300. package/dist/esm/protocols/tokenbridge/automatic.js.map +1 -0
  301. package/dist/esm/protocols/tokenbridge/index.d.ts +2 -0
  302. package/dist/esm/protocols/tokenbridge/index.d.ts.map +1 -0
  303. package/dist/esm/protocols/tokenbridge/index.js +2 -0
  304. package/dist/esm/protocols/tokenbridge/index.js.map +1 -0
  305. package/dist/esm/protocols/tokenbridge/manual.d.ts +16 -0
  306. package/dist/esm/protocols/tokenbridge/manual.d.ts.map +1 -0
  307. package/dist/esm/protocols/tokenbridge/manual.js +72 -0
  308. package/dist/esm/protocols/tokenbridge/manual.js.map +1 -0
  309. package/dist/esm/protocols/tokenbridge/tokenTransfer.d.ts +37 -0
  310. package/dist/esm/protocols/tokenbridge/tokenTransfer.d.ts.map +1 -0
  311. package/dist/esm/protocols/tokenbridge/tokenTransfer.js +337 -0
  312. package/dist/esm/protocols/tokenbridge/tokenTransfer.js.map +1 -0
  313. package/dist/esm/protocols/wormholeTransfer.d.ts +20 -0
  314. package/dist/esm/protocols/wormholeTransfer.d.ts.map +1 -0
  315. package/dist/esm/protocols/wormholeTransfer.js +2 -0
  316. package/dist/esm/protocols/wormholeTransfer.js.map +1 -0
  317. package/dist/esm/routes/automaticTokenBridgeRoute.d.ts +28 -0
  318. package/dist/esm/routes/automaticTokenBridgeRoute.d.ts.map +1 -0
  319. package/dist/esm/routes/automaticTokenBridgeRoute.js +78 -0
  320. package/dist/esm/routes/automaticTokenBridgeRoute.js.map +1 -0
  321. package/dist/esm/routes/cctp/automatic.d.ts +46 -0
  322. package/dist/esm/routes/cctp/automatic.d.ts.map +1 -0
  323. package/dist/esm/routes/cctp/automatic.js +131 -0
  324. package/dist/esm/routes/cctp/automatic.js.map +1 -0
  325. package/dist/esm/routes/cctp/index.d.ts +3 -0
  326. package/dist/esm/routes/cctp/index.d.ts.map +1 -0
  327. package/dist/esm/routes/cctp/index.js +3 -0
  328. package/dist/esm/routes/cctp/index.js.map +1 -0
  329. package/dist/esm/routes/cctp/manual.d.ts +43 -0
  330. package/dist/esm/routes/cctp/manual.d.ts.map +1 -0
  331. package/dist/esm/routes/cctp/manual.js +109 -0
  332. package/dist/esm/routes/cctp/manual.js.map +1 -0
  333. package/dist/esm/routes/common.d.ts +13 -0
  334. package/dist/esm/routes/common.d.ts.map +1 -0
  335. package/dist/esm/routes/common.js +41 -0
  336. package/dist/esm/routes/common.js.map +1 -0
  337. package/dist/esm/routes/index.d.ts +9 -0
  338. package/dist/esm/routes/index.d.ts.map +1 -0
  339. package/dist/esm/routes/index.js +9 -0
  340. package/dist/esm/routes/index.js.map +1 -0
  341. package/dist/esm/routes/mock/automatic.d.ts +25 -0
  342. package/dist/esm/routes/mock/automatic.d.ts.map +1 -0
  343. package/dist/esm/routes/mock/automatic.js +84 -0
  344. package/dist/esm/routes/mock/automatic.js.map +1 -0
  345. package/dist/esm/routes/mock/index.d.ts +3 -0
  346. package/dist/esm/routes/mock/index.d.ts.map +1 -0
  347. package/dist/esm/routes/mock/index.js +3 -0
  348. package/dist/esm/routes/mock/index.js.map +1 -0
  349. package/dist/esm/routes/mock/manual.d.ts +24 -0
  350. package/dist/esm/routes/mock/manual.d.ts.map +1 -0
  351. package/dist/esm/routes/mock/manual.js +83 -0
  352. package/dist/esm/routes/mock/manual.js.map +1 -0
  353. package/dist/esm/routes/portico/automatic.d.ts +68 -0
  354. package/dist/esm/routes/portico/automatic.d.ts.map +1 -0
  355. package/dist/esm/routes/portico/automatic.js +204 -0
  356. package/dist/esm/routes/portico/automatic.js.map +1 -0
  357. package/dist/esm/routes/portico/index.d.ts +2 -0
  358. package/dist/esm/routes/portico/index.d.ts.map +1 -0
  359. package/dist/esm/routes/portico/index.js +2 -0
  360. package/dist/esm/routes/portico/index.js.map +1 -0
  361. package/dist/esm/routes/portico/manual.d.ts +61 -0
  362. package/dist/esm/routes/portico/manual.d.ts.map +1 -0
  363. package/dist/esm/routes/portico/manual.js +137 -0
  364. package/dist/esm/routes/portico/manual.js.map +1 -0
  365. package/dist/esm/routes/portico/utils.d.ts +1 -0
  366. package/dist/esm/routes/portico/utils.d.ts.map +1 -0
  367. package/dist/esm/routes/portico/utils.js +2 -0
  368. package/dist/esm/routes/portico/utils.js.map +1 -0
  369. package/dist/esm/routes/request.d.ts +25 -0
  370. package/dist/esm/routes/request.d.ts.map +1 -0
  371. package/dist/esm/routes/request.js +61 -0
  372. package/dist/esm/routes/request.js.map +1 -0
  373. package/dist/esm/routes/resolver.d.ts +15 -0
  374. package/dist/esm/routes/resolver.d.ts.map +1 -0
  375. package/dist/esm/routes/resolver.js +83 -0
  376. package/dist/esm/routes/resolver.js.map +1 -0
  377. package/dist/esm/routes/route.d.ts +46 -0
  378. package/dist/esm/routes/route.d.ts.map +1 -0
  379. package/dist/esm/routes/route.js +26 -0
  380. package/dist/esm/routes/route.js.map +1 -0
  381. package/dist/esm/routes/token.d.ts +12 -0
  382. package/dist/esm/routes/token.d.ts.map +1 -0
  383. package/dist/esm/routes/token.js +31 -0
  384. package/dist/esm/routes/token.js.map +1 -0
  385. package/dist/esm/routes/tokenBridge/automatic.d.ts +46 -0
  386. package/dist/esm/routes/tokenBridge/automatic.d.ts.map +1 -0
  387. package/dist/esm/routes/tokenBridge/automatic.js +141 -0
  388. package/dist/esm/routes/tokenBridge/automatic.js.map +1 -0
  389. package/dist/esm/routes/tokenBridge/index.d.ts +3 -0
  390. package/dist/esm/routes/tokenBridge/index.d.ts.map +1 -0
  391. package/dist/esm/routes/tokenBridge/index.js +3 -0
  392. package/dist/esm/routes/tokenBridge/index.js.map +1 -0
  393. package/dist/esm/routes/tokenBridge/manual.d.ts +42 -0
  394. package/dist/esm/routes/tokenBridge/manual.d.ts.map +1 -0
  395. package/dist/esm/routes/tokenBridge/manual.js +83 -0
  396. package/dist/esm/routes/tokenBridge/manual.js.map +1 -0
  397. package/dist/esm/routes/tokenBridgeRoute.d.ts +25 -0
  398. package/dist/esm/routes/tokenBridgeRoute.d.ts.map +1 -0
  399. package/dist/esm/routes/tokenBridgeRoute.js +74 -0
  400. package/dist/esm/routes/tokenBridgeRoute.js.map +1 -0
  401. package/dist/esm/routes/types.d.ts +44 -0
  402. package/dist/esm/routes/types.d.ts.map +1 -0
  403. package/dist/esm/routes/types.js +2 -0
  404. package/dist/esm/routes/types.js.map +1 -0
  405. package/dist/esm/tasks.d.ts +7 -0
  406. package/dist/esm/tasks.d.ts.map +1 -0
  407. package/dist/esm/tasks.js +59 -0
  408. package/dist/esm/tasks.js.map +1 -0
  409. package/dist/esm/types.d.ts +73 -0
  410. package/dist/esm/types.d.ts.map +1 -0
  411. package/dist/esm/types.js +27 -0
  412. package/dist/esm/types.js.map +1 -0
  413. package/dist/esm/whscan-api.d.ts +172 -0
  414. package/dist/esm/whscan-api.d.ts.map +1 -0
  415. package/dist/esm/whscan-api.js +222 -0
  416. package/dist/esm/whscan-api.js.map +1 -0
  417. package/dist/esm/wormhole.d.ts +198 -0
  418. package/dist/esm/wormhole.d.ts.map +1 -0
  419. package/dist/esm/wormhole.js +320 -0
  420. package/dist/esm/wormhole.js.map +1 -0
  421. package/dist/esm/wormholeTransfer.d.ts +78 -0
  422. package/dist/esm/wormholeTransfer.d.ts.map +1 -0
  423. package/dist/esm/wormholeTransfer.js +21 -0
  424. package/dist/esm/wormholeTransfer.js.map +1 -0
  425. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  426. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  427. package/package.json +51 -0
@@ -0,0 +1,459 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CircleTransfer = void 0;
4
+ const sdk_base_1 = require("@wormhole-foundation/sdk-base");
5
+ const sdk_definitions_1 = require("@wormhole-foundation/sdk-definitions");
6
+ const common_1 = require("../../common");
7
+ const config_1 = require("../../config");
8
+ const types_1 = require("../../types");
9
+ const wormhole_1 = require("../../wormhole");
10
+ class CircleTransfer {
11
+ wh;
12
+ fromChain;
13
+ toChain;
14
+ // state machine tracker
15
+ _state;
16
+ // transfer details
17
+ transfer;
18
+ // Populated after Initialized
19
+ txids = [];
20
+ attestations;
21
+ constructor(wh, transfer, fromChain, toChain) {
22
+ this._state = types_1.TransferState.Created;
23
+ this.wh = wh;
24
+ this.transfer = transfer;
25
+ this.fromChain = fromChain ?? wh.getChain(transfer.from.chain);
26
+ this.toChain = toChain ?? wh.getChain(transfer.to.chain);
27
+ }
28
+ getTransferState() {
29
+ return this._state;
30
+ }
31
+ static async from(wh, from, timeout = config_1.DEFAULT_TASK_TIMEOUT, fromChain, toChain) {
32
+ // This is a new transfer, just return the object
33
+ if ((0, sdk_definitions_1.isCircleTransferDetails)(from)) {
34
+ return new CircleTransfer(wh, from, fromChain, toChain);
35
+ }
36
+ // This is an existing transfer, fetch the details
37
+ let tt;
38
+ if ((0, sdk_definitions_1.isWormholeMessageId)(from)) {
39
+ tt = await CircleTransfer.fromWormholeMessageId(wh, from, timeout);
40
+ }
41
+ else if ((0, sdk_definitions_1.isTransactionIdentifier)(from)) {
42
+ tt = await CircleTransfer.fromTransaction(wh, from, timeout, fromChain);
43
+ }
44
+ else if ((0, sdk_definitions_1.isCircleMessageId)(from)) {
45
+ tt = await CircleTransfer.fromCircleMessage(wh, from);
46
+ }
47
+ else {
48
+ throw new Error("Invalid `from` parameter for CircleTransfer");
49
+ }
50
+ tt.fromChain = fromChain ?? wh.getChain(tt.transfer.from.chain);
51
+ tt.toChain = toChain ?? wh.getChain(tt.transfer.to.chain);
52
+ await tt.fetchAttestation(timeout);
53
+ return tt;
54
+ }
55
+ // init from the seq id
56
+ static async fromWormholeMessageId(wh, from, timeout) {
57
+ const { chain, emitter } = from;
58
+ const vaa = await CircleTransfer.getTransferVaa(wh, from);
59
+ const rcvAddress = vaa.payload.mintRecipient;
60
+ const rcvChain = sdk_base_1.circle.toCircleChain(wh.network, vaa.payload.targetDomain);
61
+ // Check if its a payload 3 targeted at a relayer on the destination chain
62
+ const { wormholeRelayer } = wh.config.chains[rcvChain].contracts.cctp;
63
+ let automatic = false;
64
+ if (wormholeRelayer) {
65
+ const relayerAddress = wormhole_1.Wormhole.chainAddress(chain, wormholeRelayer).address.toUniversalAddress();
66
+ automatic = vaa.payloadName === "TransferWithRelay" && rcvAddress.equals(relayerAddress);
67
+ }
68
+ const details = {
69
+ from: { chain: from.chain, address: vaa.payload.caller },
70
+ to: { chain: rcvChain, address: rcvAddress },
71
+ amount: vaa.payload.token.amount,
72
+ automatic,
73
+ };
74
+ const tt = new CircleTransfer(wh, details);
75
+ tt.attestations = [{ id: { emitter, sequence: vaa.sequence, chain: chain }, attestation: vaa }];
76
+ tt._state = types_1.TransferState.Attested;
77
+ return tt;
78
+ }
79
+ static async fromCircleMessage(wh, message) {
80
+ const [msg, hash] = sdk_definitions_1.CircleBridge.deserialize(sdk_base_1.encoding.hex.decode(message));
81
+ const { payload: burnMessage } = msg;
82
+ const xferSender = burnMessage.messageSender;
83
+ const xferReceiver = burnMessage.mintRecipient;
84
+ const sendChain = sdk_base_1.circle.toCircleChain(wh.network, msg.sourceDomain);
85
+ const rcvChain = sdk_base_1.circle.toCircleChain(wh.network, msg.destinationDomain);
86
+ const details = {
87
+ from: { chain: sendChain, address: xferSender },
88
+ to: { chain: rcvChain, address: xferReceiver },
89
+ amount: burnMessage.amount,
90
+ automatic: false,
91
+ };
92
+ const xfer = new CircleTransfer(wh, details);
93
+ xfer.attestations = [{ id: { hash }, attestation: { message: msg } }];
94
+ xfer._state = types_1.TransferState.SourceInitiated;
95
+ return xfer;
96
+ }
97
+ // init from source tx hash
98
+ static async fromTransaction(wh, from, timeout, fromChain) {
99
+ const { chain, txid } = from;
100
+ fromChain = fromChain ?? wh.getChain(chain);
101
+ // First try to parse out a WormholeMessage
102
+ // If we get one or more, we assume its a Wormhole attested
103
+ // transfer
104
+ const msgIds = await fromChain.parseTransaction(txid);
105
+ // If we found a VAA message, use it
106
+ let ct;
107
+ if (msgIds.length > 0) {
108
+ ct = await CircleTransfer.fromWormholeMessageId(wh, msgIds[0], timeout);
109
+ }
110
+ else {
111
+ // Otherwise try to parse out a circle message
112
+ const cb = await fromChain.getCircleBridge();
113
+ const circleMessage = await cb.parseTransactionDetails(txid);
114
+ const details = {
115
+ ...circleMessage,
116
+ // Note: assuming automatic is false since we didn't find a VAA
117
+ automatic: false,
118
+ };
119
+ ct = new CircleTransfer(wh, details);
120
+ ct.attestations = [{ id: circleMessage.id, attestation: { message: circleMessage.message } }];
121
+ }
122
+ ct._state = types_1.TransferState.SourceInitiated;
123
+ ct.txids = [from];
124
+ return ct;
125
+ }
126
+ // start the WormholeTransfer by submitting transactions to the source chain
127
+ // returns a transaction hash
128
+ async initiateTransfer(signer) {
129
+ /*
130
+ 0) check that the current `state` is valid to call this (eg: state == Created)
131
+ 1) get a token transfer transaction for the token bridge given the context
132
+ 2) sign it given the signer
133
+ 3) submit it to chain
134
+ 4) return transaction id
135
+ */
136
+ if (this._state !== types_1.TransferState.Created)
137
+ throw new Error("Invalid state transition in `start`");
138
+ this.txids = await CircleTransfer.transfer(this.fromChain, this.transfer, signer);
139
+ this._state = types_1.TransferState.SourceInitiated;
140
+ return this.txids.map(({ txid }) => txid);
141
+ }
142
+ static async transfer(fromChain, transfer, signer) {
143
+ let xfer;
144
+ if (transfer.automatic) {
145
+ const cr = await fromChain.getAutomaticCircleBridge();
146
+ xfer = cr.transfer(transfer.from.address, { chain: transfer.to.chain, address: transfer.to.address }, transfer.amount, transfer.nativeGas);
147
+ }
148
+ else {
149
+ const cb = await fromChain.getCircleBridge();
150
+ xfer = cb.transfer(transfer.from.address, { chain: transfer.to.chain, address: transfer.to.address }, transfer.amount);
151
+ }
152
+ return await (0, common_1.signSendWait)(fromChain, xfer, signer);
153
+ }
154
+ async _fetchWormholeAttestation(timeout) {
155
+ let attestations = (this.attestations ?? []);
156
+ if (!attestations || attestations.length == 0)
157
+ throw new Error("No VAA details available");
158
+ // Check if we already have the VAA
159
+ for (const idx in attestations) {
160
+ if (attestations[idx].attestation)
161
+ continue;
162
+ attestations[idx].attestation = await CircleTransfer.getTransferVaa(this.wh, attestations[idx].id, timeout);
163
+ }
164
+ this.attestations = attestations;
165
+ return attestations.map((v) => v.id);
166
+ }
167
+ async _fetchCircleAttestation(timeout) {
168
+ let attestations = (this.attestations ?? []);
169
+ if (!attestations || attestations.length == 0) {
170
+ // If we dont have any circle attestations yet, we need to start by
171
+ // fetching the transaction details from the source chain
172
+ if (this.txids.length === 0)
173
+ throw new Error("No circle attestations or transactions to fetch");
174
+ // The last tx should be the circle transfer, its possible there was
175
+ // a contract spend approval transaction
176
+ const txid = this.txids[this.txids?.length - 1];
177
+ const fromChain = this.wh.getChain(this.transfer.from.chain);
178
+ const cb = await fromChain.getCircleBridge();
179
+ const circleMessage = await cb.parseTransactionDetails(txid.txid);
180
+ attestations = [{ id: circleMessage.id, attestation: { message: circleMessage.message } }];
181
+ }
182
+ for (const idx in attestations) {
183
+ const ca = attestations[idx];
184
+ if (ca.attestation?.attestation)
185
+ continue; // already got it
186
+ const attestation = await this.wh.getCircleAttestation(ca.id.hash, timeout);
187
+ if (attestation === null)
188
+ throw new Error("No attestation available after timeout exhausted");
189
+ attestations[idx].attestation.attestation = attestation;
190
+ }
191
+ this.attestations = attestations;
192
+ return attestations.map((v) => v.id);
193
+ }
194
+ // wait for the VAA to be ready
195
+ // returns the sequence number
196
+ async fetchAttestation(timeout) {
197
+ /*
198
+ 0) check that the current `state` is valid to call this (eg: state == Started)
199
+ 1) poll the api on an interval to check if the VAA is available
200
+ 2) Once available, pull the VAA and parse it
201
+ 3) return seq
202
+ */
203
+ if (this._state < types_1.TransferState.SourceInitiated || this._state > types_1.TransferState.Attested)
204
+ throw new Error("Invalid state transition in `fetchAttestation`");
205
+ const ids = this.transfer.automatic
206
+ ? (await Promise.all([
207
+ this._fetchWormholeAttestation(timeout),
208
+ this._fetchCircleAttestation(timeout),
209
+ ])).flat()
210
+ : await this._fetchCircleAttestation(timeout);
211
+ this._state = types_1.TransferState.Attested;
212
+ return ids;
213
+ }
214
+ // finish the WormholeTransfer by submitting transactions to the destination chain
215
+ // returns a transaction hash
216
+ async completeTransfer(signer) {
217
+ /*
218
+ 0) check that the current `state` is valid to call this (eg: state == Ready)
219
+ 1) prepare the transactions and sign them given the signer
220
+ 2) submit the VAA and transactions on chain
221
+ 3) return txid of submission
222
+ */
223
+ if (this._state < types_1.TransferState.Attested)
224
+ throw new Error("Invalid state transition in `finish`");
225
+ // If its automatic, this does not need to be called
226
+ if (this.transfer.automatic) {
227
+ if (!this.attestations)
228
+ throw new Error("No VAA details available");
229
+ const vaa = this.attestations.find((a) => (0, sdk_definitions_1.isWormholeMessageId)(a.id));
230
+ if (!vaa)
231
+ throw new Error("No VAA found");
232
+ //const tb = await toChain.getAutomaticCircleBridge();
233
+ //const xfer = tb.redeem(vaa);
234
+ //const txids = await signSendWait(toChain, xfer, signer);
235
+ throw new Error("No method to redeem auto circle bridge tx (yet)");
236
+ }
237
+ if (!this.attestations)
238
+ throw new Error("No Circle Attestations found");
239
+ const circleAttestations = this.attestations.filter((a) => (0, sdk_definitions_1.isCircleMessageId)(a.id));
240
+ if (circleAttestations.length > 1)
241
+ throw new Error(`Expected a single circle attestation, found ${circleAttestations.length}`);
242
+ const { id, attestation } = circleAttestations[0];
243
+ if (!attestation)
244
+ throw new Error(`No Circle Attestation for ${id.hash}`);
245
+ const { message, attestation: signatures } = attestation;
246
+ if (!signatures)
247
+ throw new Error(`No Circle Attestation for ${id.hash}`);
248
+ const tb = await this.toChain.getCircleBridge();
249
+ const xfer = tb.redeem(this.transfer.to.address, message, signatures);
250
+ const txids = await (0, common_1.signSendWait)(this.toChain, xfer, signer);
251
+ this.txids?.push(...txids);
252
+ return txids.map(({ txid }) => txid);
253
+ }
254
+ static async quoteTransfer(srcChain, dstChain, transfer) {
255
+ const dstUsdcAddress = sdk_base_1.circle.usdcContract.get(dstChain.network, dstChain.chain);
256
+ if (!dstUsdcAddress)
257
+ throw "Invalid transfer, no USDC contract on destination";
258
+ const srcUsdcAddress = sdk_base_1.circle.usdcContract.get(srcChain.network, srcChain.chain);
259
+ if (!srcUsdcAddress)
260
+ throw "Invalid transfer, no USDC contract on source";
261
+ const dstToken = wormhole_1.Wormhole.chainAddress(dstChain.chain, dstUsdcAddress);
262
+ const srcToken = wormhole_1.Wormhole.chainAddress(srcChain.chain, srcUsdcAddress);
263
+ if (!transfer.automatic) {
264
+ return {
265
+ sourceToken: { token: srcToken, amount: transfer.amount },
266
+ destinationToken: { token: dstToken, amount: transfer.amount },
267
+ };
268
+ }
269
+ // Otherwise automatic
270
+ let dstAmount = transfer.amount;
271
+ // If a native gas dropoff is requested, remove that from the amount they'll get
272
+ const _nativeGas = transfer.nativeGas ? transfer.nativeGas : 0n;
273
+ dstAmount -= _nativeGas;
274
+ // The fee is also removed from the amount transferred
275
+ // quoted on the source chain
276
+ const stb = await srcChain.getAutomaticCircleBridge();
277
+ const fee = await stb.getRelayerFee(dstChain.chain);
278
+ dstAmount -= fee;
279
+ // The expected destination gas can be pulled from the destination token bridge
280
+ let destinationNativeGas = 0n;
281
+ if (transfer.nativeGas) {
282
+ const dtb = await dstChain.getAutomaticTokenBridge();
283
+ destinationNativeGas = await dtb.nativeTokenAmount(dstToken.address, _nativeGas);
284
+ }
285
+ return {
286
+ sourceToken: {
287
+ token: srcToken,
288
+ amount: transfer.amount,
289
+ },
290
+ destinationToken: { token: dstToken, amount: dstAmount },
291
+ relayFee: { token: srcToken, amount: fee },
292
+ destinationNativeGas,
293
+ };
294
+ }
295
+ static async isTransferComplete(toChain, attestation) {
296
+ if (!sdk_definitions_1.CircleBridge.isCircleAttestation(attestation))
297
+ throw new Error("Must check for completion with circle message");
298
+ const cb = await toChain.getCircleBridge();
299
+ return cb.isTransferCompleted(attestation.message);
300
+ }
301
+ static async getTransferVaa(wh, wormholeMessageId, timeout) {
302
+ const vaa = await wh.getVaa(wormholeMessageId, "AutomaticCircleBridge:TransferWithRelay", timeout);
303
+ if (!vaa)
304
+ throw new Error(`No VAA available after timeout exhausted`);
305
+ return vaa;
306
+ }
307
+ static async getTransferMessage(fromChain, txid) {
308
+ const cb = await fromChain.getCircleBridge();
309
+ const circleMessage = await cb.parseTransactionDetails(txid);
310
+ return circleMessage;
311
+ }
312
+ static getReceipt(xfer) {
313
+ const { from, to } = xfer.transfer;
314
+ // This attestation may be either the auto relay vaa or the circle attestation
315
+ // depending on the request
316
+ let receipt = {
317
+ from: from.chain,
318
+ to: to.chain,
319
+ state: types_1.TransferState.Created,
320
+ };
321
+ const originTxs = xfer.txids.filter((txid) => txid.chain === xfer.transfer.from.chain);
322
+ if (originTxs.length > 0) {
323
+ receipt = {
324
+ ...receipt,
325
+ state: types_1.TransferState.SourceInitiated,
326
+ originTxs,
327
+ };
328
+ }
329
+ const att = xfer.attestations?.filter((a) => (0, sdk_definitions_1.isWormholeMessageId)(a.id)) ?? [];
330
+ const ctt = xfer.attestations?.filter((a) => (0, sdk_definitions_1.isCircleMessageId)(a.id)) ?? [];
331
+ const attestation = ctt.length > 0 ? ctt[0] : att.length > 0 ? att[0] : undefined;
332
+ if (attestation) {
333
+ if (attestation.id) {
334
+ receipt = {
335
+ ...receipt,
336
+ state: types_1.TransferState.SourceFinalized,
337
+ attestation: attestation,
338
+ };
339
+ if (attestation.attestation) {
340
+ receipt = {
341
+ ...receipt,
342
+ state: types_1.TransferState.Attested,
343
+ attestation: { id: attestation.id, attestation: attestation.attestation },
344
+ };
345
+ }
346
+ }
347
+ }
348
+ const destinationTxs = xfer.txids.filter((txid) => txid.chain === xfer.transfer.to.chain);
349
+ if (destinationTxs.length > 0) {
350
+ receipt = {
351
+ ...receipt,
352
+ state: types_1.TransferState.DestinationInitiated,
353
+ destinationTxs,
354
+ };
355
+ }
356
+ return receipt;
357
+ }
358
+ // AsyncGenerator fn that produces status updates through an async generator
359
+ // eventually producing a receipt
360
+ // can be called repeatedly so the receipt is updated as it moves through the
361
+ // steps of the transfer
362
+ static async *track(wh, receipt, timeout = config_1.DEFAULT_TASK_TIMEOUT,
363
+ // Optional parameters to override chain context (typically for custom rpc)
364
+ _fromChain, _toChain) {
365
+ const start = Date.now();
366
+ const leftover = (start, max) => Math.max(max - (Date.now() - start), 0);
367
+ _fromChain = _fromChain ?? wh.getChain(receipt.from);
368
+ _toChain = _toChain ?? wh.getChain(receipt.to);
369
+ // Check the source chain for initiation transaction
370
+ // and capture the message id
371
+ if ((0, types_1.isSourceInitiated)(receipt)) {
372
+ if (receipt.originTxs.length === 0)
373
+ throw "Invalid state transition: no originating transactions";
374
+ const initTx = receipt.originTxs[receipt.originTxs.length - 1];
375
+ const msg = await CircleTransfer.getTransferMessage(_fromChain, initTx.txid);
376
+ receipt = {
377
+ ...receipt,
378
+ attestation: { id: msg.id, attestation: { message: msg.message } },
379
+ state: types_1.TransferState.SourceFinalized,
380
+ };
381
+ yield receipt;
382
+ }
383
+ if ((0, types_1.isSourceFinalized)(receipt)) {
384
+ if (!receipt.attestation)
385
+ throw "Invalid state transition: no attestation id";
386
+ if ((0, sdk_definitions_1.isWormholeMessageId)(receipt.attestation.id)) {
387
+ // Automatic tx
388
+ // we need to get the attestation so we can deliver it
389
+ // we can use the message id we parsed out of the logs, if we have them
390
+ // or try to fetch it from the last origin transaction
391
+ let vaa = receipt.attestation.attestation ? receipt.attestation.attestation : undefined;
392
+ if (!vaa) {
393
+ vaa = await CircleTransfer.getTransferVaa(wh, receipt.attestation.id, leftover(start, timeout));
394
+ receipt = {
395
+ ...receipt,
396
+ attestation: { id: receipt.attestation.id, attestation: vaa },
397
+ state: types_1.TransferState.Attested,
398
+ };
399
+ yield receipt;
400
+ }
401
+ }
402
+ else if ((0, sdk_definitions_1.isCircleMessageId)(receipt.attestation.id)) {
403
+ // Manual tx
404
+ const attestation = await wh.getCircleAttestation(receipt.attestation.id.hash, timeout);
405
+ const initTx = receipt.originTxs[receipt.originTxs.length - 1];
406
+ const cb = await _fromChain.getCircleBridge();
407
+ const message = await cb.parseTransactionDetails(initTx.txid);
408
+ if (attestation) {
409
+ receipt = {
410
+ ...receipt,
411
+ attestation: {
412
+ id: receipt.attestation.id,
413
+ attestation: {
414
+ attestation,
415
+ message: message.message,
416
+ },
417
+ },
418
+ state: types_1.TransferState.Attested,
419
+ };
420
+ yield receipt;
421
+ }
422
+ }
423
+ }
424
+ // First try to grab the tx status from the API
425
+ // Note: this requires a subsequent async step on the backend
426
+ // to have the dest txid populated, so it may be delayed by some time
427
+ if ((0, types_1.isAttested)(receipt) || (0, types_1.isSourceFinalized)(receipt)) {
428
+ if (!receipt.attestation)
429
+ throw "Invalid state transition";
430
+ if ((0, sdk_definitions_1.isWormholeMessageId)(receipt.attestation.id)) {
431
+ const txStatus = await wh.getTransactionStatus(receipt.attestation.id, leftover(start, timeout));
432
+ if (txStatus && txStatus.globalTx?.destinationTx?.txHash) {
433
+ const { chainId, txHash } = txStatus.globalTx.destinationTx;
434
+ receipt = {
435
+ ...receipt,
436
+ destinationTxs: [{ chain: (0, sdk_base_1.toChain)(chainId), txid: txHash }],
437
+ state: types_1.TransferState.DestinationFinalized,
438
+ };
439
+ yield receipt;
440
+ }
441
+ }
442
+ }
443
+ // Fall back to asking the destination chain if this VAA has been redeemed
444
+ // assuming we have the full attestation
445
+ if ((0, types_1.isAttested)(receipt)) {
446
+ const isComplete = await CircleTransfer.isTransferComplete(_toChain, receipt.attestation.attestation);
447
+ if (isComplete) {
448
+ receipt = {
449
+ ...receipt,
450
+ state: types_1.TransferState.DestinationFinalized,
451
+ destinationTxs: [],
452
+ };
453
+ }
454
+ yield receipt;
455
+ }
456
+ }
457
+ }
458
+ exports.CircleTransfer = CircleTransfer;
459
+ //# sourceMappingURL=cctpTransfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cctpTransfer.js","sourceRoot":"","sources":["../../../../src/protocols/cctp/cctpTransfer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from "./cctpTransfer";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/protocols/cctp/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cctpTransfer"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/protocols/cctp/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA+B"}
@@ -0,0 +1,41 @@
1
+ import { Chain, Network } from "@wormhole-foundation/sdk-base";
2
+ import { Attestation, AttestationId, AutomaticCircleBridge, ChainContext, CircleTransferDetails, Signer, TransactionId, TxHash, WormholeMessageId } from "@wormhole-foundation/sdk-definitions";
3
+ import { AttestationReceipt, TransferQuote, TransferReceipt, TransferState } from "../types";
4
+ import { Wormhole } from "../wormhole";
5
+ import { WormholeTransfer } from "./wormholeTransfer";
6
+ type CircleTransferProtocol = "CircleBridge" | "AutomaticCircleBridge";
7
+ export type CircleAttestationReceipt = AttestationReceipt<CircleTransferProtocol>;
8
+ export type CircleTransferReceipt<SC extends Chain = Chain, DC extends Chain = Chain> = TransferReceipt<CircleAttestationReceipt, SC, DC>;
9
+ export declare class CircleTransfer<N extends Network = Network> implements WormholeTransfer<CircleTransferProtocol> {
10
+ private readonly wh;
11
+ fromChain: ChainContext<N, Chain>;
12
+ toChain: ChainContext<N, Chain>;
13
+ private _state;
14
+ transfer: CircleTransferDetails;
15
+ txids: TransactionId[];
16
+ attestations?: AttestationReceipt<CircleTransferProtocol>[];
17
+ private constructor();
18
+ getTransferState(): TransferState;
19
+ static from<N extends Network>(wh: Wormhole<N>, from: CircleTransferDetails, timeout?: number, fromChain?: ChainContext<N, Chain>, toChain?: ChainContext<N, Chain>): Promise<CircleTransfer<N>>;
20
+ static from<N extends Network>(wh: Wormhole<N>, from: WormholeMessageId, timeout?: number, fromChain?: ChainContext<N, Chain>, toChain?: ChainContext<N, Chain>): Promise<CircleTransfer<N>>;
21
+ static from<N extends Network>(wh: Wormhole<N>, from: string, // CircleMessage hex encoded
22
+ timeout?: number, fromChain?: ChainContext<N, Chain>, toChain?: ChainContext<N, Chain>): Promise<CircleTransfer<N>>;
23
+ static from<N extends Network>(wh: Wormhole<N>, from: TransactionId, timeout?: number, fromChain?: ChainContext<N, Chain>, toChain?: ChainContext<N, Chain>): Promise<CircleTransfer<N>>;
24
+ private static fromWormholeMessageId;
25
+ private static fromCircleMessage;
26
+ private static fromTransaction;
27
+ initiateTransfer(signer: Signer): Promise<TxHash[]>;
28
+ static transfer<N extends Network, C extends Chain = Chain>(fromChain: ChainContext<N, C>, transfer: CircleTransferDetails, signer: Signer<N, Chain>): Promise<TransactionId[]>;
29
+ private _fetchWormholeAttestation;
30
+ private _fetchCircleAttestation;
31
+ fetchAttestation(timeout?: number): Promise<AttestationId[]>;
32
+ completeTransfer(signer: Signer): Promise<TxHash[]>;
33
+ static quoteTransfer<N extends Network>(srcChain: ChainContext<N, Chain>, dstChain: ChainContext<N, Chain>, transfer: CircleTransferDetails): Promise<TransferQuote>;
34
+ static isTransferComplete<N extends Network>(toChain: ChainContext<N, Chain>, attestation: Attestation<CircleTransferProtocol>): Promise<boolean>;
35
+ static getTransferVaa<N extends Network>(wh: Wormhole<N>, wormholeMessageId: WormholeMessageId, timeout?: number): Promise<AutomaticCircleBridge.VAA>;
36
+ static getTransferMessage<N extends Network>(fromChain: ChainContext<N, Chain>, txid: TxHash): Promise<import("@wormhole-foundation/sdk-definitions").CircleTransferMessage>;
37
+ static getReceipt<N extends Network>(xfer: CircleTransfer<N>): CircleTransferReceipt;
38
+ static track<N extends Network, SC extends Chain, DC extends Chain>(wh: Wormhole<N>, receipt: CircleTransferReceipt<SC, DC>, timeout?: number, _fromChain?: ChainContext<N, SC>, _toChain?: ChainContext<N, DC>): AsyncGenerator<CircleTransferReceipt<SC, DC>>;
39
+ }
40
+ export {};
41
+ //# sourceMappingURL=cctpTransfer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cctpTransfer.d.ts","sourceRoot":"","sources":["../../../src/protocols/cctpTransfer.ts"],"names":[],"mappings":"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"}