@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
  getMetadataArgsDecoder,
@@ -70,24 +74,25 @@ export function getUpdateMetadataDiscriminatorBytes(): ReadonlyUint8Array {
70
74
 
71
75
  export type UpdateMetadataInstruction<
72
76
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
73
- TAccountTreeAuthority extends string | AccountMeta = string,
74
- TAccountAuthority extends string | AccountMeta = string,
75
- TAccountCollectionMint extends string | AccountMeta = string,
76
- TAccountCollectionMetadata extends string | AccountMeta = string,
77
- TAccountCollectionAuthorityRecordPda extends string | AccountMeta = string,
78
- TAccountLeafOwner extends string | AccountMeta = string,
79
- TAccountLeafDelegate extends string | AccountMeta = string,
80
- TAccountPayer extends string | AccountMeta = string,
81
- TAccountMerkleTree extends string | AccountMeta = string,
82
- TAccountLogWrapper extends string | AccountMeta = string,
83
- TAccountCompressionProgram extends string | AccountMeta = string,
84
- TAccountTokenMetadataProgram extends
85
- | string
86
- | AccountMeta = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
87
- TAccountSystemProgram extends
88
- | string
89
- | AccountMeta = "11111111111111111111111111111111",
90
- TRemainingAccounts extends readonly AccountMeta[] = [],
77
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
78
+ TAccountAuthority extends string | AccountMeta<string> = string,
79
+ TAccountCollectionMint extends string | AccountMeta<string> = string,
80
+ TAccountCollectionMetadata extends string | AccountMeta<string> = string,
81
+ TAccountCollectionAuthorityRecordPda extends string | AccountMeta<string> =
82
+ "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY",
83
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
84
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
85
+ TAccountPayer extends string | AccountMeta<string> = string,
86
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
87
+ TAccountLogWrapper extends string | AccountMeta<string> =
88
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
89
+ TAccountCompressionProgram extends string | AccountMeta<string> =
90
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
91
+ TAccountTokenMetadataProgram extends string | AccountMeta<string> =
92
+ "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
93
+ TAccountSystemProgram extends string | AccountMeta<string> =
94
+ "11111111111111111111111111111111",
95
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
91
96
  > = Instruction<TProgram> &
92
97
  InstructionWithData<ReadonlyUint8Array> &
93
98
  InstructionWithAccounts<
@@ -189,6 +194,204 @@ export function getUpdateMetadataInstructionDataCodec(): Codec<
189
194
  );
190
195
  }
191
196
 
