@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,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,
@@ -34,10 +17,25 @@ import {
34
17
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
35
18
  SolanaError,
36
19
  transformEncoder,
20
+ type AccountMeta,
21
+ type AccountSignerMeta,
22
+ type Address,
23
+ type FixedSizeCodec,
24
+ type FixedSizeDecoder,
25
+ type FixedSizeEncoder,
26
+ type Instruction,
27
+ type InstructionWithAccounts,
28
+ type InstructionWithData,
29
+ type ReadonlyAccount,
30
+ type ReadonlySignerAccount,
31
+ type ReadonlyUint8Array,
32
+ type TransactionSigner,
33
+ type WritableAccount,
37
34
  } from "@solana/kit";
38
35
  import {
39
36
  getAccountMetaFactory,
40
37
  getAddressFromResolvedInstructionAccount,
38
+ type ResolvedInstructionAccount,
41
39
  } from "@solana/program-client-core";
42
40
  import { findTreeConfigPda } from "../pdas/index.js";
43
41
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
@@ -58,15 +56,12 @@ export type CloseTreeV2Instruction<
58
56
  TAccountAuthority extends string | AccountMeta<string> = string,
59
57
  TAccountMerkleTree extends string | AccountMeta<string> = string,
60
58
  TAccountRecipient extends string | AccountMeta<string> = string,
61
- TAccountCompressionProgram extends
62
- | string
63
- | AccountMeta<string> = "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
64
- TAccountLogWrapper extends
65
- | string
66
- | AccountMeta<string> = "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
67
- TAccountSystemProgram extends
68
- | string
69
- | AccountMeta<string> = "11111111111111111111111111111111",
59
+ TAccountCompressionProgram extends string | AccountMeta<string> =
60
+ "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW",
61
+ TAccountLogWrapper extends string | AccountMeta<string> =
62
+ "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3",
63
+ TAccountSystemProgram extends string | AccountMeta<string> =
64
+ "11111111111111111111111111111111",
70
65
  TRemainingAccounts extends readonly AccountMeta<string>[] = [],
71
66
  > = Instruction<TProgram> &
72
67
  InstructionWithData<ReadonlyUint8Array> &
@@ -98,9 +93,7 @@ export type CloseTreeV2Instruction<
98
93
  ]
99
94
  >;
100
95
 
101
- export interface CloseTreeV2InstructionData {
102
- discriminator: ReadonlyUint8Array;
103
- }
96
+ export type CloseTreeV2InstructionData = { discriminator: ReadonlyUint8Array };
104
97
 
105
98
  export type CloseTreeV2InstructionDataArgs = {};
106
99
 
@@ -127,7 +120,7 @@ export function getCloseTreeV2InstructionDataCodec(): FixedSizeCodec<
127
120
  );
128
121
  }
129
122
 
130
- export interface CloseTreeV2AsyncInput<
123
+ export type CloseTreeV2AsyncInput<
131
124
  TAccountTreeAuthority extends string = string,
132
125
  TAccountAuthority extends string = string,
133
126
  TAccountMerkleTree extends string = string,
@@ -135,21 +128,45 @@ export interface CloseTreeV2AsyncInput<
135
128
  TAccountCompressionProgram extends string = string,
136
129
  TAccountLogWrapper extends string = string,
137
130
  TAccountSystemProgram extends string = string,
138
- > {
131
+ > = {
132
+ /**
133
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
134
+ * as the tree's authority for CPIs into the compression program.
135
+ */
139
136
  treeAuthority?: Address<TAccountTreeAuthority>;
140
137
  /** Tree creator or delegate. */
141
138
  authority: TransactionSigner<TAccountAuthority>;
139
+ /**
140
+ * The concurrent Merkle tree account storing the compressed leaves,
141
+ * owned by the account compression program.
142
+ */
142
143
  merkleTree: Address<TAccountMerkleTree>;
143
144
  /**
144
- * Recipient for reclaimed lamports (tree + config PDA). Must be the creator
145
- * or the delegate.
145
+ * Recipient for the reclaimed lamports (tree + config PDA). Must be
146
+ * the tree creator or delegate.
146
147
  */
147
148
  recipient: Address<TAccountRecipient>;
149
+ /**
150
+ * The SPL/MPL Account Compression program that owns and manages the
151
+ * Merkle tree.
152
+ */
148
153
  compressionProgram?: Address<TAccountCompressionProgram>;
154
+ /**
155
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
156
+ * can reconstruct the tree.
157
+ */
149
158
  logWrapper?: Address<TAccountLogWrapper>;
159
+ /** The Solana System program. */
150
160
  systemProgram?: Address<TAccountSystemProgram>;
151
- }
161
+ };
152
162
 
