@macalinao/clients-mpl-bubblegum 0.3.0 → 0.3.2

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 (324) hide show
  1. package/dist/generated/accounts/index.d.ts +2 -1
  2. package/dist/generated/accounts/treeConfig.d.ts +22 -7
  3. package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
  4. package/dist/generated/accounts/treeConfig.js +7 -0
  5. package/dist/generated/accounts/treeConfig.js.map +1 -1
  6. package/dist/generated/accounts/voucher.d.ts +14 -7
  7. package/dist/generated/accounts/voucher.d.ts.map +1 -1
  8. package/dist/generated/accounts/voucher.js +7 -0
  9. package/dist/generated/accounts/voucher.js.map +1 -1
  10. package/dist/generated/errors/bubblegum.d.ts +0 -1
  11. package/dist/generated/errors/bubblegum.d.ts.map +1 -1
  12. package/dist/generated/errors/bubblegum.js +66 -59
  13. package/dist/generated/errors/bubblegum.js.map +1 -1
  14. package/dist/generated/errors/index.d.ts +2 -1
  15. package/dist/generated/index.d.ts +8 -1
  16. package/dist/generated/instructions/burn.d.ts +141 -17
  17. package/dist/generated/instructions/burn.d.ts.map +1 -1
  18. package/dist/generated/instructions/burn.js +23 -0
  19. package/dist/generated/instructions/burn.js.map +1 -1
  20. package/dist/generated/instructions/burnV2.d.ts +179 -31
  21. package/dist/generated/instructions/burnV2.d.ts.map +1 -1
  22. package/dist/generated/instructions/burnV2.js +21 -0
  23. package/dist/generated/instructions/burnV2.js.map +1 -1
  24. package/dist/generated/instructions/cancelRedeem.d.ts +99 -13
  25. package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
  26. package/dist/generated/instructions/cancelRedeem.js +19 -0
  27. package/dist/generated/instructions/cancelRedeem.js.map +1 -1
  28. package/dist/generated/instructions/closeTreeV2.d.ts +85 -19
  29. package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
  30. package/dist/generated/instructions/closeTreeV2.js +21 -0
  31. package/dist/generated/instructions/closeTreeV2.js.map +1 -1
  32. package/dist/generated/instructions/collectV2.d.ts +20 -7
  33. package/dist/generated/instructions/collectV2.d.ts.map +1 -1
  34. package/dist/generated/instructions/collectV2.js +10 -0
  35. package/dist/generated/instructions/collectV2.js.map +1 -1
  36. package/dist/generated/instructions/compress.d.ts +119 -9
  37. package/dist/generated/instructions/compress.d.ts.map +1 -1
  38. package/dist/generated/instructions/compress.js +21 -0
  39. package/dist/generated/instructions/compress.js.map +1 -1
  40. package/dist/generated/instructions/createTree.d.ts +117 -11
  41. package/dist/generated/instructions/createTree.d.ts.map +1 -1
  42. package/dist/generated/instructions/createTree.js +23 -0
  43. package/dist/generated/instructions/createTree.js.map +1 -1
  44. package/dist/generated/instructions/createTreeV2.d.ts +109 -14
  45. package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
  46. package/dist/generated/instructions/createTreeV2.js +23 -0
  47. package/dist/generated/instructions/createTreeV2.js.map +1 -1
  48. package/dist/generated/instructions/decompressV1.d.ts +106 -11
  49. package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
  50. package/dist/generated/instructions/decompressV1.js +25 -0
  51. package/dist/generated/instructions/decompressV1.js.map +1 -1
  52. package/dist/generated/instructions/delegate.d.ts +140 -17
  53. package/dist/generated/instructions/delegate.d.ts.map +1 -1
  54. package/dist/generated/instructions/delegate.js +19 -0
  55. package/dist/generated/instructions/delegate.js.map +1 -1
  56. package/dist/generated/instructions/delegateAndFreezeV2.d.ts +171 -27
  57. package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
  58. package/dist/generated/instructions/delegateAndFreezeV2.js +17 -0
  59. package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
  60. package/dist/generated/instructions/delegateV2.d.ts +169 -27
  61. package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
  62. package/dist/generated/instructions/delegateV2.js +15 -0
  63. package/dist/generated/instructions/delegateV2.js.map +1 -1
  64. package/dist/generated/instructions/freezeV2.d.ts +174 -28
  65. package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
  66. package/dist/generated/instructions/freezeV2.js +23 -0
  67. package/dist/generated/instructions/freezeV2.js.map +1 -1
  68. package/dist/generated/instructions/index.d.ts +2 -1
  69. package/dist/generated/instructions/mintToCollectionV1.d.ts +171 -20
  70. package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
  71. package/dist/generated/instructions/mintToCollectionV1.js +23 -0
  72. package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
  73. package/dist/generated/instructions/mintV1.d.ts +109 -11
  74. package/dist/generated/instructions/mintV1.d.ts.map +1 -1
  75. package/dist/generated/instructions/mintV1.js +21 -0
  76. package/dist/generated/instructions/mintV1.js.map +1 -1
  77. package/dist/generated/instructions/mintV2.d.ts +163 -17
  78. package/dist/generated/instructions/mintV2.d.ts.map +1 -1
  79. package/dist/generated/instructions/mintV2.js +45 -0
  80. package/dist/generated/instructions/mintV2.js.map +1 -1
  81. package/dist/generated/instructions/redeem.d.ts +153 -17
  82. package/dist/generated/instructions/redeem.d.ts.map +1 -1
  83. package/dist/generated/instructions/redeem.js +23 -0
  84. package/dist/generated/instructions/redeem.js.map +1 -1
  85. package/dist/generated/instructions/setAndVerifyCollection.d.ts +222 -38
  86. package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
  87. package/dist/generated/instructions/setAndVerifyCollection.js +21 -0
  88. package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
  89. package/dist/generated/instructions/setCollectionV2.d.ts +186 -39
  90. package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
  91. package/dist/generated/instructions/setCollectionV2.js +21 -0
  92. package/dist/generated/instructions/setCollectionV2.js.map +1 -1
  93. package/dist/generated/instructions/setDecompressableState.d.ts +40 -9
  94. package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
  95. package/dist/generated/instructions/setDecompressableState.js +13 -0
  96. package/dist/generated/instructions/setDecompressableState.js.map +1 -1
  97. package/dist/generated/instructions/setDecompressibleState.d.ts +41 -9
  98. package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
  99. package/dist/generated/instructions/setDecompressibleState.js +14 -0
  100. package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
  101. package/dist/generated/instructions/setNonTransferableV2.d.ts +166 -31
  102. package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
  103. package/dist/generated/instructions/setNonTransferableV2.js +23 -0
  104. package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
  105. package/dist/generated/instructions/setTreeDelegate.d.ts +65 -9
  106. package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
  107. package/dist/generated/instructions/setTreeDelegate.js +21 -0
  108. package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
  109. package/dist/generated/instructions/thawAndRevokeV2.d.ts +158 -24
  110. package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
  111. package/dist/generated/instructions/thawAndRevokeV2.js +17 -0
  112. package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
  113. package/dist/generated/instructions/thawV2.d.ts +166 -28
  114. package/dist/generated/instructions/thawV2.d.ts.map +1 -1
  115. package/dist/generated/instructions/thawV2.js +15 -0
  116. package/dist/generated/instructions/thawV2.js.map +1 -1
  117. package/dist/generated/instructions/transfer.d.ts +140 -17
  118. package/dist/generated/instructions/transfer.d.ts.map +1 -1
  119. package/dist/generated/instructions/transfer.js +19 -0
  120. package/dist/generated/instructions/transfer.js.map +1 -1
  121. package/dist/generated/instructions/transferV2.d.ts +167 -31
  122. package/dist/generated/instructions/transferV2.d.ts.map +1 -1
  123. package/dist/generated/instructions/transferV2.js +21 -0
  124. package/dist/generated/instructions/transferV2.js.map +1 -1
  125. package/dist/generated/instructions/unverifyCollection.d.ts +215 -38
  126. package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
  127. package/dist/generated/instructions/unverifyCollection.js +19 -0
  128. package/dist/generated/instructions/unverifyCollection.js.map +1 -1
  129. package/dist/generated/instructions/unverifyCreator.d.ts +161 -17
  130. package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
  131. package/dist/generated/instructions/unverifyCreator.js +19 -0
  132. package/dist/generated/instructions/unverifyCreator.js.map +1 -1
  133. package/dist/generated/instructions/unverifyCreatorV2.d.ts +143 -21
  134. package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
  135. package/dist/generated/instructions/unverifyCreatorV2.js +19 -0
  136. package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
  137. package/dist/generated/instructions/updateAssetDataV2.d.ts +180 -28
  138. package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
  139. package/dist/generated/instructions/updateAssetDataV2.js +21 -0
  140. package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
  141. package/dist/generated/instructions/updateMetadata.d.ts +183 -28
  142. package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
  143. package/dist/generated/instructions/updateMetadata.js +21 -0
  144. package/dist/generated/instructions/updateMetadata.js.map +1 -1
  145. package/dist/generated/instructions/updateMetadataV2.d.ts +162 -27
  146. package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
  147. package/dist/generated/instructions/updateMetadataV2.js +19 -0
  148. package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
  149. package/dist/generated/instructions/verifyCollection.d.ts +215 -38
  150. package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
  151. package/dist/generated/instructions/verifyCollection.js +19 -0
  152. package/dist/generated/instructions/verifyCollection.js.map +1 -1
  153. package/dist/generated/instructions/verifyCreator.d.ts +161 -17
  154. package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
  155. package/dist/generated/instructions/verifyCreator.js +19 -0
  156. package/dist/generated/instructions/verifyCreator.js.map +1 -1
  157. package/dist/generated/instructions/verifyCreatorV2.d.ts +143 -21
  158. package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
  159. package/dist/generated/instructions/verifyCreatorV2.js +19 -0
  160. package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
  161. package/dist/generated/pdas/assetId.d.ts +2 -3
  162. package/dist/generated/pdas/assetId.d.ts.map +1 -1
  163. package/dist/generated/pdas/assetId.js +7 -0
  164. package/dist/generated/pdas/assetId.js.map +1 -1
  165. package/dist/generated/pdas/bubblegumSigner.d.ts +0 -1
  166. package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -1
  167. package/dist/generated/pdas/bubblegumSigner.js +7 -0
  168. package/dist/generated/pdas/bubblegumSigner.js.map +1 -1
  169. package/dist/generated/pdas/index.d.ts +2 -1
  170. package/dist/generated/pdas/masterEdition.d.ts +2 -3
  171. package/dist/generated/pdas/masterEdition.d.ts.map +1 -1
  172. package/dist/generated/pdas/masterEdition.js +7 -0
  173. package/dist/generated/pdas/masterEdition.js.map +1 -1
  174. package/dist/generated/pdas/metadata.d.ts +2 -3
  175. package/dist/generated/pdas/metadata.d.ts.map +1 -1
  176. package/dist/generated/pdas/metadata.js +7 -0
  177. package/dist/generated/pdas/metadata.js.map +1 -1
  178. package/dist/generated/pdas/mintAuthority.d.ts +2 -3
  179. package/dist/generated/pdas/mintAuthority.d.ts.map +1 -1
  180. package/dist/generated/pdas/mintAuthority.js +7 -0
  181. package/dist/generated/pdas/mintAuthority.js.map +1 -1
  182. package/dist/generated/pdas/treeConfig.d.ts +2 -3
  183. package/dist/generated/pdas/treeConfig.d.ts.map +1 -1
  184. package/dist/generated/pdas/treeConfig.js +7 -0
  185. package/dist/generated/pdas/treeConfig.js.map +1 -1
  186. package/dist/generated/pdas/voucher.d.ts +2 -3
  187. package/dist/generated/pdas/voucher.d.ts.map +1 -1
  188. package/dist/generated/pdas/voucher.js +7 -0
  189. package/dist/generated/pdas/voucher.js.map +1 -1
  190. package/dist/generated/programs/bubblegum.d.ts +17 -12
  191. package/dist/generated/programs/bubblegum.d.ts.map +1 -1
  192. package/dist/generated/programs/bubblegum.js +11 -1
  193. package/dist/generated/programs/bubblegum.js.map +1 -1
  194. package/dist/generated/programs/index.d.ts +2 -1
  195. package/dist/generated/programs/mplTokenMetadata.d.ts +8 -8
  196. package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -1
  197. package/dist/generated/programs/mplTokenMetadata.js +7 -0
  198. package/dist/generated/programs/mplTokenMetadata.js.map +1 -1
  199. package/dist/generated/types/assetDataSchema.d.ts +4 -1
  200. package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
  201. package/dist/generated/types/assetDataSchema.js +11 -0
  202. package/dist/generated/types/assetDataSchema.js.map +1 -1
  203. package/dist/generated/types/bubblegumEventType.d.ts +4 -1
  204. package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
  205. package/dist/generated/types/bubblegumEventType.js +11 -0
  206. package/dist/generated/types/bubblegumEventType.js.map +1 -1
  207. package/dist/generated/types/collection.d.ts +9 -3
  208. package/dist/generated/types/collection.d.ts.map +1 -1
  209. package/dist/generated/types/collection.js +7 -0
  210. package/dist/generated/types/collection.js.map +1 -1
  211. package/dist/generated/types/creator.d.ts +9 -7
  212. package/dist/generated/types/creator.d.ts.map +1 -1
  213. package/dist/generated/types/creator.js +7 -0
  214. package/dist/generated/types/creator.js.map +1 -1
  215. package/dist/generated/types/decompressibleState.d.ts +5 -1
  216. package/dist/generated/types/decompressibleState.d.ts.map +1 -1
  217. package/dist/generated/types/decompressibleState.js +12 -0
  218. package/dist/generated/types/decompressibleState.js.map +1 -1
  219. package/dist/generated/types/index.d.ts +2 -1
  220. package/dist/generated/types/instructionName.d.ts +4 -1
  221. package/dist/generated/types/instructionName.d.ts.map +1 -1
  222. package/dist/generated/types/instructionName.js +11 -0
  223. package/dist/generated/types/instructionName.js.map +1 -1
  224. package/dist/generated/types/leafSchema.d.ts +51 -13
  225. package/dist/generated/types/leafSchema.d.ts.map +1 -1
  226. package/dist/generated/types/leafSchema.js +7 -0
  227. package/dist/generated/types/leafSchema.js.map +1 -1
  228. package/dist/generated/types/metadataArgs.d.ts +19 -7
  229. package/dist/generated/types/metadataArgs.d.ts.map +1 -1
  230. package/dist/generated/types/metadataArgs.js +7 -0
  231. package/dist/generated/types/metadataArgs.js.map +1 -1
  232. package/dist/generated/types/metadataArgsV2.d.ts +14 -7
  233. package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
  234. package/dist/generated/types/metadataArgsV2.js +7 -0
  235. package/dist/generated/types/metadataArgsV2.js.map +1 -1
  236. package/dist/generated/types/tokenProgramVersion.d.ts +1 -1
  237. package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
  238. package/dist/generated/types/tokenProgramVersion.js +8 -0
  239. package/dist/generated/types/tokenProgramVersion.js.map +1 -1
  240. package/dist/generated/types/tokenStandard.d.ts +5 -1
  241. package/dist/generated/types/tokenStandard.d.ts.map +1 -1
  242. package/dist/generated/types/tokenStandard.js +12 -0
  243. package/dist/generated/types/tokenStandard.js.map +1 -1
  244. package/dist/generated/types/updateArgs.d.ts +26 -7
  245. package/dist/generated/types/updateArgs.d.ts.map +1 -1
  246. package/dist/generated/types/updateArgs.js +7 -0
  247. package/dist/generated/types/updateArgs.js.map +1 -1
  248. package/dist/generated/types/useMethod.d.ts +1 -1
  249. package/dist/generated/types/useMethod.d.ts.map +1 -1
  250. package/dist/generated/types/useMethod.js +8 -0
  251. package/dist/generated/types/useMethod.js.map +1 -1
  252. package/dist/generated/types/uses.d.ts +16 -5
  253. package/dist/generated/types/uses.d.ts.map +1 -1
  254. package/dist/generated/types/uses.js +7 -0
  255. package/dist/generated/types/uses.js.map +1 -1
  256. package/dist/generated/types/version.d.ts +5 -1
  257. package/dist/generated/types/version.d.ts.map +1 -1
  258. package/dist/generated/types/version.js +12 -0
  259. package/dist/generated/types/version.js.map +1 -1
  260. package/dist/index.d.ts +1 -0
  261. package/package.json +8 -12
  262. package/src/generated/accounts/treeConfig.ts +36 -27
  263. package/src/generated/accounts/voucher.ts +30 -23
  264. package/src/generated/errors/bubblegum.ts +121 -154
  265. package/src/generated/instructions/burn.ts +163 -44
  266. package/src/generated/instructions/burnV2.ts +205 -64
  267. package/src/generated/instructions/cancelRedeem.ts +122 -41
  268. package/src/generated/instructions/closeTreeV2.ts +102 -44
  269. package/src/generated/instructions/collectV2.ts +34 -23
  270. package/src/generated/instructions/compress.ts +146 -45
  271. package/src/generated/instructions/createTree.ts +143 -42
  272. package/src/generated/instructions/createTreeV2.ts +134 -45
  273. package/src/generated/instructions/decompressV1.ts +136 -49
  274. package/src/generated/instructions/delegate.ts +165 -47
  275. package/src/generated/instructions/delegateAndFreezeV2.ts +197 -60
  276. package/src/generated/instructions/delegateV2.ts +195 -60
  277. package/src/generated/instructions/freezeV2.ts +199 -58
  278. package/src/generated/instructions/mintToCollectionV1.ts +196 -52
  279. package/src/generated/instructions/mintV1.ts +133 -40
  280. package/src/generated/instructions/mintV2.ts +192 -57
  281. package/src/generated/instructions/redeem.ts +178 -47
  282. package/src/generated/instructions/setAndVerifyCollection.ts +246 -69
  283. package/src/generated/instructions/setCollectionV2.ts +212 -73
  284. package/src/generated/instructions/setDecompressableState.ts +59 -31
  285. package/src/generated/instructions/setDecompressibleState.ts +60 -31
  286. package/src/generated/instructions/setNonTransferableV2.ts +190 -61
  287. package/src/generated/instructions/setTreeDelegate.ts +84 -31
  288. package/src/generated/instructions/thawAndRevokeV2.ts +185 -57
  289. package/src/generated/instructions/thawV2.ts +191 -58
  290. package/src/generated/instructions/transfer.ts +162 -44
  291. package/src/generated/instructions/transferV2.ts +191 -61
  292. package/src/generated/instructions/unverifyCollection.ts +239 -69
  293. package/src/generated/instructions/unverifyCreator.ts +187 -48
  294. package/src/generated/instructions/unverifyCreatorV2.ts +170 -55
  295. package/src/generated/instructions/updateAssetDataV2.ts +206 -59
  296. package/src/generated/instructions/updateMetadata.ts +210 -67
  297. package/src/generated/instructions/updateMetadataV2.ts +189 -63
  298. package/src/generated/instructions/verifyCollection.ts +239 -69
  299. package/src/generated/instructions/verifyCreator.ts +187 -48
  300. package/src/generated/instructions/verifyCreatorV2.ts +170 -55
  301. package/src/generated/pdas/assetId.ts +4 -3
  302. package/src/generated/pdas/bubblegumSigner.ts +6 -2
  303. package/src/generated/pdas/masterEdition.ts +4 -3
  304. package/src/generated/pdas/metadata.ts +4 -3
  305. package/src/generated/pdas/mintAuthority.ts +8 -4
  306. package/src/generated/pdas/treeConfig.ts +8 -4
  307. package/src/generated/pdas/voucher.ts +4 -3
  308. package/src/generated/programs/bubblegum.ts +146 -144
  309. package/src/generated/programs/mplTokenMetadata.ts +5 -10
  310. package/src/generated/types/assetDataSchema.ts +14 -8
  311. package/src/generated/types/bubblegumEventType.ts +13 -7
  312. package/src/generated/types/collection.ts +13 -8
  313. package/src/generated/types/creator.ts +11 -10
  314. package/src/generated/types/decompressibleState.ts +14 -7
  315. package/src/generated/types/instructionName.ts +46 -40
  316. package/src/generated/types/leafSchema.ts +59 -22
  317. package/src/generated/types/metadataArgs.ts +35 -27
  318. package/src/generated/types/metadataArgsV2.ts +23 -20
  319. package/src/generated/types/tokenProgramVersion.ts +10 -7
  320. package/src/generated/types/tokenStandard.ts +16 -9
  321. package/src/generated/types/updateArgs.ts +36 -15
  322. package/src/generated/types/useMethod.ts +11 -8
  323. package/src/generated/types/uses.ts +24 -11
  324. package/src/generated/types/version.ts +14 -7
