@macalinao/clients-mpl-bubblegum 0.3.1 → 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 +6 -6
  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 +157 -35
  266. package/src/generated/instructions/burnV2.ts +197 -52
  267. package/src/generated/instructions/cancelRedeem.ts +116 -32
  268. package/src/generated/instructions/closeTreeV2.ts +96 -35
  269. package/src/generated/instructions/collectV2.ts +34 -23
  270. package/src/generated/instructions/compress.ts +136 -30
  271. package/src/generated/instructions/createTree.ts +137 -33
  272. package/src/generated/instructions/createTreeV2.ts +128 -36
  273. package/src/generated/instructions/decompressV1.ts +124 -31
  274. package/src/generated/instructions/delegate.ts +159 -38
  275. package/src/generated/instructions/delegateAndFreezeV2.ts +191 -51
  276. package/src/generated/instructions/delegateV2.ts +189 -51
  277. package/src/generated/instructions/freezeV2.ts +193 -49
  278. package/src/generated/instructions/mintToCollectionV1.ts +186 -37
  279. package/src/generated/instructions/mintV1.ts +127 -31
  280. package/src/generated/instructions/mintV2.ts +184 -45
  281. package/src/generated/instructions/redeem.ts +172 -38
  282. package/src/generated/instructions/setAndVerifyCollection.ts +236 -54
  283. package/src/generated/instructions/setCollectionV2.ts +202 -58
  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 +184 -52
  287. package/src/generated/instructions/setTreeDelegate.ts +82 -28
  288. package/src/generated/instructions/thawAndRevokeV2.ts +179 -48
  289. package/src/generated/instructions/thawV2.ts +185 -49
  290. package/src/generated/instructions/transfer.ts +156 -35
  291. package/src/generated/instructions/transferV2.ts +185 -52
  292. package/src/generated/instructions/unverifyCollection.ts +229 -54
  293. package/src/generated/instructions/unverifyCreator.ts +181 -39
  294. package/src/generated/instructions/unverifyCreatorV2.ts +164 -46
  295. package/src/generated/instructions/updateAssetDataV2.ts +200 -50
  296. package/src/generated/instructions/updateMetadata.ts +200 -52
  297. package/src/generated/instructions/updateMetadataV2.ts +183 -54
  298. package/src/generated/instructions/verifyCollection.ts +229 -54
  299. package/src/generated/instructions/verifyCreator.ts +181 -39
  300. package/src/generated/instructions/verifyCreatorV2.ts +164 -46
  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
@@ -1,48 +1,127 @@
1
1
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/bubblegum.js";
2
+ import "../programs/index.js";
2
3
  import { AccountMeta, AccountSignerMeta, Address, Codec, Decoder, Encoder, Instruction, InstructionWithAccounts, InstructionWithData, Option, OptionOrNullable, ReadonlyAccount, ReadonlySignerAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount, WritableSignerAccount } from "@solana/kit";
3
-
4
4
  //#region src/generated/instructions/transferV2.d.ts
5
5
  declare const TRANSFER_V2_DISCRIMINATOR: ReadonlyUint8Array;
6
6
  declare function getTransferV2DiscriminatorBytes(): ReadonlyUint8Array;
7
7
  type TransferV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountTreeAuthority extends string | AccountMeta<string> = string, TAccountPayer extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountLeafOwner extends string | AccountMeta<string> = string, TAccountLeafDelegate extends string | AccountMeta<string> = string, TAccountNewLeafOwner extends string | AccountMeta<string> = string, TAccountMerkleTree extends string | AccountMeta<string> = string, TAccountCoreCollection extends string | AccountMeta<string> = string, TAccountLogWrapper extends string | AccountMeta<string> = "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3", TAccountCompressionProgram extends string | AccountMeta<string> = "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW", TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountTreeAuthority extends string ? WritableAccount<TAccountTreeAuthority> : TAccountTreeAuthority, TAccountPayer extends string ? WritableSignerAccount<TAccountPayer> & AccountSignerMeta<TAccountPayer> : TAccountPayer, TAccountAuthority extends string ? ReadonlySignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority, TAccountLeafOwner extends string ? ReadonlyAccount<TAccountLeafOwner> : TAccountLeafOwner, TAccountLeafDelegate extends string ? ReadonlyAccount<TAccountLeafDelegate> : TAccountLeafDelegate, TAccountNewLeafOwner extends string ? ReadonlyAccount<TAccountNewLeafOwner> : TAccountNewLeafOwner, TAccountMerkleTree extends string ? WritableAccount<TAccountMerkleTree> : TAccountMerkleTree, TAccountCoreCollection extends string ? ReadonlyAccount<TAccountCoreCollection> : TAccountCoreCollection, TAccountLogWrapper extends string ? ReadonlyAccount<TAccountLogWrapper> : TAccountLogWrapper, TAccountCompressionProgram extends string ? ReadonlyAccount<TAccountCompressionProgram> : TAccountCompressionProgram, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts]>;
