@macalinao/clients-mpl-bubblegum 0.2.0 → 0.3.1

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 -9
  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 +154 -13
  268. package/src/generated/instructions/burnV2.ts +226 -20
  269. package/src/generated/instructions/cancelRedeem.ts +150 -13
  270. package/src/generated/instructions/closeTreeV2.ts +149 -13
  271. package/src/generated/instructions/collectV2.ts +3 -3
  272. package/src/generated/instructions/compress.ts +220 -24
  273. package/src/generated/instructions/createTree.ts +152 -13
  274. package/src/generated/instructions/createTreeV2.ts +153 -13
  275. package/src/generated/instructions/decompressV1.ts +262 -26
  276. package/src/generated/instructions/delegate.ts +169 -14
  277. package/src/generated/instructions/delegateAndFreezeV2.ts +183 -15
  278. package/src/generated/instructions/delegateV2.ts +183 -15
  279. package/src/generated/instructions/freezeV2.ts +187 -16
  280. package/src/generated/instructions/mintToCollectionV1.ts +295 -25
  281. package/src/generated/instructions/mintV1.ts +168 -15
  282. package/src/generated/instructions/mintV2.ts +231 -21
  283. package/src/generated/instructions/redeem.ts +163 -14
  284. package/src/generated/instructions/setAndVerifyCollection.ts +306 -25
  285. package/src/generated/instructions/setCollectionV2.ts +252 -23
  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 +188 -16
  289. package/src/generated/instructions/setTreeDelegate.ts +106 -9
  290. package/src/generated/instructions/thawAndRevokeV2.ts +167 -14
  291. package/src/generated/instructions/thawV2.ts +187 -16
  292. package/src/generated/instructions/transfer.ts +163 -14
  293. package/src/generated/instructions/transferV2.ts +197 -17
  294. package/src/generated/instructions/unverifyCollection.ts +305 -25
  295. package/src/generated/instructions/unverifyCreator.ts +173 -15
  296. package/src/generated/instructions/unverifyCreatorV2.ts +175 -15
  297. package/src/generated/instructions/updateAssetDataV2.ts +189 -16
  298. package/src/generated/instructions/updateMetadata.ts +232 -21
  299. package/src/generated/instructions/updateMetadataV2.ts +188 -16
  300. package/src/generated/instructions/verifyCollection.ts +305 -25
  301. package/src/generated/instructions/verifyCreator.ts +173 -15
  302. package/src/generated/instructions/verifyCreatorV2.ts +175 -15
  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
@@ -49,7 +49,11 @@ import {
49
49
  SolanaError,
50
50
  transformEncoder,
51
51
  } from "@solana/kit";