@@ -6,24 +6,6 @@
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
 
9
- import type {
10
- AccountMeta,
11
- AccountSignerMeta,
12
- Address,
13
- Codec,
14
- Decoder,
15
- Encoder,
16
- Instruction,
17
- InstructionWithAccounts,
18
- InstructionWithData,
19
- ReadonlyAccount,
20
- ReadonlyUint8Array,
21
- TransactionSigner,
22
- WritableAccount,
23
- WritableSignerAccount,
24
- } from "@solana/kit";
25
- import type { ResolvedInstructionAccount } from "@solana/program-client-core";
26
- import type { MetadataArgs, MetadataArgsArgs } from "../types/index.js";
27
9
  import {
28
10
  address,
29
11
  combineCodec,
@@ -38,10 +20,25 @@ import {
38
20
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
39
21
  SolanaError,
40
22
  transformEncoder,
23
+ type AccountMeta,
24
+ type AccountSignerMeta,
25
+ type Address,
26
+ type Codec,
27
+ type Decoder,
28
+ type Encoder,
29
+ type Instruction,
30
+ type InstructionWithAccounts,
31
+ type InstructionWithData,
32
+ type ReadonlyAccount,
33
+ type ReadonlyUint8Array,
34
+ type TransactionSigner,
35
+ type WritableAccount,
36
+ type WritableSignerAccount,
41
37
  } from "@solana/kit";
42
38
  import {
43
39
  getAccountMetaFactory,
44
40
  getAddressFromResolvedInstructionAccount,
41
+ type ResolvedInstructionAccount,
45
42
  } from "@solana/program-client-core";
46
43
  import {
47
44
  findMasterEditionPda,
@@ -52,6 +49,8 @@ import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
52
49
  import {
53
50
  getMetadataArgsDecoder,
54
51
  getMetadataArgsEncoder,
52
+ type MetadataArgs,
53
+ type MetadataArgsArgs,
55
54
  } from "../types/index.js";
56
55
 
57
56
  export const DECOMPRESS_V1_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
@@ -73,24 +72,18 @@ export type DecompressV1Instruction<
73
72
  TAccountMintAuthority extends string | AccountMeta<string> = string,
74
73
  TAccountMetadata extends string | AccountMeta<string> = string,
75
74
  TAccountMasterEdition extends string | AccountMeta<string> = string,
76
- TAccountSystemProgram extends
77
- | string
78
- | AccountMeta<string> = "11111111111111111111111111111111",
79
- TAccountSysvarRent extends
80
- | string
81
- | AccountMeta<string> = "SysvarRent111111111111111111111111111111111",
82
- TAccountTokenMetadataProgram extends
83
- | string
84
- | AccountMeta<string> = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
85
- TAccountTokenProgram extends
86
- | string
87
- | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
88
- TAccountAssociatedTokenProgram extends
89
- | string
90
- | AccountMeta<string> = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
91
- TAccountLogWrapper extends
92
- | string
93
- | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
75
+ TAccountSystemProgram extends string | AccountMeta<string> =
76
+ "11111111111111111111111111111111",
77
+ TAccountSysvarRent extends string | AccountMeta<string> =
78
+ "SysvarRent111111111111111111111111111111111",
79
+ TAccountTokenMetadataProgram extends string | AccountMeta<string> =
80
+ "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
81
+ TAccountTokenProgram extends string | AccountMeta<string> =
82
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
83
+ TAccountAssociatedTokenProgram extends string | AccountMeta<string> =
84
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
85
+ TAccountLogWrapper extends string | AccountMeta<string> =
86
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
94
87
  TRemainingAccounts extends readonly AccountMeta<string>[] = [],
95
88
  > = Instruction<TProgram> &
96
89
  InstructionWithData<ReadonlyUint8Array> &
@@ -140,14 +133,24 @@ export type DecompressV1Instruction<
140
133
  ]
141
134
  >;
142
135
 
143
- export interface DecompressV1InstructionData {
136
+ export type DecompressV1InstructionData = {
144
137
  discriminator: ReadonlyUint8Array;
138
+ /**
139
+ * Metadata args of the leaf being decompressed; must match the leaf's
140
+ * stored `dataHash` and is used to populate the new Token Metadata
141
+ * account.
142
+ */
145
143
  metadata: MetadataArgs;
146
- }
144
+ };
147
145
 
148
- export interface DecompressV1InstructionDataArgs {
146
+ export type DecompressV1InstructionDataArgs = {
147
+ /**
148
+ * Metadata args of the leaf being decompressed; must match the leaf's
149
+ * stored `dataHash` and is used to populate the new Token Metadata
150
+ * account.
151
+ */
149
152
  metadata: MetadataArgsArgs;
150
- }
153
+ };
151
154
 
152
155
  export function getDecompressV1InstructionDataEncoder(): Encoder<DecompressV1InstructionDataArgs> {
153
156
  return transformEncoder(
@@ -176,7 +179,7 @@ export function getDecompressV1InstructionDataCodec(): Codec<
176
179
  );
177
180
  }
178
181
 
179
- export interface DecompressV1AsyncInput<
182
+ export type DecompressV1AsyncInput<
180
183
  TAccountVoucher extends string = string,
181
184
  TAccountLeafOwner extends string = string,
182
185
  TAccountTokenAccount extends string = string,
@@ -190,23 +193,54 @@ export interface DecompressV1AsyncInput<
190
193
  TAccountTokenProgram extends string = string,
191
194
  TAccountAssociatedTokenProgram extends string = string,
192
195
  TAccountLogWrapper extends string = string,
193
- > {
196
+ > = {
197
+ /**
198
+ * Voucher PDA created by `redeem`; closed by this instruction once its
199
+ * leaf data has been used to mint the decompressed NFT.
200
+ */
194
201
  voucher: Address<TAccountVoucher>;
202
+ /** Owner of the compressed NFT leaf being operated on. */
195
203
  leafOwner: TransactionSigner<TAccountLeafOwner>;
204
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
196
205
  tokenAccount?: Address<TAccountTokenAccount>;
206
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
197
207
  mint: Address<TAccountMint>;
208
+ /** PDA mint authority for the decompressed NFT's mint. */
198
209
  mintAuthority?: Address<TAccountMintAuthority>;
210
+ /** Metadata account created for the decompressed NFT. */
199
211
  metadata?: Address<TAccountMetadata>;
212
+ /** Master edition account created for the decompressed NFT. */
200
213
  masterEdition?: Address<TAccountMasterEdition>;
214
+ /** The Solana System program. */
201
215
  systemProgram?: Address<TAccountSystemProgram>;
216
+ /** The Rent sysvar. */
202
217
  sysvarRent?: Address<TAccountSysvarRent>;
218
+ /**
219
+ * The Token Metadata program, invoked to read or (un)verify the
220
+ * legacy collection accounts.
221
+ */
203
222
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
223
+ /** The SPL Token program. */
204
224
  tokenProgram?: Address<TAccountTokenProgram>;
225
+ /** The SPL Associated Token Account program. */
205
226
  associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
227
+ /**
228
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
229
+ * can reconstruct the tree.
230
+ */
206
231
  logWrapper?: Address<TAccountLogWrapper>;
207
232
  metadataArg: DecompressV1InstructionDataArgs["metadata"];
208
- }
233
+ };
209
234
 
235
+ /**
236
+ * Decompresses a leaf node from the tree into a regular SPL/Token
237
+ * Metadata NFT.
238
+ *
239
+ * Consumes the `voucher` PDA created by `redeem`, then mints a new SPL
240
+ * token, and creates the associated Token Metadata metadata and master
241
+ * edition accounts so the asset can be held and traded like any other
242
+ * NFT.
243
+ */
210
244
  export async function getDecompressV1InstructionAsync<
211
245
  TAccountVoucher extends string,
212
246
  TAccountLeafOwner extends string,
@@ -401,7 +435,7 @@ export async function getDecompressV1InstructionAsync<
401
435
  >);