8
- interface TransferV2InstructionData {
8
+ type TransferV2InstructionData = {
9
9
  discriminator: ReadonlyUint8Array;
10
- root: number[];
11
- dataHash: number[];
12
- creatorHash: number[];
13
- assetDataHash: Option<number[]>;
10
+ /**
11
+ * Current Merkle root of the tree, used together with the Merkle proof
12
+ * (passed as remaining accounts) to verify the leaf being operated on.
13
+ */
14
+ root: Array<number>;
15
+ /**
16
+ * Keccak256 hash of the leaf's metadata, used together with `root` to
17
+ * verify the leaf before it is modified.
18
+ */
19
+ dataHash: Array<number>;
20
+ /**
21
+ * Keccak256 hash of the leaf's creators array, used together with
22
+ * `root` to verify the leaf before it is modified.
23
+ */
24
+ creatorHash: Array<number>;
25
+ /**
26
+ * Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,
27
+ * carried through unchanged by this instruction.
28
+ */
29
+ assetDataHash: Option<Array<number>>;
30
+ /**
31
+ * Expected current status flags (e.g. frozen, non-transferable) of the
32
+ * `LeafSchema` V2 leaf, verified before this instruction updates them.
33
+ */
14
34
  flags: Option<number>;
35
+ /**
36
+ * Tree-scoped nonce identifying the leaf, equal to the tree's
37
+ * `numMinted` at the time the leaf was minted. Combined with the tree
38
+ * address to derive the leaf's asset id.
39
+ */
15
40
  nonce: bigint;
41
+ /**
42
+ * Position of the leaf within the Merkle tree, used with the Merkle
43
+ * proof to locate and verify the leaf.
44
+ */
16
45
  index: number;
17
- }
18
- interface TransferV2InstructionDataArgs {
19
- root: number[];
20
- dataHash: number[];
21
- creatorHash: number[];
22
- assetDataHash: OptionOrNullable<number[]>;
46
+ };
47
+ type TransferV2InstructionDataArgs = {
48
+ /**
49
+ * Current Merkle root of the tree, used together with the Merkle proof
50
+ * (passed as remaining accounts) to verify the leaf being operated on.
51
+ */
52
+ root: Array<number>;
53
+ /**
54
+ * Keccak256 hash of the leaf's metadata, used together with `root` to
55
+ * verify the leaf before it is modified.
56
+ */
57
+ dataHash: Array<number>;
58
+ /**
59
+ * Keccak256 hash of the leaf's creators array, used together with
60
+ * `root` to verify the leaf before it is modified.
61
+ */
62
+ creatorHash: Array<number>;
63
+ /**
64
+ * Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,
65
+ * carried through unchanged by this instruction.
66
+ */
67
+ assetDataHash: OptionOrNullable<Array<number>>;
68
+ /**
69
+ * Expected current status flags (e.g. frozen, non-transferable) of the
70
+ * `LeafSchema` V2 leaf, verified before this instruction updates them.
71
+ */
23
72
  flags: OptionOrNullable<number>;
73
+ /**
74
+ * Tree-scoped nonce identifying the leaf, equal to the tree's
75
+ * `numMinted` at the time the leaf was minted. Combined with the tree
76
+ * address to derive the leaf's asset id.
77
+ */
24
78
  nonce: number | bigint;
79
+ /**
80
+ * Position of the leaf within the Merkle tree, used with the Merkle
81
+ * proof to locate and verify the leaf.
82
+ */
25
83
  index: number;
26
- }
84
+ };
27
85
  declare function getTransferV2InstructionDataEncoder(): Encoder<TransferV2InstructionDataArgs>;
28
86
  declare function getTransferV2InstructionDataDecoder(): Decoder<TransferV2InstructionData>;
29
87
  declare function getTransferV2InstructionDataCodec(): Codec<TransferV2InstructionDataArgs, TransferV2InstructionData>;
30
- interface TransferV2AsyncInput<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountNewLeafOwner extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountSystemProgram extends string = string> {
88
+ type TransferV2AsyncInput<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountNewLeafOwner extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountSystemProgram extends string = string> = {
89
+ /**
90
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
91
+ * as the tree's authority for CPIs into the compression program.
92
+ */
31
93
  treeAuthority?: Address<TAccountTreeAuthority>;
94
+ /** Account that pays for the transaction and any account rent. */
32
95
  payer: TransactionSigner<TAccountPayer>;
33
96
  /**
34
- * Optional authority, defaults to `payer`. Must be either
35
- * the leaf owner or collection permanent transfer delegate.
36
- */
97
+ * Optional authority, defaults to `payer`. Must be either the leaf
98
+ * owner or a permanent transfer delegate plugin on the collection.
99
+ */
37
100
  authority?: TransactionSigner<TAccountAuthority>;
101
+ /** Owner of the compressed NFT leaf being operated on. */
38
102
  leafOwner: Address<TAccountLeafOwner>;
39
- /** Defaults to `leaf_owner` */
103
+ /** Defaults to `leafOwner`. */
40
104
  leafDelegate?: Address<TAccountLeafDelegate>;
105
+ /** New owner the leaf is being transferred to. */
41
106
  newLeafOwner: Address<TAccountNewLeafOwner>;
107
+ /**
108
+ * The concurrent Merkle tree account storing the compressed leaves,
109
+ * owned by the account compression program.
110
+ */
42
111
  merkleTree: Address<TAccountMerkleTree>;
112
+ /** MPL Core collection account the asset belongs to (V2 collections). */
43
113
  coreCollection?: Address<TAccountCoreCollection>;
114
+ /**
115
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
116
+ * can reconstruct the tree.
117
+ */
44
118
  logWrapper?: Address<TAccountLogWrapper>;
119
+ /**
120
+ * The SPL/MPL Account Compression program that owns and manages the
121
+ * Merkle tree.
122
+ */
45
123
  compressionProgram?: Address<TAccountCompressionProgram>;
124
+ /** The Solana System program. */
46
125
  systemProgram?: Address<TAccountSystemProgram>;
47
126
  root: TransferV2InstructionDataArgs["root"];
48
127
  dataHash: TransferV2InstructionDataArgs["dataHash"];
@@ -51,26 +130,54 @@ interface TransferV2AsyncInput<TAccountTreeAuthority extends string = string, TA
51
130
  flags: TransferV2InstructionDataArgs["flags"];
52
131
  nonce: TransferV2InstructionDataArgs["nonce"];
53
132
  index: TransferV2InstructionDataArgs["index"];
54
- }
133
+ };
134
+ /**
135
+ * Transfers a `LeafSchema` V2 leaf node from one owner to another.
136
+ *
137
+ * Must be signed by the leaf owner or, when the asset belongs to an MPL
138
+ * Core collection, a permanent transfer delegate plugin on that
139
+ * collection. Frozen or non-transferable leaves cannot be transferred.
140
+ */
55
141
  declare function getTransferV2InstructionAsync<TAccountTreeAuthority extends string, TAccountPayer extends string, TAccountAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountNewLeafOwner extends string, TAccountMerkleTree extends string, TAccountCoreCollection extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: TransferV2AsyncInput<TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountNewLeafOwner, TAccountMerkleTree, TAccountCoreCollection, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>, config?: {
56
142
  programAddress?: TProgramAddress;
57
143
  }): Promise<TransferV2Instruction<TProgramAddress, TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountNewLeafOwner, TAccountMerkleTree, TAccountCoreCollection, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>>;
