@macalinao/clients-mpl-bubblegum 0.2.0 → 0.3.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 (333) hide show
  1. package/dist/generated/accounts/index.d.ts +2 -10
  2. package/dist/generated/accounts/treeConfig.d.ts +42 -38
  3. package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
  4. package/dist/generated/accounts/treeConfig.js +70 -53
  5. package/dist/generated/accounts/treeConfig.js.map +1 -1
  6. package/dist/generated/accounts/voucher.d.ts +33 -30
  7. package/dist/generated/accounts/voucher.d.ts.map +1 -1
  8. package/dist/generated/accounts/voucher.js +61 -45
  9. package/dist/generated/accounts/voucher.js.map +1 -1
  10. package/dist/generated/errors/bubblegum.d.ts +71 -74
  11. package/dist/generated/errors/bubblegum.d.ts.map +1 -1
  12. package/dist/generated/errors/bubblegum.js +126 -133
  13. package/dist/generated/errors/bubblegum.js.map +1 -1
  14. package/dist/generated/errors/index.d.ts +1 -9
  15. package/dist/generated/index.d.ts +63 -13
  16. package/dist/generated/instructions/burn.d.ts +70 -65
  17. package/dist/generated/instructions/burn.d.ts.map +1 -1
  18. package/dist/generated/instructions/burn.js +168 -98
  19. package/dist/generated/instructions/burn.js.map +1 -1
  20. package/dist/generated/instructions/burnV2.d.ts +107 -96
  21. package/dist/generated/instructions/burnV2.d.ts.map +1 -1
  22. package/dist/generated/instructions/burnV2.js +239 -136
  23. package/dist/generated/instructions/burnV2.js.map +1 -1
  24. package/dist/generated/instructions/cancelRedeem.d.ts +54 -53
  25. package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
  26. package/dist/generated/instructions/cancelRedeem.js +154 -90
  27. package/dist/generated/instructions/cancelRedeem.js.map +1 -1
  28. package/dist/generated/instructions/closeTreeV2.d.ts +64 -60
  29. package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
  30. package/dist/generated/instructions/closeTreeV2.js +152 -84
  31. package/dist/generated/instructions/closeTreeV2.js.map +1 -1
  32. package/dist/generated/instructions/collectV2.d.ts +28 -35
  33. package/dist/generated/instructions/collectV2.d.ts.map +1 -1
  34. package/dist/generated/instructions/collectV2.js +63 -60
  35. package/dist/generated/instructions/collectV2.js.map +1 -1
  36. package/dist/generated/instructions/compress.d.ts +71 -71
  37. package/dist/generated/instructions/compress.d.ts.map +1 -1
  38. package/dist/generated/instructions/compress.js +233 -116
  39. package/dist/generated/instructions/compress.js.map +1 -1
  40. package/dist/generated/instructions/createTree.d.ts +62 -59
  41. package/dist/generated/instructions/createTree.d.ts.map +1 -1
  42. package/dist/generated/instructions/createTree.js +164 -94
  43. package/dist/generated/instructions/createTree.js.map +1 -1
  44. package/dist/generated/instructions/createTreeV2.d.ts +64 -61
  45. package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
  46. package/dist/generated/instructions/createTreeV2.js +168 -100
  47. package/dist/generated/instructions/createTreeV2.js.map +1 -1
  48. package/dist/generated/instructions/decompressV1.d.ts +73 -72
  49. package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
  50. package/dist/generated/instructions/decompressV1.js +251 -128
  51. package/dist/generated/instructions/decompressV1.js.map +1 -1
  52. package/dist/generated/instructions/delegate.d.ts +73 -68
  53. package/dist/generated/instructions/delegate.d.ts.map +1 -1
  54. package/dist/generated/instructions/delegate.js +179 -107
  55. package/dist/generated/instructions/delegate.js.map +1 -1
  56. package/dist/generated/instructions/delegateAndFreezeV2.d.ts +92 -84
  57. package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
  58. package/dist/generated/instructions/delegateAndFreezeV2.js +201 -136
  59. package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
  60. package/dist/generated/instructions/delegateV2.d.ts +92 -84
  61. package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
  62. package/dist/generated/instructions/delegateV2.js +200 -134
  63. package/dist/generated/instructions/delegateV2.js.map +1 -1
  64. package/dist/generated/instructions/freezeV2.d.ts +99 -88
  65. package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
  66. package/dist/generated/instructions/freezeV2.js +209 -123
  67. package/dist/generated/instructions/freezeV2.js.map +1 -1
  68. package/dist/generated/instructions/index.d.ts +36 -44
  69. package/dist/generated/instructions/mintToCollectionV1.d.ts +94 -89
  70. package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
  71. package/dist/generated/instructions/mintToCollectionV1.js +277 -139
  72. package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
  73. package/dist/generated/instructions/mintV1.d.ts +61 -60
  74. package/dist/generated/instructions/mintV1.d.ts.map +1 -1
  75. package/dist/generated/instructions/mintV1.js +177 -97
  76. package/dist/generated/instructions/mintV1.js.map +1 -1
  77. package/dist/generated/instructions/mintV2.d.ts +86 -82
  78. package/dist/generated/instructions/mintV2.d.ts.map +1 -1
  79. package/dist/generated/instructions/mintV2.js +244 -135
  80. package/dist/generated/instructions/mintV2.js.map +1 -1
  81. package/dist/generated/instructions/redeem.d.ts +73 -68
  82. package/dist/generated/instructions/redeem.d.ts.map +1 -1
  83. package/dist/generated/instructions/redeem.js +179 -101
  84. package/dist/generated/instructions/redeem.js.map +1 -1
  85. package/dist/generated/instructions/setAndVerifyCollection.d.ts +133 -117
  86. package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
  87. package/dist/generated/instructions/setAndVerifyCollection.js +295 -151
  88. package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
  89. package/dist/generated/instructions/setCollectionV2.d.ts +125 -110
  90. package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
  91. package/dist/generated/instructions/setCollectionV2.js +257 -146
  92. package/dist/generated/instructions/setCollectionV2.js.map +1 -1
  93. package/dist/generated/instructions/setDecompressableState.d.ts +32 -39
  94. package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
  95. package/dist/generated/instructions/setDecompressableState.js +66 -69
  96. package/dist/generated/instructions/setDecompressableState.js.map +1 -1
  97. package/dist/generated/instructions/setDecompressibleState.d.ts +32 -39
  98. package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
  99. package/dist/generated/instructions/setDecompressibleState.js +66 -69
  100. package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
  101. package/dist/generated/instructions/setNonTransferableV2.d.ts +101 -90
  102. package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
  103. package/dist/generated/instructions/setNonTransferableV2.js +210 -125
  104. package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
  105. package/dist/generated/instructions/setTreeDelegate.d.ts +44 -44
  106. package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
  107. package/dist/generated/instructions/setTreeDelegate.js +127 -77
  108. package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
  109. package/dist/generated/instructions/thawAndRevokeV2.d.ts +87 -79
  110. package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
  111. package/dist/generated/instructions/thawAndRevokeV2.js +190 -124
  112. package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
  113. package/dist/generated/instructions/thawV2.d.ts +99 -88
  114. package/dist/generated/instructions/thawV2.d.ts.map +1 -1
  115. package/dist/generated/instructions/thawV2.js +209 -123
  116. package/dist/generated/instructions/thawV2.js.map +1 -1
  117. package/dist/generated/instructions/transfer.d.ts +73 -68
  118. package/dist/generated/instructions/transfer.d.ts.map +1 -1
  119. package/dist/generated/instructions/transfer.js +179 -101
  120. package/dist/generated/instructions/transfer.js.map +1 -1
  121. package/dist/generated/instructions/transferV2.d.ts +104 -93
  122. package/dist/generated/instructions/transferV2.d.ts.map +1 -1
  123. package/dist/generated/instructions/transferV2.js +220 -126
  124. package/dist/generated/instructions/transferV2.js.map +1 -1
  125. package/dist/generated/instructions/unverifyCollection.d.ts +129 -114
  126. package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
  127. package/dist/generated/instructions/unverifyCollection.js +293 -146
  128. package/dist/generated/instructions/unverifyCollection.js.map +1 -1
  129. package/dist/generated/instructions/unverifyCreator.d.ts +81 -75
  130. package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
  131. package/dist/generated/instructions/unverifyCreator.js +194 -106
  132. package/dist/generated/instructions/unverifyCreator.js.map +1 -1
  133. package/dist/generated/instructions/unverifyCreatorV2.d.ts +85 -79
  134. package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
  135. package/dist/generated/instructions/unverifyCreatorV2.js +198 -118
  136. package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
  137. package/dist/generated/instructions/updateAssetDataV2.d.ts +108 -95
  138. package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
  139. package/dist/generated/instructions/updateAssetDataV2.js +215 -136
  140. package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
  141. package/dist/generated/instructions/updateMetadata.d.ts +106 -96
  142. package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
  143. package/dist/generated/instructions/updateMetadata.js +243 -135
  144. package/dist/generated/instructions/updateMetadata.js.map +1 -1
  145. package/dist/generated/instructions/updateMetadataV2.d.ts +103 -91
  146. package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
  147. package/dist/generated/instructions/updateMetadataV2.js +212 -123
  148. package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
  149. package/dist/generated/instructions/verifyCollection.d.ts +129 -114
  150. package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
  151. package/dist/generated/instructions/verifyCollection.js +293 -146
  152. package/dist/generated/instructions/verifyCollection.js.map +1 -1
  153. package/dist/generated/instructions/verifyCreator.d.ts +81 -75
  154. package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
  155. package/dist/generated/instructions/verifyCreator.js +193 -107
  156. package/dist/generated/instructions/verifyCreator.js.map +1 -1
  157. package/dist/generated/instructions/verifyCreatorV2.d.ts +85 -79
  158. package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
  159. package/dist/generated/instructions/verifyCreatorV2.js +198 -118
  160. package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
  161. package/dist/generated/pdas/assetId.d.ts +16 -0
  162. package/dist/generated/pdas/assetId.d.ts.map +1 -0
  163. package/dist/generated/pdas/assetId.js +18 -0
  164. package/dist/generated/pdas/assetId.js.map +1 -0
  165. package/dist/generated/pdas/bubblegumSigner.d.ts +10 -0
  166. package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -0
  167. package/dist/generated/pdas/bubblegumSigner.js +14 -0
  168. package/dist/generated/pdas/bubblegumSigner.js.map +1 -0
  169. package/dist/generated/pdas/index.d.ts +7 -0
  170. package/dist/generated/pdas/masterEdition.d.ts +14 -0
  171. package/dist/generated/pdas/masterEdition.d.ts.map +1 -0
  172. package/dist/generated/pdas/masterEdition.js +19 -0
  173. package/dist/generated/pdas/masterEdition.js.map +1 -0
  174. package/dist/generated/pdas/metadata.d.ts +14 -0
  175. package/dist/generated/pdas/metadata.d.ts.map +1 -0
  176. package/dist/generated/pdas/metadata.js +18 -0
  177. package/dist/generated/pdas/metadata.js.map +1 -0
  178. package/dist/generated/pdas/mintAuthority.d.ts +14 -0
  179. package/dist/generated/pdas/mintAuthority.d.ts.map +1 -0
  180. package/dist/generated/pdas/mintAuthority.js +14 -0
  181. package/dist/generated/pdas/mintAuthority.js.map +1 -0
  182. package/dist/generated/pdas/treeConfig.d.ts +14 -0
  183. package/dist/generated/pdas/treeConfig.d.ts.map +1 -0
  184. package/dist/generated/pdas/treeConfig.js +14 -0
  185. package/dist/generated/pdas/treeConfig.js.map +1 -0
  186. package/dist/generated/pdas/voucher.d.ts +16 -0
  187. package/dist/generated/pdas/voucher.d.ts.map +1 -0
  188. package/dist/generated/pdas/voucher.js +18 -0
  189. package/dist/generated/pdas/voucher.js.map +1 -0
  190. package/dist/generated/programs/bubblegum.d.ts +186 -143
  191. package/dist/generated/programs/bubblegum.d.ts.map +1 -1
  192. package/dist/generated/programs/bubblegum.js +839 -561
  193. package/dist/generated/programs/bubblegum.js.map +1 -1
  194. package/dist/generated/programs/index.d.ts +2 -9
  195. package/dist/generated/programs/mplTokenMetadata.d.ts +20 -0
  196. package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -0
  197. package/dist/generated/programs/mplTokenMetadata.js +17 -0
  198. package/dist/generated/programs/mplTokenMetadata.js.map +1 -0
  199. package/dist/generated/types/assetDataSchema.d.ts +13 -16
  200. package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
  201. package/dist/generated/types/assetDataSchema.js +16 -19
  202. package/dist/generated/types/assetDataSchema.js.map +1 -1
  203. package/dist/generated/types/bubblegumEventType.d.ts +12 -15
  204. package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
  205. package/dist/generated/types/bubblegumEventType.js +15 -18
  206. package/dist/generated/types/bubblegumEventType.js.map +1 -1
  207. package/dist/generated/types/collection.d.ts +12 -15
  208. package/dist/generated/types/collection.d.ts.map +1 -1
  209. package/dist/generated/types/collection.js +11 -20
  210. package/dist/generated/types/collection.js.map +1 -1
  211. package/dist/generated/types/creator.d.ts +18 -21
  212. package/dist/generated/types/creator.d.ts.map +1 -1
  213. package/dist/generated/types/creator.js +19 -22
  214. package/dist/generated/types/creator.js.map +1 -1
  215. package/dist/generated/types/decompressibleState.d.ts +12 -15
  216. package/dist/generated/types/decompressibleState.d.ts.map +1 -1
  217. package/dist/generated/types/decompressibleState.js +15 -18
  218. package/dist/generated/types/decompressibleState.js.map +1 -1
  219. package/dist/generated/types/index.d.ts +15 -23
  220. package/dist/generated/types/instructionName.d.ts +45 -48
  221. package/dist/generated/types/instructionName.d.ts.map +1 -1
  222. package/dist/generated/types/instructionName.js +48 -51
  223. package/dist/generated/types/instructionName.js.map +1 -1
  224. package/dist/generated/types/leafSchema.d.ts +48 -51
  225. package/dist/generated/types/leafSchema.d.ts.map +1 -1
  226. package/dist/generated/types/leafSchema.js +55 -72
  227. package/dist/generated/types/leafSchema.js.map +1 -1
  228. package/dist/generated/types/metadataArgs.d.ts +59 -58
  229. package/dist/generated/types/metadataArgs.d.ts.map +1 -1
  230. package/dist/generated/types/metadataArgs.js +42 -41
  231. package/dist/generated/types/metadataArgs.js.map +1 -1
  232. package/dist/generated/types/metadataArgsV2.d.ts +48 -50
  233. package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
  234. package/dist/generated/types/metadataArgsV2.js +33 -35
  235. package/dist/generated/types/metadataArgsV2.js.map +1 -1
  236. package/dist/generated/types/tokenProgramVersion.d.ts +12 -15
  237. package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
  238. package/dist/generated/types/tokenProgramVersion.js +15 -18
  239. package/dist/generated/types/tokenProgramVersion.js.map +1 -1
  240. package/dist/generated/types/tokenStandard.d.ts +14 -17
  241. package/dist/generated/types/tokenStandard.d.ts.map +1 -1
  242. package/dist/generated/types/tokenStandard.js +17 -20
  243. package/dist/generated/types/tokenStandard.js.map +1 -1
  244. package/dist/generated/types/updateArgs.d.ts +25 -28
  245. package/dist/generated/types/updateArgs.d.ts.map +1 -1
  246. package/dist/generated/types/updateArgs.js +28 -49
  247. package/dist/generated/types/updateArgs.js.map +1 -1
  248. package/dist/generated/types/useMethod.d.ts +13 -16
  249. package/dist/generated/types/useMethod.d.ts.map +1 -1
  250. package/dist/generated/types/useMethod.js +16 -19
  251. package/dist/generated/types/useMethod.js.map +1 -1
  252. package/dist/generated/types/uses.d.ts +17 -20
  253. package/dist/generated/types/uses.d.ts.map +1 -1
  254. package/dist/generated/types/uses.js +20 -23
  255. package/dist/generated/types/uses.js.map +1 -1
  256. package/dist/generated/types/version.d.ts +12 -15
  257. package/dist/generated/types/version.d.ts.map +1 -1
  258. package/dist/generated/types/version.js +15 -18
  259. package/dist/generated/types/version.js.map +1 -1
  260. package/dist/index.d.ts +64 -8
  261. package/dist/index.js +64 -8
  262. package/package.json +7 -5
  263. package/src/generated/accounts/treeConfig.ts +22 -0
  264. package/src/generated/accounts/voucher.ts +22 -0
  265. package/src/generated/errors/bubblegum.ts +1 -1
  266. package/src/generated/index.ts +1 -0
  267. package/src/generated/instructions/burn.ts +155 -11
  268. package/src/generated/instructions/burnV2.ts +226 -16
  269. package/src/generated/instructions/cancelRedeem.ts +151 -11
  270. package/src/generated/instructions/closeTreeV2.ts +150 -11
  271. package/src/generated/instructions/collectV2.ts +3 -3
  272. package/src/generated/instructions/compress.ts +219 -18
  273. package/src/generated/instructions/createTree.ts +153 -11
  274. package/src/generated/instructions/createTreeV2.ts +154 -11
  275. package/src/generated/instructions/decompressV1.ts +258 -16
  276. package/src/generated/instructions/delegate.ts +170 -12
  277. package/src/generated/instructions/delegateAndFreezeV2.ts +184 -13
  278. package/src/generated/instructions/delegateV2.ts +184 -13
  279. package/src/generated/instructions/freezeV2.ts +188 -14
  280. package/src/generated/instructions/mintToCollectionV1.ts +296 -21
  281. package/src/generated/instructions/mintV1.ts +169 -13
  282. package/src/generated/instructions/mintV2.ts +231 -17
  283. package/src/generated/instructions/redeem.ts +164 -12
  284. package/src/generated/instructions/setAndVerifyCollection.ts +307 -21
  285. package/src/generated/instructions/setCollectionV2.ts +253 -19
  286. package/src/generated/instructions/setDecompressableState.ts +3 -3
  287. package/src/generated/instructions/setDecompressibleState.ts +3 -3
  288. package/src/generated/instructions/setNonTransferableV2.ts +189 -14
  289. package/src/generated/instructions/setTreeDelegate.ts +105 -7
  290. package/src/generated/instructions/thawAndRevokeV2.ts +168 -12
  291. package/src/generated/instructions/thawV2.ts +188 -14
  292. package/src/generated/instructions/transfer.ts +164 -12
  293. package/src/generated/instructions/transferV2.ts +198 -15
  294. package/src/generated/instructions/unverifyCollection.ts +306 -21
  295. package/src/generated/instructions/unverifyCreator.ts +174 -13
  296. package/src/generated/instructions/unverifyCreatorV2.ts +176 -13
  297. package/src/generated/instructions/updateAssetDataV2.ts +190 -14
  298. package/src/generated/instructions/updateMetadata.ts +233 -17
  299. package/src/generated/instructions/updateMetadataV2.ts +189 -14
  300. package/src/generated/instructions/verifyCollection.ts +306 -21
  301. package/src/generated/instructions/verifyCreator.ts +174 -13
  302. package/src/generated/instructions/verifyCreatorV2.ts +176 -13
  303. package/src/generated/pdas/assetId.ts +40 -0
  304. package/src/generated/pdas/bubblegumSigner.ts +23 -0
  305. package/{dist/generated/accounts/index.js → src/generated/pdas/index.ts} +6 -1
  306. package/src/generated/pdas/masterEdition.ts +38 -0
  307. package/src/generated/pdas/metadata.ts +37 -0
  308. package/src/generated/pdas/mintAuthority.ts +29 -0
  309. package/src/generated/pdas/treeConfig.ts +29 -0
  310. package/src/generated/pdas/voucher.ts +40 -0
  311. package/src/generated/programs/bubblegum.ts +208 -165
  312. package/src/generated/programs/index.ts +1 -0
  313. package/src/generated/programs/mplTokenMetadata.ts +42 -0
  314. package/dist/.tsbuildinfo +0 -1
  315. package/dist/generated/accounts/index.d.ts.map +0 -1
  316. package/dist/generated/accounts/index.js.map +0 -1
  317. package/dist/generated/errors/index.d.ts.map +0 -1
  318. package/dist/generated/errors/index.js +0 -9
  319. package/dist/generated/errors/index.js.map +0 -1
  320. package/dist/generated/index.d.ts.map +0 -1
  321. package/dist/generated/index.js +0 -13
  322. package/dist/generated/index.js.map +0 -1
  323. package/dist/generated/instructions/index.d.ts.map +0 -1
  324. package/dist/generated/instructions/index.js +0 -44
  325. package/dist/generated/instructions/index.js.map +0 -1
  326. package/dist/generated/programs/index.d.ts.map +0 -1
  327. package/dist/generated/programs/index.js +0 -9
  328. package/dist/generated/programs/index.js.map +0 -1
  329. package/dist/generated/types/index.d.ts.map +0 -1
  330. package/dist/generated/types/index.js +0 -23
  331. package/dist/generated/types/index.js.map +0 -1
  332. package/dist/index.d.ts.map +0 -1
  333. package/dist/index.js.map +0 -1