402
436
  }
403
437
 
404
- export interface DecompressV1Input<
438
+ export type DecompressV1Input<
405
439
  TAccountVoucher extends string = string,
406
440
  TAccountLeafOwner extends string = string,
407
441
  TAccountTokenAccount extends string = string,
@@ -415,23 +449,54 @@ export interface DecompressV1Input<
415
449
  TAccountTokenProgram extends string = string,
416
450
  TAccountAssociatedTokenProgram extends string = string,
417
451
  TAccountLogWrapper extends string = string,
418
- > {
452
+ > = {
453
+ /**
454
+ * Voucher PDA created by `redeem`; closed by this instruction once its
455
+ * leaf data has been used to mint the decompressed NFT.
456
+ */
419
457
  voucher: Address<TAccountVoucher>;
458
+ /** Owner of the compressed NFT leaf being operated on. */
420
459
  leafOwner: TransactionSigner<TAccountLeafOwner>;
460
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
421
461
  tokenAccount: Address<TAccountTokenAccount>;
462
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
422
463
  mint: Address<TAccountMint>;
464
+ /** PDA mint authority for the decompressed NFT's mint. */
423
465
  mintAuthority: Address<TAccountMintAuthority>;
466
+ /** Metadata account created for the decompressed NFT. */
424
467
  metadata: Address<TAccountMetadata>;
468
+ /** Master edition account created for the decompressed NFT. */
425
469
  masterEdition: Address<TAccountMasterEdition>;
470
+ /** The Solana System program. */
426
471
  systemProgram?: Address<TAccountSystemProgram>;
472
+ /** The Rent sysvar. */
427
473
  sysvarRent?: Address<TAccountSysvarRent>;
474
+ /**
475
+ * The Token Metadata program, invoked to read or (un)verify the
476
+ * legacy collection accounts.
477
+ */
428
478
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
479
+ /** The SPL Token program. */
429
480
  tokenProgram?: Address<TAccountTokenProgram>;
481
+ /** The SPL Associated Token Account program. */
430
482
  associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
483
+ /**
484
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
485
+ * can reconstruct the tree.
486
+ */
431
487
  logWrapper?: Address<TAccountLogWrapper>;
432
488
  metadataArg: DecompressV1InstructionDataArgs["metadata"];
433
- }
489
+ };
434
490
 