197
+ export interface UpdateMetadataAsyncInput<
198
+ TAccountTreeAuthority extends string = string,
199
+ TAccountAuthority extends string = string,
200
+ TAccountCollectionMint extends string = string,
201
+ TAccountCollectionMetadata extends string = string,
202
+ TAccountCollectionAuthorityRecordPda extends string = string,
203
+ TAccountLeafOwner extends string = string,
204
+ TAccountLeafDelegate extends string = string,
205
+ TAccountPayer extends string = string,
206
+ TAccountMerkleTree extends string = string,
207
+ TAccountLogWrapper extends string = string,
208
+ TAccountCompressionProgram extends string = string,
209
+ TAccountTokenMetadataProgram extends string = string,
210
+ TAccountSystemProgram extends string = string,
211
+ > {
212
+ treeAuthority?: Address<TAccountTreeAuthority>;
213
+ /**
214
+ * Either collection authority or tree owner/delegate, depending
215
+ * on whether the item is in a verified collection
216
+ */
217
+ authority: TransactionSigner<TAccountAuthority>;
218
+ /** Used when item is in a verified collection */
219
+ collectionMint?: Address<TAccountCollectionMint>;
220
+ /** Used when item is in a verified collection */
221
+ collectionMetadata?: Address<TAccountCollectionMetadata>;
222
+ collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;
223
+ leafOwner: Address<TAccountLeafOwner>;
224
+ leafDelegate: Address<TAccountLeafDelegate>;
225
+ payer: TransactionSigner<TAccountPayer>;
226
+ merkleTree: Address<TAccountMerkleTree>;
227
+ logWrapper?: Address<TAccountLogWrapper>;
228
+ compressionProgram?: Address<TAccountCompressionProgram>;
229
+ tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
230
+ systemProgram?: Address<TAccountSystemProgram>;
231
+ root: UpdateMetadataInstructionDataArgs["root"];
232
+ nonce: UpdateMetadataInstructionDataArgs["nonce"];
233
+ index: UpdateMetadataInstructionDataArgs["index"];
234
+ currentMetadata: UpdateMetadataInstructionDataArgs["currentMetadata"];
235
+ updateArgs: UpdateMetadataInstructionDataArgs["updateArgs"];
236
+ }
237
+
238
+ export async function getUpdateMetadataInstructionAsync<
239
+ TAccountTreeAuthority extends string,
240
+ TAccountAuthority extends string,
241
+ TAccountCollectionMint extends string,
242
+ TAccountCollectionMetadata extends string,
243
+ TAccountCollectionAuthorityRecordPda extends string,
244
+ TAccountLeafOwner extends string,
245
+ TAccountLeafDelegate extends string,
246
+ TAccountPayer extends string,
247
+ TAccountMerkleTree extends string,
248
+ TAccountLogWrapper extends string,
249
+ TAccountCompressionProgram extends string,
250
+ TAccountTokenMetadataProgram extends string,
251
+ TAccountSystemProgram extends string,
252
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
253
+ >(
254
+ input: UpdateMetadataAsyncInput<
255
+ TAccountTreeAuthority,
256
+ TAccountAuthority,
257
+ TAccountCollectionMint,
258
+ TAccountCollectionMetadata,
259
+ TAccountCollectionAuthorityRecordPda,
260
+ TAccountLeafOwner,
261
+ TAccountLeafDelegate,
262
+ TAccountPayer,
263
+ TAccountMerkleTree,
264
+ TAccountLogWrapper,
265
+ TAccountCompressionProgram,
266
+ TAccountTokenMetadataProgram,
267
+ TAccountSystemProgram
268
+ >,
269
+ config?: { programAddress?: TProgramAddress },
270
+ ): Promise<
271
+ UpdateMetadataInstruction<
272
+ TProgramAddress,
273
+ TAccountTreeAuthority,
274
+ TAccountAuthority,
275
+ TAccountCollectionMint,
276
+ TAccountCollectionMetadata,
277
+ TAccountCollectionAuthorityRecordPda,
278
+ TAccountLeafOwner,
279
+ TAccountLeafDelegate,
280
+ TAccountPayer,
281
+ TAccountMerkleTree,
282
+ TAccountLogWrapper,
283
+ TAccountCompressionProgram,
284
+ TAccountTokenMetadataProgram,
285
+ TAccountSystemProgram
286
+ >
287
+ > {
288
+ // Program address.
289
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
290
+
291
+ // Original accounts.
292
+ const originalAccounts = {
293
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
294
+ authority: { value: input.authority ?? null, isWritable: false },
295
+ collectionMint: { value: input.collectionMint ?? null, isWritable: false },
296
+ collectionMetadata: {
297
+ value: input.collectionMetadata ?? null,
298
+ isWritable: false,
299
+ },
300
+ collectionAuthorityRecordPda: {
301
+ value: input.collectionAuthorityRecordPda ?? null,
302
+ isWritable: false,
303
+ },
304
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
305
+ leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
306
+ payer: { value: input.payer ?? null, isWritable: false },
307
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
308
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
309
+ compressionProgram: {
310
+ value: input.compressionProgram ?? null,
311
+ isWritable: false,
312
+ },
313
+ tokenMetadataProgram: {
314
+ value: input.tokenMetadataProgram ?? null,
315
+ isWritable: false,
316
+ },
317
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
318
+ };
319
+ const accounts = originalAccounts as Record<
320
+ keyof typeof originalAccounts,
321
+ ResolvedInstructionAccount
322
+ >;
323
+
324
+ // Original args.
325
+ const args = { ...input };
326
+
327
+ // Resolve default values.
328
+ if (!accounts.treeAuthority.value) {
329
+ accounts.treeAuthority.value = await findTreeConfigPda({
330
+ merkleTree: getAddressFromResolvedInstructionAccount(
331
+ "merkleTree",
332
+ accounts.merkleTree.value,
333
+ ),
334
+ });
335
+ }
336
+ if (!accounts.logWrapper.value) {
337
+ accounts.logWrapper.value =
338
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
339
+ }
340
+ if (!accounts.compressionProgram.value) {
341
+ accounts.compressionProgram.value =
342
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
343
+ }
344
+ if (!accounts.tokenMetadataProgram.value) {
345
+ accounts.tokenMetadataProgram.value =
346
+ "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
347
+ }
348
+ if (!accounts.systemProgram.value) {
349
+ accounts.systemProgram.value =
350
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
351
+ }
352
+
353
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
354
+ return Object.freeze({
355
+ accounts: [
356
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
357
+ getAccountMeta("authority", accounts.authority),
358
+ getAccountMeta("collectionMint", accounts.collectionMint),
359
+ getAccountMeta("collectionMetadata", accounts.collectionMetadata),
360
+ getAccountMeta(
361
+ "collectionAuthorityRecordPda",
362
+ accounts.collectionAuthorityRecordPda,
363
+ ),
364
+ getAccountMeta("leafOwner", accounts.leafOwner),
365
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
366
+ getAccountMeta("payer", accounts.payer),
367
+ getAccountMeta("merkleTree", accounts.merkleTree),
368
+ getAccountMeta("logWrapper", accounts.logWrapper),
369
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
370
+ getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
371
+ getAccountMeta("systemProgram", accounts.systemProgram),
372
+ ],
373
+ data: getUpdateMetadataInstructionDataEncoder().encode(
374
+ args as UpdateMetadataInstructionDataArgs,
375
+ ),
376
+ programAddress,
377
+ } as UpdateMetadataInstruction<
378
+ TProgramAddress,
379
+ TAccountTreeAuthority,
380
+ TAccountAuthority,
381
+ TAccountCollectionMint,
382
+ TAccountCollectionMetadata,
383
+ TAccountCollectionAuthorityRecordPda,
384
+ TAccountLeafOwner,
385
+ TAccountLeafDelegate,
386
+ TAccountPayer,
387
+ TAccountMerkleTree,
388
+ TAccountLogWrapper,
389
+ TAccountCompressionProgram,
390
+ TAccountTokenMetadataProgram,
391
+ TAccountSystemProgram
392
+ >);
393
+ }
394
+
192
395
  export interface UpdateMetadataInput<