@@ -40,7 +40,11 @@ import {
40
40
  SolanaError,
41
41
  transformEncoder,
42
42
  } from "@solana/kit";
43
- import { getAccountMetaFactory } from "@solana/program-client-core";
43
+ import {
44
+ getAccountMetaFactory,
45
+ getAddressFromResolvedInstructionAccount,
46
+ } from "@solana/program-client-core";
47
+ import { findTreeConfigPda } from "../pdas/index.js";
44
48
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
45
49
 
46
50
  export const TRANSFER_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
@@ -53,17 +57,21 @@ export function getTransferDiscriminatorBytes(): ReadonlyUint8Array {
53
57
 
54
58
  export type TransferInstruction<
55
59
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
56
- TAccountTreeAuthority extends string | AccountMeta = string,
57
- TAccountLeafOwner extends string | AccountMeta = string,
58
- TAccountLeafDelegate extends string | AccountMeta = string,
59
- TAccountNewLeafOwner extends string | AccountMeta = string,
60
- TAccountMerkleTree extends string | AccountMeta = string,
61
- TAccountLogWrapper extends string | AccountMeta = string,
62
- TAccountCompressionProgram extends string | AccountMeta = string,
60
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
61
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
62
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
63
+ TAccountNewLeafOwner extends string | AccountMeta<string> = string,
64
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
65
+ TAccountLogWrapper extends
66
+ | string
67
+ | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
68
+ TAccountCompressionProgram extends
69
+ | string
70
+ | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
63
71
  TAccountSystemProgram extends
64
72
  | string
65
- | AccountMeta = "11111111111111111111111111111111",
66
- TRemainingAccounts extends readonly AccountMeta[] = [],
73
+ | AccountMeta<string> = "11111111111111111111111111111111",
74
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
67
75
  > = Instruction<TProgram> &
68
76
  InstructionWithData<ReadonlyUint8Array> &
69
77
  InstructionWithAccounts<
@@ -148,6 +156,142 @@ export function getTransferInstructionDataCodec(): FixedSizeCodec<
148
156
  );