163
+ /**
164
+ * Closes an empty V2 tree and its `TreeConfig` PDA, reclaiming rent.
165
+ *
166
+ * Only the tree creator or delegate may close a tree, and it must be
167
+ * empty (no un-burned leaves) for the underlying compression program
168
+ * to allow the close.
169
+ */
153
170
  export async function getCloseTreeV2InstructionAsync<
154
171
  TAccountTreeAuthority extends string,
155
172
  TAccountAuthority extends string,
@@ -250,7 +267,7 @@ export async function getCloseTreeV2InstructionAsync<
250
267
  >);
251
268
  }
252
269
 
253
- export interface CloseTreeV2Input<
270
+ export type CloseTreeV2Input<
254
271
  TAccountTreeAuthority extends string = string,
255
272
  TAccountAuthority extends string = string,
256
273
  TAccountMerkleTree extends string = string,
@@ -258,21 +275,45 @@ export interface CloseTreeV2Input<
258
275
  TAccountCompressionProgram extends string = string,
259
276
  TAccountLogWrapper extends string = string,
260
277
  TAccountSystemProgram extends string = string,
261
- > {
278
+ > = {
279
+ /**
280
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
281
+ * as the tree's authority for CPIs into the compression program.
282
+ */
262
283
  treeAuthority: Address<TAccountTreeAuthority>;
263
284
  /** Tree creator or delegate. */
264
285
  authority: TransactionSigner<TAccountAuthority>;
286
+ /**
287
+ * The concurrent Merkle tree account storing the compressed leaves,
288
+ * owned by the account compression program.
289
+ */
265
290
  merkleTree: Address<TAccountMerkleTree>;
266
291
  /**
267
- * Recipient for reclaimed lamports (tree + config PDA). Must be the creator
268
- * or the delegate.
292
+ * Recipient for the reclaimed lamports (tree + config PDA). Must be
293
+ * the tree creator or delegate.
269
294
  */
270
295
  recipient: Address<TAccountRecipient>;
296
+ /**
297
+ * The SPL/MPL Account Compression program that owns and manages the
298
+ * Merkle tree.
299
+ */
271
300
  compressionProgram?: Address<TAccountCompressionProgram>;
301
+ /**
302
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
303
+ * can reconstruct the tree.
304
+ */
272
305
  logWrapper?: Address<TAccountLogWrapper>;
306
+ /** The Solana System program. */
273
307
  systemProgram?: Address<TAccountSystemProgram>;
274
- }
308
+ };
275
309
 
310
+ /**
311
+ * Closes an empty V2 tree and its `TreeConfig` PDA, reclaiming rent.
312
+ *
313
+ * Only the tree creator or delegate may close a tree, and it must be
314
+ * empty (no un-burned leaves) for the underlying compression program
315
+ * to allow the close.
316
+ */
276
317
  export function getCloseTreeV2Instruction<
277
318
  TAccountTreeAuthority extends string,
278
319
  TAccountAuthority extends string,
@@ -363,27 +404,44 @@ export function getCloseTreeV2Instruction<
363
404
  >);
364
405
  }
365
406
 
366
- export interface ParsedCloseTreeV2Instruction<
407
+ export type ParsedCloseTreeV2Instruction<
367
408
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
368
409
  TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