491
+ /**
492
+ * Decompresses a leaf node from the tree into a regular SPL/Token
493
+ * Metadata NFT.
494
+ *
495
+ * Consumes the `voucher` PDA created by `redeem`, then mints a new SPL
496
+ * token, and creates the associated Token Metadata metadata and master
497
+ * edition accounts so the asset can be held and traded like any other
498
+ * NFT.
499
+ */
435
500
  export function getDecompressV1Instruction<
436
501
  TAccountVoucher extends string,
437
502
  TAccountLeafOwner extends string,
@@ -578,28 +643,50 @@ export function getDecompressV1Instruction<
578
643
  >);
579
644
  }
580
645
 
581
- export interface ParsedDecompressV1Instruction<
646
+ export type ParsedDecompressV1Instruction<
582
647
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
583
648
  TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
584
- > {
649
+ > = {
585
650
  programAddress: Address<TProgram>;
586
651
  accounts: {
652
+ /**
653
+ * Voucher PDA created by `redeem`; closed by this instruction once its
654
+ * leaf data has been used to mint the decompressed NFT.
655
+ */
587
656
  voucher: TAccountMetas[0];
657
+ /** Owner of the compressed NFT leaf being operated on. */
588
658
  leafOwner: TAccountMetas[1];
659
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
589
660
  tokenAccount: TAccountMetas[2];
661
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
590
662
  mint: TAccountMetas[3];
663
+ /** PDA mint authority for the decompressed NFT's mint. */
591
664
  mintAuthority: TAccountMetas[4];
665
+ /** Metadata account created for the decompressed NFT. */
592
666
  metadata: TAccountMetas[5];
667
+ /** Master edition account created for the decompressed NFT. */
593
668
  masterEdition: TAccountMetas[6];
669
+ /** The Solana System program. */
594
670
  systemProgram: TAccountMetas[7];
671
+ /** The Rent sysvar. */
595
672
  sysvarRent: TAccountMetas[8];
673
+ /**
674
+ * The Token Metadata program, invoked to read or (un)verify the
675
+ * legacy collection accounts.
676
+ */
596
677
  tokenMetadataProgram: TAccountMetas[9];
678
+ /** The SPL Token program. */
597
679
  tokenProgram: TAccountMetas[10];
680
+ /** The SPL Associated Token Account program. */
598
681
  associatedTokenProgram: TAccountMetas[11];
682
+ /**
683
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
684
+ * can reconstruct the tree.
685
+ */
599
686
  logWrapper: TAccountMetas[12];
600
687
  };
601
688
  data: DecompressV1InstructionData;
602
- }
689
+ };
603
690
 