149
157
  }
150
158
 
159
+ export interface TransferAsyncInput<
160
+ TAccountTreeAuthority extends string = string,
161
+ TAccountLeafOwner extends string = string,
162
+ TAccountLeafDelegate extends string = string,
163
+ TAccountNewLeafOwner extends string = string,
164
+ TAccountMerkleTree extends string = string,
165
+ TAccountLogWrapper extends string = string,
166
+ TAccountCompressionProgram extends string = string,
167
+ TAccountSystemProgram extends string = string,
168
+ > {
169
+ treeAuthority?: Address<TAccountTreeAuthority>;
170
+ leafOwner: Address<TAccountLeafOwner>;
171
+ leafDelegate: Address<TAccountLeafDelegate>;
172
+ newLeafOwner: Address<TAccountNewLeafOwner>;
173
+ merkleTree: Address<TAccountMerkleTree>;
174
+ logWrapper?: Address<TAccountLogWrapper>;
175
+ compressionProgram?: Address<TAccountCompressionProgram>;
176
+ systemProgram?: Address<TAccountSystemProgram>;
177
+ root: TransferInstructionDataArgs["root"];
178
+ dataHash: TransferInstructionDataArgs["dataHash"];
179
+ creatorHash: TransferInstructionDataArgs["creatorHash"];
180
+ nonce: TransferInstructionDataArgs["nonce"];
181
+ index: TransferInstructionDataArgs["index"];
182
+ }
183
+
184
+ export async function getTransferInstructionAsync<
185
+ TAccountTreeAuthority extends string,
186
+ TAccountLeafOwner extends string,
187
+ TAccountLeafDelegate extends string,
188
+ TAccountNewLeafOwner extends string,
189
+ TAccountMerkleTree extends string,
190
+ TAccountLogWrapper extends string,
191
+ TAccountCompressionProgram extends string,
192
+ TAccountSystemProgram extends string,
193
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
194
+ >(
195
+ input: TransferAsyncInput<
196
+ TAccountTreeAuthority,
197
+ TAccountLeafOwner,
198
+ TAccountLeafDelegate,
199
+ TAccountNewLeafOwner,
200
+ TAccountMerkleTree,
201
+ TAccountLogWrapper,
202
+ TAccountCompressionProgram,
203
+ TAccountSystemProgram
204
+ >,
205
+ config?: { programAddress?: TProgramAddress },
206
+ ): Promise<
207
+ TransferInstruction<
208
+ TProgramAddress,
209
+ TAccountTreeAuthority,
210
+ TAccountLeafOwner,
211
+ TAccountLeafDelegate,
212
+ TAccountNewLeafOwner,
213
+ TAccountMerkleTree,
214
+ TAccountLogWrapper,
215
+ TAccountCompressionProgram,
216
+ TAccountSystemProgram
217
+ >
218
+ > {
219
+ // Program address.
220
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
221
+
222
+ // Original accounts.
223
+ const originalAccounts = {
224
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
225
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
226
+ leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
227
+ newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },
228
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
229
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
230
+ compressionProgram: {
231
+ value: input.compressionProgram ?? null,
232
+ isWritable: false,
233
+ },
234
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
235
+ };
236
+ const accounts = originalAccounts as Record<
237
+ keyof typeof originalAccounts,
238
+ ResolvedInstructionAccount
239
+ >;
240
+
241
+ // Original args.
242
+ const args = { ...input };
243
+
244
+ // Resolve default values.
245
+ if (!accounts.treeAuthority.value) {
246
+ accounts.treeAuthority.value = await findTreeConfigPda({
247
+ merkleTree: getAddressFromResolvedInstructionAccount(
248
+ "merkleTree",
249
+ accounts.merkleTree.value,
250
+ ),
251
+ });
252
+ }
253
+ if (!accounts.logWrapper.value) {
254
+ accounts.logWrapper.value =
255
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
256
+ }
257
+ if (!accounts.compressionProgram.value) {
258
+ accounts.compressionProgram.value =
259
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
260
+ }
261
+ if (!accounts.systemProgram.value) {
262
+ accounts.systemProgram.value =
263
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
264
+ }
265
+
266
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
267
+ return Object.freeze({
268
+ accounts: [
269
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
270
+ getAccountMeta("leafOwner", accounts.leafOwner),
271
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
272
+ getAccountMeta("newLeafOwner", accounts.newLeafOwner),
273
+ getAccountMeta("merkleTree", accounts.merkleTree),
274
+ getAccountMeta("logWrapper", accounts.logWrapper),
275
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
276
+ getAccountMeta("systemProgram", accounts.systemProgram),
277
+ ],
278
+ data: getTransferInstructionDataEncoder().encode(
279
+ args as TransferInstructionDataArgs,
280
+ ),
281
+ programAddress,
282
+ } as TransferInstruction<
283
+ TProgramAddress,
284
+ TAccountTreeAuthority,
285
+ TAccountLeafOwner,
286
+ TAccountLeafDelegate,
287
+ TAccountNewLeafOwner,
288
+ TAccountMerkleTree,
289
+ TAccountLogWrapper,
290
+ TAccountCompressionProgram,
291
+ TAccountSystemProgram
292
+ >);
293
+ }
294
+
151
295
  export interface TransferInput<