369
- > {
410
+ > = {
370
411
  programAddress: Address<TProgram>;
371
412
  accounts: {
413
+ /**
414
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
415
+ * as the tree's authority for CPIs into the compression program.
416
+ */
372
417
  treeAuthority: TAccountMetas[0];
373
418
  /** Tree creator or delegate. */
374
419
  authority: TAccountMetas[1];
420
+ /**
421
+ * The concurrent Merkle tree account storing the compressed leaves,
422
+ * owned by the account compression program.
423
+ */
375
424
  merkleTree: TAccountMetas[2];
376
425
  /**
377
- * Recipient for reclaimed lamports (tree + config PDA). Must be the creator
378
- * or the delegate.
426
+ * Recipient for the reclaimed lamports (tree + config PDA). Must be
427
+ * the tree creator or delegate.
379
428
  */
380
429
  recipient: TAccountMetas[3];
430
+ /**
431
+ * The SPL/MPL Account Compression program that owns and manages the
432
+ * Merkle tree.
433
+ */
381
434
  compressionProgram: TAccountMetas[4];
435
+ /**
436
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
437
+ * can reconstruct the tree.
438
+ */
382
439
  logWrapper: TAccountMetas[5];
440
+ /** The Solana System program. */
383
441
  systemProgram: TAccountMetas[6];
384
442
  };
385
443
  data: CloseTreeV2InstructionData;
386
- }
444
+ };
387
445
 
388
446
  export function parseCloseTreeV2Instruction<
389
447
  TProgram extends string,
@@ -6,19 +6,6 @@
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
 
9
- import type {
10
- AccountMeta,
11
- Address,
12
- FixedSizeCodec,
13
- FixedSizeDecoder,
14
- FixedSizeEncoder,
15
- Instruction,
16
- InstructionWithAccounts,
17
- InstructionWithData,
18
- ReadonlyUint8Array,
19
- WritableAccount,
20
- } from "@solana/kit";
21
- import type { ResolvedInstructionAccount } from "@solana/program-client-core";
22
9
  import {
23
10
  combineCodec,
24
11
  fixDecoderSize,
@@ -30,8 +17,21 @@ import {
30
17
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
31
18
  SolanaError,
32
19
  transformEncoder,
20
+ type AccountMeta,
21
+ type Address,
22
+ type FixedSizeCodec,
23
+ type FixedSizeDecoder,
24
+ type FixedSizeEncoder,
25
+ type Instruction,
26
+ type InstructionWithAccounts,
27
+ type InstructionWithData,
28
+ type ReadonlyUint8Array,
29
+ type WritableAccount,
33
30
  } from "@solana/kit";
34
- import { getAccountMetaFactory } from "@solana/program-client-core";
31
+ import {
32
+ getAccountMetaFactory,
33
+ type ResolvedInstructionAccount,
34
+ } from "@solana/program-client-core";
35
35
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
36
36
 
37
37
  export const COLLECT_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
@@ -61,9 +61,7 @@ export type CollectV2Instruction<
61
61
  ]
62
62
  >;
63
63
 
64
- export interface CollectV2InstructionData {
65
- discriminator: ReadonlyUint8Array;
66
- }
64
+ export type CollectV2InstructionData = { discriminator: ReadonlyUint8Array };
67
65
 
68
66
  export type CollectV2InstructionDataArgs = {};
69
67
 
@@ -90,14 +88,22 @@ export function getCollectV2InstructionDataCodec(): FixedSizeCodec<
90
88
  );
91
89
  }
92
90
 
93
- export interface CollectV2Input<
91
+ export type CollectV2Input<
94
92
  TAccountTreeAuthority extends string = string,
95
93
  TAccountDestination extends string = string,
96
- > {
94
+ > = {
95
+ /**
96
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
97
+ * as the tree's authority for CPIs into the compression program.
98
+ */
97
99
  treeAuthority: Address<TAccountTreeAuthority>;
100
+ /** Account to receive the collected V2 tree fees. */
98
101
  destination: Address<TAccountDestination>;
99
- }
102
+ };
100
103
 
104
+ /**
105
+ * Collects accumulated protocol fees from a V2 tree's `TreeConfig` PDA.
106
+ */
101
107
  export function getCollectV2Instruction<
102
108
  TAccountTreeAuthority extends string,
103
109
  TAccountDestination extends string,
@@ -138,17 +144,22 @@ export function getCollectV2Instruction<
138
144
  >);
139
145
  }
140
146
 
141
- export interface ParsedCollectV2Instruction<
147
+ export type ParsedCollectV2Instruction<
142
148
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
143
149
  TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
