@wormhole-foundation/sdk-definitions 0.3.0-beta.12 → 0.3.0-beta.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (403) hide show
  1. package/dist/cjs/address.d.ts +31 -0
  2. package/dist/cjs/address.d.ts.map +1 -0
  3. package/dist/cjs/address.js +42 -0
  4. package/dist/cjs/address.js.map +1 -0
  5. package/dist/cjs/attestation.d.ts +36 -0
  6. package/dist/cjs/attestation.d.ts.map +1 -0
  7. package/dist/cjs/attestation.js +23 -0
  8. package/dist/cjs/attestation.js.map +1 -0
  9. package/dist/cjs/chain.d.ts +47 -0
  10. package/dist/cjs/chain.d.ts.map +1 -0
  11. package/dist/cjs/chain.js +115 -0
  12. package/dist/cjs/chain.js.map +1 -0
  13. package/dist/cjs/contracts.d.ts +13 -0
  14. package/dist/cjs/contracts.d.ts.map +1 -0
  15. package/dist/cjs/contracts.js +25 -0
  16. package/dist/cjs/contracts.js.map +1 -0
  17. package/dist/cjs/index.d.ts +27 -0
  18. package/dist/cjs/index.d.ts.map +1 -0
  19. package/dist/cjs/index.js +57 -0
  20. package/dist/cjs/index.js.map +1 -0
  21. package/dist/cjs/layout-items/amount.d.ts +5 -0
  22. package/dist/cjs/layout-items/amount.d.ts.map +1 -0
  23. package/dist/cjs/layout-items/amount.js +8 -0
  24. package/dist/cjs/layout-items/amount.js.map +1 -0
  25. package/dist/cjs/layout-items/chain.d.ts +137 -0
  26. package/dist/cjs/layout-items/chain.d.ts.map +1 -0
  27. package/dist/cjs/layout-items/chain.js +33 -0
  28. package/dist/cjs/layout-items/chain.js.map +1 -0
  29. package/dist/cjs/layout-items/circle.d.ts +14 -0
  30. package/dist/cjs/layout-items/circle.d.ts.map +1 -0
  31. package/dist/cjs/layout-items/circle.js +17 -0
  32. package/dist/cjs/layout-items/circle.js.map +1 -0
  33. package/dist/cjs/layout-items/guardianSet.d.ts +5 -0
  34. package/dist/cjs/layout-items/guardianSet.d.ts.map +1 -0
  35. package/dist/cjs/layout-items/guardianSet.js +8 -0
  36. package/dist/cjs/layout-items/guardianSet.js.map +1 -0
  37. package/dist/cjs/layout-items/index.d.ts +9 -0
  38. package/dist/cjs/layout-items/index.d.ts.map +1 -0
  39. package/dist/cjs/layout-items/index.js +25 -0
  40. package/dist/cjs/layout-items/index.js.map +1 -0
  41. package/dist/cjs/layout-items/payloadId.d.ts +8 -0
  42. package/dist/cjs/layout-items/payloadId.d.ts.map +1 -0
  43. package/dist/cjs/layout-items/payloadId.js +12 -0
  44. package/dist/cjs/layout-items/payloadId.js.map +1 -0
  45. package/dist/cjs/layout-items/sequence.d.ts +5 -0
  46. package/dist/cjs/layout-items/sequence.d.ts.map +1 -0
  47. package/dist/cjs/layout-items/sequence.js +8 -0
  48. package/dist/cjs/layout-items/sequence.js.map +1 -0
  49. package/dist/cjs/layout-items/signature.d.ts +10 -0
  50. package/dist/cjs/layout-items/signature.d.ts.map +1 -0
  51. package/dist/cjs/layout-items/signature.js +22 -0
  52. package/dist/cjs/layout-items/signature.js.map +1 -0
  53. package/dist/cjs/layout-items/universalAddress.d.ts +10 -0
  54. package/dist/cjs/layout-items/universalAddress.d.ts.map +1 -0
  55. package/dist/cjs/layout-items/universalAddress.js +13 -0
  56. package/dist/cjs/layout-items/universalAddress.js.map +1 -0
  57. package/dist/cjs/payloads/automaticCircleBridge.d.ts +317 -0
  58. package/dist/cjs/payloads/automaticCircleBridge.d.ts.map +1 -0
  59. package/dist/cjs/payloads/automaticCircleBridge.js +50 -0
  60. package/dist/cjs/payloads/automaticCircleBridge.js.map +1 -0
  61. package/dist/cjs/payloads/automaticTokenBridge.d.ts +117 -0
  62. package/dist/cjs/payloads/automaticTokenBridge.d.ts.map +1 -0
  63. package/dist/cjs/payloads/automaticTokenBridge.js +19 -0
  64. package/dist/cjs/payloads/automaticTokenBridge.js.map +1 -0
  65. package/dist/cjs/payloads/bam.d.ts +376 -0
  66. package/dist/cjs/payloads/bam.d.ts.map +1 -0
  67. package/dist/cjs/payloads/bam.js +40 -0
  68. package/dist/cjs/payloads/bam.js.map +1 -0
  69. package/dist/cjs/payloads/circleBridge.d.ts +187 -0
  70. package/dist/cjs/payloads/circleBridge.d.ts.map +1 -0
  71. package/dist/cjs/payloads/circleBridge.js +35 -0
  72. package/dist/cjs/payloads/circleBridge.js.map +1 -0
  73. package/dist/cjs/payloads/governance.d.ts +589 -0
  74. package/dist/cjs/payloads/governance.d.ts.map +1 -0
  75. package/dist/cjs/payloads/governance.js +192 -0
  76. package/dist/cjs/payloads/governance.js.map +1 -0
  77. package/dist/cjs/payloads/relayer.d.ts +258 -0
  78. package/dist/cjs/payloads/relayer.d.ts.map +1 -0
  79. package/dist/cjs/payloads/relayer.js +72 -0
  80. package/dist/cjs/payloads/relayer.js.map +1 -0
  81. package/dist/cjs/payloads/tokenBridge.d.ts +233 -0
  82. package/dist/cjs/payloads/tokenBridge.d.ts.map +1 -0
  83. package/dist/cjs/payloads/tokenBridge.js +65 -0
  84. package/dist/cjs/payloads/tokenBridge.js.map +1 -0
  85. package/dist/cjs/platform.d.ts +32 -0
  86. package/dist/cjs/platform.d.ts.map +1 -0
  87. package/dist/cjs/platform.js +28 -0
  88. package/dist/cjs/platform.js.map +1 -0
  89. package/dist/cjs/protocol.d.ts +21 -0
  90. package/dist/cjs/protocol.d.ts.map +1 -0
  91. package/dist/cjs/protocol.js +39 -0
  92. package/dist/cjs/protocol.js.map +1 -0
  93. package/dist/cjs/protocols/circleBridge.d.ts +60 -0
  94. package/dist/cjs/protocols/circleBridge.d.ts.map +1 -0
  95. package/dist/cjs/protocols/circleBridge.js +34 -0
  96. package/dist/cjs/protocols/circleBridge.js.map +1 -0
  97. package/dist/cjs/protocols/core.d.ts +13 -0
  98. package/dist/cjs/protocols/core.d.ts.map +1 -0
  99. package/dist/cjs/protocols/core.js +3 -0
  100. package/dist/cjs/protocols/core.js.map +1 -0
  101. package/dist/cjs/protocols/ibc.d.ts +61 -0
  102. package/dist/cjs/protocols/ibc.d.ts.map +1 -0
  103. package/dist/cjs/protocols/ibc.js +78 -0
  104. package/dist/cjs/protocols/ibc.js.map +1 -0
  105. package/dist/cjs/protocols/tokenBridge.d.ts +67 -0
  106. package/dist/cjs/protocols/tokenBridge.d.ts.map +1 -0
  107. package/dist/cjs/protocols/tokenBridge.js +30 -0
  108. package/dist/cjs/protocols/tokenBridge.js.map +1 -0
  109. package/dist/cjs/relayer.d.ts +10 -0
  110. package/dist/cjs/relayer.d.ts.map +1 -0
  111. package/dist/cjs/relayer.js +3 -0
  112. package/dist/cjs/relayer.js.map +1 -0
  113. package/dist/cjs/rpc.d.ts +3 -0
  114. package/dist/cjs/rpc.d.ts.map +1 -0
  115. package/dist/cjs/rpc.js +3 -0
  116. package/dist/cjs/rpc.js.map +1 -0
  117. package/dist/cjs/signature.d.ts +9 -0
  118. package/dist/cjs/signature.d.ts.map +1 -0
  119. package/dist/cjs/signature.js +24 -0
  120. package/dist/cjs/signature.js.map +1 -0
  121. package/dist/cjs/signer.d.ts +19 -0
  122. package/dist/cjs/signer.d.ts.map +1 -0
  123. package/dist/cjs/signer.js +28 -0
  124. package/dist/cjs/signer.js.map +1 -0
  125. package/dist/cjs/testing/index.d.ts +3 -0
  126. package/dist/cjs/testing/index.d.ts.map +1 -0
  127. package/dist/cjs/testing/index.js +29 -0
  128. package/dist/cjs/testing/index.js.map +1 -0
  129. package/dist/cjs/testing/mocks/api.d.ts +7 -0
  130. package/dist/cjs/testing/mocks/api.d.ts.map +1 -0
  131. package/dist/cjs/testing/mocks/api.js +14 -0
  132. package/dist/cjs/testing/mocks/api.js.map +1 -0
  133. package/dist/cjs/testing/mocks/chain.d.ts +7 -0
  134. package/dist/cjs/testing/mocks/chain.d.ts.map +1 -0
  135. package/dist/cjs/testing/mocks/chain.js +15 -0
  136. package/dist/cjs/testing/mocks/chain.js.map +1 -0
  137. package/dist/cjs/testing/mocks/index.d.ts +5 -0
  138. package/dist/cjs/testing/mocks/index.d.ts.map +1 -0
  139. package/dist/cjs/testing/mocks/index.js +21 -0
  140. package/dist/cjs/testing/mocks/index.js.map +1 -0
  141. package/dist/cjs/testing/mocks/platform.d.ts +14 -0
  142. package/dist/cjs/testing/mocks/platform.d.ts.map +1 -0
  143. package/dist/cjs/testing/mocks/platform.js +97 -0
  144. package/dist/cjs/testing/mocks/platform.js.map +1 -0
  145. package/dist/cjs/testing/mocks/rpc.d.ts +7 -0
  146. package/dist/cjs/testing/mocks/rpc.d.ts.map +1 -0
  147. package/dist/cjs/testing/mocks/rpc.js +14 -0
  148. package/dist/cjs/testing/mocks/rpc.js.map +1 -0
  149. package/dist/cjs/testing/mocks/tokenBridge.d.ts +17 -0
  150. package/dist/cjs/testing/mocks/tokenBridge.d.ts.map +1 -0
  151. package/dist/cjs/testing/mocks/tokenBridge.js +41 -0
  152. package/dist/cjs/testing/mocks/tokenBridge.js.map +1 -0
  153. package/dist/cjs/testing/utils/address.d.ts +8 -0
  154. package/dist/cjs/testing/utils/address.d.ts.map +1 -0
  155. package/dist/cjs/testing/utils/address.js +68 -0
  156. package/dist/cjs/testing/utils/address.js.map +1 -0
  157. package/dist/cjs/testing/utils/index.d.ts +3 -0
  158. package/dist/cjs/testing/utils/index.d.ts.map +1 -0
  159. package/dist/cjs/testing/utils/index.js +19 -0
  160. package/dist/cjs/testing/utils/index.js.map +1 -0
  161. package/dist/cjs/testing/utils/vaa.d.ts +10 -0
  162. package/dist/cjs/testing/utils/vaa.d.ts.map +1 -0
  163. package/dist/cjs/testing/utils/vaa.js +16 -0
  164. package/dist/cjs/testing/utils/vaa.js.map +1 -0
  165. package/dist/cjs/types.d.ts +34 -0
  166. package/dist/cjs/types.d.ts.map +1 -0
  167. package/dist/cjs/types.js +45 -0
  168. package/dist/cjs/types.js.map +1 -0
  169. package/dist/cjs/universalAddress.d.ts +18 -0
  170. package/dist/cjs/universalAddress.d.ts.map +1 -0
  171. package/dist/cjs/universalAddress.js +70 -0
  172. package/dist/cjs/universalAddress.js.map +1 -0
  173. package/dist/cjs/unsignedTransaction.d.ts +9 -0
  174. package/dist/cjs/unsignedTransaction.d.ts.map +1 -0
  175. package/dist/cjs/unsignedTransaction.js +3 -0
  176. package/dist/cjs/unsignedTransaction.js.map +1 -0
  177. package/dist/cjs/utils.d.ts +5 -0
  178. package/dist/cjs/utils.d.ts.map +1 -0
  179. package/dist/cjs/utils.js +12 -0
  180. package/dist/cjs/utils.js.map +1 -0
  181. package/dist/cjs/vaa/create.d.ts +8 -0
  182. package/dist/cjs/vaa/create.d.ts.map +1 -0
  183. package/dist/cjs/vaa/create.js +30 -0
  184. package/dist/cjs/vaa/create.js.map +1 -0
  185. package/dist/cjs/vaa/functions.d.ts +32 -0
  186. package/dist/cjs/vaa/functions.d.ts.map +1 -0
  187. package/dist/cjs/vaa/functions.js +130 -0
  188. package/dist/cjs/vaa/functions.js.map +1 -0
  189. package/dist/cjs/vaa/index.d.ts +5 -0
  190. package/dist/cjs/vaa/index.d.ts.map +1 -0
  191. package/dist/cjs/vaa/index.js +17 -0
  192. package/dist/cjs/vaa/index.js.map +1 -0
  193. package/dist/cjs/vaa/registration.d.ts +24 -0
  194. package/dist/cjs/vaa/registration.d.ts.map +1 -0
  195. package/dist/cjs/vaa/registration.js +19 -0
  196. package/dist/cjs/vaa/registration.js.map +1 -0
  197. package/dist/cjs/vaa/vaa.d.ts +141 -0
  198. package/dist/cjs/vaa/vaa.d.ts.map +1 -0
  199. package/dist/cjs/vaa/vaa.js +31 -0
  200. package/dist/cjs/vaa/vaa.js.map +1 -0
  201. package/dist/esm/address.d.ts +31 -0
  202. package/dist/esm/address.d.ts.map +1 -0
  203. package/dist/esm/address.js +35 -0
  204. package/dist/esm/address.js.map +1 -0
  205. package/dist/esm/attestation.d.ts +36 -0
  206. package/dist/esm/attestation.d.ts.map +1 -0
  207. package/dist/esm/attestation.js +17 -0
  208. package/dist/esm/attestation.js.map +1 -0
  209. package/dist/esm/chain.d.ts +47 -0
  210. package/dist/esm/chain.d.ts.map +1 -0
  211. package/dist/esm/chain.js +111 -0
  212. package/dist/esm/chain.js.map +1 -0
  213. package/dist/esm/contracts.d.ts +13 -0
  214. package/dist/esm/contracts.d.ts.map +1 -0
  215. package/dist/esm/contracts.js +21 -0
  216. package/dist/esm/contracts.js.map +1 -0
  217. package/dist/esm/index.d.ts +27 -0
  218. package/dist/esm/index.d.ts.map +1 -0
  219. package/dist/esm/index.js +28 -0
  220. package/dist/esm/index.js.map +1 -0
  221. package/dist/esm/layout-items/amount.d.ts +5 -0
  222. package/dist/esm/layout-items/amount.d.ts.map +1 -0
  223. package/dist/esm/layout-items/amount.js +5 -0
  224. package/dist/esm/layout-items/amount.js.map +1 -0
  225. package/dist/esm/layout-items/chain.d.ts +137 -0
  226. package/dist/esm/layout-items/chain.d.ts.map +1 -0
  227. package/dist/esm/layout-items/chain.js +28 -0
  228. package/dist/esm/layout-items/chain.js.map +1 -0
  229. package/dist/esm/layout-items/circle.d.ts +14 -0
  230. package/dist/esm/layout-items/circle.d.ts.map +1 -0
  231. package/dist/esm/layout-items/circle.js +14 -0
  232. package/dist/esm/layout-items/circle.js.map +1 -0
  233. package/dist/esm/layout-items/guardianSet.d.ts +5 -0
  234. package/dist/esm/layout-items/guardianSet.d.ts.map +1 -0
  235. package/dist/esm/layout-items/guardianSet.js +5 -0
  236. package/dist/esm/layout-items/guardianSet.js.map +1 -0
  237. package/dist/esm/layout-items/index.d.ts +9 -0
  238. package/dist/esm/layout-items/index.d.ts.map +1 -0
  239. package/dist/esm/layout-items/index.js +9 -0
  240. package/dist/esm/layout-items/index.js.map +1 -0
  241. package/dist/esm/layout-items/payloadId.d.ts +8 -0
  242. package/dist/esm/layout-items/payloadId.d.ts.map +1 -0
  243. package/dist/esm/layout-items/payloadId.js +8 -0
  244. package/dist/esm/layout-items/payloadId.js.map +1 -0
  245. package/dist/esm/layout-items/sequence.d.ts +5 -0
  246. package/dist/esm/layout-items/sequence.d.ts.map +1 -0
  247. package/dist/esm/layout-items/sequence.js +5 -0
  248. package/dist/esm/layout-items/sequence.js.map +1 -0
  249. package/dist/esm/layout-items/signature.d.ts +10 -0
  250. package/dist/esm/layout-items/signature.d.ts.map +1 -0
  251. package/dist/esm/layout-items/signature.js +19 -0
  252. package/dist/esm/layout-items/signature.js.map +1 -0
  253. package/dist/esm/layout-items/universalAddress.d.ts +10 -0
  254. package/dist/esm/layout-items/universalAddress.d.ts.map +1 -0
  255. package/dist/esm/layout-items/universalAddress.js +10 -0
  256. package/dist/esm/layout-items/universalAddress.js.map +1 -0
  257. package/dist/esm/payloads/automaticCircleBridge.d.ts +317 -0
  258. package/dist/esm/payloads/automaticCircleBridge.d.ts.map +1 -0
  259. package/dist/esm/payloads/automaticCircleBridge.js +45 -0
  260. package/dist/esm/payloads/automaticCircleBridge.js.map +1 -0
  261. package/dist/esm/payloads/automaticTokenBridge.d.ts +117 -0
  262. package/dist/esm/payloads/automaticTokenBridge.d.ts.map +1 -0
  263. package/dist/esm/payloads/automaticTokenBridge.js +16 -0
  264. package/dist/esm/payloads/automaticTokenBridge.js.map +1 -0
  265. package/dist/esm/payloads/bam.d.ts +376 -0
  266. package/dist/esm/payloads/bam.d.ts.map +1 -0
  267. package/dist/esm/payloads/bam.js +34 -0
  268. package/dist/esm/payloads/bam.js.map +1 -0
  269. package/dist/esm/payloads/circleBridge.d.ts +187 -0
  270. package/dist/esm/payloads/circleBridge.d.ts.map +1 -0
  271. package/dist/esm/payloads/circleBridge.js +32 -0
  272. package/dist/esm/payloads/circleBridge.js.map +1 -0
  273. package/dist/esm/payloads/governance.d.ts +589 -0
  274. package/dist/esm/payloads/governance.d.ts.map +1 -0
  275. package/dist/esm/payloads/governance.js +190 -0
  276. package/dist/esm/payloads/governance.js.map +1 -0
  277. package/dist/esm/payloads/relayer.d.ts +258 -0
  278. package/dist/esm/payloads/relayer.d.ts.map +1 -0
  279. package/dist/esm/payloads/relayer.js +70 -0
  280. package/dist/esm/payloads/relayer.js.map +1 -0
  281. package/dist/esm/payloads/tokenBridge.d.ts +233 -0
  282. package/dist/esm/payloads/tokenBridge.d.ts.map +1 -0
  283. package/dist/esm/payloads/tokenBridge.js +61 -0
  284. package/dist/esm/payloads/tokenBridge.js.map +1 -0
  285. package/dist/esm/platform.d.ts +32 -0
  286. package/dist/esm/platform.d.ts.map +1 -0
  287. package/dist/esm/platform.js +24 -0
  288. package/dist/esm/platform.js.map +1 -0
  289. package/dist/esm/protocol.d.ts +21 -0
  290. package/dist/esm/protocol.d.ts.map +1 -0
  291. package/dist/esm/protocol.js +32 -0
  292. package/dist/esm/protocol.js.map +1 -0
  293. package/dist/esm/protocols/circleBridge.d.ts +60 -0
  294. package/dist/esm/protocols/circleBridge.d.ts.map +1 -0
  295. package/dist/esm/protocols/circleBridge.js +30 -0
  296. package/dist/esm/protocols/circleBridge.js.map +1 -0
  297. package/dist/esm/protocols/core.d.ts +13 -0
  298. package/dist/esm/protocols/core.d.ts.map +1 -0
  299. package/dist/esm/protocols/core.js +2 -0
  300. package/dist/esm/protocols/core.js.map +1 -0
  301. package/dist/esm/protocols/ibc.d.ts +61 -0
  302. package/dist/esm/protocols/ibc.d.ts.map +1 -0
  303. package/dist/esm/protocols/ibc.js +67 -0
  304. package/dist/esm/protocols/ibc.js.map +1 -0
  305. package/dist/esm/protocols/tokenBridge.d.ts +67 -0
  306. package/dist/esm/protocols/tokenBridge.d.ts.map +1 -0
  307. package/dist/esm/protocols/tokenBridge.js +25 -0
  308. package/dist/esm/protocols/tokenBridge.js.map +1 -0
  309. package/dist/esm/relayer.d.ts +10 -0
  310. package/dist/esm/relayer.d.ts.map +1 -0
  311. package/dist/esm/relayer.js +2 -0
  312. package/dist/esm/relayer.js.map +1 -0
  313. package/dist/esm/rpc.d.ts +3 -0
  314. package/dist/esm/rpc.d.ts.map +1 -0
  315. package/dist/esm/rpc.js +2 -0
  316. package/dist/esm/rpc.js.map +1 -0
  317. package/dist/esm/signature.d.ts +9 -0
  318. package/dist/esm/signature.d.ts.map +1 -0
  319. package/dist/esm/signature.js +20 -0
  320. package/dist/esm/signature.js.map +1 -0
  321. package/dist/esm/signer.d.ts +19 -0
  322. package/dist/esm/signer.d.ts.map +1 -0
  323. package/dist/esm/signer.js +22 -0
  324. package/dist/esm/signer.js.map +1 -0
  325. package/dist/esm/testing/index.d.ts +3 -0
  326. package/dist/esm/testing/index.d.ts.map +1 -0
  327. package/dist/esm/testing/index.js +3 -0
  328. package/dist/esm/testing/index.js.map +1 -0
  329. package/dist/esm/testing/mocks/api.d.ts +7 -0
  330. package/dist/esm/testing/mocks/api.d.ts.map +1 -0
  331. package/dist/esm/testing/mocks/api.js +10 -0
  332. package/dist/esm/testing/mocks/api.js.map +1 -0
  333. package/dist/esm/testing/mocks/chain.d.ts +7 -0
  334. package/dist/esm/testing/mocks/chain.d.ts.map +1 -0
  335. package/dist/esm/testing/mocks/chain.js +10 -0
  336. package/dist/esm/testing/mocks/chain.js.map +1 -0
  337. package/dist/esm/testing/mocks/index.d.ts +5 -0
  338. package/dist/esm/testing/mocks/index.d.ts.map +1 -0
  339. package/dist/esm/testing/mocks/index.js +5 -0
  340. package/dist/esm/testing/mocks/index.js.map +1 -0
  341. package/dist/esm/testing/mocks/platform.d.ts +14 -0
  342. package/dist/esm/testing/mocks/platform.d.ts.map +1 -0
  343. package/dist/esm/testing/mocks/platform.js +92 -0
  344. package/dist/esm/testing/mocks/platform.js.map +1 -0
  345. package/dist/esm/testing/mocks/rpc.d.ts +7 -0
  346. package/dist/esm/testing/mocks/rpc.d.ts.map +1 -0
  347. package/dist/esm/testing/mocks/rpc.js +10 -0
  348. package/dist/esm/testing/mocks/rpc.js.map +1 -0
  349. package/dist/esm/testing/mocks/tokenBridge.d.ts +17 -0
  350. package/dist/esm/testing/mocks/tokenBridge.d.ts.map +1 -0
  351. package/dist/esm/testing/mocks/tokenBridge.js +37 -0
  352. package/dist/esm/testing/mocks/tokenBridge.js.map +1 -0
  353. package/dist/esm/testing/utils/address.d.ts +8 -0
  354. package/dist/esm/testing/utils/address.d.ts.map +1 -0
  355. package/dist/esm/testing/utils/address.js +57 -0
  356. package/dist/esm/testing/utils/address.js.map +1 -0
  357. package/dist/esm/testing/utils/index.d.ts +3 -0
  358. package/dist/esm/testing/utils/index.d.ts.map +1 -0
  359. package/dist/esm/testing/utils/index.js +3 -0
  360. package/dist/esm/testing/utils/index.js.map +1 -0
  361. package/dist/esm/testing/utils/vaa.d.ts +10 -0
  362. package/dist/esm/testing/utils/vaa.d.ts.map +1 -0
  363. package/dist/esm/testing/utils/vaa.js +12 -0
  364. package/dist/esm/testing/utils/vaa.js.map +1 -0
  365. package/dist/esm/types.d.ts +34 -0
  366. package/dist/esm/types.d.ts.map +1 -0
  367. package/dist/esm/types.js +39 -0
  368. package/dist/esm/types.js.map +1 -0
  369. package/dist/esm/universalAddress.d.ts +18 -0
  370. package/dist/esm/universalAddress.d.ts.map +1 -0
  371. package/dist/esm/universalAddress.js +66 -0
  372. package/dist/esm/universalAddress.js.map +1 -0
  373. package/dist/esm/unsignedTransaction.d.ts +9 -0
  374. package/dist/esm/unsignedTransaction.d.ts.map +1 -0
  375. package/dist/esm/unsignedTransaction.js +2 -0
  376. package/dist/esm/unsignedTransaction.js.map +1 -0
  377. package/dist/esm/utils.d.ts +5 -0
  378. package/dist/esm/utils.d.ts.map +1 -0
  379. package/dist/esm/utils.js +6 -0
  380. package/dist/esm/utils.js.map +1 -0
  381. package/dist/esm/vaa/create.d.ts +8 -0
  382. package/dist/esm/vaa/create.d.ts.map +1 -0
  383. package/dist/esm/vaa/create.js +26 -0
  384. package/dist/esm/vaa/create.js.map +1 -0
  385. package/dist/esm/vaa/functions.d.ts +32 -0
  386. package/dist/esm/vaa/functions.d.ts.map +1 -0
  387. package/dist/esm/vaa/functions.js +120 -0
  388. package/dist/esm/vaa/functions.js.map +1 -0
  389. package/dist/esm/vaa/index.d.ts +5 -0
  390. package/dist/esm/vaa/index.d.ts.map +1 -0
  391. package/dist/esm/vaa/index.js +4 -0
  392. package/dist/esm/vaa/index.js.map +1 -0
  393. package/dist/esm/vaa/registration.d.ts +24 -0
  394. package/dist/esm/vaa/registration.d.ts.map +1 -0
  395. package/dist/esm/vaa/registration.js +13 -0
  396. package/dist/esm/vaa/registration.js.map +1 -0
  397. package/dist/esm/vaa/vaa.d.ts +141 -0
  398. package/dist/esm/vaa/vaa.d.ts.map +1 -0
  399. package/dist/esm/vaa/vaa.js +27 -0
  400. package/dist/esm/vaa/vaa.js.map +1 -0
  401. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  402. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  403. package/package.json +3 -3
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ //For whatever reason if we put this in the same file as the other functions, tsc runs out of
3
+ // memory. For some extra lulz, try turning createVAA into an arrow function (spoiler: also
4
+ // causes out of memory fireworks)
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createVAA = void 0;
7
+ const sdk_base_1 = require("@wormhole-foundation/sdk-base");
8
+ const utils_1 = require("../utils");
9
+ const vaa_1 = require("./vaa");
10
+ const functions_1 = require("./functions");
11
+ function bodyLayout(payloadLiteral) {
12
+ return [
13
+ ...vaa_1.envelopeLayout,
14
+ ...(0, functions_1.payloadLiteralToPayloadItemLayout)(payloadLiteral),
15
+ ];
16
+ }
17
+ function createVAA(payloadLiteral, vaaData) {
18
+ const [protocolName, payloadName] = (0, vaa_1.decomposeLiteral)(payloadLiteral);
19
+ const bodyWithFixed = (0, sdk_base_1.addFixedValues)(bodyLayout(payloadLiteral), vaaData);
20
+ return {
21
+ protocolName,
22
+ payloadName,
23
+ payloadLiteral,
24
+ ...(0, sdk_base_1.addFixedValues)(vaa_1.headerLayout, vaaData),
25
+ ...bodyWithFixed,
26
+ hash: (0, utils_1.keccak256)((0, sdk_base_1.serializeLayout)(bodyLayout(payloadLiteral), bodyWithFixed)),
27
+ };
28
+ }
29
+ exports.createVAA = createVAA;
30
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/vaa/create.ts"],"names":[],"mappings":";AAAA,6FAA6F;AAC7F,4FAA4F;AAC5F,mCAAmC;;;AAEnC,4DAKuC;AAEvC,oCAAqC;AAErC,+BAAwF;AACxF,2CAAmG;AAOnG,SAAS,UAAU,CAA4B,cAAkB;IAC/D,OAAO;QACL,GAAG,oBAAc;QACjB,GAAG,IAAA,6CAAiC,EAAC,cAAc,CAAC;KACnC,CAAC;AACtB,CAAC;AAMD,SAAgB,SAAS,CACvB,cAAkB,EAClB,OAA8B;IAE9B,MAAM,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,IAAA,sBAAgB,EAAC,cAAc,CAAC,CAAC;IACrE,MAAM,aAAa,GAAG,IAAA,yBAAc,EAAC,UAAU,CAAC,cAAc,CAAC,EAAE,OAAc,CAAC,CAAC;IACjF,OAAO;QACL,YAAY;QACZ,WAAW;QACX,cAAc;QACd,GAAG,IAAA,yBAAc,EAAC,kBAAY,EAAE,OAAc,CAAC;QAC/C,GAAG,aAAa;QAChB,IAAI,EAAE,IAAA,iBAAS,EAAC,IAAA,0BAAe,EAAC,UAAU,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC,CAAC;KACtD,CAAC;AAC1B,CAAC;AAdD,8BAcC"}
@@ -0,0 +1,32 @@
1
+ import { LayoutLiteral, PayloadLiteral, LayoutOf, ProtocolName, ComposeLiteral } from "./registration";
2
+ import { VAA, DistributiveVAA, Payload, LayoutLiteralToPayload } from "./vaa";
3
+ export declare function getPayloadLayout<LL extends LayoutLiteral>(layoutLiteral: LL): LayoutOf<LL>;
4
+ export type PayloadLiteralToPayloadItemLayout<PL extends PayloadLiteral> = PL extends infer V ? V extends LayoutLiteral ? [{
5
+ name: "payload";
6
+ binary: "object";
7
+ layout: LayoutOf<V>;
8
+ }] : V extends "Uint8Array" ? [{
9
+ name: "payload";
10
+ binary: "bytes";
11
+ }] : never : never;
12
+ export declare function payloadLiteralToPayloadItemLayout<PL extends PayloadLiteral>(payloadLiteral: PL): PayloadLiteralToPayloadItemLayout<PL>;
13
+ export declare function serialize<PL extends PayloadLiteral>(vaa: VAA<PL>): Uint8Array;
14
+ export declare function serializePayload<PL extends PayloadLiteral>(payloadLiteral: PL, payload: Payload<PL>): Uint8Array;
15
+ type AtLeast1<T> = readonly [T, ...T[]];
16
+ type AtLeast2<T> = readonly [T, T, ...T[]];
17
+ type Byteish = Uint8Array | string;
18
+ export type PayloadDiscriminator<LL extends LayoutLiteral = LayoutLiteral, AllowAmbiguous extends boolean = false> = (data: Byteish) => AllowAmbiguous extends false ? LL | null : readonly LL[];
19
+ type PayloadGroup = readonly [ProtocolName, AtLeast1<string>];
20
+ type PayloadGroupToLayoutLiterals<PG extends PayloadGroup> = ComposeLiteral<PG[0], PG[1][number], LayoutLiteral>;
21
+ type PayloadGroupsToLayoutLiteralsRecursive<PGA extends readonly PayloadGroup[]> = PGA extends readonly [infer PG extends PayloadGroup, ...infer T extends readonly PayloadGroup[]] ? PayloadGroupToLayoutLiterals<PG> | PayloadGroupsToLayoutLiteralsRecursive<T> : never;
22
+ type PayloadGroupsToLayoutLiterals<PGA extends readonly PayloadGroup[]> = PayloadGroupsToLayoutLiteralsRecursive<PGA> extends infer Value extends LayoutLiteral ? Value : never;
23
+ type LLDtoLLs<LLD extends AtLeast2<LayoutLiteral> | readonly [ProtocolName, AtLeast2<string>] | AtLeast2<PayloadGroup>> = LLD extends AtLeast2<LayoutLiteral> ? LLD[number] : LLD extends readonly [ProtocolName, AtLeast2<string>] ? PayloadGroupToLayoutLiterals<LLD> : LLD extends AtLeast2<PayloadGroup> ? PayloadGroupsToLayoutLiterals<LLD> : never;
24
+ export declare function payloadDiscriminator<const LLD extends AtLeast2<LayoutLiteral> | readonly [ProtocolName, AtLeast2<string>] | AtLeast2<PayloadGroup>, B extends boolean = false>(payloadLiterals: LLD, allowAmbiguous?: B): PayloadDiscriminator<LLDtoLLs<LLD>, B>;
25
+ type ExtractLiteral<T> = T extends PayloadDiscriminator<infer LL> ? LL : T;
26
+ export declare function deserialize<T extends PayloadLiteral | PayloadDiscriminator>(payloadDet: T, data: Byteish): DistributiveVAA<ExtractLiteral<T>>;
27
+ type DeserializedPair<LL extends LayoutLiteral = LayoutLiteral> = LL extends LayoutLiteral ? readonly [LL, LayoutLiteralToPayload<LL>] : never;
28
+ type DeserializePayloadReturn<T> = T extends PayloadLiteral ? Payload<T> : T extends PayloadDiscriminator<infer LL> ? DeserializedPair<LL> : never;
29
+ export declare function deserializePayload<T extends PayloadLiteral | PayloadDiscriminator>(payloadDet: T, data: Byteish, offset?: number): DeserializePayloadReturn<T>;
30
+ export declare const blindDeserializePayload: (data: Byteish) => readonly DeserializedPair[];
31
+ export {};
32
+ //# sourceMappingURL=functions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../../../src/vaa/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.blindDeserializePayload = exports.deserializePayload = exports.deserialize = exports.payloadDiscriminator = exports.serializePayload = exports.serialize = exports.payloadLiteralToPayloadItemLayout = exports.getPayloadLayout = void 0;
4
+ const sdk_base_1 = require("@wormhole-foundation/sdk-base");
5
+ const registration_1 = require("./registration");
6
+ const vaa_1 = require("./vaa");
7
+ const utils_1 = require("../utils");
8
+ function getPayloadLayout(layoutLiteral) {
9
+ const layout = registration_1.payloadFactory.get(layoutLiteral);
10
+ if (!layout)
11
+ throw new Error(`No layout registered for payload type ${layoutLiteral}`);
12
+ return layout;
13
+ }
14
+ exports.getPayloadLayout = getPayloadLayout;
15
+ function payloadLiteralToPayloadItemLayout(payloadLiteral) {
16
+ return [
17
+ payloadLiteral === "Uint8Array"
18
+ ? { name: "payload", binary: "bytes" }
19
+ : { name: "payload", binary: "object", layout: getPayloadLayout(payloadLiteral) },
20
+ ];
21
+ }
22
+ exports.payloadLiteralToPayloadItemLayout = payloadLiteralToPayloadItemLayout;
23
+ function serialize(vaa) {
24
+ const layout = [
25
+ ...vaa_1.baseLayout,
26
+ ...payloadLiteralToPayloadItemLayout(vaa.payloadLiteral),
27
+ ];
28
+ return (0, sdk_base_1.serializeLayout)(layout, vaa);
29
+ }
30
+ exports.serialize = serialize;
31
+ function serializePayload(payloadLiteral, payload) {
32
+ if (payloadLiteral === "Uint8Array")
33
+ return payload;
34
+ const layout = getPayloadLayout(payloadLiteral);
35
+ return (0, sdk_base_1.serializeLayout)(layout, payload);
36
+ }
37
+ exports.serializePayload = serializePayload;
38
+ function payloadDiscriminator(payloadLiterals, allowAmbiguous) {
39
+ const literals = (() => {
40
+ if (Array.isArray(payloadLiterals[0]))
41
+ return payloadLiterals.flatMap(([protocol, payloadNames]) => payloadNames.map((name) => (0, registration_1.composeLiteral)(protocol, name)));
42
+ if (typeof payloadLiterals[1] === "string")
43
+ return payloadLiterals;
44
+ const [protocol, payloadNames] = payloadLiterals;
45
+ return payloadNames.map((name) => (0, registration_1.composeLiteral)(protocol, name));
46
+ })();
47
+ const discriminator = (0, sdk_base_1.layoutDiscriminator)(literals.map((literal) => getPayloadLayout(literal)), !!allowAmbiguous);
48
+ return ((data) => {
49
+ if (typeof data === "string")
50
+ data = sdk_base_1.encoding.hex.decode(data);
51
+ const cands = discriminator(data);
52
+ return Array.isArray(cands)
53
+ ? cands.map((c) => literals[c])
54
+ : cands !== null
55
+ ? literals[cands]
56
+ : null;
57
+ });
58
+ }
59
+ exports.payloadDiscriminator = payloadDiscriminator;
60
+ function deserialize(payloadDet, data) {
61
+ if (typeof data === "string")
62
+ data = sdk_base_1.encoding.hex.decode(data);
63
+ const [header, envelopeOffset] = (0, sdk_base_1.deserializeLayout)(vaa_1.headerLayout, data, 0, false);
64
+ //ensure that guardian signature indicies are unique and in ascending order - see:
65
+ //https://github.com/wormhole-foundation/wormhole/blob/8e0cf4c31f39b5ba06b0f6cdb6e690d3adf3d6a3/ethereum/contracts/Messages.sol#L121
66
+ for (let i = 1; i < header.signatures.length; ++i)
67
+ if (header.signatures[i].guardianIndex <= header.signatures[i - 1].guardianIndex)
68
+ throw new Error("Guardian signatures must be in ascending order of guardian set index");
69
+ const [envelope, payloadOffset] = (0, sdk_base_1.deserializeLayout)(vaa_1.envelopeLayout, data, envelopeOffset, false);
70
+ const [payloadLiteral, payload] = typeof payloadDet === "string"
71
+ ? [
72
+ payloadDet,
73
+ deserializePayload(payloadDet, data, payloadOffset),
74
+ ]
75
+ : deserializePayload(payloadDet, data, payloadOffset);
76
+ const [protocolName, payloadName] = (0, vaa_1.decomposeLiteral)(payloadLiteral);
77
+ const hash = (0, utils_1.keccak256)(data.slice(envelopeOffset));
78
+ return {
79
+ protocolName,
80
+ payloadName,
81
+ payloadLiteral,
82
+ ...header,
83
+ ...envelope,
84
+ payload,
85
+ hash,
86
+ };
87
+ }
88
+ exports.deserialize = deserialize;
89
+ function deserializePayload(payloadDet, data, offset = 0) {
90
+ //grouped together to have just a single cast on the return type
91
+ return (() => {
92
+ if (typeof data === "string")
93
+ data = sdk_base_1.encoding.hex.decode(data);
94
+ if (payloadDet === "Uint8Array")
95
+ return data.slice(offset);
96
+ if (typeof payloadDet === "string")
97
+ return (0, sdk_base_1.deserializeLayout)(getPayloadLayout(payloadDet), data, offset);
98
+ //kinda unfortunate that we have to slice here, future improvement would be passing an optional
99
+ // offset to the discriminator
100
+ const candidate = payloadDet(data.slice(offset));
101
+ if (candidate === null)
102
+ throw new Error(`Encoded data does not match any of the given payload types - ${data}`);
103
+ return [candidate, (0, sdk_base_1.deserializeLayout)(getPayloadLayout(candidate), data, offset)];
104
+ })();
105
+ }
106
+ exports.deserializePayload = deserializePayload;
107
+ exports.blindDeserializePayload = (() => {
108
+ const rebuildDiscrimininator = () => {
109
+ const layoutLiterals = Array.from(registration_1.payloadFactory.keys());
110
+ const layouts = layoutLiterals.map((l) => registration_1.payloadFactory.get(l));
111
+ return [layoutLiterals, (0, sdk_base_1.layoutDiscriminator)(layouts, true)];
112
+ };
113
+ let layoutLiterals = [];
114
+ let discriminator = (_) => [];
115
+ return (data) => {
116
+ if (registration_1.payloadFactory.size !== layoutLiterals.length)
117
+ [layoutLiterals, discriminator] = rebuildDiscrimininator();
118
+ if (typeof data === "string")
119
+ data = sdk_base_1.encoding.hex.decode(data);
120
+ const candidates = discriminator(data).map((c) => layoutLiterals[c]);
121
+ return candidates.reduce((acc, literal) => {
122
+ try {
123
+ acc.push([literal, deserializePayload(literal, data)]);
124
+ }
125
+ catch { }
126
+ return acc;
127
+ }, []);
128
+ };
129
+ })();
130
+ //# sourceMappingURL=functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../../../src/vaa/functions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { PayloadLiteral, NamedPayloads, RegisterPayloadTypes, registerPayloadType, registerPayloadTypes, } from "./registration";
2
+ export { VAA, ProtocolVAA, Payload, ProtocolPayload } from "./vaa";
3
+ export { PayloadDiscriminator, getPayloadLayout, serialize, serializePayload, payloadDiscriminator, deserialize, deserializePayload, blindDeserializePayload, } from "./functions";
4
+ export { createVAA } from "./create";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vaa/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AAEnE,OAAO,EACL,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createVAA = exports.blindDeserializePayload = exports.deserializePayload = exports.deserialize = exports.payloadDiscriminator = exports.serializePayload = exports.serialize = exports.getPayloadLayout = exports.registerPayloadTypes = exports.registerPayloadType = void 0;
4
+ var registration_1 = require("./registration");
5
+ Object.defineProperty(exports, "registerPayloadType", { enumerable: true, get: function () { return registration_1.registerPayloadType; } });
6
+ Object.defineProperty(exports, "registerPayloadTypes", { enumerable: true, get: function () { return registration_1.registerPayloadTypes; } });
7
+ var functions_1 = require("./functions");
8
+ Object.defineProperty(exports, "getPayloadLayout", { enumerable: true, get: function () { return functions_1.getPayloadLayout; } });
9
+ Object.defineProperty(exports, "serialize", { enumerable: true, get: function () { return functions_1.serialize; } });
10
+ Object.defineProperty(exports, "serializePayload", { enumerable: true, get: function () { return functions_1.serializePayload; } });
11
+ Object.defineProperty(exports, "payloadDiscriminator", { enumerable: true, get: function () { return functions_1.payloadDiscriminator; } });
12
+ Object.defineProperty(exports, "deserialize", { enumerable: true, get: function () { return functions_1.deserialize; } });
13
+ Object.defineProperty(exports, "deserializePayload", { enumerable: true, get: function () { return functions_1.deserializePayload; } });
14
+ Object.defineProperty(exports, "blindDeserializePayload", { enumerable: true, get: function () { return functions_1.blindDeserializePayload; } });
15
+ var create_1 = require("./create");
16
+ Object.defineProperty(exports, "createVAA", { enumerable: true, get: function () { return create_1.createVAA; } });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/vaa/index.ts"],"names":[],"mappings":";;;AAAA,+CAMwB;AAFtB,mHAAA,mBAAmB,OAAA;AACnB,oHAAA,oBAAoB,OAAA;AAKtB,yCASqB;AAPnB,6GAAA,gBAAgB,OAAA;AAChB,sGAAA,SAAS,OAAA;AACT,6GAAA,gBAAgB,OAAA;AAChB,iHAAA,oBAAoB,OAAA;AACpB,wGAAA,WAAW,OAAA;AACX,+GAAA,kBAAkB,OAAA;AAClB,oHAAA,uBAAuB,OAAA;AAGzB,mCAAqC;AAA5B,mGAAA,SAAS,OAAA"}
@@ -0,0 +1,24 @@
1
+ import { Layout } from "@wormhole-foundation/sdk-base";
2
+ declare global {
3
+ namespace WormholeNamespace {
4
+ interface PayloadLiteralToLayoutMapping {
5
+ }
6
+ }
7
+ }
8
+ export type LayoutLiteral = keyof WormholeNamespace.PayloadLiteralToLayoutMapping & string;
9
+ export type PayloadLiteral = LayoutLiteral | "Uint8Array";
10
+ export type LayoutOf<LL extends LayoutLiteral> = LL extends infer V extends LayoutLiteral ? WormholeNamespace.PayloadLiteralToLayoutMapping[V] : never;
11
+ export type ProtocolName = string | null;
12
+ type ToLiteralFormat<PN extends ProtocolName, PayloadName extends string> = PN extends null ? PayloadName : `${PN}:${PayloadName}`;
13
+ export type ComposeLiteral<ProtocolN extends ProtocolName, PayloadN extends string, Literal> = ToLiteralFormat<ProtocolN, PayloadN> extends infer L extends Literal ? L : never;
14
+ export declare const composeLiteral: <ProtocolN extends ProtocolName, PayloadN extends string>(protocol: ProtocolN, payloadName: PayloadN) => ComposeLiteral<ProtocolN, PayloadN, PayloadLiteral>;
15
+ export declare const payloadFactory: Map<LayoutLiteral, Layout>;
16
+ export declare function registerPayloadType(protocol: ProtocolName, name: string, layout: Layout): void;
17
+ type AtLeast1<T> = readonly [T, ...T[]];
18
+ export type NamedPayloads = AtLeast1<readonly [string, Layout]>;
19
+ export type RegisterPayloadTypes<ProtocolN extends ProtocolName, NP extends NamedPayloads> = {
20
+ readonly [E in NP[number] as ToLiteralFormat<ProtocolN, E[0]>]: E[1];
21
+ };
22
+ export declare function registerPayloadTypes(protocol: ProtocolName, payloads: NamedPayloads): void;
23
+ export {};
24
+ //# sourceMappingURL=registration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.d.ts","sourceRoot":"","sources":["../../../src/vaa/registration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAC;AAQvD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,iBAAiB,CAAC;QAE1B,UAAU,6BAA6B;SAAG;KAC3C;CACF;AAED,MAAM,MAAM,aAAa,GAAG,MAAM,iBAAiB,CAAC,6BAA6B,GAAG,MAAM,CAAC;AAE3F,MAAM,MAAM,cAAc,GAAG,aAAa,GAAG,YAAY,CAAC;AAE1D,MAAM,MAAM,QAAQ,CAAC,EAAE,SAAS,aAAa,IAAI,EAAE,SAAS,MAAM,CAAC,SAAS,aAAa,GACrF,iBAAiB,CAAC,6BAA6B,CAAC,CAAC,CAAC,GAClD,KAAK,CAAC;AAGV,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,IAAI,CAAC;AAEzC,KAAK,eAAe,CAAC,EAAE,SAAS,YAAY,EAAE,WAAW,SAAS,MAAM,IAAI,EAAE,SAAS,IAAI,GACvF,WAAW,GACX,GAAG,EAAE,IAAI,WAAW,EAAE,CAAC;AAE3B,MAAM,MAAM,cAAc,CACxB,SAAS,SAAS,YAAY,EAC9B,QAAQ,SAAS,MAAM,EACvB,OAAO,IACL,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,SAAS,MAAM,CAAC,SAAS,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC;AAErF,eAAO,MAAM,cAAc,8JAQxB,CAAC;AAEJ,eAAO,MAAM,cAAc,4BAAmC,CAAC;AAE/D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAMvF;AAED,KAAK,QAAQ,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;AAExC,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEhE,MAAM,MAAM,oBAAoB,CAAC,SAAS,SAAS,YAAY,EAAE,EAAE,SAAS,aAAa,IAAI;IAC3F,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,IAAI,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrE,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,QAEnF"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.registerPayloadTypes = exports.registerPayloadType = exports.payloadFactory = exports.composeLiteral = void 0;
4
+ const composeLiteral = (protocol, payloadName) => (protocol ? `${protocol}:${payloadName}` : payloadName);
5
+ exports.composeLiteral = composeLiteral;
6
+ exports.payloadFactory = new Map();
7
+ function registerPayloadType(protocol, name, layout) {
8
+ const payloadLiteral = (0, exports.composeLiteral)(protocol, name);
9
+ if (exports.payloadFactory.has(payloadLiteral))
10
+ throw new Error(`Payload type ${payloadLiteral} already registered`);
11
+ exports.payloadFactory.set(payloadLiteral, layout);
12
+ }
13
+ exports.registerPayloadType = registerPayloadType;
14
+ function registerPayloadTypes(protocol, payloads) {
15
+ for (const [name, layout] of payloads)
16
+ registerPayloadType(protocol, name, layout);
17
+ }
18
+ exports.registerPayloadTypes = registerPayloadTypes;
19
+ //# sourceMappingURL=registration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registration.js","sourceRoot":"","sources":["../../../src/vaa/registration.ts"],"names":[],"mappings":";;;AAoCO,MAAM,cAAc,GAAG,CAC5B,QAAmB,EACnB,WAAqB,EACrB,EAAE,CACF,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,WAAW,EAAE,CAAC,CAAC,CAAC,WAAW,CAIrD,CAAC;AARS,QAAA,cAAc,kBAQvB;AAES,QAAA,cAAc,GAAG,IAAI,GAAG,EAAyB,CAAC;AAE/D,SAAgB,mBAAmB,CAAC,QAAsB,EAAE,IAAY,EAAE,MAAc;IACtF,MAAM,cAAc,GAAG,IAAA,sBAAc,EAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACtD,IAAI,sBAAc,CAAC,GAAG,CAAC,cAAc,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,gBAAgB,cAAc,qBAAqB,CAAC,CAAC;IAEvE,sBAAc,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;AAC7C,CAAC;AAND,kDAMC;AAUD,SAAgB,oBAAoB,CAAC,QAAsB,EAAE,QAAuB;IAClF,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,QAAQ;QAAE,mBAAmB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AACrF,CAAC;AAFD,oDAEC"}
@@ -0,0 +1,141 @@
1
+ import { LayoutToType } from "@wormhole-foundation/sdk-base";
2
+ import { LayoutLiteral, PayloadLiteral, LayoutOf, ProtocolName, ComposeLiteral } from "./registration";
3
+ export type LayoutLiteralToPayload<LL extends LayoutLiteral> = LayoutToType<LayoutOf<LL>>;
4
+ export type Payload<PL extends PayloadLiteral> = PL extends LayoutLiteral ? LayoutLiteralToPayload<PL> : Uint8Array;
5
+ export type DecomposeLiteral<PL extends PayloadLiteral> = PL extends `${infer Protocol}:${infer LayoutName}` ? [Protocol, LayoutName] : [null, PL];
6
+ export declare function decomposeLiteral<PL extends PayloadLiteral>(payloadLiteral: PL): DecomposeLiteral<PL>;
7
+ export declare const headerLayout: readonly [{
8
+ readonly name: "version";
9
+ readonly binary: "uint";
10
+ readonly size: 1;
11
+ readonly custom: 1;
12
+ readonly omit: true;
13
+ }, {
14
+ readonly binary: "uint";
15
+ readonly size: 4;
16
+ readonly name: "guardianSet";
17
+ }, {
18
+ readonly name: "signatures";
19
+ readonly binary: "array";
20
+ readonly lengthSize: 1;
21
+ readonly layout: readonly [{
22
+ readonly name: "guardianIndex";
23
+ readonly binary: "uint";
24
+ readonly size: 1;
25
+ }, {
26
+ readonly binary: "bytes";
27
+ readonly size: 65;
28
+ readonly custom: {
29
+ readonly to: (val: Uint8Array) => import("..").Signature;
30
+ readonly from: (val: import("..").Signature) => Uint8Array;
31
+ };
32
+ readonly name: "signature";
33
+ }];
34
+ }];
35
+ export declare const envelopeLayout: readonly [{
36
+ readonly name: "timestamp";
37
+ readonly binary: "uint";
38
+ readonly size: 4;
39
+ }, {
40
+ readonly name: "nonce";
41
+ readonly binary: "uint";
42
+ readonly size: 4;
43
+ }, {
44
+ readonly custom: {
45
+ to: (val: number) => "Solana" | "Btc" | "Algorand" | "Sui" | "Aptos" | "Near" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Base" | "Sei" | "Rootstock" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Sepolia";
46
+ from: (val: "Solana" | "Btc" | "Algorand" | "Sui" | "Aptos" | "Near" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Base" | "Sei" | "Rootstock" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Sepolia") => number;
47
+ };
48
+ readonly binary: "uint";
49
+ readonly size: 2;
50
+ readonly name: "emitterChain";
51
+ }, {
52
+ readonly binary: "bytes";
53
+ readonly size: 32;
54
+ readonly custom: {
55
+ to: (val: Uint8Array) => import("..").UniversalAddress;
56
+ from: (val: import("..").UniversalAddress) => Uint8Array;
57
+ };
58
+ readonly name: "emitterAddress";
59
+ }, {
60
+ readonly binary: "uint";
61
+ readonly size: 8;
62
+ readonly name: "sequence";
63
+ }, {
64
+ readonly name: "consistencyLevel";
65
+ readonly binary: "uint";
66
+ readonly size: 1;
67
+ }];
68
+ export declare const baseLayout: readonly [{
69
+ readonly name: "version";
70
+ readonly binary: "uint";
71
+ readonly size: 1;
72
+ readonly custom: 1;
73
+ readonly omit: true;
74
+ }, {
75
+ readonly binary: "uint";
76
+ readonly size: 4;
77
+ readonly name: "guardianSet";
78
+ }, {
79
+ readonly name: "signatures";
80
+ readonly binary: "array";
81
+ readonly lengthSize: 1;
82
+ readonly layout: readonly [{
83
+ readonly name: "guardianIndex";
84
+ readonly binary: "uint";
85
+ readonly size: 1;
86
+ }, {
87
+ readonly binary: "bytes";
88
+ readonly size: 65;
89
+ readonly custom: {
90
+ readonly to: (val: Uint8Array) => import("..").Signature;
91
+ readonly from: (val: import("..").Signature) => Uint8Array;
92
+ };
93
+ readonly name: "signature";
94
+ }];
95
+ }, {
96
+ readonly name: "timestamp";
97
+ readonly binary: "uint";
98
+ readonly size: 4;
99
+ }, {
100
+ readonly name: "nonce";
101
+ readonly binary: "uint";
102
+ readonly size: 4;
103
+ }, {
104
+ readonly custom: {
105
+ to: (val: number) => "Solana" | "Btc" | "Algorand" | "Sui" | "Aptos" | "Near" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Base" | "Sei" | "Rootstock" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Sepolia";
106
+ from: (val: "Solana" | "Btc" | "Algorand" | "Sui" | "Aptos" | "Near" | "Ethereum" | "Terra" | "Bsc" | "Polygon" | "Avalanche" | "Oasis" | "Aurora" | "Fantom" | "Karura" | "Acala" | "Klaytn" | "Celo" | "Moonbeam" | "Neon" | "Terra2" | "Injective" | "Osmosis" | "Arbitrum" | "Optimism" | "Gnosis" | "Pythnet" | "Xpla" | "Base" | "Sei" | "Rootstock" | "Wormchain" | "Cosmoshub" | "Evmos" | "Kujira" | "Sepolia") => number;
107
+ };
108
+ readonly binary: "uint";
109
+ readonly size: 2;
110
+ readonly name: "emitterChain";
111
+ }, {
112
+ readonly binary: "bytes";
113
+ readonly size: 32;
114
+ readonly custom: {
115
+ to: (val: Uint8Array) => import("..").UniversalAddress;
116
+ from: (val: import("..").UniversalAddress) => Uint8Array;
117
+ };
118
+ readonly name: "emitterAddress";
119
+ }, {
120
+ readonly binary: "uint";
121
+ readonly size: 8;
122
+ readonly name: "sequence";
123
+ }, {
124
+ readonly name: "consistencyLevel";
125
+ readonly binary: "uint";
126
+ readonly size: 1;
127
+ }];
128
+ type VAABase = LayoutToType<typeof baseLayout>;
129
+ export interface VAA<PL extends PayloadLiteral = PayloadLiteral> extends VAABase {
130
+ readonly protocolName: DecomposeLiteral<PL>[0];
131
+ readonly payloadName: DecomposeLiteral<PL>[1];
132
+ readonly payloadLiteral: PL;
133
+ readonly payload: Payload<PL>;
134
+ readonly hash: Uint8Array;
135
+ }
136
+ export type DistributiveVAA<PL extends PayloadLiteral> = PL extends PayloadLiteral ? VAA<PL> : never;
137
+ export type ProtocolVAA<PN extends ProtocolName, PayloadName extends string> = ComposeLiteral<PN, PayloadName, PayloadLiteral> extends infer PL extends PayloadLiteral ? DistributiveVAA<PL> : never;
138
+ export type DistributivePayload<PL extends PayloadLiteral> = PL extends PayloadLiteral ? Payload<PL> : never;
139
+ export type ProtocolPayload<PN extends ProtocolName, PayloadName extends string> = ComposeLiteral<PN, PayloadName, PayloadLiteral> extends infer PL extends PayloadLiteral ? DistributivePayload<PL> : never;
140
+ export {};
141
+ //# sourceMappingURL=vaa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vaa.d.ts","sourceRoot":"","sources":["../../../src/vaa/vaa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAUrE,OAAO,EACL,aAAa,EACb,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,cAAc,EACf,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,sBAAsB,CAAC,EAAE,SAAS,aAAa,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;AAE1F,MAAM,MAAM,OAAO,CAAC,EAAE,SAAS,cAAc,IAAI,EAAE,SAAS,aAAa,GACrE,sBAAsB,CAAC,EAAE,CAAC,GAC1B,UAAU,CAAC;AAEf,MAAM,MAAM,gBAAgB,CAAC,EAAE,SAAS,cAAc,IACpD,EAAE,SAAS,GAAG,MAAM,QAAQ,IAAI,MAAM,UAAU,EAAE,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;AAE3F,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,cAAc,EAAE,cAAc,EAAE,EAAE,wBAO7E;AAOD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIE,CAAC;AAG5B,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOA,CAAC;AAE5B,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAAgD,CAAC;AACxE,KAAK,OAAO,GAAG,YAAY,CAAC,OAAO,UAAU,CAAC,CAAC;AAE/C,MAAM,WAAW,GAAG,CAAC,EAAE,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,OAAO;IAC9E,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAM9B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;CAC3B;AAcD,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,cAAc,IAAI,EAAE,SAAS,cAAc,GAC9E,GAAG,CAAC,EAAE,CAAC,GACP,KAAK,CAAC;AAEV,MAAM,MAAM,WAAW,CAAC,EAAE,SAAS,YAAY,EAAE,WAAW,SAAS,MAAM,IAAI,cAAc,CAC3F,EAAE,EACF,WAAW,EACX,cAAc,CACf,SAAS,MAAM,EAAE,SAAS,cAAc,GACrC,eAAe,CAAC,EAAE,CAAC,GACnB,KAAK,CAAC;AAEV,MAAM,MAAM,mBAAmB,CAAC,EAAE,SAAS,cAAc,IAAI,EAAE,SAAS,cAAc,GAClF,OAAO,CAAC,EAAE,CAAC,GACX,KAAK,CAAC;AAEV,MAAM,MAAM,eAAe,CAAC,EAAE,SAAS,YAAY,EAAE,WAAW,SAAS,MAAM,IAAI,cAAc,CAC/F,EAAE,EACF,WAAW,EACX,cAAc,CACf,SAAS,MAAM,EAAE,SAAS,cAAc,GACrC,mBAAmB,CAAC,EAAE,CAAC,GACvB,KAAK,CAAC"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.baseLayout = exports.envelopeLayout = exports.headerLayout = exports.decomposeLiteral = void 0;
4
+ const layout_items_1 = require("../layout-items");
5
+ function decomposeLiteral(payloadLiteral) {
6
+ const index = payloadLiteral.indexOf(":");
7
+ return (index !== -1
8
+ ? [payloadLiteral.slice(0, index), payloadLiteral.slice(index + 1)]
9
+ : [null, payloadLiteral]);
10
+ }
11
+ exports.decomposeLiteral = decomposeLiteral;
12
+ const guardianSignatureLayout = [
13
+ { name: "guardianIndex", binary: "uint", size: 1 },
14
+ { name: "signature", ...layout_items_1.signatureItem },
15
+ ];
16
+ exports.headerLayout = [
17
+ { name: "version", binary: "uint", size: 1, custom: 1, omit: true },
18
+ { name: "guardianSet", ...layout_items_1.guardianSetItem },
19
+ { name: "signatures", binary: "array", lengthSize: 1, layout: guardianSignatureLayout },
20
+ ];
21
+ //envelope + payload are getting hashed and signed
22
+ exports.envelopeLayout = [
23
+ { name: "timestamp", binary: "uint", size: 4 },
24
+ { name: "nonce", binary: "uint", size: 4 },
25
+ { name: "emitterChain", ...(0, layout_items_1.chainItem)() },
26
+ { name: "emitterAddress", ...layout_items_1.universalAddressItem },
27
+ { name: "sequence", ...layout_items_1.sequenceItem },
28
+ { name: "consistencyLevel", binary: "uint", size: 1 },
29
+ ];
30
+ exports.baseLayout = [...exports.headerLayout, ...exports.envelopeLayout];
31
+ //# sourceMappingURL=vaa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vaa.js","sourceRoot":"","sources":["../../../src/vaa/vaa.ts"],"names":[],"mappings":";;;AAEA,kDAMyB;AAmBzB,SAAgB,gBAAgB,CAA4B,cAAkB;IAC5E,MAAM,KAAK,GAAG,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1C,OAAO,CACL,KAAK,KAAK,CAAC,CAAC;QACV,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,CACH,CAAC;AAC5B,CAAC;AAPD,4CAOC;AAED,MAAM,uBAAuB,GAAG;IAC9B,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE;IAClD,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,4BAAa,EAAE;CACd,CAAC;AAEf,QAAA,YAAY,GAAG;IAC1B,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;IACnE,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,8BAAe,EAAE;IAC3C,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,MAAM,EAAE,uBAAuB,EAAE;CAC9D,CAAC;AAE5B,kDAAkD;AACrC,QAAA,cAAc,GAAG;IAC5B,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE;IAC9C,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE;IAC1C,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAA,wBAAS,GAAE,EAAE;IACxC,EAAE,IAAI,EAAE,gBAAgB,EAAE,GAAG,mCAAoB,EAAE;IACnD,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,2BAAY,EAAE;IACrC,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE;CAC5B,CAAC;AAEf,QAAA,UAAU,GAAG,CAAC,GAAG,oBAAY,EAAE,GAAG,sBAAc,CAAU,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { Chain, ChainToPlatform, Platform } from "@wormhole-foundation/sdk-base";
2
+ import { UniversalAddress } from "./universalAddress";
3
+ export interface Address {
4
+ unwrap(): unknown;
5
+ toString(): string;
6
+ toUint8Array(): Uint8Array;
7
+ toUniversalAddress(): UniversalAddress;
8
+ }
9
+ declare global {
10
+ namespace WormholeNamespace {
11
+ interface PlatformToNativeAddressMapping {
12
+ }
13
+ }
14
+ }
15
+ export type MappedPlatforms = keyof WormholeNamespace.PlatformToNativeAddressMapping;
16
+ type GetNativeAddress<T extends Platform> = T extends MappedPlatforms ? WormholeNamespace.PlatformToNativeAddressMapping[T] : never;
17
+ export type NativeAddress<C extends Chain> = GetNativeAddress<ChainToPlatform<C>>;
18
+ export type UniversalOrNative<T extends Chain> = UniversalAddress | NativeAddress<T>;
19
+ export type AccountAddress<T extends Chain> = UniversalOrNative<T>;
20
+ export type TokenAddress<T extends Chain> = UniversalOrNative<T> | "native";
21
+ export type ChainAddress<C extends Chain = Chain> = {
22
+ readonly chain: C;
23
+ readonly address: UniversalOrNative<C>;
24
+ };
25
+ type NativeAddressCtr = new (ua: UniversalAddress | string | Uint8Array) => Address;
26
+ export declare function registerNative<P extends Platform>(platform: P, ctr: NativeAddressCtr): void;
27
+ export declare function nativeIsRegistered<C extends Chain>(chain: C): boolean;
28
+ export declare function toNative<C extends Chain>(chain: C, ua: UniversalAddress | string | Uint8Array): NativeAddress<C>;
29
+ export declare function toUniversal<C extends Chain>(chain: C, address: string | Uint8Array): UniversalAddress;
30
+ export {};
31
+ //# sourceMappingURL=address.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,eAAe,EACf,QAAQ,EAGT,MAAM,+BAA+B,CAAC;AAUvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,OAAO;IAMtB,MAAM,IAAI,OAAO,CAAC;IAClB,QAAQ,IAAI,MAAM,CAAC;IACnB,YAAY,IAAI,UAAU,CAAC;IAC3B,kBAAkB,IAAI,gBAAgB,CAAC;CAOxC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,iBAAiB,CAAC;QAC1B,UAAiB,8BAA8B;SAAG;KACnD;CACF;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,8BAA8B,CAAC;AAErF,KAAK,gBAAgB,CAAC,CAAC,SAAS,QAAQ,IAAI,CAAC,SAAS,eAAe,GACjE,iBAAiB,CAAC,8BAA8B,CAAC,CAAC,CAAC,GACnD,KAAK,CAAC;AAEV,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,KAAK,IAAI,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;AAElF,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,KAAK,IAAI,gBAAgB,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;AAErF,MAAM,MAAM,cAAc,CAAC,CAAC,SAAS,KAAK,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;AACnE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,KAAK,IAAI,iBAAiB,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;AAE5E,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,IAAI;IAClD,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,KAAK,gBAAgB,GAAG,KAAK,EAAE,EAAE,gBAAgB,GAAG,MAAM,GAAG,UAAU,KAAK,OAAO,CAAC;AAIpF,wBAAgB,cAAc,CAAC,CAAC,SAAS,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAQ3F;AAED,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAGrE;AAED,wBAAgB,QAAQ,CAAC,CAAC,SAAS,KAAK,EACtC,KAAK,EAAE,CAAC,EACR,EAAE,EAAE,gBAAgB,GAAG,MAAM,GAAG,UAAU,GACzC,aAAa,CAAC,CAAC,CAAC,CAKlB;AAED,wBAAgB,WAAW,CAAC,CAAC,SAAS,KAAK,EACzC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,MAAM,GAAG,UAAU,GAC3B,gBAAgB,CAGlB"}
@@ -0,0 +1,35 @@
1
+ import { chainToPlatform, platformToAddressFormat, } from "@wormhole-foundation/sdk-base";
2
+ //TODO BRRRR circular include!!
3
+ //I have yet to figure out how to get the equivalent of a forward declaration to work (without
4
+ // yet again having to rely on global scope...)
5
+ //I first tried `declare class UniversalAddress {};` but this actually introduces a new, separate
6
+ // type in this module rather than telling the compiler that we already have this type elsewhere
7
+ //I could also create an interface via `interface IUnverisalAddress {}` but that seems like an
8
+ // even worse solution, as is just throwing everything into this file here and just brushing
9
+ // things under the rug by not separating them out.
10
+ import { UniversalAddress } from "./universalAddress";
11
+ const nativeFactory = new Map();
12
+ export function registerNative(platform, ctr) {
13
+ if (nativeFactory.has(platform)) {
14
+ console.warn("Native address type for platform %s has already registered", platform);
15
+ //throw new Error(`Native address type for platform ${platform} has already registered`);
16
+ return;
17
+ }
18
+ nativeFactory.set(platform, ctr);
19
+ }
20
+ export function nativeIsRegistered(chain) {
21
+ const platform = chainToPlatform.get(chain);
22
+ return nativeFactory.has(platform);
23
+ }
24
+ export function toNative(chain, ua) {
25
+ const platform = chainToPlatform.get(chain);
26
+ const nativeCtr = nativeFactory.get(platform);
27
+ if (!nativeCtr)
28
+ throw new Error(`No native address type registered for platform ${platform}`);
29
+ return new nativeCtr(ua);
30
+ }
31
+ export function toUniversal(chain, address) {
32
+ const platform = chainToPlatform.get(chain);
33
+ return new UniversalAddress(address, platformToAddressFormat.get(platform));
34
+ }
35
+ //# sourceMappingURL=address.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/address.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,eAAe,EACf,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AAEvC,+BAA+B;AAC/B,8FAA8F;AAC9F,gDAAgD;AAChD,iGAAiG;AACjG,iGAAiG;AACjG,8FAA8F;AAC9F,6FAA6F;AAC7F,oDAAoD;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA8CtD,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;AAE5D,MAAM,UAAU,cAAc,CAAqB,QAAW,EAAE,GAAqB;IACnF,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;QAC/B,OAAO,CAAC,IAAI,CAAC,4DAA4D,EAAE,QAAQ,CAAC,CAAC;QACrF,yFAAyF;QACzF,OAAO;KACR;IAED,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAkB,KAAQ;IAC1D,MAAM,QAAQ,GAAa,eAAe,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACvD,OAAO,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,KAAQ,EACR,EAA0C;IAE1C,MAAM,QAAQ,GAAa,eAAe,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACvD,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,QAAQ,EAAE,CAAC,CAAC;IAC9F,OAAO,IAAI,SAAS,CAAC,EAAE,CAAgC,CAAC;AAC1D,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,KAAQ,EACR,OAA4B;IAE5B,MAAM,QAAQ,GAAa,eAAe,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;IACvD,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,36 @@
1
+ import { Chain, ProtocolName } from "@wormhole-foundation/sdk-base";
2
+ import { SequenceId } from "./types";
3
+ import { UniversalAddress } from "./universalAddress";
4
+ import { VAA } from "./vaa";
5
+ import { AutomaticTokenBridge, TokenBridge } from "./protocols/tokenBridge";
6
+ import { AutomaticCircleBridge, CircleBridge } from "./protocols/circleBridge";
7
+ import { IbcTransferData } from "./protocols/ibc";
8
+ export type AttestationId<PN extends ProtocolName = ProtocolName> = PN extends "TokenBridge" | "AutomaticTokenBridge" | "AutomaticCircleBridge" ? WormholeMessageId : PN extends "CircleBridge" ? CircleMessageId : PN extends "IbcBridge" ? IbcMessageId : never;
9
+ export type Attestation<PN extends ProtocolName = ProtocolName> = PN extends "TokenBridge" | "AutomaticTokenBridge" ? AutomaticTokenBridge.VAA | TokenBridge.VAA : PN extends "AutomaticCircleBridge" ? AutomaticCircleBridge.VAA : PN extends "CircleBridge" ? CircleBridge.Attestation : PN extends "IbcBridge" ? IbcTransferData : never;
10
+ export type AttestationReceipt<PN extends ProtocolName = ProtocolName> = {
11
+ id: AttestationId<PN>;
12
+ attestation?: Attestation<PN>;
13
+ };
14
+ export type WormholeMessageId = {
15
+ chain: Chain;
16
+ emitter: UniversalAddress;
17
+ sequence: SequenceId;
18
+ };
19
+ export declare function isWormholeMessageId(thing: WormholeMessageId | any): thing is WormholeMessageId;
20
+ export type getWormholeAttestation = (id: WormholeMessageId) => Promise<VAA>;
21
+ export type CircleMessageId = {
22
+ hash: string;
23
+ };
24
+ export declare function isCircleMessageId(thing: CircleMessageId | any): thing is CircleMessageId;
25
+ export type CircleAttestation = string;
26
+ export type getCircleAttestation = (id: CircleMessageId) => Promise<CircleAttestation>;
27
+ export type IbcMessageId = {
28
+ chain: Chain;
29
+ srcPort: string;
30
+ srcChannel: string;
31
+ dstPort: string;
32
+ dstChannel: string;
33
+ sequence: number;
34
+ };
35
+ export declare function isIbcMessageId(thing: IbcMessageId | any): thing is IbcMessageId;
36
+ //# sourceMappingURL=attestation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attestation.d.ts","sourceRoot":"","sources":["../../src/attestation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC5E,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlD,MAAM,MAAM,aAAa,CAAC,EAAE,SAAS,YAAY,GAAG,YAAY,IAAI,EAAE,SAClE,aAAa,GACb,sBAAsB,GACtB,uBAAuB,GACvB,iBAAiB,GACjB,EAAE,SAAS,cAAc,GACzB,eAAe,GACf,EAAE,SAAS,WAAW,GACtB,YAAY,GACZ,KAAK,CAAC;AAEV,MAAM,MAAM,WAAW,CAAC,EAAE,SAAS,YAAY,GAAG,YAAY,IAAI,EAAE,SAChE,aAAa,GACb,sBAAsB,GACtB,oBAAoB,CAAC,GAAG,GAAG,WAAW,CAAC,GAAG,GAC1C,EAAE,SAAS,uBAAuB,GAClC,qBAAqB,CAAC,GAAG,GACzB,EAAE,SAAS,cAAc,GACzB,YAAY,CAAC,WAAW,GACxB,EAAE,SAAS,WAAW,GACtB,eAAe,GACf,KAAK,CAAC;AAIV,MAAM,MAAM,kBAAkB,CAAC,EAAE,SAAS,YAAY,GAAG,YAAY,IAAI;IACvE,EAAE,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;IACtB,WAAW,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;CAC/B,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,UAAU,CAAC;CACtB,CAAC;AACF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,GAAG,GAAG,KAAK,IAAI,iBAAiB,CAM9F;AAED,MAAM,MAAM,sBAAsB,GAAG,CAAC,EAAE,EAAE,iBAAiB,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;AAI7E,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,GAAG,GAAG,KAAK,IAAI,eAAe,CAExF;AAGD,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,oBAAoB,GAAG,CAAC,EAAE,EAAE,eAAe,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAIvF,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,GAAG,GAAG,KAAK,IAAI,YAAY,CAS/E"}