52
- import { getAccountMetaFactory } from "@solana/program-client-core";
52
+ import {
53
+ getAccountMetaFactory,
54
+ getAddressFromResolvedInstructionAccount,
55
+ } from "@solana/program-client-core";
56
+ import { findTreeConfigPda } from "../pdas/index.js";
53
57
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
54
58
  import {
55
59
  getMetadataArgsV2Decoder,
@@ -67,25 +71,26 @@ export function getSetCollectionV2DiscriminatorBytes(): ReadonlyUint8Array {
67
71
 
68
72
  export type SetCollectionV2Instruction<
69
73
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
70
- TAccountTreeAuthority extends string | AccountMeta = string,
71
- TAccountPayer extends string | AccountMeta = string,
72
- TAccountAuthority extends string | AccountMeta = string,
73
- TAccountNewCollectionAuthority extends string | AccountMeta = string,
74
- TAccountLeafOwner extends string | AccountMeta = string,
75
- TAccountLeafDelegate extends string | AccountMeta = string,
76
- TAccountMerkleTree extends string | AccountMeta = string,
77
- TAccountCoreCollection extends string | AccountMeta = string,
78
- TAccountNewCoreCollection extends string | AccountMeta = string,
79
- TAccountMplCoreCpiSigner extends string | AccountMeta = string,
80
- TAccountLogWrapper extends string | AccountMeta = string,
81
- TAccountCompressionProgram extends string | AccountMeta = string,
82
- TAccountMplCoreProgram extends
83
- | string
84
- | AccountMeta = "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d",
85
- TAccountSystemProgram extends
86
- | string
87
- | AccountMeta = "11111111111111111111111111111111",
88
- TRemainingAccounts extends readonly AccountMeta[] = [],
74
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
75
+ TAccountPayer extends string | AccountMeta<string> = string,
76
+ TAccountAuthority extends string | AccountMeta<string> = string,
77
+ TAccountNewCollectionAuthority extends string | AccountMeta<string> = string,
78
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
79
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
80
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
81
+ TAccountCoreCollection extends string | AccountMeta<string> = string,
82
+ TAccountNewCoreCollection extends string | AccountMeta<string> = string,
83
+ TAccountMplCoreCpiSigner extends string | AccountMeta<string> =
84
+ "CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk",
85
+ TAccountLogWrapper extends string | AccountMeta<string> =
86
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
87
+ TAccountCompressionProgram extends string | AccountMeta<string> =
88
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
89
+ TAccountMplCoreProgram extends string | AccountMeta<string> =
90
+ "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d",
91
+ TAccountSystemProgram extends string | AccountMeta<string> =
92
+ "11111111111111111111111111111111",
93
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
89
94
  > = Instruction<TProgram> &
90
95
  InstructionWithData<ReadonlyUint8Array> &
91
96
  InstructionWithAccounts<
@@ -201,6 +206,218 @@ export function getSetCollectionV2InstructionDataCodec(): Codec<
201
206
  );
202
207
  }
203
208
 