152
296
  TAccountTreeAuthority extends string = string,
153
297
  TAccountLeafOwner extends string = string,
@@ -163,8 +307,8 @@ export interface TransferInput<
163
307
  leafDelegate: Address<TAccountLeafDelegate>;
164
308
  newLeafOwner: Address<TAccountNewLeafOwner>;
165
309
  merkleTree: Address<TAccountMerkleTree>;
166
- logWrapper: Address<TAccountLogWrapper>;
167
- compressionProgram: Address<TAccountCompressionProgram>;
310
+ logWrapper?: Address<TAccountLogWrapper>;
311
+ compressionProgram?: Address<TAccountCompressionProgram>;
168
312
  systemProgram?: Address<TAccountSystemProgram>;
169
313
  root: TransferInstructionDataArgs["root"];
170
314
  dataHash: TransferInstructionDataArgs["dataHash"];
@@ -232,6 +376,14 @@ export function getTransferInstruction<
232
376
  const args = { ...input };
233
377
 
234
378
  // Resolve default values.
379
+ if (!accounts.logWrapper.value) {
380
+ accounts.logWrapper.value =
381
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
382
+ }
383
+ if (!accounts.compressionProgram.value) {
384
+ accounts.compressionProgram.value =
385
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
386
+ }
235
387
  if (!accounts.systemProgram.value) {
236
388
  accounts.systemProgram.value =
237
389
  "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
@@ -48,7 +48,11 @@ import {
48
48
  SolanaError,
49
49
  transformEncoder,
50
50
  } from "@solana/kit";
51
- import { getAccountMetaFactory } from "@solana/program-client-core";
51
+ import {
52
+ getAccountMetaFactory,
53
+ getAddressFromResolvedInstructionAccount,
54
+ } from "@solana/program-client-core";
55
+ import { findTreeConfigPda } from "../pdas/index.js";
52
56
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
53
57
 
54
58
  export const TRANSFER_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
@@ -61,20 +65,24 @@ export function getTransferV2DiscriminatorBytes(): ReadonlyUint8Array {
61
65
 
62
66
  export type TransferV2Instruction<
63
67
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
64
- TAccountTreeAuthority extends string | AccountMeta = string,
65
- TAccountPayer extends string | AccountMeta = string,
66
- TAccountAuthority extends string | AccountMeta = string,
67
- TAccountLeafOwner extends string | AccountMeta = string,
68
- TAccountLeafDelegate extends string | AccountMeta = string,
69
- TAccountNewLeafOwner extends string | AccountMeta = string,
70
- TAccountMerkleTree extends string | AccountMeta = string,
71
- TAccountCoreCollection extends string | AccountMeta = string,
72
- TAccountLogWrapper extends string | AccountMeta = string,
73
- TAccountCompressionProgram extends string | AccountMeta = string,
68
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
69
+ TAccountPayer extends string | AccountMeta<string> = string,
70
+ TAccountAuthority extends string | AccountMeta<string> = string,
71
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
72
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
73
+ TAccountNewLeafOwner extends string | AccountMeta<string> = string,
74
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
75
+ TAccountCoreCollection extends string | AccountMeta<string> = string,
76
+ TAccountLogWrapper extends
77
+ | string
78
+ | AccountMeta<string> = "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
79
+ TAccountCompressionProgram extends
80
+ | string
81
+ | AccountMeta<string> = "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
74
82
  TAccountSystemProgram extends
75
83
  | string
76
- | AccountMeta = "11111111111111111111111111111111",
77
- TRemainingAccounts extends readonly AccountMeta[] = [],
84
+ | AccountMeta<string> = "11111111111111111111111111111111",
85
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
78
86
  > = Instruction<TProgram> &
79
87
  InstructionWithData<ReadonlyUint8Array> &
80
88
  InstructionWithAccounts<
@@ -184,6 +192,173 @@ export function getTransferV2InstructionDataCodec(): Codec<
184
192
  );
185
193
  }
