@wormhole-foundation/sdk-solana-tokenbridge 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 (397) hide show
  1. package/dist/cjs/anchor-idl/token_bridge.json +937 -0
  2. package/dist/cjs/automaticTokenBridge.d.ts +32 -0
  3. package/dist/cjs/automaticTokenBridge.d.ts.map +1 -0
  4. package/dist/cjs/automaticTokenBridge.js +170 -0
  5. package/dist/cjs/automaticTokenBridge.js.map +1 -0
  6. package/dist/cjs/automaticTokenBridgeType.d.ts +1984 -0
  7. package/dist/cjs/automaticTokenBridgeType.d.ts.map +1 -0
  8. package/dist/cjs/automaticTokenBridgeType.js +1986 -0
  9. package/dist/cjs/automaticTokenBridgeType.js.map +1 -0
  10. package/dist/cjs/consts.d.ts +6 -0
  11. package/dist/cjs/consts.d.ts.map +1 -0
  12. package/dist/cjs/consts.js +38 -0
  13. package/dist/cjs/consts.js.map +1 -0
  14. package/dist/cjs/index.d.ts +6 -0
  15. package/dist/cjs/index.d.ts.map +1 -0
  16. package/dist/cjs/index.js +28 -0
  17. package/dist/cjs/index.js.map +1 -0
  18. package/dist/cjs/tokenBridge.d.ts +33 -0
  19. package/dist/cjs/tokenBridge.d.ts.map +1 -0
  20. package/dist/cjs/tokenBridge.js +271 -0
  21. package/dist/cjs/tokenBridge.js.map +1 -0
  22. package/dist/cjs/tokenBridgeType.d.ts +938 -0
  23. package/dist/cjs/tokenBridgeType.d.ts.map +1 -0
  24. package/dist/cjs/tokenBridgeType.js +3 -0
  25. package/dist/cjs/tokenBridgeType.js.map +1 -0
  26. package/dist/cjs/utils/automaticTokenBridge/accounts/foreignContract.d.ts +10 -0
  27. package/dist/cjs/utils/automaticTokenBridge/accounts/foreignContract.d.ts.map +1 -0
  28. package/dist/cjs/utils/automaticTokenBridge/accounts/foreignContract.js +12 -0
  29. package/dist/cjs/utils/automaticTokenBridge/accounts/foreignContract.js.map +1 -0
  30. package/dist/cjs/utils/automaticTokenBridge/accounts/index.d.ts +7 -0
  31. package/dist/cjs/utils/automaticTokenBridge/accounts/index.d.ts.map +1 -0
  32. package/dist/cjs/utils/automaticTokenBridge/accounts/index.js +23 -0
  33. package/dist/cjs/utils/automaticTokenBridge/accounts/index.js.map +1 -0
  34. package/dist/cjs/utils/automaticTokenBridge/accounts/redeemerConfig.d.ts +9 -0
  35. package/dist/cjs/utils/automaticTokenBridge/accounts/redeemerConfig.d.ts.map +1 -0
  36. package/dist/cjs/utils/automaticTokenBridge/accounts/redeemerConfig.js +9 -0
  37. package/dist/cjs/utils/automaticTokenBridge/accounts/redeemerConfig.js.map +1 -0
  38. package/dist/cjs/utils/automaticTokenBridge/accounts/registeredToken.d.ts +8 -0
  39. package/dist/cjs/utils/automaticTokenBridge/accounts/registeredToken.d.ts.map +1 -0
  40. package/dist/cjs/utils/automaticTokenBridge/accounts/registeredToken.js +10 -0
  41. package/dist/cjs/utils/automaticTokenBridge/accounts/registeredToken.js.map +1 -0
  42. package/dist/cjs/utils/automaticTokenBridge/accounts/senderConfig.d.ts +10 -0
  43. package/dist/cjs/utils/automaticTokenBridge/accounts/senderConfig.d.ts.map +1 -0
  44. package/dist/cjs/utils/automaticTokenBridge/accounts/senderConfig.js +9 -0
  45. package/dist/cjs/utils/automaticTokenBridge/accounts/senderConfig.js.map +1 -0
  46. package/dist/cjs/utils/automaticTokenBridge/accounts/signerSequence.d.ts +7 -0
  47. package/dist/cjs/utils/automaticTokenBridge/accounts/signerSequence.d.ts.map +1 -0
  48. package/dist/cjs/utils/automaticTokenBridge/accounts/signerSequence.js +10 -0
  49. package/dist/cjs/utils/automaticTokenBridge/accounts/signerSequence.js.map +1 -0
  50. package/dist/cjs/utils/automaticTokenBridge/accounts/tmpTokenAccount.d.ts +3 -0
  51. package/dist/cjs/utils/automaticTokenBridge/accounts/tmpTokenAccount.d.ts.map +1 -0
  52. package/dist/cjs/utils/automaticTokenBridge/accounts/tmpTokenAccount.js +10 -0
  53. package/dist/cjs/utils/automaticTokenBridge/accounts/tmpTokenAccount.js.map +1 -0
  54. package/dist/cjs/utils/automaticTokenBridge/accounts/tokenTransferMessage.d.ts +4 -0
  55. package/dist/cjs/utils/automaticTokenBridge/accounts/tokenTransferMessage.d.ts.map +1 -0
  56. package/dist/cjs/utils/automaticTokenBridge/accounts/tokenTransferMessage.js +15 -0
  57. package/dist/cjs/utils/automaticTokenBridge/accounts/tokenTransferMessage.js.map +1 -0
  58. package/dist/cjs/utils/automaticTokenBridge/index.d.ts +4 -0
  59. package/dist/cjs/utils/automaticTokenBridge/index.d.ts.map +1 -0
  60. package/dist/cjs/utils/automaticTokenBridge/index.js +20 -0
  61. package/dist/cjs/utils/automaticTokenBridge/index.js.map +1 -0
  62. package/dist/cjs/utils/automaticTokenBridge/instructions/index.d.ts +3 -0
  63. package/dist/cjs/utils/automaticTokenBridge/instructions/index.d.ts.map +1 -0
  64. package/dist/cjs/utils/automaticTokenBridge/instructions/index.js +19 -0
  65. package/dist/cjs/utils/automaticTokenBridge/instructions/index.js.map +1 -0
  66. package/dist/cjs/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.d.ts +4 -0
  67. package/dist/cjs/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.d.ts.map +1 -0
  68. package/dist/cjs/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.js +42 -0
  69. package/dist/cjs/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.js.map +1 -0
  70. package/dist/cjs/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.d.ts +4 -0
  71. package/dist/cjs/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.d.ts.map +1 -0
  72. package/dist/cjs/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.js +44 -0
  73. package/dist/cjs/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.js.map +1 -0
  74. package/dist/cjs/utils/automaticTokenBridge/program.d.ts +5 -0
  75. package/dist/cjs/utils/automaticTokenBridge/program.d.ts.map +1 -0
  76. package/dist/cjs/utils/automaticTokenBridge/program.js +11 -0
  77. package/dist/cjs/utils/automaticTokenBridge/program.js.map +1 -0
  78. package/dist/cjs/utils/index.d.ts +4 -0
  79. package/dist/cjs/utils/index.d.ts.map +1 -0
  80. package/dist/cjs/utils/index.js +20 -0
  81. package/dist/cjs/utils/index.js.map +1 -0
  82. package/dist/cjs/utils/splMetadata.d.ts +62 -0
  83. package/dist/cjs/utils/splMetadata.d.ts.map +1 -0
  84. package/dist/cjs/utils/splMetadata.js +212 -0
  85. package/dist/cjs/utils/splMetadata.js.map +1 -0
  86. package/dist/cjs/utils/tokenBridge/accounts/config.d.ts +10 -0
  87. package/dist/cjs/utils/tokenBridge/accounts/config.d.ts.map +1 -0
  88. package/dist/cjs/utils/tokenBridge/accounts/config.js +30 -0
  89. package/dist/cjs/utils/tokenBridge/accounts/config.js.map +1 -0
  90. package/dist/cjs/utils/tokenBridge/accounts/custody.d.ts +3 -0
  91. package/dist/cjs/utils/tokenBridge/accounts/custody.d.ts.map +1 -0
  92. package/dist/cjs/utils/tokenBridge/accounts/custody.js +10 -0
  93. package/dist/cjs/utils/tokenBridge/accounts/custody.js.map +1 -0
  94. package/dist/cjs/utils/tokenBridge/accounts/endpoint.d.ts +12 -0
  95. package/dist/cjs/utils/tokenBridge/accounts/endpoint.d.ts.map +1 -0
  96. package/dist/cjs/utils/tokenBridge/accounts/endpoint.js +47 -0
  97. package/dist/cjs/utils/tokenBridge/accounts/endpoint.js.map +1 -0
  98. package/dist/cjs/utils/tokenBridge/accounts/index.d.ts +7 -0
  99. package/dist/cjs/utils/tokenBridge/accounts/index.d.ts.map +1 -0
  100. package/dist/cjs/utils/tokenBridge/accounts/index.js +23 -0
  101. package/dist/cjs/utils/tokenBridge/accounts/index.js.map +1 -0
  102. package/dist/cjs/utils/tokenBridge/accounts/signer.d.ts +5 -0
  103. package/dist/cjs/utils/tokenBridge/accounts/signer.d.ts.map +1 -0
  104. package/dist/cjs/utils/tokenBridge/accounts/signer.js +17 -0
  105. package/dist/cjs/utils/tokenBridge/accounts/signer.js.map +1 -0
  106. package/dist/cjs/utils/tokenBridge/accounts/transferWithPayload.d.ts +4 -0
  107. package/dist/cjs/utils/tokenBridge/accounts/transferWithPayload.d.ts.map +1 -0
  108. package/dist/cjs/utils/tokenBridge/accounts/transferWithPayload.js +13 -0
  109. package/dist/cjs/utils/tokenBridge/accounts/transferWithPayload.js.map +1 -0
  110. package/dist/cjs/utils/tokenBridge/accounts/wrapped.d.ts +15 -0
  111. package/dist/cjs/utils/tokenBridge/accounts/wrapped.d.ts.map +1 -0
  112. package/dist/cjs/utils/tokenBridge/accounts/wrapped.js +55 -0
  113. package/dist/cjs/utils/tokenBridge/accounts/wrapped.js.map +1 -0
  114. package/dist/cjs/utils/tokenBridge/coder/accounts.d.ts +13 -0
  115. package/dist/cjs/utils/tokenBridge/coder/accounts.d.ts.map +1 -0
  116. package/dist/cjs/utils/tokenBridge/coder/accounts.js +39 -0
  117. package/dist/cjs/utils/tokenBridge/coder/accounts.js.map +1 -0
  118. package/dist/cjs/utils/tokenBridge/coder/events.d.ts +7 -0
  119. package/dist/cjs/utils/tokenBridge/coder/events.d.ts.map +1 -0
  120. package/dist/cjs/utils/tokenBridge/coder/events.js +11 -0
  121. package/dist/cjs/utils/tokenBridge/coder/events.js.map +1 -0
  122. package/dist/cjs/utils/tokenBridge/coder/index.d.ts +16 -0
  123. package/dist/cjs/utils/tokenBridge/coder/index.d.ts.map +1 -0
  124. package/dist/cjs/utils/tokenBridge/coder/index.js +26 -0
  125. package/dist/cjs/utils/tokenBridge/coder/index.js.map +1 -0
  126. package/dist/cjs/utils/tokenBridge/coder/instruction.d.ts +27 -0
  127. package/dist/cjs/utils/tokenBridge/coder/instruction.d.ts.map +1 -0
  128. package/dist/cjs/utils/tokenBridge/coder/instruction.js +172 -0
  129. package/dist/cjs/utils/tokenBridge/coder/instruction.js.map +1 -0
  130. package/dist/cjs/utils/tokenBridge/coder/state.d.ts +8 -0
  131. package/dist/cjs/utils/tokenBridge/coder/state.d.ts.map +1 -0
  132. package/dist/cjs/utils/tokenBridge/coder/state.js +14 -0
  133. package/dist/cjs/utils/tokenBridge/coder/state.js.map +1 -0
  134. package/dist/cjs/utils/tokenBridge/coder/types.d.ts +8 -0
  135. package/dist/cjs/utils/tokenBridge/coder/types.d.ts.map +1 -0
  136. package/dist/cjs/utils/tokenBridge/coder/types.js +14 -0
  137. package/dist/cjs/utils/tokenBridge/coder/types.js.map +1 -0
  138. package/dist/cjs/utils/tokenBridge/cpi.d.ts +258 -0
  139. package/dist/cjs/utils/tokenBridge/cpi.d.ts.map +1 -0
  140. package/dist/cjs/utils/tokenBridge/cpi.js +184 -0
  141. package/dist/cjs/utils/tokenBridge/cpi.js.map +1 -0
  142. package/dist/cjs/utils/tokenBridge/index.d.ts +5 -0
  143. package/dist/cjs/utils/tokenBridge/index.d.ts.map +1 -0
  144. package/dist/cjs/utils/tokenBridge/index.js +21 -0
  145. package/dist/cjs/utils/tokenBridge/index.js.map +1 -0
  146. package/dist/cjs/utils/tokenBridge/instructions/approve.d.ts +3 -0
  147. package/dist/cjs/utils/tokenBridge/instructions/approve.d.ts.map +1 -0
  148. package/dist/cjs/utils/tokenBridge/instructions/approve.js +11 -0
  149. package/dist/cjs/utils/tokenBridge/instructions/approve.js.map +1 -0
  150. package/dist/cjs/utils/tokenBridge/instructions/attestToken.d.ts +20 -0
  151. package/dist/cjs/utils/tokenBridge/instructions/attestToken.d.ts.map +1 -0
  152. package/dist/cjs/utils/tokenBridge/instructions/attestToken.js +42 -0
  153. package/dist/cjs/utils/tokenBridge/instructions/attestToken.js.map +1 -0
  154. package/dist/cjs/utils/tokenBridge/instructions/completeNative.d.ts +21 -0
  155. package/dist/cjs/utils/tokenBridge/instructions/completeNative.d.ts.map +1 -0
  156. package/dist/cjs/utils/tokenBridge/instructions/completeNative.js +44 -0
  157. package/dist/cjs/utils/tokenBridge/instructions/completeNative.js.map +1 -0
  158. package/dist/cjs/utils/tokenBridge/instructions/completeWrapped.d.ts +21 -0
  159. package/dist/cjs/utils/tokenBridge/instructions/completeWrapped.d.ts.map +1 -0
  160. package/dist/cjs/utils/tokenBridge/instructions/completeWrapped.js +44 -0
  161. package/dist/cjs/utils/tokenBridge/instructions/completeWrapped.js.map +1 -0
  162. package/dist/cjs/utils/tokenBridge/instructions/createWrapped.d.ts +21 -0
  163. package/dist/cjs/utils/tokenBridge/instructions/createWrapped.d.ts.map +1 -0
  164. package/dist/cjs/utils/tokenBridge/instructions/createWrapped.js +43 -0
  165. package/dist/cjs/utils/tokenBridge/instructions/createWrapped.js.map +1 -0
  166. package/dist/cjs/utils/tokenBridge/instructions/governance.d.ts +31 -0
  167. package/dist/cjs/utils/tokenBridge/instructions/governance.d.ts.map +1 -0
  168. package/dist/cjs/utils/tokenBridge/instructions/governance.js +64 -0
  169. package/dist/cjs/utils/tokenBridge/instructions/governance.js.map +1 -0
  170. package/dist/cjs/utils/tokenBridge/instructions/index.d.ts +12 -0
  171. package/dist/cjs/utils/tokenBridge/instructions/index.d.ts.map +1 -0
  172. package/dist/cjs/utils/tokenBridge/instructions/index.js +28 -0
  173. package/dist/cjs/utils/tokenBridge/instructions/index.js.map +1 -0
  174. package/dist/cjs/utils/tokenBridge/instructions/initialize.d.ts +10 -0
  175. package/dist/cjs/utils/tokenBridge/instructions/initialize.d.ts.map +1 -0
  176. package/dist/cjs/utils/tokenBridge/instructions/initialize.js +28 -0
  177. package/dist/cjs/utils/tokenBridge/instructions/initialize.js.map +1 -0
  178. package/dist/cjs/utils/tokenBridge/instructions/transferNative.d.ts +24 -0
  179. package/dist/cjs/utils/tokenBridge/instructions/transferNative.d.ts.map +1 -0
  180. package/dist/cjs/utils/tokenBridge/instructions/transferNative.js +44 -0
  181. package/dist/cjs/utils/tokenBridge/instructions/transferNative.js.map +1 -0
  182. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts +25 -0
  183. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts.map +1 -0
  184. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.js +45 -0
  185. package/dist/cjs/utils/tokenBridge/instructions/transferNativeWithPayload.js.map +1 -0
  186. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.d.ts +24 -0
  187. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.d.ts.map +1 -0
  188. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.js +45 -0
  189. package/dist/cjs/utils/tokenBridge/instructions/transferWrapped.js.map +1 -0
  190. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts +25 -0
  191. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts.map +1 -0
  192. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.js +46 -0
  193. package/dist/cjs/utils/tokenBridge/instructions/transferWrappedWithPayload.js.map +1 -0
  194. package/dist/cjs/utils/tokenBridge/program.d.ts +8 -0
  195. package/dist/cjs/utils/tokenBridge/program.d.ts.map +1 -0
  196. package/dist/cjs/utils/tokenBridge/program.js +24 -0
  197. package/dist/cjs/utils/tokenBridge/program.js.map +1 -0
  198. package/dist/esm/anchor-idl/token_bridge.json +937 -0
  199. package/dist/esm/automaticTokenBridge.d.ts +32 -0
  200. package/dist/esm/automaticTokenBridge.d.ts.map +1 -0
  201. package/dist/esm/automaticTokenBridge.js +166 -0
  202. package/dist/esm/automaticTokenBridge.js.map +1 -0
  203. package/dist/esm/automaticTokenBridgeType.d.ts +1984 -0
  204. package/dist/esm/automaticTokenBridgeType.d.ts.map +1 -0
  205. package/dist/esm/automaticTokenBridgeType.js +1983 -0
  206. package/dist/esm/automaticTokenBridgeType.js.map +1 -0
  207. package/dist/esm/consts.d.ts +6 -0
  208. package/dist/esm/consts.d.ts.map +1 -0
  209. package/dist/esm/consts.js +35 -0
  210. package/dist/esm/consts.js.map +1 -0
  211. package/dist/esm/index.d.ts +6 -0
  212. package/dist/esm/index.d.ts.map +1 -0
  213. package/dist/esm/index.js +12 -0
  214. package/dist/esm/index.js.map +1 -0
  215. package/dist/esm/tokenBridge.d.ts +33 -0
  216. package/dist/esm/tokenBridge.d.ts.map +1 -0
  217. package/dist/esm/tokenBridge.js +267 -0
  218. package/dist/esm/tokenBridge.js.map +1 -0
  219. package/dist/esm/tokenBridgeType.d.ts +938 -0
  220. package/dist/esm/tokenBridgeType.d.ts.map +1 -0
  221. package/dist/esm/tokenBridgeType.js +2 -0
  222. package/dist/esm/tokenBridgeType.js.map +1 -0
  223. package/dist/esm/utils/automaticTokenBridge/accounts/foreignContract.d.ts +10 -0
  224. package/dist/esm/utils/automaticTokenBridge/accounts/foreignContract.d.ts.map +1 -0
  225. package/dist/esm/utils/automaticTokenBridge/accounts/foreignContract.js +8 -0
  226. package/dist/esm/utils/automaticTokenBridge/accounts/foreignContract.js.map +1 -0
  227. package/dist/esm/utils/automaticTokenBridge/accounts/index.d.ts +7 -0
  228. package/dist/esm/utils/automaticTokenBridge/accounts/index.d.ts.map +1 -0
  229. package/dist/esm/utils/automaticTokenBridge/accounts/index.js +7 -0
  230. package/dist/esm/utils/automaticTokenBridge/accounts/index.js.map +1 -0
  231. package/dist/esm/utils/automaticTokenBridge/accounts/redeemerConfig.d.ts +9 -0
  232. package/dist/esm/utils/automaticTokenBridge/accounts/redeemerConfig.d.ts.map +1 -0
  233. package/dist/esm/utils/automaticTokenBridge/accounts/redeemerConfig.js +5 -0
  234. package/dist/esm/utils/automaticTokenBridge/accounts/redeemerConfig.js.map +1 -0
  235. package/dist/esm/utils/automaticTokenBridge/accounts/registeredToken.d.ts +8 -0
  236. package/dist/esm/utils/automaticTokenBridge/accounts/registeredToken.d.ts.map +1 -0
  237. package/dist/esm/utils/automaticTokenBridge/accounts/registeredToken.js +6 -0
  238. package/dist/esm/utils/automaticTokenBridge/accounts/registeredToken.js.map +1 -0
  239. package/dist/esm/utils/automaticTokenBridge/accounts/senderConfig.d.ts +10 -0
  240. package/dist/esm/utils/automaticTokenBridge/accounts/senderConfig.d.ts.map +1 -0
  241. package/dist/esm/utils/automaticTokenBridge/accounts/senderConfig.js +5 -0
  242. package/dist/esm/utils/automaticTokenBridge/accounts/senderConfig.js.map +1 -0
  243. package/dist/esm/utils/automaticTokenBridge/accounts/signerSequence.d.ts +7 -0
  244. package/dist/esm/utils/automaticTokenBridge/accounts/signerSequence.d.ts.map +1 -0
  245. package/dist/esm/utils/automaticTokenBridge/accounts/signerSequence.js +6 -0
  246. package/dist/esm/utils/automaticTokenBridge/accounts/signerSequence.js.map +1 -0
  247. package/dist/esm/utils/automaticTokenBridge/accounts/tmpTokenAccount.d.ts +3 -0
  248. package/dist/esm/utils/automaticTokenBridge/accounts/tmpTokenAccount.d.ts.map +1 -0
  249. package/dist/esm/utils/automaticTokenBridge/accounts/tmpTokenAccount.js +6 -0
  250. package/dist/esm/utils/automaticTokenBridge/accounts/tmpTokenAccount.js.map +1 -0
  251. package/dist/esm/utils/automaticTokenBridge/accounts/tokenTransferMessage.d.ts +4 -0
  252. package/dist/esm/utils/automaticTokenBridge/accounts/tokenTransferMessage.d.ts.map +1 -0
  253. package/dist/esm/utils/automaticTokenBridge/accounts/tokenTransferMessage.js +11 -0
  254. package/dist/esm/utils/automaticTokenBridge/accounts/tokenTransferMessage.js.map +1 -0
  255. package/dist/esm/utils/automaticTokenBridge/index.d.ts +4 -0
  256. package/dist/esm/utils/automaticTokenBridge/index.d.ts.map +1 -0
  257. package/dist/esm/utils/automaticTokenBridge/index.js +4 -0
  258. package/dist/esm/utils/automaticTokenBridge/index.js.map +1 -0
  259. package/dist/esm/utils/automaticTokenBridge/instructions/index.d.ts +3 -0
  260. package/dist/esm/utils/automaticTokenBridge/instructions/index.d.ts.map +1 -0
  261. package/dist/esm/utils/automaticTokenBridge/instructions/index.js +3 -0
  262. package/dist/esm/utils/automaticTokenBridge/instructions/index.js.map +1 -0
  263. package/dist/esm/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.d.ts +4 -0
  264. package/dist/esm/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.d.ts.map +1 -0
  265. package/dist/esm/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.js +38 -0
  266. package/dist/esm/utils/automaticTokenBridge/instructions/transferNativeTokensWithRelay.js.map +1 -0
  267. package/dist/esm/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.d.ts +4 -0
  268. package/dist/esm/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.d.ts.map +1 -0
  269. package/dist/esm/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.js +40 -0
  270. package/dist/esm/utils/automaticTokenBridge/instructions/transferWrappedTokensWithRelay.js.map +1 -0
  271. package/dist/esm/utils/automaticTokenBridge/program.d.ts +5 -0
  272. package/dist/esm/utils/automaticTokenBridge/program.d.ts.map +1 -0
  273. package/dist/esm/utils/automaticTokenBridge/program.js +7 -0
  274. package/dist/esm/utils/automaticTokenBridge/program.js.map +1 -0
  275. package/dist/esm/utils/index.d.ts +4 -0
  276. package/dist/esm/utils/index.d.ts.map +1 -0
  277. package/dist/esm/utils/index.js +4 -0
  278. package/dist/esm/utils/index.js.map +1 -0
  279. package/dist/esm/utils/splMetadata.d.ts +62 -0
  280. package/dist/esm/utils/splMetadata.d.ts.map +1 -0
  281. package/dist/esm/utils/splMetadata.js +202 -0
  282. package/dist/esm/utils/splMetadata.js.map +1 -0
  283. package/dist/esm/utils/tokenBridge/accounts/config.d.ts +10 -0
  284. package/dist/esm/utils/tokenBridge/accounts/config.d.ts.map +1 -0
  285. package/dist/esm/utils/tokenBridge/accounts/config.js +24 -0
  286. package/dist/esm/utils/tokenBridge/accounts/config.js.map +1 -0
  287. package/dist/esm/utils/tokenBridge/accounts/custody.d.ts +3 -0
  288. package/dist/esm/utils/tokenBridge/accounts/custody.d.ts.map +1 -0
  289. package/dist/esm/utils/tokenBridge/accounts/custody.js +6 -0
  290. package/dist/esm/utils/tokenBridge/accounts/custody.js.map +1 -0
  291. package/dist/esm/utils/tokenBridge/accounts/endpoint.d.ts +12 -0
  292. package/dist/esm/utils/tokenBridge/accounts/endpoint.d.ts.map +1 -0
  293. package/dist/esm/utils/tokenBridge/accounts/endpoint.js +41 -0
  294. package/dist/esm/utils/tokenBridge/accounts/endpoint.js.map +1 -0
  295. package/dist/esm/utils/tokenBridge/accounts/index.d.ts +7 -0
  296. package/dist/esm/utils/tokenBridge/accounts/index.d.ts.map +1 -0
  297. package/dist/esm/utils/tokenBridge/accounts/index.js +7 -0
  298. package/dist/esm/utils/tokenBridge/accounts/index.js.map +1 -0
  299. package/dist/esm/utils/tokenBridge/accounts/signer.d.ts +5 -0
  300. package/dist/esm/utils/tokenBridge/accounts/signer.d.ts.map +1 -0
  301. package/dist/esm/utils/tokenBridge/accounts/signer.js +11 -0
  302. package/dist/esm/utils/tokenBridge/accounts/signer.js.map +1 -0
  303. package/dist/esm/utils/tokenBridge/accounts/transferWithPayload.d.ts +4 -0
  304. package/dist/esm/utils/tokenBridge/accounts/transferWithPayload.d.ts.map +1 -0
  305. package/dist/esm/utils/tokenBridge/accounts/transferWithPayload.js +8 -0
  306. package/dist/esm/utils/tokenBridge/accounts/transferWithPayload.js.map +1 -0
  307. package/dist/esm/utils/tokenBridge/accounts/wrapped.d.ts +15 -0
  308. package/dist/esm/utils/tokenBridge/accounts/wrapped.d.ts.map +1 -0
  309. package/dist/esm/utils/tokenBridge/accounts/wrapped.js +48 -0
  310. package/dist/esm/utils/tokenBridge/accounts/wrapped.js.map +1 -0
  311. package/dist/esm/utils/tokenBridge/coder/accounts.d.ts +13 -0
  312. package/dist/esm/utils/tokenBridge/coder/accounts.d.ts.map +1 -0
  313. package/dist/esm/utils/tokenBridge/coder/accounts.js +35 -0
  314. package/dist/esm/utils/tokenBridge/coder/accounts.js.map +1 -0
  315. package/dist/esm/utils/tokenBridge/coder/events.d.ts +7 -0
  316. package/dist/esm/utils/tokenBridge/coder/events.d.ts.map +1 -0
  317. package/dist/esm/utils/tokenBridge/coder/events.js +7 -0
  318. package/dist/esm/utils/tokenBridge/coder/events.js.map +1 -0
  319. package/dist/esm/utils/tokenBridge/coder/index.d.ts +16 -0
  320. package/dist/esm/utils/tokenBridge/coder/index.d.ts.map +1 -0
  321. package/dist/esm/utils/tokenBridge/coder/index.js +21 -0
  322. package/dist/esm/utils/tokenBridge/coder/index.js.map +1 -0
  323. package/dist/esm/utils/tokenBridge/coder/instruction.d.ts +27 -0
  324. package/dist/esm/utils/tokenBridge/coder/instruction.d.ts.map +1 -0
  325. package/dist/esm/utils/tokenBridge/coder/instruction.js +168 -0
  326. package/dist/esm/utils/tokenBridge/coder/instruction.js.map +1 -0
  327. package/dist/esm/utils/tokenBridge/coder/state.d.ts +8 -0
  328. package/dist/esm/utils/tokenBridge/coder/state.d.ts.map +1 -0
  329. package/dist/esm/utils/tokenBridge/coder/state.js +10 -0
  330. package/dist/esm/utils/tokenBridge/coder/state.js.map +1 -0
  331. package/dist/esm/utils/tokenBridge/coder/types.d.ts +8 -0
  332. package/dist/esm/utils/tokenBridge/coder/types.d.ts.map +1 -0
  333. package/dist/esm/utils/tokenBridge/coder/types.js +10 -0
  334. package/dist/esm/utils/tokenBridge/coder/types.js.map +1 -0
  335. package/dist/esm/utils/tokenBridge/cpi.d.ts +258 -0
  336. package/dist/esm/utils/tokenBridge/cpi.d.ts.map +1 -0
  337. package/dist/esm/utils/tokenBridge/cpi.js +176 -0
  338. package/dist/esm/utils/tokenBridge/cpi.js.map +1 -0
  339. package/dist/esm/utils/tokenBridge/index.d.ts +5 -0
  340. package/dist/esm/utils/tokenBridge/index.d.ts.map +1 -0
  341. package/dist/esm/utils/tokenBridge/index.js +5 -0
  342. package/dist/esm/utils/tokenBridge/index.js.map +1 -0
  343. package/dist/esm/utils/tokenBridge/instructions/approve.d.ts +3 -0
  344. package/dist/esm/utils/tokenBridge/instructions/approve.d.ts.map +1 -0
  345. package/dist/esm/utils/tokenBridge/instructions/approve.js +7 -0
  346. package/dist/esm/utils/tokenBridge/instructions/approve.js.map +1 -0
  347. package/dist/esm/utils/tokenBridge/instructions/attestToken.d.ts +20 -0
  348. package/dist/esm/utils/tokenBridge/instructions/attestToken.d.ts.map +1 -0
  349. package/dist/esm/utils/tokenBridge/instructions/attestToken.js +37 -0
  350. package/dist/esm/utils/tokenBridge/instructions/attestToken.js.map +1 -0
  351. package/dist/esm/utils/tokenBridge/instructions/completeNative.d.ts +21 -0
  352. package/dist/esm/utils/tokenBridge/instructions/completeNative.d.ts.map +1 -0
  353. package/dist/esm/utils/tokenBridge/instructions/completeNative.js +39 -0
  354. package/dist/esm/utils/tokenBridge/instructions/completeNative.js.map +1 -0
  355. package/dist/esm/utils/tokenBridge/instructions/completeWrapped.d.ts +21 -0
  356. package/dist/esm/utils/tokenBridge/instructions/completeWrapped.d.ts.map +1 -0
  357. package/dist/esm/utils/tokenBridge/instructions/completeWrapped.js +39 -0
  358. package/dist/esm/utils/tokenBridge/instructions/completeWrapped.js.map +1 -0
  359. package/dist/esm/utils/tokenBridge/instructions/createWrapped.d.ts +21 -0
  360. package/dist/esm/utils/tokenBridge/instructions/createWrapped.d.ts.map +1 -0
  361. package/dist/esm/utils/tokenBridge/instructions/createWrapped.js +38 -0
  362. package/dist/esm/utils/tokenBridge/instructions/createWrapped.js.map +1 -0
  363. package/dist/esm/utils/tokenBridge/instructions/governance.d.ts +31 -0
  364. package/dist/esm/utils/tokenBridge/instructions/governance.d.ts.map +1 -0
  365. package/dist/esm/utils/tokenBridge/instructions/governance.js +57 -0
  366. package/dist/esm/utils/tokenBridge/instructions/governance.js.map +1 -0
  367. package/dist/esm/utils/tokenBridge/instructions/index.d.ts +12 -0
  368. package/dist/esm/utils/tokenBridge/instructions/index.d.ts.map +1 -0
  369. package/dist/esm/utils/tokenBridge/instructions/index.js +12 -0
  370. package/dist/esm/utils/tokenBridge/instructions/index.js.map +1 -0
  371. package/dist/esm/utils/tokenBridge/instructions/initialize.d.ts +10 -0
  372. package/dist/esm/utils/tokenBridge/instructions/initialize.d.ts.map +1 -0
  373. package/dist/esm/utils/tokenBridge/instructions/initialize.js +23 -0
  374. package/dist/esm/utils/tokenBridge/instructions/initialize.js.map +1 -0
  375. package/dist/esm/utils/tokenBridge/instructions/transferNative.d.ts +24 -0
  376. package/dist/esm/utils/tokenBridge/instructions/transferNative.d.ts.map +1 -0
  377. package/dist/esm/utils/tokenBridge/instructions/transferNative.js +39 -0
  378. package/dist/esm/utils/tokenBridge/instructions/transferNative.js.map +1 -0
  379. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts +25 -0
  380. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.d.ts.map +1 -0
  381. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.js +40 -0
  382. package/dist/esm/utils/tokenBridge/instructions/transferNativeWithPayload.js.map +1 -0
  383. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.d.ts +24 -0
  384. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.d.ts.map +1 -0
  385. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.js +40 -0
  386. package/dist/esm/utils/tokenBridge/instructions/transferWrapped.js.map +1 -0
  387. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts +25 -0
  388. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.d.ts.map +1 -0
  389. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.js +41 -0
  390. package/dist/esm/utils/tokenBridge/instructions/transferWrappedWithPayload.js.map +1 -0
  391. package/dist/esm/utils/tokenBridge/program.d.ts +8 -0
  392. package/dist/esm/utils/tokenBridge/program.d.ts.map +1 -0
  393. package/dist/esm/utils/tokenBridge/program.js +15 -0
  394. package/dist/esm/utils/tokenBridge/program.js.map +1 -0
  395. package/dist/tsconfig.cjs.tsbuildinfo +1 -0
  396. package/dist/tsconfig.esm.tsbuildinfo +1 -0
  397. package/package.json +57 -0