604
691
  export function parseDecompressV1Instruction<
605
692
  TProgram extends string,
@@ -6,23 +6,6 @@
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
 
9
- import type {
10
- AccountMeta,
11
- AccountSignerMeta,
12
- Address,
13
- FixedSizeCodec,
14
- FixedSizeDecoder,
15
- FixedSizeEncoder,
16
- Instruction,
17
- InstructionWithAccounts,
18
- InstructionWithData,
19
- ReadonlyAccount,
20
- ReadonlySignerAccount,
21
- ReadonlyUint8Array,
22
- TransactionSigner,
23
- WritableAccount,
24
- } from "@solana/kit";
25
- import type { ResolvedInstructionAccount } from "@solana/program-client-core";
26
9
  import {
27
10
  combineCodec,
28
11
  fixDecoderSize,
@@ -33,19 +16,34 @@ import {
33
16
  getBytesEncoder,
34
17
  getStructDecoder,
35
18
  getStructEncoder,
36
- getU8Decoder,
37
- getU8Encoder,
38
19
  getU32Decoder,
39
20
  getU32Encoder,
40
21
  getU64Decoder,
41
22
  getU64Encoder,
23
+ getU8Decoder,
24
+ getU8Encoder,
42
25
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
43
26
  SolanaError,
44
27
  transformEncoder,
28
+ type AccountMeta,
29
+ type AccountSignerMeta,
30
+ type Address,
31
+ type FixedSizeCodec,
32
+ type FixedSizeDecoder,
33
+ type FixedSizeEncoder,
34
+ type Instruction,
35
+ type InstructionWithAccounts,
36
+ type InstructionWithData,
37
+ type ReadonlyAccount,
38
+ type ReadonlySignerAccount,
39
+ type ReadonlyUint8Array,
40
+ type TransactionSigner,
41
+ type WritableAccount,
45
42
  } from "@solana/kit";
46
43
  import {
47
44
  getAccountMetaFactory,
48
45
  getAddressFromResolvedInstructionAccount,
46
+ type ResolvedInstructionAccount,
49
47
  } from "@solana/program-client-core";
50
48
  import { findTreeConfigPda } from "../pdas/index.js";
51
49
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
@@ -65,15 +63,12 @@ export type DelegateInstruction<
65
63
  TAccountPreviousLeafDelegate extends string | AccountMeta<string> = string,
66
64
  TAccountNewLeafDelegate extends string | AccountMeta<string> = string,
67
65
  TAccountMerkleTree extends string | AccountMeta<string> = string,
68
- TAccountLogWrapper extends
69
- | string
70
- | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
71
- TAccountCompressionProgram extends
72
- | string
73
- | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
74
- TAccountSystemProgram extends
75
- | string
76
- | AccountMeta<string> = "11111111111111111111111111111111",
66
+ TAccountLogWrapper extends string | AccountMeta<string> =
67
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
68
+ TAccountCompressionProgram extends string | AccountMeta<string> =
69
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
70
+ TAccountSystemProgram extends string | AccountMeta<string> =
71
+ "11111111111111111111111111111111",
77
72
  TRemainingAccounts extends readonly AccountMeta<string>[] = [],
78
73
  > = Instruction<TProgram> &
79
74
  InstructionWithData<ReadonlyUint8Array> &
@@ -108,22 +103,64 @@ export type DelegateInstruction<
108
103
  ]