144
- > {
150
+ > = {
145
151
  programAddress: Address<TProgram>;
146
152
  accounts: {
153
+ /**
154
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
155
+ * as the tree's authority for CPIs into the compression program.
156
+ */
147
157
  treeAuthority: TAccountMetas[0];
158
+ /** Account to receive the collected V2 tree fees. */
148
159
  destination: TAccountMetas[1];
149
160
  };
150
161
  data: CollectV2InstructionData;
151
- }
162
+ };
152
163
 
153
164
  export function parseCollectV2Instruction<
154
165
  TProgram extends string,
@@ -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
- FixedSizeCodec,
14
- FixedSizeDecoder,
15
- FixedSizeEncoder,
16
- Instruction,
17
- InstructionWithAccounts,
18
- InstructionWithData,
19
- ReadonlyAccount,
20
- ReadonlySignerAccount,
21
- ReadonlyUint8Array,
22
- TransactionSigner,
23
- WritableAccount,
24
- WritableSignerAccount,
25
- } from "@solana/kit";
26
- import type { ResolvedInstructionAccount } from "@solana/program-client-core";
27
9
  import {
28
10
  combineCodec,
29
11
  fixDecoderSize,
@@ -35,10 +17,26 @@ import {
35
17
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
36
18
  SolanaError,
37
19
  transformEncoder,
20
+ type AccountMeta,
21
+ type AccountSignerMeta,
22
+ type Address,
23
+ type FixedSizeCodec,
24
+ type FixedSizeDecoder,
25
+ type FixedSizeEncoder,
26
+ type Instruction,
27
+ type InstructionWithAccounts,
28
+ type InstructionWithData,
29
+ type ReadonlyAccount,
30
+ type ReadonlySignerAccount,
31
+ type ReadonlyUint8Array,
32
+ type TransactionSigner,
33
+ type WritableAccount,
34
+ type WritableSignerAccount,
38
35
  } from "@solana/kit";
39
36
  import {
40
37
  getAccountMetaFactory,
41
38
  getAddressFromResolvedInstructionAccount,
39
+ type ResolvedInstructionAccount,
42
40
  } from "@solana/program-client-core";
43
41
  import { findTreeConfigPda } from "../pdas/index.js";
44
42
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
@@ -62,21 +60,16 @@ export type CompressInstruction<
62
60
  TAccountMetadata extends string | AccountMeta<string> = string,
63
61
  TAccountMasterEdition extends string | AccountMeta<string> = string,
64
62
  TAccountPayer extends string | AccountMeta<string> = string,
65
- TAccountLogWrapper extends
66
- | string
67
- | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
68
- TAccountCompressionProgram extends
69
- | string
70
- | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
71
- TAccountTokenProgram extends
72
- | string
73
- | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
74
- TAccountTokenMetadataProgram extends
75
- | string
76
- | AccountMeta<string> = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
77
- TAccountSystemProgram extends
78
- | string
79
- | AccountMeta<string> = "11111111111111111111111111111111",
63
+ TAccountLogWrapper extends string | AccountMeta<string> =
64
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
65
+ TAccountCompressionProgram extends string | AccountMeta<string> =
66
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
67
+ TAccountTokenProgram extends string | AccountMeta<string> =
68
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
69
+ TAccountTokenMetadataProgram extends string | AccountMeta<string> =
70
+ "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
71
+ TAccountSystemProgram extends string | AccountMeta<string> =
72
+ "11111111111111111111111111111111",
80
73
  TRemainingAccounts extends readonly AccountMeta<string>[] = [],
81
74
  > = Instruction<TProgram> &
82
75
  InstructionWithData<ReadonlyUint8Array> &
@@ -130,9 +123,7 @@ export type CompressInstruction<
130
123
  ]
131
124
  >;
132
125
 
133
- export interface CompressInstructionData {
134
- discriminator: ReadonlyUint8Array;
135
- }
126
+ export type CompressInstructionData = { discriminator: ReadonlyUint8Array };
136
127
 
137
128
  export type CompressInstructionDataArgs = {};
138
129
 
@@ -159,7 +150,7 @@ export function getCompressInstructionDataCodec(): FixedSizeCodec<
159
150
  );
160
151
  }
161
152
 
162
- export interface CompressAsyncInput<
153
+ export type CompressAsyncInput<
163
154
  TAccountTreeAuthority extends string = string,
164
155
  TAccountLeafOwner extends string = string,
165
156
  TAccountLeafDelegate extends string = string,