193
396
  TAccountTreeAuthority extends string = string,
194
397
  TAccountAuthority extends string = string,
@@ -219,8 +422,8 @@ export interface UpdateMetadataInput<
219
422
  leafDelegate: Address<TAccountLeafDelegate>;
220
423
  payer: TransactionSigner<TAccountPayer>;
221
424
  merkleTree: Address<TAccountMerkleTree>;
222
- logWrapper: Address<TAccountLogWrapper>;
223
- compressionProgram: Address<TAccountCompressionProgram>;
425
+ logWrapper?: Address<TAccountLogWrapper>;
426
+ compressionProgram?: Address<TAccountCompressionProgram>;
224
427
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
225
428
  systemProgram?: Address<TAccountSystemProgram>;
226
429
  root: UpdateMetadataInstructionDataArgs["root"];
@@ -318,6 +521,14 @@ export function getUpdateMetadataInstruction<
318
521
  const args = { ...input };
319
522
 
320
523
  // Resolve default values.
524
+ if (!accounts.logWrapper.value) {
525
+ accounts.logWrapper.value =
526
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
527
+ }
528
+ if (!accounts.compressionProgram.value) {
529
+ accounts.compressionProgram.value =
530
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
531
+ }
321
532
  if (!accounts.tokenMetadataProgram.value) {
322
533
  accounts.tokenMetadataProgram.value =
323
534
  "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
@@ -54,7 +54,11 @@ import {
54
54
  SolanaError,
55
55
  transformEncoder,
56
56
  } from "@solana/kit";
57
- import { getAccountMetaFactory } from "@solana/program-client-core";
57
+ import {
58
+ getAccountMetaFactory,
59
+ getAddressFromResolvedInstructionAccount,
60
+ } from "@solana/program-client-core";
61
+ import { findTreeConfigPda } from "../pdas/index.js";
58
62
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
59
63
  import {
60
64
  getMetadataArgsV2Decoder,
@@ -74,19 +78,20 @@ export function getUpdateMetadataV2DiscriminatorBytes(): ReadonlyUint8Array {
74
78
 
75
79
  export type UpdateMetadataV2Instruction<
76
80
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
77
- TAccountTreeAuthority extends string | AccountMeta = string,
78
- TAccountPayer extends string | AccountMeta = string,
79
- TAccountAuthority extends string | AccountMeta = string,
80
- TAccountLeafOwner extends string | AccountMeta = string,
81
- TAccountLeafDelegate extends string | AccountMeta = string,
82
- TAccountMerkleTree extends string | AccountMeta = string,
83
- TAccountCoreCollection extends string | AccountMeta = string,
84
- TAccountLogWrapper extends string | AccountMeta = string,
85
- TAccountCompressionProgram extends string | AccountMeta = string,
86
- TAccountSystemProgram extends
87
- | string
88
- | AccountMeta = "11111111111111111111111111111111",
89
- TRemainingAccounts extends readonly AccountMeta[] = [],
81
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
82
+ TAccountPayer extends string | AccountMeta<string> = string,
83
+ TAccountAuthority extends string | AccountMeta<string> = string,
84
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
85
+ TAccountLeafDelegate extends string | AccountMeta<string> = string,
86
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
87
+ TAccountCoreCollection extends string | AccountMeta<string> = string,
88
+ TAccountLogWrapper extends string | AccountMeta<string> =
89
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
90
+ TAccountCompressionProgram extends string | AccountMeta<string> =
91
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
92
+ TAccountSystemProgram extends string | AccountMeta<string> =
93
+ "11111111111111111111111111111111",
94
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
90
95
  > = Instruction<TProgram> &
91
96
  InstructionWithData<ReadonlyUint8Array> &
92
97
  InstructionWithAccounts<
@@ -193,6 +198,165 @@ export function getUpdateMetadataV2InstructionDataCodec(): Codec<
193
198
  );
194
199
  }
195
200
 
201
+ export interface UpdateMetadataV2AsyncInput<
202
+ TAccountTreeAuthority extends string = string,
203
+ TAccountPayer extends string = string,
204
+ TAccountAuthority extends string = string,
205
+ TAccountLeafOwner extends string = string,
206
+ TAccountLeafDelegate extends string = string,
207
+ TAccountMerkleTree extends string = string,
208
+ TAccountCoreCollection extends string = string,
209
+ TAccountLogWrapper extends string = string,
210
+ TAccountCompressionProgram extends string = string,
211
+ TAccountSystemProgram extends string = string,
212
+ > {
213
+ treeAuthority?: Address<TAccountTreeAuthority>;
214
+ payer: TransactionSigner<TAccountPayer>;
215
+ /**
216
+ * Either collection authority or tree owner/delegate, depending
217
+ * on whether the item is in a verified collection. Defaults to `payer`
218
+ */
219
+ authority?: TransactionSigner<TAccountAuthority>;
220
+ leafOwner: Address<TAccountLeafOwner>;
221
+ /** Defaults to `leaf_owner` */
222
+ leafDelegate?: Address<TAccountLeafDelegate>;
223
+ merkleTree: Address<TAccountMerkleTree>;
224
+ coreCollection?: Address<TAccountCoreCollection>;
225
+ logWrapper?: Address<TAccountLogWrapper>;
226
+ compressionProgram?: Address<TAccountCompressionProgram>;
227
+ systemProgram?: Address<TAccountSystemProgram>;
228
+ root: UpdateMetadataV2InstructionDataArgs["root"];
229
+ assetDataHash: UpdateMetadataV2InstructionDataArgs["assetDataHash"];
230
+ flags: UpdateMetadataV2InstructionDataArgs["flags"];
231
+ nonce: UpdateMetadataV2InstructionDataArgs["nonce"];
232
+ index: UpdateMetadataV2InstructionDataArgs["index"];
233
+ currentMetadata: UpdateMetadataV2InstructionDataArgs["currentMetadata"];
234
+ updateArgs: UpdateMetadataV2InstructionDataArgs["updateArgs"];
235
+ }
236
+
237
+ export async function getUpdateMetadataV2InstructionAsync<
238
+ TAccountTreeAuthority extends string,
239
+ TAccountPayer extends string,
240
+ TAccountAuthority extends string,
241
+ TAccountLeafOwner extends string,
242
+ TAccountLeafDelegate extends string,
243
+ TAccountMerkleTree extends string,
244
+ TAccountCoreCollection extends string,
245
+ TAccountLogWrapper extends string,
246
+ TAccountCompressionProgram extends string,
247
+ TAccountSystemProgram extends string,
248
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
249
+ >(
250
+ input: UpdateMetadataV2AsyncInput<
251
+ TAccountTreeAuthority,
252
+ TAccountPayer,
253
+ TAccountAuthority,
254
+ TAccountLeafOwner,
255
+ TAccountLeafDelegate,
256
+ TAccountMerkleTree,
257
+ TAccountCoreCollection,
258
+ TAccountLogWrapper,
259
+ TAccountCompressionProgram,
260
+ TAccountSystemProgram
261
+ >,
262
+ config?: { programAddress?: TProgramAddress },
263
+ ): Promise<
264
+ UpdateMetadataV2Instruction<
265
+ TProgramAddress,
266
+ TAccountTreeAuthority,
267
+ TAccountPayer,
268
+ TAccountAuthority,
269
+ TAccountLeafOwner,
270
+ TAccountLeafDelegate,
271
+ TAccountMerkleTree,
272
+ TAccountCoreCollection,
273
+ TAccountLogWrapper,
274
+ TAccountCompressionProgram,
275
+ TAccountSystemProgram
276
+ >
277
+ > {
278
+ // Program address.
279
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
280
+
281
+ // Original accounts.
282
+ const originalAccounts = {
283
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },
284
+ payer: { value: input.payer ?? null, isWritable: true },
285
+ authority: { value: input.authority ?? null, isWritable: false },
286
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
287
+ leafDelegate: { value: input.leafDelegate ?? 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("merkleTree", accounts.merkleTree),
336
+ getAccountMeta("coreCollection", accounts.coreCollection),
337
+ getAccountMeta("logWrapper", accounts.logWrapper),
338
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
339
+ getAccountMeta("systemProgram", accounts.systemProgram),
340
+ ],
341
+ data: getUpdateMetadataV2InstructionDataEncoder().encode(
342
+ args as UpdateMetadataV2InstructionDataArgs,
343
+ ),
344
+ programAddress,
345
+ } as UpdateMetadataV2Instruction<
346
+ TProgramAddress,
347
+ TAccountTreeAuthority,
348
+ TAccountPayer,
349
+ TAccountAuthority,
350
+ TAccountLeafOwner,
351
+ TAccountLeafDelegate,
352
+ TAccountMerkleTree,
353
+ TAccountCoreCollection,
354
+ TAccountLogWrapper,
355
+ TAccountCompressionProgram,
356
+ TAccountSystemProgram
357
+ >);
358
+ }
359
+
196
360
  export interface UpdateMetadataV2Input<