109
104
  >;
110
105
 
111
- export interface DelegateInstructionData {
106
+ export type DelegateInstructionData = {
112
107
  discriminator: ReadonlyUint8Array;
113
- root: number[];
114
- dataHash: number[];
115
- creatorHash: number[];
108
+ /**
109
+ * Current Merkle root of the tree, used together with the Merkle proof
110
+ * (passed as remaining accounts) to verify the leaf being operated on.
111
+ */
112
+ root: Array<number>;
113
+ /**
114
+ * Keccak256 hash of the leaf's metadata, used together with `root` to
115
+ * verify the leaf before it is modified.
116
+ */
117
+ dataHash: Array<number>;
118
+ /**
119
+ * Keccak256 hash of the leaf's creators array, used together with
120
+ * `root` to verify the leaf before it is modified.
121
+ */
122
+ creatorHash: Array<number>;
123
+ /**
124
+ * Tree-scoped nonce identifying the leaf, equal to the tree's
125
+ * `numMinted` at the time the leaf was minted. Combined with the tree
126
+ * address to derive the leaf's asset id.
127
+ */
116
128
  nonce: bigint;
129
+ /**
130
+ * Position of the leaf within the Merkle tree, used with the Merkle
131
+ * proof to locate and verify the leaf.
132
+ */
117
133
  index: number;
118
- }
134
+ };
119
135
 