58
- interface TransferV2Input<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountNewLeafOwner extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountSystemProgram extends string = string> {
144
+ type TransferV2Input<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountNewLeafOwner extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountSystemProgram extends string = string> = {
145
+ /**
146
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
147
+ * as the tree's authority for CPIs into the compression program.
148
+ */
59
149
  treeAuthority: Address<TAccountTreeAuthority>;
150
+ /** Account that pays for the transaction and any account rent. */
60
151
  payer: TransactionSigner<TAccountPayer>;
61
152
  /**
62
- * Optional authority, defaults to `payer`. Must be either
63
- * the leaf owner or collection permanent transfer delegate.
64
- */
153
+ * Optional authority, defaults to `payer`. Must be either the leaf
154
+ * owner or a permanent transfer delegate plugin on the collection.
155
+ */
65
156
  authority?: TransactionSigner<TAccountAuthority>;
157
+ /** Owner of the compressed NFT leaf being operated on. */
66
158
  leafOwner: Address<TAccountLeafOwner>;
67
- /** Defaults to `leaf_owner` */
159
+ /** Defaults to `leafOwner`. */
68
160
  leafDelegate?: Address<TAccountLeafDelegate>;
161
+ /** New owner the leaf is being transferred to. */
69
162
  newLeafOwner: Address<TAccountNewLeafOwner>;
163
+ /**
164
+ * The concurrent Merkle tree account storing the compressed leaves,
165
+ * owned by the account compression program.
166
+ */
70
167
  merkleTree: Address<TAccountMerkleTree>;
168
+ /** MPL Core collection account the asset belongs to (V2 collections). */
71
169
  coreCollection?: Address<TAccountCoreCollection>;
170
+ /**
171
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
172
+ * can reconstruct the tree.
173
+ */
72
174
  logWrapper?: Address<TAccountLogWrapper>;
175
+ /**
176
+ * The SPL/MPL Account Compression program that owns and manages the
177
+ * Merkle tree.
178
+ */
73
179
  compressionProgram?: Address<TAccountCompressionProgram>;
180
+ /** The Solana System program. */
74
181
  systemProgram?: Address<TAccountSystemProgram>;
75
182
  root: TransferV2InstructionDataArgs["root"];
76
183
  dataHash: TransferV2InstructionDataArgs["dataHash"];
@@ -79,31 +186,60 @@ interface TransferV2Input<TAccountTreeAuthority extends string = string, TAccoun
79
186
  flags: TransferV2InstructionDataArgs["flags"];
80
187
  nonce: TransferV2InstructionDataArgs["nonce"];
81
188
  index: TransferV2InstructionDataArgs["index"];
82
- }
189
+ };
190
+ /**
191
+ * Transfers a `LeafSchema` V2 leaf node from one owner to another.
192
+ *
193
+ * Must be signed by the leaf owner or, when the asset belongs to an MPL
194
+ * Core collection, a permanent transfer delegate plugin on that
195
+ * collection. Frozen or non-transferable leaves cannot be transferred.
196
+ */
83
197
  declare function getTransferV2Instruction<TAccountTreeAuthority extends string, TAccountPayer extends string, TAccountAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountNewLeafOwner extends string, TAccountMerkleTree extends string, TAccountCoreCollection extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: TransferV2Input<TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountNewLeafOwner, TAccountMerkleTree, TAccountCoreCollection, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>, config?: {
84
198
  programAddress?: TProgramAddress;
85
199
  }): TransferV2Instruction<TProgramAddress, TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountNewLeafOwner, TAccountMerkleTree, TAccountCoreCollection, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>;
86
- interface ParsedTransferV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> {
200
+ type ParsedTransferV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
87
201
  programAddress: Address<TProgram>;
88
202
  accounts: {
203
+ /**
204
+ * The tree's `TreeConfig` PDA, which stores its configuration and acts
205
+ * as the tree's authority for CPIs into the compression program.
206
+ */
89
207
  treeAuthority: TAccountMetas[0];
208
+ /** Account that pays for the transaction and any account rent. */
90
209
  payer: TAccountMetas[1];
91
210
  /**
92
- * Optional authority, defaults to `payer`. Must be either
93
- * the leaf owner or collection permanent transfer delegate.
94
- */
211
+ * Optional authority, defaults to `payer`. Must be either the leaf
212
+ * owner or a permanent transfer delegate plugin on the collection.
213
+ */
95
214
  authority?: TAccountMetas[2] | undefined;
96
- leafOwner: TAccountMetas[3]; /** Defaults to `leaf_owner` */
215
+ /** Owner of the compressed NFT leaf being operated on. */
216
+ leafOwner: TAccountMetas[3];
217
+ /** Defaults to `leafOwner`. */
97
218
  leafDelegate?: TAccountMetas[4] | undefined;
219
+ /** New owner the leaf is being transferred to. */
98
220
  newLeafOwner: TAccountMetas[5];
221
+ /**
222
+ * The concurrent Merkle tree account storing the compressed leaves,
223
+ * owned by the account compression program.
224
+ */
99
225
  merkleTree: TAccountMetas[6];
226
+ /** MPL Core collection account the asset belongs to (V2 collections). */
100
227
  coreCollection?: TAccountMetas[7] | undefined;
228
+ /**
229
+ * The SPL/MPL Noop program, used to log leaf data so off-chain indexers
230
+ * can reconstruct the tree.
231
+ */
101
232
  logWrapper: TAccountMetas[8];
233
+ /**
234
+ * The SPL/MPL Account Compression program that owns and manages the
235
+ * Merkle tree.
236
+ */
102
237
  compressionProgram: TAccountMetas[9];
238
+ /** The Solana System program. */
103
239
  systemProgram: TAccountMetas[10];
104
240
  };
105
241
  data: TransferV2InstructionData;
106
- }
242
+ };
107
243
  declare function parseTransferV2Instruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedTransferV2Instruction<TProgram, TAccountMetas>;