209
+ export interface SetCollectionV2AsyncInput<
210
+ TAccountTreeAuthority extends string = string,
211
+ TAccountPayer extends string = string,
212
+ TAccountAuthority extends string = string,
213
+ TAccountNewCollectionAuthority extends string = string,
214
+ TAccountLeafOwner extends string = string,
215
+ TAccountLeafDelegate extends string = string,
216
+ TAccountMerkleTree extends string = string,
217
+ TAccountCoreCollection extends string = string,
218
+ TAccountNewCoreCollection extends string = string,
219
+ TAccountMplCoreCpiSigner extends string = string,
220
+ TAccountLogWrapper extends string = string,
221
+ TAccountCompressionProgram extends string = string,
222
+ TAccountMplCoreProgram extends string = string,
223
+ TAccountSystemProgram extends string = string,
224
+ > {
225
+ treeAuthority?: Address<TAccountTreeAuthority>;
226
+ payer: TransactionSigner<TAccountPayer>;
227
+ /**
228
+ * If item is not in a collection, then authority must be tree owner/delegate. If item is
229
+ * getting removed from a collection, then this must be an authority for the existing
230
+ * collection. Defaults to `payer`
231
+ */
232
+ authority?: TransactionSigner<TAccountAuthority>;
233
+ /**
234
+ * If item is getting added to a new collection, then this must be the authority
235
+ * for the new collection. Defaults to `authority`
236
+ */
237
+ newCollectionAuthority?: TransactionSigner<TAccountNewCollectionAuthority>;
238
+ leafOwner: Address<TAccountLeafOwner>;
239
+ /** Defaults to `leaf_owner` */
240
+ leafDelegate?: Address<TAccountLeafDelegate>;
241
+ merkleTree: Address<TAccountMerkleTree>;
242
+ coreCollection?: Address<TAccountCoreCollection>;
243
+ newCoreCollection?: Address<TAccountNewCoreCollection>;
244
+ mplCoreCpiSigner?: Address<TAccountMplCoreCpiSigner>;
245
+ logWrapper?: Address<TAccountLogWrapper>;
246
+ compressionProgram?: Address<TAccountCompressionProgram>;
247
+ mplCoreProgram?: Address<TAccountMplCoreProgram>;
248
+ systemProgram?: Address<TAccountSystemProgram>;
249
+ root: SetCollectionV2InstructionDataArgs["root"];
250
+ assetDataHash: SetCollectionV2InstructionDataArgs["assetDataHash"];
251
+ flags: SetCollectionV2InstructionDataArgs["flags"];
252
+ nonce: SetCollectionV2InstructionDataArgs["nonce"];
253
+ index: SetCollectionV2InstructionDataArgs["index"];
254
+ message: SetCollectionV2InstructionDataArgs["message"];
255
+ }
256
+
257
+ export async function getSetCollectionV2InstructionAsync<
258
+ TAccountTreeAuthority extends string,
259
+ TAccountPayer extends string,
260
+ TAccountAuthority extends string,
261
+ TAccountNewCollectionAuthority extends string,
262
+ TAccountLeafOwner extends string,
263
+ TAccountLeafDelegate extends string,
264
+ TAccountMerkleTree extends string,
265
+ TAccountCoreCollection extends string,
266
+ TAccountNewCoreCollection extends string,
267
+ TAccountMplCoreCpiSigner extends string,
268
+ TAccountLogWrapper extends string,
269
+ TAccountCompressionProgram extends string,
270
+ TAccountMplCoreProgram extends string,
271
+ TAccountSystemProgram extends string,
272
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
273
+ >(
274
+ input: SetCollectionV2AsyncInput<
275
+ TAccountTreeAuthority,
276
+ TAccountPayer,
277
+ TAccountAuthority,
278
+ TAccountNewCollectionAuthority,
279
+ TAccountLeafOwner,
280
+ TAccountLeafDelegate,
281
+ TAccountMerkleTree,
282
+ TAccountCoreCollection,
283
+ TAccountNewCoreCollection,
284
+ TAccountMplCoreCpiSigner,
285
+ TAccountLogWrapper,
286
+ TAccountCompressionProgram,
287
+ TAccountMplCoreProgram,
288
+ TAccountSystemProgram
289
+ >,
290
+ config?: { programAddress?: TProgramAddress },
291
+ ): Promise<
292
+ SetCollectionV2Instruction<
293
+ TProgramAddress,
294
+ TAccountTreeAuthority,
295
+ TAccountPayer,
296
+ TAccountAuthority,
297
+ TAccountNewCollectionAuthority,
298
+ TAccountLeafOwner,
299
+ TAccountLeafDelegate,
300
+ TAccountMerkleTree,
301
+ TAccountCoreCollection,
302
+ TAccountNewCoreCollection,
303
+ TAccountMplCoreCpiSigner,
304
+ TAccountLogWrapper,
305
+ TAccountCompressionProgram,
306
+ TAccountMplCoreProgram,
307
+ TAccountSystemProgram
308
+ >
309
+ > {
310
+ // Program address.
311
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
312
+
313
+ // Original accounts.
314
+ const originalAccounts = {
315
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
316
+ payer: { value: input.payer ?? null, isWritable: true },
317
+ authority: { value: input.authority ?? null, isWritable: false },
318
+ newCollectionAuthority: {
319
+ value: input.newCollectionAuthority ?? null,
320
+ isWritable: false,
321
+ },
322
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
323
+ leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
324
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
325
+ coreCollection: { value: input.coreCollection ?? null, isWritable: true },
326
+ newCoreCollection: {
327
+ value: input.newCoreCollection ?? null,
328
+ isWritable: true,
329
+ },
330
+ mplCoreCpiSigner: {
331
+ value: input.mplCoreCpiSigner ?? null,
332
+ isWritable: false,
333
+ },
334
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
335
+ compressionProgram: {
336
+ value: input.compressionProgram ?? null,
337
+ isWritable: false,
338
+ },
339
+ mplCoreProgram: { value: input.mplCoreProgram ?? null, isWritable: false },
340
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
341
+ };
342
+ const accounts = originalAccounts as Record<
343
+ keyof typeof originalAccounts,
344
+ ResolvedInstructionAccount
345
+ >;
346
+
347
+ // Original args.
348
+ const args = { ...input };
349
+
350
+ // Resolve default values.
351
+ if (!accounts.treeAuthority.value) {
352
+ accounts.treeAuthority.value = await findTreeConfigPda({
353
+ merkleTree: getAddressFromResolvedInstructionAccount(
354
+ "merkleTree",
355
+ accounts.merkleTree.value,
356
+ ),
357
+ });
358
+ }
359
+ if (!accounts.mplCoreCpiSigner.value) {
360
+ accounts.mplCoreCpiSigner.value =
361
+ "CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk" as Address<"CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk">;
362
+ }
363
+ if (!accounts.logWrapper.value) {
364
+ accounts.logWrapper.value =
365
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
366
+ }
367
+ if (!accounts.compressionProgram.value) {
368
+ accounts.compressionProgram.value =
369
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
370
+ }
371
+ if (!accounts.mplCoreProgram.value) {
372
+ accounts.mplCoreProgram.value =
373
+ "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d" as Address<"CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d">;
374
+ }
375
+ if (!accounts.systemProgram.value) {
376
+ accounts.systemProgram.value =
377
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
378
+ }
379
+
380
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
381
+ return Object.freeze({
382
+ accounts: [
383
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
384
+ getAccountMeta("payer", accounts.payer),
385
+ getAccountMeta("authority", accounts.authority),
386
+ getAccountMeta("newCollectionAuthority", accounts.newCollectionAuthority),
387
+ getAccountMeta("leafOwner", accounts.leafOwner),
388
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
389
+ getAccountMeta("merkleTree", accounts.merkleTree),
390
+ getAccountMeta("coreCollection", accounts.coreCollection),
391
+ getAccountMeta("newCoreCollection", accounts.newCoreCollection),
392
+ getAccountMeta("mplCoreCpiSigner", accounts.mplCoreCpiSigner),
393
+ getAccountMeta("logWrapper", accounts.logWrapper),
394
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
395
+ getAccountMeta("mplCoreProgram", accounts.mplCoreProgram),
396
+ getAccountMeta("systemProgram", accounts.systemProgram),
397
+ ],
398
+ data: getSetCollectionV2InstructionDataEncoder().encode(
399
+ args as SetCollectionV2InstructionDataArgs,
400
+ ),
401
+ programAddress,
402
+ } as SetCollectionV2Instruction<
403
+ TProgramAddress,
404
+ TAccountTreeAuthority,
405
+ TAccountPayer,
406
+ TAccountAuthority,
407
+ TAccountNewCollectionAuthority,
408
+ TAccountLeafOwner,
409
+ TAccountLeafDelegate,
410
+ TAccountMerkleTree,
411
+ TAccountCoreCollection,
412
+ TAccountNewCoreCollection,
413
+ TAccountMplCoreCpiSigner,
414
+ TAccountLogWrapper,
415
+ TAccountCompressionProgram,
416
+ TAccountMplCoreProgram,
417
+ TAccountSystemProgram
418
+ >);
419
+ }
420
+
204
421
  export interface SetCollectionV2Input<