120
- export interface DelegateInstructionDataArgs {
121
- root: number[];
122
- dataHash: number[];
123
- creatorHash: number[];
136
+ export type DelegateInstructionDataArgs = {
137
+ /**
138
+ * Current Merkle root of the tree, used together with the Merkle proof
139
+ * (passed as remaining accounts) to verify the leaf being operated on.
140
+ */
141
+ root: Array<number>;
142
+ /**
143
+ * Keccak256 hash of the leaf's metadata, used together with `root` to
144
+ * verify the leaf before it is modified.
145
+ */
146
+ dataHash: Array<number>;
147
+ /**
148
+ * Keccak256 hash of the leaf's creators array, used together with
149
+ * `root` to verify the leaf before it is modified.
150
+ */
151
+ creatorHash: Array<number>;
152
+ /**
153
+ * Tree-scoped nonce identifying the leaf, equal to the tree's
154
+ * `numMinted` at the time the leaf was minted. Combined with the tree
155
+ * address to derive the leaf's asset id.
156
+ */
124
157
  nonce: number | bigint;
158
+ /**
159
+ * Position of the leaf within the Merkle tree, used with the Merkle
160
+ * proof to locate and verify the leaf.
161
+ */
125
162
  index: number;
126
- }
163
+ };
127
164
 
128
165
  export function getDelegateInstructionDataEncoder(): FixedSizeEncoder<DelegateInstructionDataArgs> {
129
166
  return transformEncoder(
@@ -160,7 +197,7 @@ export function getDelegateInstructionDataCodec(): FixedSizeCodec<
160
197
  );
161
198
  }
162
199
 
163
- export interface DelegateAsyncInput<
200
+ export type DelegateAsyncInput<
164
201
  TAccountTreeAuthority extends string = string,
165
202
  TAccountLeafOwner extends string = string,
166
203
  TAccountPreviousLeafDelegate extends string = string,
@@ -169,22 +206,51 @@ export interface DelegateAsyncInput<
169
206
  TAccountLogWrapper extends string = string,
170
207
  TAccountCompressionProgram extends string = string,
171
208
  TAccountSystemProgram extends string = string,