108
244
  //#endregion
109
245
  export { ParsedTransferV2Instruction, TRANSFER_V2_DISCRIMINATOR, TransferV2AsyncInput, TransferV2Input, TransferV2Instruction, TransferV2InstructionData, TransferV2InstructionDataArgs, getTransferV2DiscriminatorBytes, getTransferV2Instruction, getTransferV2InstructionAsync, getTransferV2InstructionDataCodec, getTransferV2InstructionDataDecoder, getTransferV2InstructionDataEncoder, parseTransferV2Instruction };
@@ -1 +1 @@
1
- {"version":3,"file":"transferV2.d.ts","names":[],"sources":["../../../src/generated/instructions/transferV2.ts"],"mappings":"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"}
1
+ {"version":3,"file":"transferV2.d.ts","names":[],"sources":["../../../src/generated/instructions/transferV2.ts"],"mappings":"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"}
@@ -3,6 +3,13 @@ import "../programs/bubblegum.js";
3
3
  import { SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, combineCodec, fixDecoderSize, fixEncoderSize, getArrayDecoder, getArrayEncoder, getBytesDecoder, getBytesEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder } from "@solana/kit";
4
4
  import { getAccountMetaFactory, getAddressFromResolvedInstructionAccount } from "@solana/program-client-core";
5
5
  //#region src/generated/instructions/transferV2.ts