205
422
  TAccountTreeAuthority extends string = string,
206
423
  TAccountPayer extends string = string,
@@ -236,9 +453,9 @@ export interface SetCollectionV2Input<
236
453
  merkleTree: Address<TAccountMerkleTree>;
237
454
  coreCollection?: Address<TAccountCoreCollection>;
238
455
  newCoreCollection?: Address<TAccountNewCoreCollection>;
239
- mplCoreCpiSigner: Address<TAccountMplCoreCpiSigner>;
240
- logWrapper: Address<TAccountLogWrapper>;
241
- compressionProgram: Address<TAccountCompressionProgram>;
456
+ mplCoreCpiSigner?: Address<TAccountMplCoreCpiSigner>;
457
+ logWrapper?: Address<TAccountLogWrapper>;
458
+ compressionProgram?: Address<TAccountCompressionProgram>;
242
459
  mplCoreProgram?: Address<TAccountMplCoreProgram>;
243
460
  systemProgram?: Address<TAccountSystemProgram>;
244
461
  root: SetCollectionV2InstructionDataArgs["root"];
@@ -341,6 +558,18 @@ export function getSetCollectionV2Instruction<
341
558
  const args = { ...input };
342
559
 
343
560
  // Resolve default values.
561
+ if (!accounts.mplCoreCpiSigner.value) {
562
+ accounts.mplCoreCpiSigner.value =
563
+ "CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk" as Address<"CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk">;
564
+ }
565
+ if (!accounts.logWrapper.value) {
566
+ accounts.logWrapper.value =
567
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
568
+ }
569
+ if (!accounts.compressionProgram.value) {
570
+ accounts.compressionProgram.value =
571
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
572
+ }
344
573
  if (!accounts.mplCoreProgram.value) {
345
574
  accounts.mplCoreProgram.value =
346
575
  "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d" as Address<"CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d">;
@@ -56,9 +56,9 @@ export function getSetDecompressableStateDiscriminatorBytes(): ReadonlyUint8Arra
56
56
 
57
57
  export type SetDecompressableStateInstruction<
58
58
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
59
- TAccountTreeAuthority extends string | AccountMeta = string,
60
- TAccountTreeCreator extends string | AccountMeta = string,
61
- TRemainingAccounts extends readonly AccountMeta[] = [],
59
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
60
+ TAccountTreeCreator extends string | AccountMeta<string> = string,
61
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
62
62
  > = Instruction<TProgram> &
63
63
  InstructionWithData<ReadonlyUint8Array> &
64
64
  InstructionWithAccounts<
@@ -56,9 +56,9 @@ export function getSetDecompressibleStateDiscriminatorBytes(): ReadonlyUint8Arra
56
56
 
57
57
  export type SetDecompressibleStateInstruction<
58
58
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
59
- TAccountTreeAuthority extends string | AccountMeta = string,
60
- TAccountTreeCreator extends string | AccountMeta = string,
61
- TRemainingAccounts extends readonly AccountMeta[] = [],
59
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
60
+ TAccountTreeCreator extends string | AccountMeta<string> = string,
61
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
62
62
  > = Instruction<TProgram> &
63
63
  InstructionWithData<ReadonlyUint8Array> &
64
64
  InstructionWithAccounts<
@@ -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 SET_NON_TRANSFERABLE_V2_DISCRIMINATOR: ReadonlyUint8Array =
@@ -62,19 +66,20 @@ export function getSetNonTransferableV2DiscriminatorBytes(): ReadonlyUint8Array
62
66
 
63
67
  export type SetNonTransferableV2Instruction<
64
68
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
65
- TAccountTreeAuthority extends string | AccountMeta = string,
66
- TAccountPayer extends string | AccountMeta = string,
67
- TAccountAuthority extends string | AccountMeta = string,
68
- TAccountLeafOwner extends string | AccountMeta = string,
69
- TAccountLeafDelegate 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,
74
- TAccountSystemProgram extends
75
- | string
76
- | AccountMeta = "11111111111111111111111111111111",
77
- TRemainingAccounts extends readonly AccountMeta[] = [],
69
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
70
+ TAccountPayer extends string | AccountMeta<string> = string,
71
+ TAccountAuthority extends string | AccountMeta<string> = string,
72
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
73
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
74
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
75
+ TAccountCoreCollection extends string | AccountMeta<string> = string,
76
+ TAccountLogWrapper extends string | AccountMeta<string> =
77
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
78
+ TAccountCompressionProgram extends string | AccountMeta<string> =
79
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
80
+ TAccountSystemProgram extends string | AccountMeta<string> =
81
+ "11111111111111111111111111111111",
82
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
78
83
  > = Instruction<TProgram> &
79
84
  InstructionWithData<ReadonlyUint8Array> &
80
85
  InstructionWithAccounts<
@@ -184,6 +189,165 @@ export function getSetNonTransferableV2InstructionDataCodec(): Codec<
184
189
  );