197
361
  TAccountTreeAuthority extends string = string,
198
362
  TAccountPayer extends string = string,
@@ -217,8 +381,8 @@ export interface UpdateMetadataV2Input<
217
381
  leafDelegate?: Address<TAccountLeafDelegate>;
218
382
  merkleTree: Address<TAccountMerkleTree>;
219
383
  coreCollection?: Address<TAccountCoreCollection>;
220
- logWrapper: Address<TAccountLogWrapper>;
221
- compressionProgram: Address<TAccountCompressionProgram>;
384
+ logWrapper?: Address<TAccountLogWrapper>;
385
+ compressionProgram?: Address<TAccountCompressionProgram>;
222
386
  systemProgram?: Address<TAccountSystemProgram>;
223
387
  root: UpdateMetadataV2InstructionDataArgs["root"];
224
388
  assetDataHash: UpdateMetadataV2InstructionDataArgs["assetDataHash"];
@@ -296,6 +460,14 @@ export function getUpdateMetadataV2Instruction<
296
460
  const args = { ...input };
297
461
 
298
462
  // Resolve default values.
463
+ if (!accounts.logWrapper.value) {
464
+ accounts.logWrapper.value =
465
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3" as Address<"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3">;
466
+ }
467
+ if (!accounts.compressionProgram.value) {
468
+ accounts.compressionProgram.value =
469
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW" as Address<"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW">;
470
+ }
299
471
  if (!accounts.systemProgram.value) {
300
472
  accounts.systemProgram.value =
301
473
  "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;