172
- > {
209
+ > = {
210
+ /**
211
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
212
+ * as the tree's authority for CPIs into the compression program.
213
+ */
173
214
  treeAuthority?: Address<TAccountTreeAuthority>;
215
+ /** Owner of the compressed NFT leaf being operated on. */
174
216
  leafOwner: TransactionSigner<TAccountLeafOwner>;
217
+ /** The leaf's delegate before this instruction runs. */
175
218
  previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
219
+ /**
220
+ * Delegate to set on the leaf; pass the leaf owner to clear an
221
+ * existing delegate.
222
+ */
176
223
  newLeafDelegate: Address<TAccountNewLeafDelegate>;
224
+ /**
225
+ * The concurrent Merkle tree account storing the compressed leaves,
226
+ * owned by the account compression program.
227
+ */
177
228
  merkleTree: Address<TAccountMerkleTree>;
229
+ /**
230
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
231
+ * can reconstruct the tree.
232
+ */
178
233
  logWrapper?: Address<TAccountLogWrapper>;
234
+ /**
235
+ * The SPL/MPL Account Compression program that owns and manages the
236
+ * Merkle tree.
237
+ */
179
238
  compressionProgram?: Address<TAccountCompressionProgram>;
239
+ /** The Solana System program. */
180
240
  systemProgram?: Address<TAccountSystemProgram>;
181
241
  root: DelegateInstructionDataArgs["root"];
182
242
  dataHash: DelegateInstructionDataArgs["dataHash"];
183
243
  creatorHash: DelegateInstructionDataArgs["creatorHash"];
184
244
  nonce: DelegateInstructionDataArgs["nonce"];
185
245
  index: DelegateInstructionDataArgs["index"];
186
- }
246
+ };
187
247
 
248
+ /**
249
+ * Sets (or clears) the delegate authority for a compressed NFT leaf.
250
+ *
251
+ * The delegate may transfer or burn the leaf on the owner's behalf.
252
+ * Pass the leaf owner as `newLeafDelegate` to clear an existing delegate.
253
+ */
188
254
  export async function getDelegateInstructionAsync<
189
255
  TAccountTreeAuthority extends string,
190
256
  TAccountLeafOwner extends string,
@@ -302,7 +368,7 @@ export async function getDelegateInstructionAsync<
302
368
  >);
303
369
  }
304
370
 
305
- export interface DelegateInput<
371
+ export type DelegateInput<
306
372
  TAccountTreeAuthority extends string = string,
307
373
  TAccountLeafOwner extends string = string,
308
374
  TAccountPreviousLeafDelegate extends string = string,
@@ -311,22 +377,51 @@ export interface DelegateInput<
311
377
  TAccountLogWrapper extends string = string,
312
378
  TAccountCompressionProgram extends string = string,
313
379
  TAccountSystemProgram extends string = string,
314
- > {
380
+ > = {
381
+ /**
382
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
383
+ * as the tree's authority for CPIs into the compression program.
384
+ */
315
385
  treeAuthority: Address<TAccountTreeAuthority>;
386
+ /** Owner of the compressed NFT leaf being operated on. */
316
387
  leafOwner: TransactionSigner<TAccountLeafOwner>;
388
+ /** The leaf's delegate before this instruction runs. */
317
389
  previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
390
+ /**
391
+ * Delegate to set on the leaf; pass the leaf owner to clear an
392
+ * existing delegate.
393
+ */
318
394
  newLeafDelegate: Address<TAccountNewLeafDelegate>;
395
+ /**
396
+ * The concurrent Merkle tree account storing the compressed leaves,
397
+ * owned by the account compression program.
398
+ */
319
399
  merkleTree: Address<TAccountMerkleTree>;
400
+ /**
401
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
402
+ * can reconstruct the tree.
403
+ */
320
404
  logWrapper?: Address<TAccountLogWrapper>;
405
+ /**
406
+ * The SPL/MPL Account Compression program that owns and manages the
407
+ * Merkle tree.
408
+ */
321
409
  compressionProgram?: Address<TAccountCompressionProgram>;
410
+ /** The Solana System program. */
322
411
  systemProgram?: Address<TAccountSystemProgram>;
323
412
  root: DelegateInstructionDataArgs["root"];
324
413
  dataHash: DelegateInstructionDataArgs["dataHash"];
325
414
  creatorHash: DelegateInstructionDataArgs["creatorHash"];
326
415
  nonce: DelegateInstructionDataArgs["nonce"];
327
416
  index: DelegateInstructionDataArgs["index"];
328
- }
417
+ };
329
418
 
419
+ /**
420
+ * Sets (or clears) the delegate authority for a compressed NFT leaf.
421
+ *
422
+ * The delegate may transfer or burn the leaf on the owner's behalf.
423
+ * Pass the leaf owner as `newLeafDelegate` to clear an existing delegate.
424
+ */
330
425
  export function getDelegateInstruction<
331
426
  TAccountTreeAuthority extends string,
332
427
  TAccountLeafOwner extends string,
@@ -434,23 +529,46 @@ export function getDelegateInstruction<
434
529
  >);
435
530
  }
436
531
 
437
- export interface ParsedDelegateInstruction<
532
+ export type ParsedDelegateInstruction<
438
533
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
439
534
  TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
440
- > {
535
+ > = {
441
536
  programAddress: Address<TProgram>;
442
537
  accounts: {
538
+ /**
539
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
540
+ * as the tree's authority for CPIs into the compression program.
541
+ */
443
542
  treeAuthority: TAccountMetas[0];
543
+ /** Owner of the compressed NFT leaf being operated on. */
444
544
  leafOwner: TAccountMetas[1];
545
+ /** The leaf's delegate before this instruction runs. */
445
546
  previousLeafDelegate: TAccountMetas[2];
547
+ /**
548
+ * Delegate to set on the leaf; pass the leaf owner to clear an
549
+ * existing delegate.
550
+ */
446
551
  newLeafDelegate: TAccountMetas[3];
552
+ /**
553
+ * The concurrent Merkle tree account storing the compressed leaves,
554
+ * owned by the account compression program.
555
+ */
447
556
  merkleTree: TAccountMetas[4];
557
+ /**
558
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
559
+ * can reconstruct the tree.
560
+ */
448
561
  logWrapper: TAccountMetas[5];
562
+ /**
563
+ * The SPL/MPL Account Compression program that owns and manages the
564
+ * Merkle tree.
565
+ */
449
566
  compressionProgram: TAccountMetas[6];
567
+ /** The Solana System program. */
450
568
  systemProgram: TAccountMetas[7];
451
569
  };
452
570
  data: DelegateInstructionData;
453
- }
571
+ };
454
572
 
455
573
  export function parseDelegateInstruction<
456
574
  TProgram extends string,