185
190
  }
186
191
 
192
+ export interface SetNonTransferableV2AsyncInput<
193
+ TAccountTreeAuthority extends string = string,
194
+ TAccountPayer extends string = string,
195
+ TAccountAuthority extends string = string,
196
+ TAccountLeafOwner extends string = string,
197
+ TAccountLeafDelegate extends string = string,
198
+ TAccountMerkleTree extends string = string,
199
+ TAccountCoreCollection extends string = string,
200
+ TAccountLogWrapper extends string = string,
201
+ TAccountCompressionProgram extends string = string,
202
+ TAccountSystemProgram extends string = string,
203
+ > {
204
+ treeAuthority?: Address<TAccountTreeAuthority>;
205
+ payer: TransactionSigner<TAccountPayer>;
206
+ /**
207
+ * This authority must be a permanent freeze delegate on the collection
208
+ * Defaults to `payer`
209
+ */
210
+ authority?: TransactionSigner<TAccountAuthority>;
211
+ leafOwner: Address<TAccountLeafOwner>;
212
+ /** Defaults to `leaf_owner` */
213
+ leafDelegate?: Address<TAccountLeafDelegate>;
214
+ merkleTree: Address<TAccountMerkleTree>;
215
+ coreCollection: Address<TAccountCoreCollection>;
216
+ logWrapper?: Address<TAccountLogWrapper>;
217
+ compressionProgram?: Address<TAccountCompressionProgram>;
218
+ systemProgram?: Address<TAccountSystemProgram>;
219
+ root: SetNonTransferableV2InstructionDataArgs["root"];
220
+ dataHash: SetNonTransferableV2InstructionDataArgs["dataHash"];
221
+ creatorHash: SetNonTransferableV2InstructionDataArgs["creatorHash"];
222
+ assetDataHash: SetNonTransferableV2InstructionDataArgs["assetDataHash"];
223
+ flags: SetNonTransferableV2InstructionDataArgs["flags"];
224
+ nonce: SetNonTransferableV2InstructionDataArgs["nonce"];
225
+ index: SetNonTransferableV2InstructionDataArgs["index"];
226
+ }
227
+
228
+ export async function getSetNonTransferableV2InstructionAsync<
229
+ TAccountTreeAuthority extends string,
230
+ TAccountPayer extends string,
231
+ TAccountAuthority extends string,
232
+ TAccountLeafOwner extends string,
233
+ TAccountLeafDelegate extends string,
234
+ TAccountMerkleTree extends string,
235
+ TAccountCoreCollection extends string,
236
+ TAccountLogWrapper extends string,
237
+ TAccountCompressionProgram extends string,
238
+ TAccountSystemProgram extends string,
239
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
240
+ >(
241
+ input: SetNonTransferableV2AsyncInput<
242
+ TAccountTreeAuthority,
243
+ TAccountPayer,
244
+ TAccountAuthority,
245
+ TAccountLeafOwner,
246
+ TAccountLeafDelegate,
247
+ TAccountMerkleTree,
248
+ TAccountCoreCollection,
249
+ TAccountLogWrapper,
250
+ TAccountCompressionProgram,
251
+ TAccountSystemProgram
252
+ >,
253
+ config?: { programAddress?: TProgramAddress },
254
+ ): Promise<
255
+ SetNonTransferableV2Instruction<
256
+ TProgramAddress,
257
+ TAccountTreeAuthority,
258
+ TAccountPayer,
259
+ TAccountAuthority,
260
+ TAccountLeafOwner,
261
+ TAccountLeafDelegate,
262
+ TAccountMerkleTree,
263
+ TAccountCoreCollection,
264
+ TAccountLogWrapper,
265
+ TAccountCompressionProgram,
266
+ TAccountSystemProgram
267
+ >
268
+ > {
269
+ // Program address.
270
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
271
+
272
+ // Original accounts.
273
+ const originalAccounts = {
274
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
275
+ payer: { value: input.payer ?? null, isWritable: true },
276
+ authority: { value: input.authority ?? null, isWritable: false },
277
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
278
+ leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
279
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
280
+ coreCollection: { value: input.coreCollection ?? null, isWritable: false },
281
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
282
+ compressionProgram: {
283
+ value: input.compressionProgram ?? null,
284
+ isWritable: false,
285
+ },
286
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
287
+ };
288
+ const accounts = originalAccounts as Record<
289
+ keyof typeof originalAccounts,
290
+ ResolvedInstructionAccount
291
+ >;
292
+
293
+ // Original args.
294
+ const args = { ...input };
295
+
296
+ // Resolve default values.
297
+ if (!accounts.treeAuthority.value) {
298
+ accounts.treeAuthority.value = await findTreeConfigPda({
299
+ merkleTree: getAddressFromResolvedInstructionAccount(
300
+ "merkleTree",
301
+ accounts.merkleTree.value,
302
+ ),
303
+ });
304
+ }
305
+ if (!accounts.logWrapper.value) {
306
+ accounts.logWrapper.value =
307
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
308
+ }
309
+ if (!accounts.compressionProgram.value) {
310
+ accounts.compressionProgram.value =
311
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
312
+ }
313
+ if (!accounts.systemProgram.value) {
314
+ accounts.systemProgram.value =
315
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
316
+ }
317
+
318
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
319
+ return Object.freeze({
320
+ accounts: [
321
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
322
+ getAccountMeta("payer", accounts.payer),
323
+ getAccountMeta("authority", accounts.authority),
324
+ getAccountMeta("leafOwner", accounts.leafOwner),
325
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
326
+ getAccountMeta("merkleTree", accounts.merkleTree),
327
+ getAccountMeta("coreCollection", accounts.coreCollection),
328
+ getAccountMeta("logWrapper", accounts.logWrapper),
329
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
330
+ getAccountMeta("systemProgram", accounts.systemProgram),
331
+ ],
332
+ data: getSetNonTransferableV2InstructionDataEncoder().encode(
333
+ args as SetNonTransferableV2InstructionDataArgs,
334
+ ),
335
+ programAddress,
336
+ } as SetNonTransferableV2Instruction<
337
+ TProgramAddress,
338
+ TAccountTreeAuthority,
339
+ TAccountPayer,
340
+ TAccountAuthority,
341
+ TAccountLeafOwner,
342
+ TAccountLeafDelegate,
343
+ TAccountMerkleTree,
344
+ TAccountCoreCollection,
345
+ TAccountLogWrapper,
346
+ TAccountCompressionProgram,
347
+ TAccountSystemProgram
348
+ >);
349
+ }
350
+
187
351
  export interface SetNonTransferableV2Input<