186
194
 
195
+ export interface TransferV2AsyncInput<
196
+ TAccountTreeAuthority extends string = string,
197
+ TAccountPayer extends string = string,
198
+ TAccountAuthority extends string = string,
199
+ TAccountLeafOwner extends string = string,
200
+ TAccountLeafDelegate extends string = string,
201
+ TAccountNewLeafOwner extends string = string,
202
+ TAccountMerkleTree extends string = string,
203
+ TAccountCoreCollection extends string = string,
204
+ TAccountLogWrapper extends string = string,
205
+ TAccountCompressionProgram extends string = string,
206
+ TAccountSystemProgram extends string = string,
207
+ > {
208
+ treeAuthority?: Address<TAccountTreeAuthority>;
209
+ payer: TransactionSigner<TAccountPayer>;
210
+ /**
211
+ * Optional authority, defaults to `payer`. Must be either
212
+ * the leaf owner or collection permanent transfer delegate.
213
+ */
214
+ authority?: TransactionSigner<TAccountAuthority>;
215
+ leafOwner: Address<TAccountLeafOwner>;
216
+ /** Defaults to `leaf_owner` */
217
+ leafDelegate?: Address<TAccountLeafDelegate>;
218
+ newLeafOwner: Address<TAccountNewLeafOwner>;
219
+ merkleTree: Address<TAccountMerkleTree>;
220
+ coreCollection?: Address<TAccountCoreCollection>;
221
+ logWrapper?: Address<TAccountLogWrapper>;
222
+ compressionProgram?: Address<TAccountCompressionProgram>;
223
+ systemProgram?: Address<TAccountSystemProgram>;
224
+ root: TransferV2InstructionDataArgs["root"];
225
+ dataHash: TransferV2InstructionDataArgs["dataHash"];
226
+ creatorHash: TransferV2InstructionDataArgs["creatorHash"];
227
+ assetDataHash: TransferV2InstructionDataArgs["assetDataHash"];
228
+ flags: TransferV2InstructionDataArgs["flags"];
229
+ nonce: TransferV2InstructionDataArgs["nonce"];
230
+ index: TransferV2InstructionDataArgs["index"];
231
+ }
232
+
233
+ export async function getTransferV2InstructionAsync<
234
+ TAccountTreeAuthority extends string,
235
+ TAccountPayer extends string,
236
+ TAccountAuthority extends string,
237
+ TAccountLeafOwner extends string,
238
+ TAccountLeafDelegate extends string,
239
+ TAccountNewLeafOwner extends string,
240
+ TAccountMerkleTree extends string,
241
+ TAccountCoreCollection extends string,
242
+ TAccountLogWrapper extends string,
243
+ TAccountCompressionProgram extends string,
244
+ TAccountSystemProgram extends string,
245
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
246
+ >(
247
+ input: TransferV2AsyncInput<
248
+ TAccountTreeAuthority,
249
+ TAccountPayer,
250
+ TAccountAuthority,
251
+ TAccountLeafOwner,
252
+ TAccountLeafDelegate,
253
+ TAccountNewLeafOwner,
254
+ TAccountMerkleTree,
255
+ TAccountCoreCollection,
256
+ TAccountLogWrapper,
257
+ TAccountCompressionProgram,
258
+ TAccountSystemProgram
259
+ >,
260
+ config?: { programAddress?: TProgramAddress },
261
+ ): Promise<
262
+ TransferV2Instruction<
263
+ TProgramAddress,
264
+ TAccountTreeAuthority,
265
+ TAccountPayer,
266
+ TAccountAuthority,
267
+ TAccountLeafOwner,
268
+ TAccountLeafDelegate,
269
+ TAccountNewLeafOwner,
270
+ TAccountMerkleTree,
271
+ TAccountCoreCollection,
272
+ TAccountLogWrapper,
273
+ TAccountCompressionProgram,
274
+ TAccountSystemProgram
275
+ >
276
+ > {
277
+ // Program address.
278
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
279
+
280
+ // Original accounts.
281
+ const originalAccounts = {
282
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
283
+ payer: { value: input.payer ?? null, isWritable: true },
284
+ authority: { value: input.authority ?? null, isWritable: false },
285
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
286
+ leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
287
+ newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },
288
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
289
+ coreCollection: { value: input.coreCollection ?? null, isWritable: false },
290
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
291
+ compressionProgram: {
292
+ value: input.compressionProgram ?? null,
293
+ isWritable: false,
294
+ },
295
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
296
+ };
297
+ const accounts = originalAccounts as Record<
298
+ keyof typeof originalAccounts,
299
+ ResolvedInstructionAccount
300
+ >;
301
+
302
+ // Original args.
303
+ const args = { ...input };
304
+
305
+ // Resolve default values.
306
+ if (!accounts.treeAuthority.value) {
307
+ accounts.treeAuthority.value = await findTreeConfigPda({
308
+ merkleTree: getAddressFromResolvedInstructionAccount(
309
+ "merkleTree",
310
+ accounts.merkleTree.value,
311
+ ),
312
+ });
313
+ }
314
+ if (!accounts.logWrapper.value) {
315
+ accounts.logWrapper.value =
316
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
317
+ }
318
+ if (!accounts.compressionProgram.value) {
319
+ accounts.compressionProgram.value =
320
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
321
+ }
322
+ if (!accounts.systemProgram.value) {
323
+ accounts.systemProgram.value =
324
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
325
+ }
326
+
327
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
328
+ return Object.freeze({
329
+ accounts: [
330
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
331
+ getAccountMeta("payer", accounts.payer),
332
+ getAccountMeta("authority", accounts.authority),
333
+ getAccountMeta("leafOwner", accounts.leafOwner),
334
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
335
+ getAccountMeta("newLeafOwner", accounts.newLeafOwner),
336
+ getAccountMeta("merkleTree", accounts.merkleTree),
337
+ getAccountMeta("coreCollection", accounts.coreCollection),
338
+ getAccountMeta("logWrapper", accounts.logWrapper),
339
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
340
+ getAccountMeta("systemProgram", accounts.systemProgram),
341
+ ],
342
+ data: getTransferV2InstructionDataEncoder().encode(
343
+ args as TransferV2InstructionDataArgs,
344
+ ),
345
+ programAddress,
346
+ } as TransferV2Instruction<
347
+ TProgramAddress,
348
+ TAccountTreeAuthority,
349
+ TAccountPayer,
350
+ TAccountAuthority,
351
+ TAccountLeafOwner,
352
+ TAccountLeafDelegate,
353
+ TAccountNewLeafOwner,
354
+ TAccountMerkleTree,
355
+ TAccountCoreCollection,
356
+ TAccountLogWrapper,
357
+ TAccountCompressionProgram,
358
+ TAccountSystemProgram
359
+ >);
360
+ }
361
+
187
362
  export interface TransferV2Input<