@@ -174,23 +165,62 @@ export interface CompressAsyncInput<
174
165
  TAccountTokenProgram extends string = string,
175
166
  TAccountTokenMetadataProgram extends string = string,
176
167
  TAccountSystemProgram extends string = string,
177
- > {
168
+ > = {
169
+ /**
170
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
171
+ * as the tree's authority for CPIs into the compression program.
172
+ */
178
173
  treeAuthority?: Address<TAccountTreeAuthority>;
174
+ /** Owner of the compressed NFT leaf being operated on. */
179
175
  leafOwner: TransactionSigner<TAccountLeafOwner>;
176
+ /**
177
+ * Delegate authority for the leaf; defaults to the leaf owner when no
178
+ * delegate is set.
179
+ */
180
180
  leafDelegate: Address<TAccountLeafDelegate>;
181
+ /**
182
+ * The concurrent Merkle tree account storing the compressed leaves,
183
+ * owned by the account compression program.
184
+ */
181
185
  merkleTree: Address<TAccountMerkleTree>;
186
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
182
187
  tokenAccount: Address<TAccountTokenAccount>;
188
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
183
189
  mint: Address<TAccountMint>;
190
+ /** Metadata account created for the decompressed NFT. */
184
191
  metadata: Address<TAccountMetadata>;
192
+ /** Master edition account created for the decompressed NFT. */
185
193
  masterEdition: Address<TAccountMasterEdition>;
194
+ /** Account that pays for the transaction and any account rent. */
186
195
  payer: TransactionSigner<TAccountPayer>;
196
+ /**
197
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
198
+ * can reconstruct the tree.
199
+ */
187
200
  logWrapper?: Address<TAccountLogWrapper>;
201
+ /**
202
+ * The SPL/MPL Account Compression program that owns and manages the
203
+ * Merkle tree.
204
+ */
188
205
  compressionProgram?: Address<TAccountCompressionProgram>;
206
+ /** The SPL Token program. */
189
207
  tokenProgram?: Address<TAccountTokenProgram>;
208
+ /**
209
+ * The Token Metadata program, invoked to read or (un)verify the
210
+ * legacy collection accounts.
211
+ */
190
212
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
213
+ /** The Solana System program. */
191
214
  systemProgram?: Address<TAccountSystemProgram>;
192
- }
215
+ };
193
216
 
217
+ /**
218
+ * Compresses an existing decompressed (SPL/Token Metadata) NFT into a
219
+ * new leaf of a compressed Merkle tree.
220
+ *
221
+ * Reads the mint, token account, metadata and master edition of the
222
+ * decompressed NFT to build the leaf, then appends it to the tree.
223
+ */
194
224
  export async function getCompressInstructionAsync<
195
225
  TAccountTreeAuthority extends string,
196
226
  TAccountLeafOwner extends string,
@@ -344,7 +374,7 @@ export async function getCompressInstructionAsync<
344
374
  >);
345
375
  }
346
376
 
347
- export interface CompressInput<
377
+ export type CompressInput<
348
378
  TAccountTreeAuthority extends string = string,
349
379
  TAccountLeafOwner extends string = string,
350
380
  TAccountLeafDelegate extends string = string,
@@ -359,23 +389,62 @@ export interface CompressInput<
359
389
  TAccountTokenProgram extends string = string,
360
390
  TAccountTokenMetadataProgram extends string = string,
361
391
  TAccountSystemProgram extends string = string,