188
352
  TAccountTreeAuthority extends string = string,
189
353
  TAccountPayer extends string = string,
@@ -208,8 +372,8 @@ export interface SetNonTransferableV2Input<
208
372
  leafDelegate?: Address<TAccountLeafDelegate>;
209
373
  merkleTree: Address<TAccountMerkleTree>;
210
374
  coreCollection: Address<TAccountCoreCollection>;
211
- logWrapper: Address<TAccountLogWrapper>;
212
- compressionProgram: Address<TAccountCompressionProgram>;
375
+ logWrapper?: Address<TAccountLogWrapper>;
376
+ compressionProgram?: Address<TAccountCompressionProgram>;
213
377
  systemProgram?: Address<TAccountSystemProgram>;
214
378
  root: SetNonTransferableV2InstructionDataArgs["root"];
215
379
  dataHash: SetNonTransferableV2InstructionDataArgs["dataHash"];
@@ -287,6 +451,14 @@ export function getSetNonTransferableV2Instruction<
287
451
  const args = { ...input };
288
452
 
289
453
  // Resolve default values.
454
+ if (!accounts.logWrapper.value) {
455
+ accounts.logWrapper.value =
456
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
457
+ }
458
+ if (!accounts.compressionProgram.value) {
459
+ accounts.compressionProgram.value =
460
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
461
+ }
290
462
  if (!accounts.systemProgram.value) {
291
463
  accounts.systemProgram.value =
292
464
  "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;