188
363
  TAccountTreeAuthority extends string = string,
189
364
  TAccountPayer extends string = string,
@@ -210,8 +385,8 @@ export interface TransferV2Input<
210
385
  newLeafOwner: Address<TAccountNewLeafOwner>;
211
386
  merkleTree: Address<TAccountMerkleTree>;
212
387
  coreCollection?: Address<TAccountCoreCollection>;
213
- logWrapper: Address<TAccountLogWrapper>;
214
- compressionProgram: Address<TAccountCompressionProgram>;
388
+ logWrapper?: Address<TAccountLogWrapper>;
389
+ compressionProgram?: Address<TAccountCompressionProgram>;
215
390
  systemProgram?: Address<TAccountSystemProgram>;
216
391
  root: TransferV2InstructionDataArgs["root"];
217
392
  dataHash: TransferV2InstructionDataArgs["dataHash"];
@@ -293,6 +468,14 @@ export function getTransferV2Instruction<
293
468
  const args = { ...input };
294
469
 
295
470
  // Resolve default values.
471
+ if (!accounts.logWrapper.value) {
472
+ accounts.logWrapper.value =
473
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
474
+ }
475
+ if (!accounts.compressionProgram.value) {
476
+ accounts.compressionProgram.value =
477
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
478
+ }
296
479
  if (!accounts.systemProgram.value) {
297
480
  accounts.systemProgram.value =
298
481
  "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;