362
- > {
392
+ > = {
393
+ /**
394
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
395
+ * as the tree's authority for CPIs into the compression program.
396
+ */
363
397
  treeAuthority: Address<TAccountTreeAuthority>;
398
+ /** Owner of the compressed NFT leaf being operated on. */
364
399
  leafOwner: TransactionSigner<TAccountLeafOwner>;
400
+ /**
401
+ * Delegate authority for the leaf; defaults to the leaf owner when no
402
+ * delegate is set.
403
+ */
365
404
  leafDelegate: Address<TAccountLeafDelegate>;
405
+ /**
406
+ * The concurrent Merkle tree account storing the compressed leaves,
407
+ * owned by the account compression program.
408
+ */
366
409
  merkleTree: Address<TAccountMerkleTree>;
410
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
367
411
  tokenAccount: Address<TAccountTokenAccount>;
412
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
368
413
  mint: Address<TAccountMint>;
414
+ /** Metadata account created for the decompressed NFT. */
369
415
  metadata: Address<TAccountMetadata>;
416
+ /** Master edition account created for the decompressed NFT. */
370
417
  masterEdition: Address<TAccountMasterEdition>;
418
+ /** Account that pays for the transaction and any account rent. */
371
419
  payer: TransactionSigner<TAccountPayer>;
420
+ /**
421
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
422
+ * can reconstruct the tree.
423
+ */
372
424
  logWrapper?: Address<TAccountLogWrapper>;
425
+ /**
426
+ * The SPL/MPL Account Compression program that owns and manages the
427
+ * Merkle tree.
428
+ */
373
429
  compressionProgram?: Address<TAccountCompressionProgram>;
430
+ /** The SPL Token program. */
374
431
  tokenProgram?: Address<TAccountTokenProgram>;
432
+ /**
433
+ * The Token Metadata program, invoked to read or (un)verify the
434
+ * legacy collection accounts.
435
+ */
375
436
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
437
+ /** The Solana System program. */
376
438
  systemProgram?: Address<TAccountSystemProgram>;
377
- }
439
+ };
378
440
 
441
+ /**
442
+ * Compresses an existing decompressed (SPL/Token Metadata) NFT into a
443
+ * new leaf of a compressed Merkle tree.
444
+ *
445
+ * Reads the mint, token account, metadata and master edition of the
446
+ * decompressed NFT to build the leaf, then appends it to the tree.
447
+ */
379
448
  export function getCompressInstruction<
380
449
  TAccountTreeAuthority extends string,
381
450
  TAccountLeafOwner extends string,
@@ -519,29 +588,61 @@ export function getCompressInstruction<
519
588
  >);
520
589
  }
521
590
 
522
- export interface ParsedCompressInstruction<
591
+ export type ParsedCompressInstruction<
523
592
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
524
593
  TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],
525
- > {
594
+ > = {
526
595
  programAddress: Address<TProgram>;
527
596
  accounts: {
597
+ /**
598
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
599
+ * as the tree's authority for CPIs into the compression program.
600
+ */
528
601
  treeAuthority: TAccountMetas[0];
602
+ /** Owner of the compressed NFT leaf being operated on. */
529
603
  leafOwner: TAccountMetas[1];
604
+ /**
605
+ * Delegate authority for the leaf; defaults to the leaf owner when no
606
+ * delegate is set.
607
+ */
530
608
  leafDelegate: TAccountMetas[2];
609
+ /**
610
+ * The concurrent Merkle tree account storing the compressed leaves,
611
+ * owned by the account compression program.
612
+ */
531
613
  merkleTree: TAccountMetas[3];
614
+ /** Token account that will hold the decompressed NFT for `leafOwner`. */
532
615
  tokenAccount: TAccountMetas[4];
616
+ /** Mint account of the decompressed NFT, created fresh during decompression. */
533
617
  mint: TAccountMetas[5];
618
+ /** Metadata account created for the decompressed NFT. */
534
619
  metadata: TAccountMetas[6];
620
+ /** Master edition account created for the decompressed NFT. */
535
621
  masterEdition: TAccountMetas[7];
622
+ /** Account that pays for the transaction and any account rent. */
536
623
  payer: TAccountMetas[8];
624
+ /**
625
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
626
+ * can reconstruct the tree.
627
+ */
537
628
  logWrapper: TAccountMetas[9];
629
+ /**
630
+ * The SPL/MPL Account Compression program that owns and manages the
631
+ * Merkle tree.
632
+ */
538
633
  compressionProgram: TAccountMetas[10];
634
+ /** The SPL Token program. */
539
635
  tokenProgram: TAccountMetas[11];
636
+ /**
637
+ * The Token Metadata program, invoked to read or (un)verify the
638
+ * legacy collection accounts.
639
+ */
540
640
  tokenMetadataProgram: TAccountMetas[12];
641
+ /** The Solana System program. */
541
642
  systemProgram: TAccountMetas[13];
542
643
  };
543
644
  data: CompressInstructionData;
544
- }
645
+ };
545
646
 
546
647
  export function parseCompressInstruction<
547
648
  TProgram extends string,