@@ -0,0 +1,62 @@
1
+ /// <reference types="node" />
2
+ import { Commitment, Connection, PublicKey, PublicKeyInitData, TransactionInstruction } from '@solana/web3.js';
3
+ export declare class Creator {
4
+ address: PublicKey;
5
+ verified: boolean;
6
+ share: number;
7
+ constructor(address: PublicKeyInitData, verified: boolean, share: number);
8
+ static size: number;
9
+ serialize(): Buffer;
10
+ static deserialize(data: Buffer): Creator;
11
+ }
12
+ export declare class Data {
13
+ name: string;
14
+ symbol: string;
15
+ uri: string;
16
+ sellerFeeBasisPoints: number;
17
+ creators: Creator[] | null;
18
+ constructor(name: string, symbol: string, uri: string, sellerFeeBasisPoints: number, creators: Creator[] | null);
19
+ serialize(): Buffer;
20
+ static deserialize(data: Buffer): Data;
21
+ }
22
+ export declare class CreateMetadataAccountArgs extends Data {
23
+ isMutable: boolean;
24
+ constructor(name: string, symbol: string, uri: string, sellerFeeBasisPoints: number, creators: Creator[] | null, isMutable: boolean);
25
+ static serialize(name: string, symbol: string, uri: string, sellerFeeBasisPoints: number, creators: Creator[] | null, isMutable: boolean): Buffer;
26
+ static serializeInstructionData(name: string, symbol: string, uri: string, sellerFeeBasisPoints: number, creators: Creator[] | null, isMutable: boolean): Buffer;
27
+ serialize(): Buffer;
28
+ }
29
+ export declare class SplTokenMetadataProgram {
30
+ /**
31
+ * @internal
32
+ */
33
+ constructor();
34
+ /**
35
+ * Public key that identifies the SPL Token Metadata program
36
+ */
37
+ static programId: PublicKey;
38
+ static createMetadataAccounts(payer: PublicKey, mint: PublicKey, mintAuthority: PublicKey, name: string, symbol: string, updateAuthority: PublicKey, updateAuthorityIsSigner?: boolean, uri?: string, creators?: Creator[] | null, sellerFeeBasisPoints?: number, isMutable?: boolean, metadataAccount?: PublicKey): TransactionInstruction;
39
+ }
40
+ export declare function deriveSplTokenMetadataKey(mint: PublicKeyInitData): PublicKey;
41
+ export declare enum Key {
42
+ Uninitialized = 0,
43
+ EditionV1 = 1,
44
+ MasterEditionV1 = 2,
45
+ ReservationListV1 = 3,
46
+ MetadataV1 = 4,
47
+ ReservationListV2 = 5,
48
+ MasterEditionV2 = 6,
49
+ EditionMarker = 7
50
+ }
51
+ export declare class Metadata {
52
+ key: Key;
53
+ updateAuthority: PublicKey;
54
+ mint: PublicKey;
55
+ data: Data;
56
+ primarySaleHappened: boolean;
57
+ isMutable: boolean;
58
+ constructor(key: number, updateAuthority: PublicKeyInitData, mint: PublicKeyInitData, data: Data, primarySaleHappened: boolean, isMutable: boolean);
59
+ static deserialize(data: Buffer): Metadata;
60
+ }
61
+ export declare function getMetadata(connection: Connection, mint: PublicKeyInitData, commitment?: Commitment): Promise<Metadata>;
62
+ //# sourceMappingURL=splMetadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"splMetadata.d.ts","sourceRoot":"","sources":["../../../src/utils/splMetadata.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,UAAU,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EAGjB,sBAAsB,EACvB,MAAM,iBAAiB,CAAC;AAGzB,qBAAa,OAAO;IAClB,OAAO,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;gBAEF,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM;IAMxE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAM;IAEzB,SAAS;IAUT,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAM1C;AAED,qBAAa,IAAI;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,oBAAoB,EAAE,MAAM,CAAC;IAC7B,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;gBAGzB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,oBAAoB,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI;IAS5B,SAAS;IAwCT,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;CAgCvC;AAED,qBAAa,yBAA0B,SAAQ,IAAI;IACjD,SAAS,EAAE,OAAO,CAAC;gBAGjB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,oBAAoB,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAC1B,SAAS,EAAE,OAAO;IAMpB,MAAM,CAAC,SAAS,CACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,oBAAoB,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAC1B,SAAS,EAAE,OAAO;IAYpB,MAAM,CAAC,wBAAwB,CAC7B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,oBAAoB,EAAE,MAAM,EAC5B,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,EAC1B,SAAS,EAAE,OAAO;IAeX,SAAS;CAMnB;AAED,qBAAa,uBAAuB;IAClC;;OAEG;;IAGH;;OAEG;IACH,MAAM,CAAC,SAAS,EAAE,SAAS,CAEzB;IAEF,MAAM,CAAC,sBAAsB,CAC3B,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,SAAS,EACf,aAAa,EAAE,SAAS,EACxB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,eAAe,EAAE,SAAS,EAC1B,uBAAuB,GAAE,OAAe,EACxC,GAAG,CAAC,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,EAC3B,oBAAoB,CAAC,EAAE,MAAM,EAC7B,SAAS,GAAE,OAAe,EAC1B,eAAe,GAAE,SAA2C,GAC3D,sBAAsB;CAwB1B;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAS5E;AAED,oBAAY,GAAG;IACb,aAAa,IAAA;IACb,SAAS,IAAA;IACT,eAAe,IAAA;IACf,iBAAiB,IAAA;IACjB,UAAU,IAAA;IACV,iBAAiB,IAAA;IACjB,eAAe,IAAA;IACf,aAAa,IAAA;CACd;AAED,qBAAa,QAAQ;IACnB,GAAG,EAAE,GAAG,CAAC;IACT,eAAe,EAAE,SAAS,CAAC;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,mBAAmB,EAAE,OAAO,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;gBAGjB,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,iBAAiB,EAClC,IAAI,EAAE,iBAAiB,EACvB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,OAAO,EAC5B,SAAS,EAAE,OAAO;IAUpB,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;CAiB3C;AAED,wBAAsB,WAAW,CAC/B,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,iBAAiB,EACvB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,QAAQ,CAAC,CAInB"}
@@ -0,0 +1,212 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getMetadata = exports.Metadata = exports.Key = exports.deriveSplTokenMetadataKey = exports.SplTokenMetadataProgram = exports.CreateMetadataAccountArgs = exports.Data = exports.Creator = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
6
+ class Creator {
7
+ address;
8
+ verified;
9
+ share;
10
+ constructor(address, verified, share) {
11
+ this.address = new web3_js_1.PublicKey(address);
12
+ this.verified = verified;
13
+ this.share = share;
14
+ }
15
+ static size = 34;
16
+ serialize() {
17
+ const serialized = Buffer.alloc(Creator.size);
18
+ serialized.write(this.address.toBuffer().toString('hex'), 0, 'hex');
19
+ if (this.verified) {
20
+ serialized.writeUInt8(1, 32);
21
+ }
22
+ serialized.writeUInt8(this.share, 33);
23
+ return serialized;
24
+ }
25
+ static deserialize(data) {
26
+ const address = data.subarray(0, 32);
27
+ const verified = data.readUInt8(32) > 0;
28
+ const share = data.readUInt8(33);
29
+ return new Creator(address, verified, share);
30
+ }
31
+ }
32
+ exports.Creator = Creator;
33
+ class Data {
34
+ name;
35
+ symbol;
36
+ uri;
37
+ sellerFeeBasisPoints;
38
+ creators;
39
+ constructor(name, symbol, uri, sellerFeeBasisPoints, creators) {
40
+ this.name = name;
41
+ this.symbol = symbol;
42
+ this.uri = uri;
43
+ this.sellerFeeBasisPoints = sellerFeeBasisPoints;
44
+ this.creators = creators;
45
+ }
46
+ serialize() {
47
+ const nameLen = this.name.length;
48
+ const symbolLen = this.symbol.length;
49
+ const uriLen = this.uri.length;
50
+ const creators = this.creators;
51
+ const [creatorsLen, creatorsSize] = (() => {
52
+ if (creators === null) {
53
+ return [0, 0];
54
+ }
55
+ const creatorsLen = creators.length;
56
+ return [creatorsLen, 4 + creatorsLen * Creator.size];
57
+ })();
58
+ const serialized = Buffer.alloc(15 + nameLen + symbolLen + uriLen + creatorsSize);
59
+ serialized.writeUInt32LE(nameLen, 0);
60
+ serialized.write(this.name, 4);
61
+ serialized.writeUInt32LE(symbolLen, 4 + nameLen);
62
+ serialized.write(this.symbol, 8 + nameLen);
63
+ serialized.writeUInt32LE(uriLen, 8 + nameLen + symbolLen);
64
+ serialized.write(this.uri, 12 + nameLen + symbolLen);
65
+ serialized.writeUInt16LE(this.sellerFeeBasisPoints, 12 + nameLen + symbolLen + uriLen);
66
+ if (creators === null) {
67
+ serialized.writeUInt8(0, 14 + nameLen + symbolLen + uriLen);
68
+ }
69
+ else {
70
+ serialized.writeUInt8(1, 14 + nameLen + symbolLen + uriLen);
71
+ serialized.writeUInt32LE(creatorsLen, 15 + nameLen + symbolLen + uriLen);
72
+ for (let i = 0; i < creatorsLen; ++i) {
73
+ const creator = creators.at(i);
74
+ const idx = 19 + nameLen + symbolLen + uriLen + i * Creator.size;
75
+ serialized.write(creator.serialize().toString('hex'), idx, 'hex');
76
+ }
77
+ }
78
+ return serialized;
79
+ }
80
+ static deserialize(data) {
81
+ const nameLen = data.readUInt32LE(0);
82
+ const name = data.subarray(4, 4 + nameLen).toString();
83
+ const symbolLen = data.readUInt32LE(4 + nameLen);
84
+ const symbol = data
85
+ .subarray(8 + nameLen, 8 + nameLen + symbolLen)
86
+ .toString();
87
+ const uriLen = data.readUInt32LE(8 + nameLen + symbolLen);
88
+ const uri = data
89
+ .subarray(12 + nameLen + symbolLen, 12 + nameLen + symbolLen + uriLen)
90
+ .toString();
91
+ const sellerFeeBasisPoints = data.readUInt16LE(12 + nameLen + symbolLen + uriLen);
92
+ const optionCreators = data.readUInt8(14 + nameLen + symbolLen + uriLen);
93
+ const creators = (() => {
94
+ if (optionCreators == 0) {
95
+ return null;
96
+ }
97
+ const creators = [];
98
+ const creatorsLen = data.readUInt32LE(15 + nameLen + symbolLen + uriLen);
99
+ for (let i = 0; i < creatorsLen; ++i) {
100
+ const idx = 19 + nameLen + symbolLen + uriLen + i * Creator.size;
101
+ creators.push(Creator.deserialize(data.subarray(idx, idx + Creator.size)));
102
+ }
103
+ return creators;
104
+ })();
105
+ return new Data(name, symbol, uri, sellerFeeBasisPoints, creators);
106
+ }
107
+ }
108
+ exports.Data = Data;
109
+ class CreateMetadataAccountArgs extends Data {
110
+ isMutable;
111
+ constructor(name, symbol, uri, sellerFeeBasisPoints, creators, isMutable) {
112
+ super(name, symbol, uri, sellerFeeBasisPoints, creators);
113
+ this.isMutable = isMutable;
114
+ }
115
+ static serialize(name, symbol, uri, sellerFeeBasisPoints, creators, isMutable) {
116
+ return new CreateMetadataAccountArgs(name, symbol, uri, sellerFeeBasisPoints, creators, isMutable).serialize();
117
+ }
118
+ static serializeInstructionData(name, symbol, uri, sellerFeeBasisPoints, creators, isMutable) {
119
+ return Buffer.concat([
120
+ Buffer.alloc(1, 0),
121
+ CreateMetadataAccountArgs.serialize(name, symbol, uri, sellerFeeBasisPoints, creators, isMutable),
122
+ ]);
123
+ }
124
+ serialize() {
125
+ return Buffer.concat([
126
+ super.serialize(),
127
+ Buffer.alloc(1, this.isMutable ? 1 : 0),
128
+ ]);
129
+ }
130
+ }
131
+ exports.CreateMetadataAccountArgs = CreateMetadataAccountArgs;
132
+ class SplTokenMetadataProgram {
133
+ /**
134
+ * @internal
135
+ */
136
+ constructor() { }
137
+ /**
138
+ * Public key that identifies the SPL Token Metadata program
139
+ */
140
+ static programId = new web3_js_1.PublicKey('metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s');
141
+ static createMetadataAccounts(payer, mint, mintAuthority, name, symbol, updateAuthority, updateAuthorityIsSigner = false, uri, creators, sellerFeeBasisPoints, isMutable = false, metadataAccount = deriveSplTokenMetadataKey(mint)) {
142
+ const keys = [
143
+ sdk_solana_1.utils.newAccountMeta(metadataAccount, false),
144
+ sdk_solana_1.utils.newReadOnlyAccountMeta(mint, false),
145
+ sdk_solana_1.utils.newReadOnlyAccountMeta(mintAuthority, true),
146
+ sdk_solana_1.utils.newReadOnlyAccountMeta(payer, true),
147
+ sdk_solana_1.utils.newReadOnlyAccountMeta(updateAuthority, updateAuthorityIsSigner),
148
+ sdk_solana_1.utils.newReadOnlyAccountMeta(web3_js_1.SystemProgram.programId, false),
149
+ sdk_solana_1.utils.newReadOnlyAccountMeta(web3_js_1.SYSVAR_RENT_PUBKEY, false),
150
+ ];
151
+ const data = CreateMetadataAccountArgs.serializeInstructionData(name, symbol, uri === undefined ? '' : uri, sellerFeeBasisPoints === undefined ? 0 : sellerFeeBasisPoints, creators === undefined ? null : creators, isMutable);
152
+ return {
153
+ programId: SplTokenMetadataProgram.programId,
154
+ keys,
155
+ data,
156
+ };
157
+ }
158
+ }
159
+ exports.SplTokenMetadataProgram = SplTokenMetadataProgram;
160
+ function deriveSplTokenMetadataKey(mint) {
161
+ return sdk_solana_1.utils.deriveAddress([
162
+ Buffer.from('metadata'),
163
+ SplTokenMetadataProgram.programId.toBuffer(),
164
+ new web3_js_1.PublicKey(mint).toBuffer(),
165
+ ], SplTokenMetadataProgram.programId);
166
+ }
167
+ exports.deriveSplTokenMetadataKey = deriveSplTokenMetadataKey;
168
+ var Key;
169
+ (function (Key) {
170
+ Key[Key["Uninitialized"] = 0] = "Uninitialized";
171
+ Key[Key["EditionV1"] = 1] = "EditionV1";
172
+ Key[Key["MasterEditionV1"] = 2] = "MasterEditionV1";
173
+ Key[Key["ReservationListV1"] = 3] = "ReservationListV1";
174
+ Key[Key["MetadataV1"] = 4] = "MetadataV1";
175
+ Key[Key["ReservationListV2"] = 5] = "ReservationListV2";
176
+ Key[Key["MasterEditionV2"] = 6] = "MasterEditionV2";
177
+ Key[Key["EditionMarker"] = 7] = "EditionMarker";
178
+ })(Key || (exports.Key = Key = {}));
179
+ class Metadata {
180
+ key;
181
+ updateAuthority;
182
+ mint;
183
+ data;
184
+ primarySaleHappened;
185
+ isMutable;
186
+ constructor(key, updateAuthority, mint, data, primarySaleHappened, isMutable) {
187
+ this.key = key;
188
+ this.updateAuthority = new web3_js_1.PublicKey(updateAuthority);
189
+ this.mint = new web3_js_1.PublicKey(mint);
190
+ this.data = data;
191
+ this.primarySaleHappened = primarySaleHappened;
192
+ this.isMutable = isMutable;
193
+ }
194
+ static deserialize(data) {
195
+ const key = data.readUInt8(0);
196
+ const updateAuthority = data.subarray(1, 33);
197
+ const mint = data.subarray(33, 65);
198
+ const meta = Data.deserialize(data.subarray(65));
199
+ const metaLen = meta.serialize().length;
200
+ const primarySaleHappened = data.readUInt8(65 + metaLen) > 0;
201
+ const isMutable = data.readUInt8(66 + metaLen) > 0;
202
+ return new Metadata(key, updateAuthority, mint, meta, primarySaleHappened, isMutable);
203
+ }
204
+ }
205
+ exports.Metadata = Metadata;
206
+ async function getMetadata(connection, mint, commitment) {
207
+ return connection
208
+ .getAccountInfo(deriveSplTokenMetadataKey(mint), commitment)
209
+ .then((info) => Metadata.deserialize(sdk_solana_1.utils.getAccountData(info)));
210
+ }
211
+ exports.getMetadata = getMetadata;
212
+ //# sourceMappingURL=splMetadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"splMetadata.js","sourceRoot":"","sources":["../../../src/utils/splMetadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="node" />
2
+ import { Connection, PublicKey, Commitment, PublicKeyInitData } from '@solana/web3.js';
3
+ export declare function deriveTokenBridgeConfigKey(tokenBridgeProgramId: PublicKeyInitData): PublicKey;
4
+ export declare function getTokenBridgeConfig(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, commitment?: Commitment): Promise<TokenBridgeConfig>;
5
+ export declare class TokenBridgeConfig {
6
+ wormhole: PublicKey;
7
+ constructor(wormholeProgramId: Buffer);
8
+ static deserialize(data: Buffer): TokenBridgeConfig;
9
+ }
10
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/config.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,UAAU,EACV,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AAGzB,wBAAgB,0BAA0B,CACxC,oBAAoB,EAAE,iBAAiB,GACtC,SAAS,CAEX;AAED,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,iBAAiB,CAAC,CAO5B;AAED,qBAAa,iBAAiB;IAC5B,QAAQ,EAAE,SAAS,CAAC;gBAER,iBAAiB,EAAE,MAAM;IAIrC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB;CAOpD"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TokenBridgeConfig = exports.getTokenBridgeConfig = exports.deriveTokenBridgeConfigKey = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
6
+ function deriveTokenBridgeConfigKey(tokenBridgeProgramId) {
7
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('config')], tokenBridgeProgramId);
8
+ }
9
+ exports.deriveTokenBridgeConfigKey = deriveTokenBridgeConfigKey;
10
+ async function getTokenBridgeConfig(connection, tokenBridgeProgramId, commitment) {
11
+ return connection
12
+ .getAccountInfo(deriveTokenBridgeConfigKey(tokenBridgeProgramId), commitment)
13
+ .then((info) => TokenBridgeConfig.deserialize(sdk_solana_1.utils.getAccountData(info)));
14
+ }
15
+ exports.getTokenBridgeConfig = getTokenBridgeConfig;
16
+ class TokenBridgeConfig {
17
+ wormhole;
18
+ constructor(wormholeProgramId) {
19
+ this.wormhole = new web3_js_1.PublicKey(wormholeProgramId);
20
+ }
21
+ static deserialize(data) {
22
+ if (data.length != 32) {
23
+ throw new Error('data.length != 32');
24
+ }
25
+ const wormholeProgramId = data.subarray(0, 32);
26
+ return new TokenBridgeConfig(wormholeProgramId);
27
+ }
28
+ }
29
+ exports.TokenBridgeConfig = TokenBridgeConfig;
30
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/config.ts"],"names":[],"mappings":";;;AAAA,6CAKyB;AACzB,gEAAwD;AAExD,SAAgB,0BAA0B,CACxC,oBAAuC;IAEvC,OAAO,kBAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;AAC5E,CAAC;AAJD,gEAIC;AAEM,KAAK,UAAU,oBAAoB,CACxC,UAAsB,EACtB,oBAAuC,EACvC,UAAuB;IAEvB,OAAO,UAAU;SACd,cAAc,CACb,0BAA0B,CAAC,oBAAoB,CAAC,EAChD,UAAU,CACX;SACA,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,iBAAiB,CAAC,WAAW,CAAC,kBAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/E,CAAC;AAXD,oDAWC;AAED,MAAa,iBAAiB;IAC5B,QAAQ,CAAY;IAEpB,YAAY,iBAAyB;QACnC,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAS,CAAC,iBAAiB,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAY;QAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QACD,MAAM,iBAAiB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,OAAO,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAClD,CAAC;CACF;AAdD,8CAcC"}
@@ -0,0 +1,3 @@
1
+ import { PublicKey, PublicKeyInitData } from '@solana/web3.js';
2
+ export declare function deriveCustodyKey(tokenBridgeProgramId: PublicKeyInitData, mint: PublicKeyInitData): PublicKey;
3
+ //# sourceMappingURL=custody.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custody.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/custody.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAG/D,wBAAgB,gBAAgB,CAC9B,oBAAoB,EAAE,iBAAiB,EACvC,IAAI,EAAE,iBAAiB,GACtB,SAAS,CAKX"}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deriveCustodyKey = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
6
+ function deriveCustodyKey(tokenBridgeProgramId, mint) {
7
+ return sdk_solana_1.utils.deriveAddress([new web3_js_1.PublicKey(mint).toBuffer()], tokenBridgeProgramId);
8
+ }
9
+ exports.deriveCustodyKey = deriveCustodyKey;
10
+ //# sourceMappingURL=custody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custody.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/custody.ts"],"names":[],"mappings":";;;AAAA,6CAA+D;AAC/D,gEAAwD;AAExD,SAAgB,gBAAgB,CAC9B,oBAAuC,EACvC,IAAuB;IAEvB,OAAO,kBAAK,CAAC,aAAa,CACxB,CAAC,IAAI,mBAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,EAChC,oBAAoB,CACrB,CAAC;AACJ,CAAC;AARD,4CAQC"}
@@ -0,0 +1,12 @@
1
+ /// <reference types="node" />
2
+ import { Commitment, Connection, PublicKey, PublicKeyInitData } from '@solana/web3.js';
3
+ import { ChainId } from '@wormhole-foundation/sdk-connect';
4
+ export declare function deriveEndpointKey(tokenBridgeProgramId: PublicKeyInitData, emitterChain: number | ChainId, emitterAddress: Buffer | Uint8Array | string): PublicKey;
5
+ export declare function getEndpointRegistration(connection: Connection, endpointKey: PublicKeyInitData, commitment?: Commitment): Promise<EndpointRegistration>;
6
+ export declare class EndpointRegistration {
7
+ chain: ChainId;
8
+ contract: Buffer;
9
+ constructor(chain: number, contract: Buffer);
10
+ static deserialize(data: Buffer): EndpointRegistration;
11
+ }
12
+ //# sourceMappingURL=endpoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/endpoint.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EAGR,MAAM,kCAAkC,CAAC;AAG1C,wBAAgB,iBAAiB,CAC/B,oBAAoB,EAAE,iBAAiB,EACvC,YAAY,EAAE,MAAM,GAAG,OAAO,EAC9B,cAAc,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,GAC3C,SAAS,CAsBX;AAED,wBAAsB,uBAAuB,CAC3C,UAAU,EAAE,UAAU,EACtB,WAAW,EAAE,iBAAiB,EAC9B,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,oBAAoB,CAAC,CAM/B;AAED,qBAAa,oBAAoB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;gBAEL,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAK3C,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB;CAQvD"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EndpointRegistration = exports.getEndpointRegistration = exports.deriveEndpointKey = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
6
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
7
+ function deriveEndpointKey(tokenBridgeProgramId, emitterChain, emitterAddress) {
8
+ if (emitterChain == (0, sdk_connect_1.toChainId)('Solana')) {
9
+ throw new Error('emitterChain == CHAIN_ID_SOLANA cannot exist as foreign token bridge emitter');
10
+ }
11
+ const emitterAddr = typeof emitterAddress === 'string'
12
+ ? new sdk_connect_1.UniversalAddress(emitterAddress).toUint8Array()
13
+ : emitterAddress;
14
+ return sdk_solana_1.utils.deriveAddress([
15
+ (() => {
16
+ const buf = Buffer.alloc(2);
17
+ buf.writeUInt16BE(emitterChain);
18
+ return buf;
19
+ })(),
20
+ emitterAddr,
21
+ ], tokenBridgeProgramId);
22
+ }
23
+ exports.deriveEndpointKey = deriveEndpointKey;
24
+ async function getEndpointRegistration(connection, endpointKey, commitment) {
25
+ return connection
26
+ .getAccountInfo(new web3_js_1.PublicKey(endpointKey), commitment)
27
+ .then((info) => EndpointRegistration.deserialize(sdk_solana_1.utils.getAccountData(info)));
28
+ }
29
+ exports.getEndpointRegistration = getEndpointRegistration;
30
+ class EndpointRegistration {
31
+ chain;
32
+ contract;
33
+ constructor(chain, contract) {
34
+ this.chain = chain;
35
+ this.contract = contract;
36
+ }
37
+ static deserialize(data) {
38
+ if (data.length != 34) {
39
+ throw new Error('data.length != 34');
40
+ }
41
+ const chain = data.readUInt16LE(0);
42
+ const contract = data.subarray(2, 34);
43
+ return new EndpointRegistration(chain, contract);
44
+ }
45
+ }
46
+ exports.EndpointRegistration = EndpointRegistration;
47
+ //# sourceMappingURL=endpoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/endpoint.ts"],"names":[],"mappings":";;;AAAA,6CAKyB;AACzB,kEAI0C;AAC1C,gEAAwD;AAExD,SAAgB,iBAAiB,CAC/B,oBAAuC,EACvC,YAA8B,EAC9B,cAA4C;IAE5C,IAAI,YAAY,IAAI,IAAA,uBAAS,EAAC,QAAQ,CAAC,EAAE;QACvC,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;KACH;IACD,MAAM,WAAW,GACf,OAAO,cAAc,KAAK,QAAQ;QAChC,CAAC,CAAC,IAAI,8BAAgB,CAAC,cAAc,CAAC,CAAC,YAAY,EAAE;QACrD,CAAC,CAAC,cAAc,CAAC;IAErB,OAAO,kBAAK,CAAC,aAAa,CACxB;QACE,CAAC,GAAG,EAAE;YACJ,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,GAAG,CAAC,aAAa,CAAC,YAAsB,CAAC,CAAC;YAC1C,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,EAAE;QACJ,WAAW;KACZ,EACD,oBAAoB,CACrB,CAAC;AACJ,CAAC;AA1BD,8CA0BC;AAEM,KAAK,UAAU,uBAAuB,CAC3C,UAAsB,EACtB,WAA8B,EAC9B,UAAuB;IAEvB,OAAO,UAAU;SACd,cAAc,CAAC,IAAI,mBAAS,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;SACtD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACb,oBAAoB,CAAC,WAAW,CAAC,kBAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAC7D,CAAC;AACN,CAAC;AAVD,0DAUC;AAED,MAAa,oBAAoB;IAC/B,KAAK,CAAU;IACf,QAAQ,CAAS;IAEjB,YAAY,KAAa,EAAE,QAAgB;QACzC,IAAI,CAAC,KAAK,GAAG,KAAgB,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAY;QAC7B,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtC,OAAO,IAAI,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;CACF;AAjBD,oDAiBC"}
@@ -0,0 +1,7 @@
1
+ export * from './config';
2
+ export * from './custody';
3
+ export * from './endpoint';
4
+ export * from './transferWithPayload';
5
+ export * from './signer';
6
+ export * from './wrapped';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
@@ -0,0 +1,23 @@
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("./config"), exports);
18
+ __exportStar(require("./custody"), exports);
19
+ __exportStar(require("./endpoint"), exports);
20
+ __exportStar(require("./transferWithPayload"), exports);
21
+ __exportStar(require("./signer"), exports);
22
+ __exportStar(require("./wrapped"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,4CAA0B;AAC1B,6CAA2B;AAC3B,wDAAsC;AACtC,2CAAyB;AACzB,4CAA0B"}
@@ -0,0 +1,5 @@
1
+ import { PublicKey, PublicKeyInitData } from '@solana/web3.js';
2
+ export declare function deriveAuthoritySignerKey(tokenBridgeProgramId: PublicKeyInitData): PublicKey;
3
+ export declare function deriveCustodySignerKey(tokenBridgeProgramId: PublicKeyInitData): PublicKey;
4
+ export declare function deriveMintAuthorityKey(tokenBridgeProgramId: PublicKeyInitData): PublicKey;
5
+ //# sourceMappingURL=signer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAG/D,wBAAgB,wBAAwB,CACtC,oBAAoB,EAAE,iBAAiB,GACtC,SAAS,CAKX;AAED,wBAAgB,sBAAsB,CACpC,oBAAoB,EAAE,iBAAiB,GACtC,SAAS,CAKX;AAED,wBAAgB,sBAAsB,CACpC,oBAAoB,EAAE,iBAAiB,GACtC,SAAS,CAKX"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deriveMintAuthorityKey = exports.deriveCustodySignerKey = exports.deriveAuthoritySignerKey = void 0;
4
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
5
+ function deriveAuthoritySignerKey(tokenBridgeProgramId) {
6
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('authority_signer')], tokenBridgeProgramId);
7
+ }
8
+ exports.deriveAuthoritySignerKey = deriveAuthoritySignerKey;
9
+ function deriveCustodySignerKey(tokenBridgeProgramId) {
10
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('custody_signer')], tokenBridgeProgramId);
11
+ }
12
+ exports.deriveCustodySignerKey = deriveCustodySignerKey;
13
+ function deriveMintAuthorityKey(tokenBridgeProgramId) {
14
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('mint_signer')], tokenBridgeProgramId);
15
+ }
16
+ exports.deriveMintAuthorityKey = deriveMintAuthorityKey;
17
+ //# sourceMappingURL=signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/signer.ts"],"names":[],"mappings":";;;AACA,gEAAwD;AAExD,SAAgB,wBAAwB,CACtC,oBAAuC;IAEvC,OAAO,kBAAK,CAAC,aAAa,CACxB,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EACjC,oBAAoB,CACrB,CAAC;AACJ,CAAC;AAPD,4DAOC;AAED,SAAgB,sBAAsB,CACpC,oBAAuC;IAEvC,OAAO,kBAAK,CAAC,aAAa,CACxB,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,EAC/B,oBAAoB,CACrB,CAAC;AACJ,CAAC;AAPD,wDAOC;AAED,SAAgB,sBAAsB,CACpC,oBAAuC;IAEvC,OAAO,kBAAK,CAAC,aAAa,CACxB,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAC5B,oBAAoB,CACrB,CAAC;AACJ,CAAC;AAPD,wDAOC"}
@@ -0,0 +1,4 @@
1
+ import { PublicKey, PublicKeyInitData } from '@solana/web3.js';
2
+ export declare function deriveSenderAccountKey(cpiProgramId: PublicKeyInitData): PublicKey;
3
+ export declare function deriveRedeemerAccountKey(cpiProgramId: PublicKeyInitData): PublicKey;
4
+ //# sourceMappingURL=transferWithPayload.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferWithPayload.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/transferWithPayload.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAG/D,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,iBAAiB,GAC9B,SAAS,CAEX;AAED,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,iBAAiB,GAC9B,SAAS,CAEX"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.deriveRedeemerAccountKey = exports.deriveSenderAccountKey = void 0;
4
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
5
+ function deriveSenderAccountKey(cpiProgramId) {
6
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('sender')], cpiProgramId);
7
+ }
8
+ exports.deriveSenderAccountKey = deriveSenderAccountKey;
9
+ function deriveRedeemerAccountKey(cpiProgramId) {
10
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('redeemer')], cpiProgramId);
11
+ }
12
+ exports.deriveRedeemerAccountKey = deriveRedeemerAccountKey;
13
+ //# sourceMappingURL=transferWithPayload.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transferWithPayload.js","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/transferWithPayload.ts"],"names":[],"mappings":";;;AACA,gEAAwD;AAExD,SAAgB,sBAAsB,CACpC,YAA+B;IAE/B,OAAO,kBAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACpE,CAAC;AAJD,wDAIC;AAED,SAAgB,wBAAwB,CACtC,YAA+B;IAE/B,OAAO,kBAAK,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;AACtE,CAAC;AAJD,4DAIC"}
@@ -0,0 +1,15 @@
1
+ /// <reference types="node" />
2
+ import { Commitment, Connection, PublicKey, PublicKeyInitData } from '@solana/web3.js';
3
+ import { ChainId } from '@wormhole-foundation/sdk-connect';
4
+ export declare function deriveWrappedMintKey(tokenBridgeProgramId: PublicKeyInitData, tokenChain: number | ChainId, tokenAddress: Buffer | Uint8Array): PublicKey;
5
+ export declare function deriveWrappedMetaKey(tokenBridgeProgramId: PublicKeyInitData, mint: PublicKeyInitData): PublicKey;
6
+ export declare function getWrappedMeta(connection: Connection, tokenBridgeProgramId: PublicKeyInitData, mint: PublicKeyInitData, commitment?: Commitment): Promise<WrappedMeta>;
7
+ export declare class WrappedMeta {
8
+ chain: number;
9
+ tokenAddress: Buffer;
10
+ originalDecimals: number;
11
+ lastUpdatedSequence?: bigint;
12
+ constructor(chain: number, tokenAddress: Buffer, originalDecimals: number, lastUpdatedSequence?: bigint);
13
+ static deserialize(data: Buffer): WrappedMeta;
14
+ }
15
+ //# sourceMappingURL=wrapped.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrapped.d.ts","sourceRoot":"","sources":["../../../../../src/utils/tokenBridge/accounts/wrapped.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,UAAU,EACV,UAAU,EACV,SAAS,EACT,iBAAiB,EAClB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,OAAO,EAAa,MAAM,kCAAkC,CAAC;AAGtE,wBAAgB,oBAAoB,CAClC,oBAAoB,EAAE,iBAAiB,EACvC,UAAU,EAAE,MAAM,GAAG,OAAO,EAC5B,YAAY,EAAE,MAAM,GAAG,UAAU,GAChC,SAAS,CAmBX;AAED,wBAAgB,oBAAoB,CAClC,oBAAoB,EAAE,iBAAiB,EACvC,IAAI,EAAE,iBAAiB,GACtB,SAAS,CAKX;AAED,wBAAsB,cAAc,CAClC,UAAU,EAAE,UAAU,EACtB,oBAAoB,EAAE,iBAAiB,EACvC,IAAI,EAAE,iBAAiB,EACvB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,WAAW,CAAC,CAOtB;AAED,qBAAa,WAAW;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;gBAG3B,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,EACpB,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,CAAC,EAAE,MAAM;IAQ9B,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW;CAgB9C"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WrappedMeta = exports.getWrappedMeta = exports.deriveWrappedMetaKey = exports.deriveWrappedMintKey = void 0;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ const sdk_connect_1 = require("@wormhole-foundation/sdk-connect");
6
+ const sdk_solana_1 = require("@wormhole-foundation/sdk-solana");
7
+ function deriveWrappedMintKey(tokenBridgeProgramId, tokenChain, tokenAddress) {
8
+ if (tokenChain == (0, sdk_connect_1.toChainId)('Solana')) {
9
+ throw new Error('tokenChain == CHAIN_ID_SOLANA does not have wrapped mint key');
10
+ }
11
+ return sdk_solana_1.utils.deriveAddress([
12
+ Buffer.from('wrapped'),
13
+ (() => {
14
+ const buf = Buffer.alloc(2);
15
+ buf.writeUInt16BE(tokenChain);
16
+ return buf;
17
+ })(),
18
+ tokenAddress,
19
+ ], tokenBridgeProgramId);
20
+ }
21
+ exports.deriveWrappedMintKey = deriveWrappedMintKey;
22
+ function deriveWrappedMetaKey(tokenBridgeProgramId, mint) {
23
+ return sdk_solana_1.utils.deriveAddress([Buffer.from('meta'), new web3_js_1.PublicKey(mint).toBuffer()], tokenBridgeProgramId);
24
+ }
25
+ exports.deriveWrappedMetaKey = deriveWrappedMetaKey;
26
+ async function getWrappedMeta(connection, tokenBridgeProgramId, mint, commitment) {
27
+ return connection
28
+ .getAccountInfo(deriveWrappedMetaKey(tokenBridgeProgramId, mint), commitment)
29
+ .then((info) => WrappedMeta.deserialize(sdk_solana_1.utils.getAccountData(info)));
30
+ }
31
+ exports.getWrappedMeta = getWrappedMeta;
32
+ class WrappedMeta {
33
+ chain;
34
+ tokenAddress;
35
+ originalDecimals;
36
+ lastUpdatedSequence;
37
+ constructor(chain, tokenAddress, originalDecimals, lastUpdatedSequence) {
38
+ this.chain = chain;
39
+ this.tokenAddress = tokenAddress;
40
+ this.originalDecimals = originalDecimals;
41
+ this.lastUpdatedSequence = lastUpdatedSequence;
42
+ }
43
+ static deserialize(data) {
44
+ if (data.length !== 35 && data.length !== 43) {
45
+ throw new Error(`invalid wrapped meta length: ${data.length}`);
46
+ }
47
+ const chain = data.readUInt16LE(0);
48
+ const tokenAddress = data.subarray(2, 34);
49
+ const originalDecimals = data.readUInt8(34);
50
+ const lastUpdatedSequence = data.length === 43 ? data.readBigUInt64LE(35) : undefined;
51
+ return new WrappedMeta(chain, tokenAddress, originalDecimals, lastUpdatedSequence);
52
+ }
53
+ }
54
+ exports.WrappedMeta = WrappedMeta;
55
+ //# sourceMappingURL=wrapped.js.map