6
+ /**
7
+ * This code was AUTOGENERATED using the Codama library.
8
+ * Please DO NOT EDIT THIS FILE, instead use visitors
9
+ * to add features, then rerun Codama to update it.
10
+ *
11
+ * @see https://github.com/codama-idl/codama
12
+ */
6
13
  const TRANSFER_V2_DISCRIMINATOR = new Uint8Array([
7
14
  119,
8
15
  40,
@@ -46,6 +53,13 @@ function getTransferV2InstructionDataDecoder() {
46
53
  function getTransferV2InstructionDataCodec() {
47
54
  return combineCodec(getTransferV2InstructionDataEncoder(), getTransferV2InstructionDataDecoder());
48
55
  }
56
+ /**
57
+ * Transfers a `LeafSchema` V2 leaf node from one owner to another.
58
+ *
59
+ * Must be signed by the leaf owner or, when the asset belongs to an MPL
60
+ * Core collection, a permanent transfer delegate plugin on that
61
+ * collection. Frozen or non-transferable leaves cannot be transferred.
62
+ */
49
63
  async function getTransferV2InstructionAsync(input, config) {
50
64
  const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
51
65
  const accounts = {
@@ -118,6 +132,13 @@ async function getTransferV2InstructionAsync(input, config) {
118
132
  programAddress
119
133
  });
120
134
  }
135
+ /**
136
+ * Transfers a `LeafSchema` V2 leaf node from one owner to another.
137
+ *
138
+ * Must be signed by the leaf owner or, when the asset belongs to an MPL
139
+ * Core collection, a permanent transfer delegate plugin on that
140
+ * collection. Frozen or non-transferable leaves cannot be transferred.
141
+ */
121
142
  function getTransferV2Instruction(input, config) {
122
143
  const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
123
144
  const accounts = {
@@ -1 +1 @@
1
- {"version":3,"file":"transferV2.js","names":[],"sources":["../../../src/generated/instructions/transferV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport type {\n AccountMeta,\n AccountSignerMeta,\n Address,\n Codec,\n Decoder,\n Encoder,\n Instruction,\n InstructionWithAccounts,\n InstructionWithData,\n Option,\n OptionOrNullable,\n ReadonlyAccount,\n ReadonlySignerAccount,\n ReadonlyUint8Array,\n TransactionSigner,\n WritableAccount,\n WritableSignerAccount,\n} from \"@solana/kit\";\nimport type { ResolvedInstructionAccount } from \"@solana/program-client-core\";\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\n getOptionDecoder,\n getOptionEncoder,\n getStructDecoder,\n getStructEncoder,\n getU8Decoder,\n getU8Encoder,\n getU32Decoder,\n getU32Encoder,\n getU64Decoder,\n getU64Encoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport { findTreeConfigPda } from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\n\nexport const TRANSFER_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([\n 119, 40, 6, 235, 234, 221, 248, 49,\n]);\n\nexport function getTransferV2DiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(TRANSFER_V2_DISCRIMINATOR);\n}\n\nexport type TransferV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountPayer extends string | AccountMeta<string> = string,\n TAccountAuthority extends string | AccountMeta<string> = string,\n TAccountLeafOwner extends string | AccountMeta<string> = string,\n TAccountLeafDelegate extends string | AccountMeta<string> = string,\n TAccountNewLeafOwner extends string | AccountMeta<string> = string,\n TAccountMerkleTree extends string | AccountMeta<string> = string,\n TAccountCoreCollection extends string | AccountMeta<string> = string,\n TAccountLogWrapper extends string | AccountMeta<string> =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\",\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? WritableAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountPayer extends string\n ? WritableSignerAccount<TAccountPayer> &\n AccountSignerMeta<TAccountPayer>\n : TAccountPayer,\n TAccountAuthority extends string\n ? ReadonlySignerAccount<TAccountAuthority> &\n AccountSignerMeta<TAccountAuthority>\n : TAccountAuthority,\n TAccountLeafOwner extends string\n ? ReadonlyAccount<TAccountLeafOwner>\n : TAccountLeafOwner,\n TAccountLeafDelegate extends string\n ? ReadonlyAccount<TAccountLeafDelegate>\n : TAccountLeafDelegate,\n TAccountNewLeafOwner extends string\n ? ReadonlyAccount<TAccountNewLeafOwner>\n : TAccountNewLeafOwner,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountCoreCollection extends string\n ? ReadonlyAccount<TAccountCoreCollection>\n : TAccountCoreCollection,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport interface TransferV2InstructionData {\n discriminator: ReadonlyUint8Array;\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n assetDataHash: Option<number[]>;\n flags: Option<number>;\n nonce: bigint;\n index: number;\n}\n\nexport interface TransferV2InstructionDataArgs {\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n assetDataHash: OptionOrNullable<number[]>;\n flags: OptionOrNullable<number>;\n nonce: number | bigint;\n index: number;\n}\n\nexport function getTransferV2InstructionDataEncoder(): Encoder<TransferV2InstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([\n [\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)],\n [\"root\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"dataHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"creatorHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\n \"assetDataHash\",\n getOptionEncoder(getArrayEncoder(getU8Encoder(), { size: 32 })),\n ],\n [\"flags\", getOptionEncoder(getU8Encoder())],\n [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n ]),\n (value) => ({ ...value, discriminator: TRANSFER_V2_DISCRIMINATOR }),\n );\n}\n\nexport function getTransferV2InstructionDataDecoder(): Decoder<TransferV2InstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n [\"root\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"dataHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"creatorHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\n \"assetDataHash\",\n getOptionDecoder(getArrayDecoder(getU8Decoder(), { size: 32 })),\n ],\n [\"flags\", getOptionDecoder(getU8Decoder())],\n [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n ]);\n}\n\nexport function getTransferV2InstructionDataCodec(): Codec<\n TransferV2InstructionDataArgs,\n TransferV2InstructionData\n> {\n return combineCodec(\n getTransferV2InstructionDataEncoder(),\n getTransferV2InstructionDataDecoder(),\n );\n}\n\nexport interface TransferV2AsyncInput<\n TAccountTreeAuthority extends string = string,\n TAccountPayer extends string = string,\n TAccountAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountNewLeafOwner extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountCoreCollection extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority?: Address<TAccountTreeAuthority>;\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Optional authority, defaults to `payer`. Must be either\n * the leaf owner or collection permanent transfer delegate.\n */\n authority?: TransactionSigner<TAccountAuthority>;\n leafOwner: Address<TAccountLeafOwner>;\n /** Defaults to `leaf_owner` */\n leafDelegate?: Address<TAccountLeafDelegate>;\n newLeafOwner: Address<TAccountNewLeafOwner>;\n merkleTree: Address<TAccountMerkleTree>;\n coreCollection?: Address<TAccountCoreCollection>;\n logWrapper?: Address<TAccountLogWrapper>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n systemProgram?: Address<TAccountSystemProgram>;\n root: TransferV2InstructionDataArgs[\"root\"];\n dataHash: TransferV2InstructionDataArgs[\"dataHash\"];\n creatorHash: TransferV2InstructionDataArgs[\"creatorHash\"];\n assetDataHash: TransferV2InstructionDataArgs[\"assetDataHash\"];\n flags: TransferV2InstructionDataArgs[\"flags\"];\n nonce: TransferV2InstructionDataArgs[\"nonce\"];\n index: TransferV2InstructionDataArgs[\"index\"];\n}\n\nexport async function getTransferV2InstructionAsync<\n TAccountTreeAuthority extends string,\n TAccountPayer extends string,\n TAccountAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountNewLeafOwner extends string,\n TAccountMerkleTree extends string,\n TAccountCoreCollection extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: TransferV2AsyncInput<\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): Promise<\n TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n coreCollection: { value: input.coreCollection ?? null, isWritable: false },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Original args.\n const args = { ...input };\n\n // Resolve default values.\n if (!accounts.treeAuthority.value) {\n accounts.treeAuthority.value = await findTreeConfigPda({\n merkleTree: getAddressFromResolvedInstructionAccount(\n \"merkleTree\",\n accounts.merkleTree.value,\n ),\n });\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"newLeafOwner\", accounts.newLeafOwner),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"coreCollection\", accounts.coreCollection),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getTransferV2InstructionDataEncoder().encode(\n args as TransferV2InstructionDataArgs,\n ),\n programAddress,\n } as TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >);\n}\n\nexport interface TransferV2Input<\n TAccountTreeAuthority extends string = string,\n TAccountPayer extends string = string,\n TAccountAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountNewLeafOwner extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountCoreCollection extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority: Address<TAccountTreeAuthority>;\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Optional authority, defaults to `payer`. Must be either\n * the leaf owner or collection permanent transfer delegate.\n */\n authority?: TransactionSigner<TAccountAuthority>;\n leafOwner: Address<TAccountLeafOwner>;\n /** Defaults to `leaf_owner` */\n leafDelegate?: Address<TAccountLeafDelegate>;\n newLeafOwner: Address<TAccountNewLeafOwner>;\n merkleTree: Address<TAccountMerkleTree>;\n coreCollection?: Address<TAccountCoreCollection>;\n logWrapper?: Address<TAccountLogWrapper>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n systemProgram?: Address<TAccountSystemProgram>;\n root: TransferV2InstructionDataArgs[\"root\"];\n dataHash: TransferV2InstructionDataArgs[\"dataHash\"];\n creatorHash: TransferV2InstructionDataArgs[\"creatorHash\"];\n assetDataHash: TransferV2InstructionDataArgs[\"assetDataHash\"];\n flags: TransferV2InstructionDataArgs[\"flags\"];\n nonce: TransferV2InstructionDataArgs[\"nonce\"];\n index: TransferV2InstructionDataArgs[\"index\"];\n}\n\nexport function getTransferV2Instruction<\n TAccountTreeAuthority extends string,\n TAccountPayer extends string,\n TAccountAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountNewLeafOwner extends string,\n TAccountMerkleTree extends string,\n TAccountCoreCollection extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: TransferV2Input<\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n coreCollection: { value: input.coreCollection ?? null, isWritable: false },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Original args.\n const args = { ...input };\n\n // Resolve default values.\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"newLeafOwner\", accounts.newLeafOwner),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"coreCollection\", accounts.coreCollection),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getTransferV2InstructionDataEncoder().encode(\n args as TransferV2InstructionDataArgs,\n ),\n programAddress,\n } as TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >);\n}\n\nexport interface ParsedTransferV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> {\n programAddress: Address<TProgram>;\n accounts: {\n treeAuthority: TAccountMetas[0];\n payer: TAccountMetas[1];\n /**\n * Optional authority, defaults to `payer`. Must be either\n * the leaf owner or collection permanent transfer delegate.\n */\n authority?: TAccountMetas[2] | undefined;\n leafOwner: TAccountMetas[3];\n /** Defaults to `leaf_owner` */\n leafDelegate?: TAccountMetas[4] | undefined;\n newLeafOwner: TAccountMetas[5];\n merkleTree: TAccountMetas[6];\n coreCollection?: TAccountMetas[7] | undefined;\n logWrapper: TAccountMetas[8];\n compressionProgram: TAccountMetas[9];\n systemProgram: TAccountMetas[10];\n };\n data: TransferV2InstructionData;\n}\n\nexport function parseTransferV2Instruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedTransferV2Instruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 11) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 11,\n },\n );\n }\n let accountIndex = 0;\n const getNextAccount = () => {\n const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;\n accountIndex += 1;\n return accountMeta;\n };\n const getNextOptionalAccount = () => {\n const accountMeta = getNextAccount();\n return accountMeta.address === BUBBLEGUM_PROGRAM_ADDRESS\n ? undefined\n : accountMeta;\n };\n return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n payer: getNextAccount(),\n authority: getNextOptionalAccount(),\n leafOwner: getNextAccount(),\n leafDelegate: getNextOptionalAccount(),\n newLeafOwner: getNextAccount(),\n merkleTree: getNextAccount(),\n coreCollection: getNextOptionalAccount(),\n logWrapper: getNextAccount(),\n compressionProgram: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getTransferV2InstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"transferV2.js","names":[],"sources":["../../../src/generated/instructions/transferV2.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\n getOptionDecoder,\n getOptionEncoder,\n getStructDecoder,\n getStructEncoder,\n getU32Decoder,\n getU32Encoder,\n getU64Decoder,\n getU64Encoder,\n getU8Decoder,\n getU8Encoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n type AccountMeta,\n type AccountSignerMeta,\n type Address,\n type Codec,\n type Decoder,\n type Encoder,\n type Instruction,\n type InstructionWithAccounts,\n type InstructionWithData,\n type Option,\n type OptionOrNullable,\n type ReadonlyAccount,\n type ReadonlySignerAccount,\n type ReadonlyUint8Array,\n type TransactionSigner,\n type WritableAccount,\n type WritableSignerAccount,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n type ResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport { findTreeConfigPda } from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\n\nexport const TRANSFER_V2_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([\n 119, 40, 6, 235, 234, 221, 248, 49,\n]);\n\nexport function getTransferV2DiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(TRANSFER_V2_DISCRIMINATOR);\n}\n\nexport type TransferV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountPayer extends string | AccountMeta<string> = string,\n TAccountAuthority extends string | AccountMeta<string> = string,\n TAccountLeafOwner extends string | AccountMeta<string> = string,\n TAccountLeafDelegate extends string | AccountMeta<string> = string,\n TAccountNewLeafOwner extends string | AccountMeta<string> = string,\n TAccountMerkleTree extends string | AccountMeta<string> = string,\n TAccountCoreCollection extends string | AccountMeta<string> = string,\n TAccountLogWrapper extends string | AccountMeta<string> =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\",\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? WritableAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountPayer extends string\n ? WritableSignerAccount<TAccountPayer> &\n AccountSignerMeta<TAccountPayer>\n : TAccountPayer,\n TAccountAuthority extends string\n ? ReadonlySignerAccount<TAccountAuthority> &\n AccountSignerMeta<TAccountAuthority>\n : TAccountAuthority,\n TAccountLeafOwner extends string\n ? ReadonlyAccount<TAccountLeafOwner>\n : TAccountLeafOwner,\n TAccountLeafDelegate extends string\n ? ReadonlyAccount<TAccountLeafDelegate>\n : TAccountLeafDelegate,\n TAccountNewLeafOwner extends string\n ? ReadonlyAccount<TAccountNewLeafOwner>\n : TAccountNewLeafOwner,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountCoreCollection extends string\n ? ReadonlyAccount<TAccountCoreCollection>\n : TAccountCoreCollection,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport type TransferV2InstructionData = {\n discriminator: ReadonlyUint8Array;\n /**\n * Current Merkle root of the tree, used together with the Merkle proof\n * (passed as remaining accounts) to verify the leaf being operated on.\n */\n root: Array<number>;\n /**\n * Keccak256 hash of the leaf's metadata, used together with `root` to\n * verify the leaf before it is modified.\n */\n dataHash: Array<number>;\n /**\n * Keccak256 hash of the leaf's creators array, used together with\n * `root` to verify the leaf before it is modified.\n */\n creatorHash: Array<number>;\n /**\n * Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,\n * carried through unchanged by this instruction.\n */\n assetDataHash: Option<Array<number>>;\n /**\n * Expected current status flags (e.g. frozen, non-transferable) of the\n * `LeafSchema` V2 leaf, verified before this instruction updates them.\n */\n flags: Option<number>;\n /**\n * Tree-scoped nonce identifying the leaf, equal to the tree's\n * `numMinted` at the time the leaf was minted. Combined with the tree\n * address to derive the leaf's asset id.\n */\n nonce: bigint;\n /**\n * Position of the leaf within the Merkle tree, used with the Merkle\n * proof to locate and verify the leaf.\n */\n index: number;\n};\n\nexport type TransferV2InstructionDataArgs = {\n /**\n * Current Merkle root of the tree, used together with the Merkle proof\n * (passed as remaining accounts) to verify the leaf being operated on.\n */\n root: Array<number>;\n /**\n * Keccak256 hash of the leaf's metadata, used together with `root` to\n * verify the leaf before it is modified.\n */\n dataHash: Array<number>;\n /**\n * Keccak256 hash of the leaf's creators array, used together with\n * `root` to verify the leaf before it is modified.\n */\n creatorHash: Array<number>;\n /**\n * Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,\n * carried through unchanged by this instruction.\n */\n assetDataHash: OptionOrNullable<Array<number>>;\n /**\n * Expected current status flags (e.g. frozen, non-transferable) of the\n * `LeafSchema` V2 leaf, verified before this instruction updates them.\n */\n flags: OptionOrNullable<number>;\n /**\n * Tree-scoped nonce identifying the leaf, equal to the tree's\n * `numMinted` at the time the leaf was minted. Combined with the tree\n * address to derive the leaf's asset id.\n */\n nonce: number | bigint;\n /**\n * Position of the leaf within the Merkle tree, used with the Merkle\n * proof to locate and verify the leaf.\n */\n index: number;\n};\n\nexport function getTransferV2InstructionDataEncoder(): Encoder<TransferV2InstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([\n [\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)],\n [\"root\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"dataHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"creatorHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\n \"assetDataHash\",\n getOptionEncoder(getArrayEncoder(getU8Encoder(), { size: 32 })),\n ],\n [\"flags\", getOptionEncoder(getU8Encoder())],\n [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n ]),\n (value) => ({ ...value, discriminator: TRANSFER_V2_DISCRIMINATOR }),\n );\n}\n\nexport function getTransferV2InstructionDataDecoder(): Decoder<TransferV2InstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n [\"root\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"dataHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"creatorHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\n \"assetDataHash\",\n getOptionDecoder(getArrayDecoder(getU8Decoder(), { size: 32 })),\n ],\n [\"flags\", getOptionDecoder(getU8Decoder())],\n [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n ]);\n}\n\nexport function getTransferV2InstructionDataCodec(): Codec<\n TransferV2InstructionDataArgs,\n TransferV2InstructionData\n> {\n return combineCodec(\n getTransferV2InstructionDataEncoder(),\n getTransferV2InstructionDataDecoder(),\n );\n}\n\nexport type TransferV2AsyncInput<\n TAccountTreeAuthority extends string = string,\n TAccountPayer extends string = string,\n TAccountAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountNewLeafOwner extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountCoreCollection extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> = {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority?: Address<TAccountTreeAuthority>;\n /** Account that pays for the transaction and any account rent. */\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Optional authority, defaults to `payer`. Must be either the leaf\n * owner or a permanent transfer delegate plugin on the collection.\n */\n authority?: TransactionSigner<TAccountAuthority>;\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: Address<TAccountLeafOwner>;\n /** Defaults to `leafOwner`. */\n leafDelegate?: Address<TAccountLeafDelegate>;\n /** New owner the leaf is being transferred to. */\n newLeafOwner: Address<TAccountNewLeafOwner>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /** MPL Core collection account the asset belongs to (V2 collections). */\n coreCollection?: Address<TAccountCoreCollection>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n root: TransferV2InstructionDataArgs[\"root\"];\n dataHash: TransferV2InstructionDataArgs[\"dataHash\"];\n creatorHash: TransferV2InstructionDataArgs[\"creatorHash\"];\n assetDataHash: TransferV2InstructionDataArgs[\"assetDataHash\"];\n flags: TransferV2InstructionDataArgs[\"flags\"];\n nonce: TransferV2InstructionDataArgs[\"nonce\"];\n index: TransferV2InstructionDataArgs[\"index\"];\n};\n\n/**\n * Transfers a `LeafSchema` V2 leaf node from one owner to another.\n *\n * Must be signed by the leaf owner or, when the asset belongs to an MPL\n * Core collection, a permanent transfer delegate plugin on that\n * collection. Frozen or non-transferable leaves cannot be transferred.\n */\nexport async function getTransferV2InstructionAsync<\n TAccountTreeAuthority extends string,\n TAccountPayer extends string,\n TAccountAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountNewLeafOwner extends string,\n TAccountMerkleTree extends string,\n TAccountCoreCollection extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: TransferV2AsyncInput<\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): Promise<\n TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n coreCollection: { value: input.coreCollection ?? null, isWritable: false },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Original args.\n const args = { ...input };\n\n // Resolve default values.\n if (!accounts.treeAuthority.value) {\n accounts.treeAuthority.value = await findTreeConfigPda({\n merkleTree: getAddressFromResolvedInstructionAccount(\n \"merkleTree\",\n accounts.merkleTree.value,\n ),\n });\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"newLeafOwner\", accounts.newLeafOwner),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"coreCollection\", accounts.coreCollection),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getTransferV2InstructionDataEncoder().encode(\n args as TransferV2InstructionDataArgs,\n ),\n programAddress,\n } as TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >);\n}\n\nexport type TransferV2Input<\n TAccountTreeAuthority extends string = string,\n TAccountPayer extends string = string,\n TAccountAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountNewLeafOwner extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountCoreCollection extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> = {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: Address<TAccountTreeAuthority>;\n /** Account that pays for the transaction and any account rent. */\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Optional authority, defaults to `payer`. Must be either the leaf\n * owner or a permanent transfer delegate plugin on the collection.\n */\n authority?: TransactionSigner<TAccountAuthority>;\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: Address<TAccountLeafOwner>;\n /** Defaults to `leafOwner`. */\n leafDelegate?: Address<TAccountLeafDelegate>;\n /** New owner the leaf is being transferred to. */\n newLeafOwner: Address<TAccountNewLeafOwner>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /** MPL Core collection account the asset belongs to (V2 collections). */\n coreCollection?: Address<TAccountCoreCollection>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n root: TransferV2InstructionDataArgs[\"root\"];\n dataHash: TransferV2InstructionDataArgs[\"dataHash\"];\n creatorHash: TransferV2InstructionDataArgs[\"creatorHash\"];\n assetDataHash: TransferV2InstructionDataArgs[\"assetDataHash\"];\n flags: TransferV2InstructionDataArgs[\"flags\"];\n nonce: TransferV2InstructionDataArgs[\"nonce\"];\n index: TransferV2InstructionDataArgs[\"index\"];\n};\n\n/**\n * Transfers a `LeafSchema` V2 leaf node from one owner to another.\n *\n * Must be signed by the leaf owner or, when the asset belongs to an MPL\n * Core collection, a permanent transfer delegate plugin on that\n * collection. Frozen or non-transferable leaves cannot be transferred.\n */\nexport function getTransferV2Instruction<\n TAccountTreeAuthority extends string,\n TAccountPayer extends string,\n TAccountAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountNewLeafOwner extends string,\n TAccountMerkleTree extends string,\n TAccountCoreCollection extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: TransferV2Input<\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n> {\n // Program address.\n const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;\n\n // Original accounts.\n const originalAccounts = {\n treeAuthority: { value: input.treeAuthority ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: true },\n authority: { value: input.authority ?? null, isWritable: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n newLeafOwner: { value: input.newLeafOwner ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n coreCollection: { value: input.coreCollection ?? null, isWritable: false },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n systemProgram: { value: input.systemProgram ?? null, isWritable: false },\n };\n const accounts = originalAccounts as Record<\n keyof typeof originalAccounts,\n ResolvedInstructionAccount\n >;\n\n // Original args.\n const args = { ...input };\n\n // Resolve default values.\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\" as Address<\"mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\" as Address<\"mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW\">;\n }\n if (!accounts.systemProgram.value) {\n accounts.systemProgram.value =\n \"11111111111111111111111111111111\" as Address<\"11111111111111111111111111111111\">;\n }\n\n const getAccountMeta = getAccountMetaFactory(programAddress, \"programId\");\n return Object.freeze({\n accounts: [\n getAccountMeta(\"treeAuthority\", accounts.treeAuthority),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"authority\", accounts.authority),\n getAccountMeta(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"newLeafOwner\", accounts.newLeafOwner),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"coreCollection\", accounts.coreCollection),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getTransferV2InstructionDataEncoder().encode(\n args as TransferV2InstructionDataArgs,\n ),\n programAddress,\n } as TransferV2Instruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountPayer,\n TAccountAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountNewLeafOwner,\n TAccountMerkleTree,\n TAccountCoreCollection,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountSystemProgram\n >);\n}\n\nexport type ParsedTransferV2Instruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> = {\n programAddress: Address<TProgram>;\n accounts: {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: TAccountMetas[0];\n /** Account that pays for the transaction and any account rent. */\n payer: TAccountMetas[1];\n /**\n * Optional authority, defaults to `payer`. Must be either the leaf\n * owner or a permanent transfer delegate plugin on the collection.\n */\n authority?: TAccountMetas[2] | undefined;\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: TAccountMetas[3];\n /** Defaults to `leafOwner`. */\n leafDelegate?: TAccountMetas[4] | undefined;\n /** New owner the leaf is being transferred to. */\n newLeafOwner: TAccountMetas[5];\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: TAccountMetas[6];\n /** MPL Core collection account the asset belongs to (V2 collections). */\n coreCollection?: TAccountMetas[7] | undefined;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper: TAccountMetas[8];\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram: TAccountMetas[9];\n /** The Solana System program. */\n systemProgram: TAccountMetas[10];\n };\n data: TransferV2InstructionData;\n};\n\nexport function parseTransferV2Instruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedTransferV2Instruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 11) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 11,\n },\n );\n }\n let accountIndex = 0;\n const getNextAccount = () => {\n const accountMeta = (instruction.accounts as TAccountMetas)[accountIndex]!;\n accountIndex += 1;\n return accountMeta;\n };\n const getNextOptionalAccount = () => {\n const accountMeta = getNextAccount();\n return accountMeta.address === BUBBLEGUM_PROGRAM_ADDRESS\n ? undefined\n : accountMeta;\n };\n return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n payer: getNextAccount(),\n authority: getNextOptionalAccount(),\n leafOwner: getNextAccount(),\n leafDelegate: getNextOptionalAccount(),\n newLeafOwner: getNextAccount(),\n merkleTree: getNextAccount(),\n coreCollection: getNextOptionalAccount(),\n logWrapper: getNextAccount(),\n compressionProgram: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getTransferV2InstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":"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"}