@macalinao/clients-mpl-bubblegum 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/dist/generated/accounts/index.d.ts +2 -10
  2. package/dist/generated/accounts/treeConfig.d.ts +42 -38
  3. package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
  4. package/dist/generated/accounts/treeConfig.js +70 -53
  5. package/dist/generated/accounts/treeConfig.js.map +1 -1
  6. package/dist/generated/accounts/voucher.d.ts +33 -30
  7. package/dist/generated/accounts/voucher.d.ts.map +1 -1
  8. package/dist/generated/accounts/voucher.js +61 -45
  9. package/dist/generated/accounts/voucher.js.map +1 -1
  10. package/dist/generated/errors/bubblegum.d.ts +71 -74
  11. package/dist/generated/errors/bubblegum.d.ts.map +1 -1
  12. package/dist/generated/errors/bubblegum.js +126 -133
  13. package/dist/generated/errors/bubblegum.js.map +1 -1
  14. package/dist/generated/errors/index.d.ts +1 -9
  15. package/dist/generated/index.d.ts +63 -13
  16. package/dist/generated/instructions/burn.d.ts +70 -65
  17. package/dist/generated/instructions/burn.d.ts.map +1 -1
  18. package/dist/generated/instructions/burn.js +168 -98
  19. package/dist/generated/instructions/burn.js.map +1 -1
  20. package/dist/generated/instructions/burnV2.d.ts +107 -96
  21. package/dist/generated/instructions/burnV2.d.ts.map +1 -1
  22. package/dist/generated/instructions/burnV2.js +239 -136
  23. package/dist/generated/instructions/burnV2.js.map +1 -1
  24. package/dist/generated/instructions/cancelRedeem.d.ts +54 -53
  25. package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
  26. package/dist/generated/instructions/cancelRedeem.js +154 -90
  27. package/dist/generated/instructions/cancelRedeem.js.map +1 -1
  28. package/dist/generated/instructions/closeTreeV2.d.ts +64 -60
  29. package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
  30. package/dist/generated/instructions/closeTreeV2.js +152 -84
  31. package/dist/generated/instructions/closeTreeV2.js.map +1 -1
  32. package/dist/generated/instructions/collectV2.d.ts +28 -35
  33. package/dist/generated/instructions/collectV2.d.ts.map +1 -1
  34. package/dist/generated/instructions/collectV2.js +63 -60
  35. package/dist/generated/instructions/collectV2.js.map +1 -1
  36. package/dist/generated/instructions/compress.d.ts +71 -71
  37. package/dist/generated/instructions/compress.d.ts.map +1 -1
  38. package/dist/generated/instructions/compress.js +233 -116
  39. package/dist/generated/instructions/compress.js.map +1 -1
  40. package/dist/generated/instructions/createTree.d.ts +62 -59
  41. package/dist/generated/instructions/createTree.d.ts.map +1 -1
  42. package/dist/generated/instructions/createTree.js +164 -94
  43. package/dist/generated/instructions/createTree.js.map +1 -1
  44. package/dist/generated/instructions/createTreeV2.d.ts +64 -61
  45. package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
  46. package/dist/generated/instructions/createTreeV2.js +168 -100
  47. package/dist/generated/instructions/createTreeV2.js.map +1 -1
  48. package/dist/generated/instructions/decompressV1.d.ts +73 -72
  49. package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
  50. package/dist/generated/instructions/decompressV1.js +251 -128
  51. package/dist/generated/instructions/decompressV1.js.map +1 -1
  52. package/dist/generated/instructions/delegate.d.ts +73 -68
  53. package/dist/generated/instructions/delegate.d.ts.map +1 -1
  54. package/dist/generated/instructions/delegate.js +179 -107
  55. package/dist/generated/instructions/delegate.js.map +1 -1
  56. package/dist/generated/instructions/delegateAndFreezeV2.d.ts +92 -84
  57. package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
  58. package/dist/generated/instructions/delegateAndFreezeV2.js +201 -136
  59. package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
  60. package/dist/generated/instructions/delegateV2.d.ts +92 -84
  61. package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
  62. package/dist/generated/instructions/delegateV2.js +200 -134
  63. package/dist/generated/instructions/delegateV2.js.map +1 -1
  64. package/dist/generated/instructions/freezeV2.d.ts +99 -88
  65. package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
  66. package/dist/generated/instructions/freezeV2.js +209 -123
  67. package/dist/generated/instructions/freezeV2.js.map +1 -1
  68. package/dist/generated/instructions/index.d.ts +36 -44
  69. package/dist/generated/instructions/mintToCollectionV1.d.ts +94 -89
  70. package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
  71. package/dist/generated/instructions/mintToCollectionV1.js +277 -139
  72. package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
  73. package/dist/generated/instructions/mintV1.d.ts +61 -60
  74. package/dist/generated/instructions/mintV1.d.ts.map +1 -1
  75. package/dist/generated/instructions/mintV1.js +177 -97
  76. package/dist/generated/instructions/mintV1.js.map +1 -1
  77. package/dist/generated/instructions/mintV2.d.ts +86 -82
  78. package/dist/generated/instructions/mintV2.d.ts.map +1 -1
  79. package/dist/generated/instructions/mintV2.js +244 -135
  80. package/dist/generated/instructions/mintV2.js.map +1 -1
  81. package/dist/generated/instructions/redeem.d.ts +73 -68
  82. package/dist/generated/instructions/redeem.d.ts.map +1 -1
  83. package/dist/generated/instructions/redeem.js +179 -101
  84. package/dist/generated/instructions/redeem.js.map +1 -1
  85. package/dist/generated/instructions/setAndVerifyCollection.d.ts +133 -117
  86. package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
  87. package/dist/generated/instructions/setAndVerifyCollection.js +295 -151
  88. package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
  89. package/dist/generated/instructions/setCollectionV2.d.ts +125 -110
  90. package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
  91. package/dist/generated/instructions/setCollectionV2.js +257 -146
  92. package/dist/generated/instructions/setCollectionV2.js.map +1 -1
  93. package/dist/generated/instructions/setDecompressableState.d.ts +32 -39
  94. package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
  95. package/dist/generated/instructions/setDecompressableState.js +66 -69
  96. package/dist/generated/instructions/setDecompressableState.js.map +1 -1
  97. package/dist/generated/instructions/setDecompressibleState.d.ts +32 -39
  98. package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
  99. package/dist/generated/instructions/setDecompressibleState.js +66 -69
  100. package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
  101. package/dist/generated/instructions/setNonTransferableV2.d.ts +101 -90
  102. package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
  103. package/dist/generated/instructions/setNonTransferableV2.js +210 -125
  104. package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
  105. package/dist/generated/instructions/setTreeDelegate.d.ts +44 -44
  106. package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
  107. package/dist/generated/instructions/setTreeDelegate.js +127 -77
  108. package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
  109. package/dist/generated/instructions/thawAndRevokeV2.d.ts +87 -79
  110. package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
  111. package/dist/generated/instructions/thawAndRevokeV2.js +190 -124
  112. package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
  113. package/dist/generated/instructions/thawV2.d.ts +99 -88
  114. package/dist/generated/instructions/thawV2.d.ts.map +1 -1
  115. package/dist/generated/instructions/thawV2.js +209 -123
  116. package/dist/generated/instructions/thawV2.js.map +1 -1
  117. package/dist/generated/instructions/transfer.d.ts +73 -68
  118. package/dist/generated/instructions/transfer.d.ts.map +1 -1
  119. package/dist/generated/instructions/transfer.js +179 -101
  120. package/dist/generated/instructions/transfer.js.map +1 -1
  121. package/dist/generated/instructions/transferV2.d.ts +104 -93
  122. package/dist/generated/instructions/transferV2.d.ts.map +1 -1
  123. package/dist/generated/instructions/transferV2.js +220 -126
  124. package/dist/generated/instructions/transferV2.js.map +1 -1
  125. package/dist/generated/instructions/unverifyCollection.d.ts +129 -114
  126. package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
  127. package/dist/generated/instructions/unverifyCollection.js +293 -146
  128. package/dist/generated/instructions/unverifyCollection.js.map +1 -1
  129. package/dist/generated/instructions/unverifyCreator.d.ts +81 -75
  130. package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
  131. package/dist/generated/instructions/unverifyCreator.js +194 -106
  132. package/dist/generated/instructions/unverifyCreator.js.map +1 -1
  133. package/dist/generated/instructions/unverifyCreatorV2.d.ts +85 -79
  134. package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
  135. package/dist/generated/instructions/unverifyCreatorV2.js +198 -118
  136. package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
  137. package/dist/generated/instructions/updateAssetDataV2.d.ts +108 -95
  138. package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
  139. package/dist/generated/instructions/updateAssetDataV2.js +215 -136
  140. package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
  141. package/dist/generated/instructions/updateMetadata.d.ts +106 -96
  142. package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
  143. package/dist/generated/instructions/updateMetadata.js +243 -135
  144. package/dist/generated/instructions/updateMetadata.js.map +1 -1
  145. package/dist/generated/instructions/updateMetadataV2.d.ts +103 -91
  146. package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
  147. package/dist/generated/instructions/updateMetadataV2.js +212 -123
  148. package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
  149. package/dist/generated/instructions/verifyCollection.d.ts +129 -114
  150. package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
  151. package/dist/generated/instructions/verifyCollection.js +293 -146
  152. package/dist/generated/instructions/verifyCollection.js.map +1 -1
  153. package/dist/generated/instructions/verifyCreator.d.ts +81 -75
  154. package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
  155. package/dist/generated/instructions/verifyCreator.js +193 -107
  156. package/dist/generated/instructions/verifyCreator.js.map +1 -1
  157. package/dist/generated/instructions/verifyCreatorV2.d.ts +85 -79
  158. package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
  159. package/dist/generated/instructions/verifyCreatorV2.js +198 -118
  160. package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
  161. package/dist/generated/pdas/assetId.d.ts +16 -0
  162. package/dist/generated/pdas/assetId.d.ts.map +1 -0
  163. package/dist/generated/pdas/assetId.js +18 -0
  164. package/dist/generated/pdas/assetId.js.map +1 -0
  165. package/dist/generated/pdas/bubblegumSigner.d.ts +10 -0
  166. package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -0
  167. package/dist/generated/pdas/bubblegumSigner.js +14 -0
  168. package/dist/generated/pdas/bubblegumSigner.js.map +1 -0
  169. package/dist/generated/pdas/index.d.ts +7 -0
  170. package/dist/generated/pdas/masterEdition.d.ts +14 -0
  171. package/dist/generated/pdas/masterEdition.d.ts.map +1 -0
  172. package/dist/generated/pdas/masterEdition.js +19 -0
  173. package/dist/generated/pdas/masterEdition.js.map +1 -0
  174. package/dist/generated/pdas/metadata.d.ts +14 -0
  175. package/dist/generated/pdas/metadata.d.ts.map +1 -0
  176. package/dist/generated/pdas/metadata.js +18 -0
  177. package/dist/generated/pdas/metadata.js.map +1 -0
  178. package/dist/generated/pdas/mintAuthority.d.ts +14 -0
  179. package/dist/generated/pdas/mintAuthority.d.ts.map +1 -0
  180. package/dist/generated/pdas/mintAuthority.js +14 -0
  181. package/dist/generated/pdas/mintAuthority.js.map +1 -0
  182. package/dist/generated/pdas/treeConfig.d.ts +14 -0
  183. package/dist/generated/pdas/treeConfig.d.ts.map +1 -0
  184. package/dist/generated/pdas/treeConfig.js +14 -0
  185. package/dist/generated/pdas/treeConfig.js.map +1 -0
  186. package/dist/generated/pdas/voucher.d.ts +16 -0
  187. package/dist/generated/pdas/voucher.d.ts.map +1 -0
  188. package/dist/generated/pdas/voucher.js +18 -0
  189. package/dist/generated/pdas/voucher.js.map +1 -0
  190. package/dist/generated/programs/bubblegum.d.ts +186 -143
  191. package/dist/generated/programs/bubblegum.d.ts.map +1 -1
  192. package/dist/generated/programs/bubblegum.js +839 -561
  193. package/dist/generated/programs/bubblegum.js.map +1 -1
  194. package/dist/generated/programs/index.d.ts +2 -9
  195. package/dist/generated/programs/mplTokenMetadata.d.ts +20 -0
  196. package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -0
  197. package/dist/generated/programs/mplTokenMetadata.js +17 -0
  198. package/dist/generated/programs/mplTokenMetadata.js.map +1 -0
  199. package/dist/generated/types/assetDataSchema.d.ts +13 -16
  200. package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
  201. package/dist/generated/types/assetDataSchema.js +16 -19
  202. package/dist/generated/types/assetDataSchema.js.map +1 -1
  203. package/dist/generated/types/bubblegumEventType.d.ts +12 -15
  204. package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
  205. package/dist/generated/types/bubblegumEventType.js +15 -18
  206. package/dist/generated/types/bubblegumEventType.js.map +1 -1
  207. package/dist/generated/types/collection.d.ts +12 -15
  208. package/dist/generated/types/collection.d.ts.map +1 -1
  209. package/dist/generated/types/collection.js +11 -20
  210. package/dist/generated/types/collection.js.map +1 -1
  211. package/dist/generated/types/creator.d.ts +18 -21
  212. package/dist/generated/types/creator.d.ts.map +1 -1
  213. package/dist/generated/types/creator.js +19 -22
  214. package/dist/generated/types/creator.js.map +1 -1
  215. package/dist/generated/types/decompressibleState.d.ts +12 -15
  216. package/dist/generated/types/decompressibleState.d.ts.map +1 -1
  217. package/dist/generated/types/decompressibleState.js +15 -18
  218. package/dist/generated/types/decompressibleState.js.map +1 -1
  219. package/dist/generated/types/index.d.ts +15 -23
  220. package/dist/generated/types/instructionName.d.ts +45 -48
  221. package/dist/generated/types/instructionName.d.ts.map +1 -1
  222. package/dist/generated/types/instructionName.js +48 -51
  223. package/dist/generated/types/instructionName.js.map +1 -1
  224. package/dist/generated/types/leafSchema.d.ts +48 -51
  225. package/dist/generated/types/leafSchema.d.ts.map +1 -1
  226. package/dist/generated/types/leafSchema.js +55 -72
  227. package/dist/generated/types/leafSchema.js.map +1 -1
  228. package/dist/generated/types/metadataArgs.d.ts +59 -58
  229. package/dist/generated/types/metadataArgs.d.ts.map +1 -1
  230. package/dist/generated/types/metadataArgs.js +42 -41
  231. package/dist/generated/types/metadataArgs.js.map +1 -1
  232. package/dist/generated/types/metadataArgsV2.d.ts +48 -50
  233. package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
  234. package/dist/generated/types/metadataArgsV2.js +33 -35
  235. package/dist/generated/types/metadataArgsV2.js.map +1 -1
  236. package/dist/generated/types/tokenProgramVersion.d.ts +12 -15
  237. package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
  238. package/dist/generated/types/tokenProgramVersion.js +15 -18
  239. package/dist/generated/types/tokenProgramVersion.js.map +1 -1
  240. package/dist/generated/types/tokenStandard.d.ts +14 -17
  241. package/dist/generated/types/tokenStandard.d.ts.map +1 -1
  242. package/dist/generated/types/tokenStandard.js +17 -20
  243. package/dist/generated/types/tokenStandard.js.map +1 -1
  244. package/dist/generated/types/updateArgs.d.ts +25 -28
  245. package/dist/generated/types/updateArgs.d.ts.map +1 -1
  246. package/dist/generated/types/updateArgs.js +28 -49
  247. package/dist/generated/types/updateArgs.js.map +1 -1
  248. package/dist/generated/types/useMethod.d.ts +13 -16
  249. package/dist/generated/types/useMethod.d.ts.map +1 -1
  250. package/dist/generated/types/useMethod.js +16 -19
  251. package/dist/generated/types/useMethod.js.map +1 -1
  252. package/dist/generated/types/uses.d.ts +17 -20
  253. package/dist/generated/types/uses.d.ts.map +1 -1
  254. package/dist/generated/types/uses.js +20 -23
  255. package/dist/generated/types/uses.js.map +1 -1
  256. package/dist/generated/types/version.d.ts +12 -15
  257. package/dist/generated/types/version.d.ts.map +1 -1
  258. package/dist/generated/types/version.js +15 -18
  259. package/dist/generated/types/version.js.map +1 -1
  260. package/dist/index.d.ts +64 -8
  261. package/dist/index.js +64 -8
  262. package/package.json +7 -5
  263. package/src/generated/accounts/treeConfig.ts +22 -0
  264. package/src/generated/accounts/voucher.ts +22 -0
  265. package/src/generated/errors/bubblegum.ts +1 -1
  266. package/src/generated/index.ts +1 -0
  267. package/src/generated/instructions/burn.ts +155 -11
  268. package/src/generated/instructions/burnV2.ts +226 -16
  269. package/src/generated/instructions/cancelRedeem.ts +151 -11
  270. package/src/generated/instructions/closeTreeV2.ts +150 -11
  271. package/src/generated/instructions/collectV2.ts +3 -3
  272. package/src/generated/instructions/compress.ts +219 -18
  273. package/src/generated/instructions/createTree.ts +153 -11
  274. package/src/generated/instructions/createTreeV2.ts +154 -11
  275. package/src/generated/instructions/decompressV1.ts +258 -16
  276. package/src/generated/instructions/delegate.ts +170 -12
  277. package/src/generated/instructions/delegateAndFreezeV2.ts +184 -13
  278. package/src/generated/instructions/delegateV2.ts +184 -13
  279. package/src/generated/instructions/freezeV2.ts +188 -14
  280. package/src/generated/instructions/mintToCollectionV1.ts +296 -21
  281. package/src/generated/instructions/mintV1.ts +169 -13
  282. package/src/generated/instructions/mintV2.ts +231 -17
  283. package/src/generated/instructions/redeem.ts +164 -12
  284. package/src/generated/instructions/setAndVerifyCollection.ts +307 -21
  285. package/src/generated/instructions/setCollectionV2.ts +253 -19
  286. package/src/generated/instructions/setDecompressableState.ts +3 -3
  287. package/src/generated/instructions/setDecompressibleState.ts +3 -3
  288. package/src/generated/instructions/setNonTransferableV2.ts +189 -14
  289. package/src/generated/instructions/setTreeDelegate.ts +105 -7
  290. package/src/generated/instructions/thawAndRevokeV2.ts +168 -12
  291. package/src/generated/instructions/thawV2.ts +188 -14
  292. package/src/generated/instructions/transfer.ts +164 -12
  293. package/src/generated/instructions/transferV2.ts +198 -15
  294. package/src/generated/instructions/unverifyCollection.ts +306 -21
  295. package/src/generated/instructions/unverifyCreator.ts +174 -13
  296. package/src/generated/instructions/unverifyCreatorV2.ts +176 -13
  297. package/src/generated/instructions/updateAssetDataV2.ts +190 -14
  298. package/src/generated/instructions/updateMetadata.ts +233 -17
  299. package/src/generated/instructions/updateMetadataV2.ts +189 -14
  300. package/src/generated/instructions/verifyCollection.ts +306 -21
  301. package/src/generated/instructions/verifyCreator.ts +174 -13
  302. package/src/generated/instructions/verifyCreatorV2.ts +176 -13
  303. package/src/generated/pdas/assetId.ts +40 -0
  304. package/src/generated/pdas/bubblegumSigner.ts +23 -0
  305. package/{dist/generated/accounts/index.js → src/generated/pdas/index.ts} +6 -1
  306. package/src/generated/pdas/masterEdition.ts +38 -0
  307. package/src/generated/pdas/metadata.ts +37 -0
  308. package/src/generated/pdas/mintAuthority.ts +29 -0
  309. package/src/generated/pdas/treeConfig.ts +29 -0
  310. package/src/generated/pdas/voucher.ts +40 -0
  311. package/src/generated/programs/bubblegum.ts +208 -165
  312. package/src/generated/programs/index.ts +1 -0
  313. package/src/generated/programs/mplTokenMetadata.ts +42 -0
  314. package/dist/.tsbuildinfo +0 -1
  315. package/dist/generated/accounts/index.d.ts.map +0 -1
  316. package/dist/generated/accounts/index.js.map +0 -1
  317. package/dist/generated/errors/index.d.ts.map +0 -1
  318. package/dist/generated/errors/index.js +0 -9
  319. package/dist/generated/errors/index.js.map +0 -1
  320. package/dist/generated/index.d.ts.map +0 -1
  321. package/dist/generated/index.js +0 -13
  322. package/dist/generated/index.js.map +0 -1
  323. package/dist/generated/instructions/index.d.ts.map +0 -1
  324. package/dist/generated/instructions/index.js +0 -44
  325. package/dist/generated/instructions/index.js.map +0 -1
  326. package/dist/generated/programs/index.d.ts.map +0 -1
  327. package/dist/generated/programs/index.js +0 -9
  328. package/dist/generated/programs/index.js.map +0 -1
  329. package/dist/generated/types/index.d.ts.map +0 -1
  330. package/dist/generated/types/index.js +0 -23
  331. package/dist/generated/types/index.js.map +0 -1
  332. package/dist/index.d.ts.map +0 -1
  333. package/dist/index.js.map +0 -1
@@ -1,153 +1,300 @@
1
- /**
2
- * This code was AUTOGENERATED using the Codama library.
3
- * Please DO NOT EDIT THIS FILE, instead use visitors
4
- * to add features, then rerun Codama to update it.
5
- *
6
- * @see https://github.com/codama-idl/codama
7
- */
8
- import { combineCodec, fixDecoderSize, fixEncoderSize, getArrayDecoder, getArrayEncoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU8Decoder, getU8Encoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, transformEncoder, } from "@solana/kit";
9
- import { getAccountMetaFactory } from "@solana/program-client-core";
10
- import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
11
- import { getMetadataArgsDecoder, getMetadataArgsEncoder, } from "../types/index.js";
12
- export const VERIFY_COLLECTION_DISCRIMINATOR = new Uint8Array([56, 113, 101, 253, 79, 55, 122, 169]);
13
- export function getVerifyCollectionDiscriminatorBytes() {
14
- return fixEncoderSize(getBytesEncoder(), 8).encode(VERIFY_COLLECTION_DISCRIMINATOR);
1
+ import { findBubblegumSignerPda } from "../pdas/bubblegumSigner.js";
2
+ import { findMasterEditionPda } from "../pdas/masterEdition.js";
3
+ import { findMetadataPda } from "../pdas/metadata.js";
4
+ import { findTreeConfigPda } from "../pdas/treeConfig.js";
5
+ import { getMetadataArgsDecoder, getMetadataArgsEncoder } from "../types/metadataArgs.js";
6
+ import "../programs/bubblegum.js";
7
+ import { SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, address, combineCodec, fixDecoderSize, fixEncoderSize, getArrayDecoder, getArrayEncoder, getBytesDecoder, getBytesEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder } from "@solana/kit";
8
+ import { getAccountMetaFactory, getAddressFromResolvedInstructionAccount } from "@solana/program-client-core";
9
+ //#region src/generated/instructions/verifyCollection.ts
10
+ const VERIFY_COLLECTION_DISCRIMINATOR = new Uint8Array([
11
+ 56,
12
+ 113,
13
+ 101,
14
+ 253,
15
+ 79,
16
+ 55,
17
+ 122,
18
+ 169
19
+ ]);
20
+ function getVerifyCollectionDiscriminatorBytes() {
21
+ return fixEncoderSize(getBytesEncoder(), 8).encode(VERIFY_COLLECTION_DISCRIMINATOR);
15
22
  }
16
- export function getVerifyCollectionInstructionDataEncoder() {
17
- return transformEncoder(getStructEncoder([
18
- ["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
19
- ["root", getArrayEncoder(getU8Encoder(), { size: 32 })],
20
- ["dataHash", getArrayEncoder(getU8Encoder(), { size: 32 })],
21
- ["creatorHash", getArrayEncoder(getU8Encoder(), { size: 32 })],
22
- ["nonce", getU64Encoder()],
23
- ["index", getU32Encoder()],
24
- ["message", getMetadataArgsEncoder()],
25
- ]), (value) => ({ ...value, discriminator: VERIFY_COLLECTION_DISCRIMINATOR }));
23
+ function getVerifyCollectionInstructionDataEncoder() {
24
+ return transformEncoder(getStructEncoder([
25
+ ["discriminator", fixEncoderSize(getBytesEncoder(), 8)],
26
+ ["root", getArrayEncoder(getU8Encoder(), { size: 32 })],
27
+ ["dataHash", getArrayEncoder(getU8Encoder(), { size: 32 })],
28
+ ["creatorHash", getArrayEncoder(getU8Encoder(), { size: 32 })],
29
+ ["nonce", getU64Encoder()],
30
+ ["index", getU32Encoder()],
31
+ ["message", getMetadataArgsEncoder()]
32
+ ]), (value) => ({
33
+ ...value,
34
+ discriminator: VERIFY_COLLECTION_DISCRIMINATOR
35
+ }));
26
36
  }
27
- export function getVerifyCollectionInstructionDataDecoder() {
28
- return getStructDecoder([
29
- ["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
30
- ["root", getArrayDecoder(getU8Decoder(), { size: 32 })],
31
- ["dataHash", getArrayDecoder(getU8Decoder(), { size: 32 })],
32
- ["creatorHash", getArrayDecoder(getU8Decoder(), { size: 32 })],
33
- ["nonce", getU64Decoder()],
34
- ["index", getU32Decoder()],
35
- ["message", getMetadataArgsDecoder()],
36
- ]);
37
+ function getVerifyCollectionInstructionDataDecoder() {
38
+ return getStructDecoder([
39
+ ["discriminator", fixDecoderSize(getBytesDecoder(), 8)],
40
+ ["root", getArrayDecoder(getU8Decoder(), { size: 32 })],
41
+ ["dataHash", getArrayDecoder(getU8Decoder(), { size: 32 })],
42
+ ["creatorHash", getArrayDecoder(getU8Decoder(), { size: 32 })],
43
+ ["nonce", getU64Decoder()],
44
+ ["index", getU32Decoder()],
45
+ ["message", getMetadataArgsDecoder()]
46
+ ]);
37
47
  }
38
- export function getVerifyCollectionInstructionDataCodec() {
39
- return combineCodec(getVerifyCollectionInstructionDataEncoder(), getVerifyCollectionInstructionDataDecoder());
48
+ function getVerifyCollectionInstructionDataCodec() {
49
+ return combineCodec(getVerifyCollectionInstructionDataEncoder(), getVerifyCollectionInstructionDataDecoder());
40
50
  }
41
- export function getVerifyCollectionInstruction(input, config) {
42
- // Program address.
43
- const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
44
- // Original accounts.
45
- const originalAccounts = {
46
- treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
47
- leafOwner: { value: input.leafOwner ?? null, isWritable: false },
48
- leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },
49
- merkleTree: { value: input.merkleTree ?? null, isWritable: true },
50
- payer: { value: input.payer ?? null, isWritable: false },
51
- treeDelegate: { value: input.treeDelegate ?? null, isWritable: false },
52
- collectionAuthority: {
53
- value: input.collectionAuthority ?? null,
54
- isWritable: false,
55
- },
56
- collectionAuthorityRecordPda: {
57
- value: input.collectionAuthorityRecordPda ?? null,
58
- isWritable: false,
59
- },
60
- collectionMint: { value: input.collectionMint ?? null, isWritable: false },
61
- collectionMetadata: {
62
- value: input.collectionMetadata ?? null,
63
- isWritable: true,
64
- },
65
- editionAccount: { value: input.editionAccount ?? null, isWritable: false },
66
- bubblegumSigner: {
67
- value: input.bubblegumSigner ?? null,
68
- isWritable: false,
69
- },
70
- logWrapper: { value: input.logWrapper ?? null, isWritable: false },
71
- compressionProgram: {
72
- value: input.compressionProgram ?? null,
73
- isWritable: false,
74
- },
75
- tokenMetadataProgram: {
76
- value: input.tokenMetadataProgram ?? null,
77
- isWritable: false,
78
- },
79
- systemProgram: { value: input.systemProgram ?? null, isWritable: false },
80
- };
81
- const accounts = originalAccounts;
82
- // Original args.
83
- const args = { ...input };
84
- // Resolve default values.
85
- if (!accounts.tokenMetadataProgram.value) {
86
- accounts.tokenMetadataProgram.value =
87
- "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";
88
- }
89
- if (!accounts.systemProgram.value) {
90
- accounts.systemProgram.value =
91
- "11111111111111111111111111111111";
92
- }
93
- const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
94
- return Object.freeze({
95
- accounts: [
96
- getAccountMeta("treeAuthority", accounts.treeAuthority),
97
- getAccountMeta("leafOwner", accounts.leafOwner),
98
- getAccountMeta("leafDelegate", accounts.leafDelegate),
99
- getAccountMeta("merkleTree", accounts.merkleTree),
100
- getAccountMeta("payer", accounts.payer),
101
- getAccountMeta("treeDelegate", accounts.treeDelegate),
102
- getAccountMeta("collectionAuthority", accounts.collectionAuthority),
103
- getAccountMeta("collectionAuthorityRecordPda", accounts.collectionAuthorityRecordPda),
104
- getAccountMeta("collectionMint", accounts.collectionMint),
105
- getAccountMeta("collectionMetadata", accounts.collectionMetadata),
106
- getAccountMeta("editionAccount", accounts.editionAccount),
107
- getAccountMeta("bubblegumSigner", accounts.bubblegumSigner),
108
- getAccountMeta("logWrapper", accounts.logWrapper),
109
- getAccountMeta("compressionProgram", accounts.compressionProgram),
110
- getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
111
- getAccountMeta("systemProgram", accounts.systemProgram),
112
- ],
113
- data: getVerifyCollectionInstructionDataEncoder().encode(args),
114
- programAddress,
115
- });
51
+ async function getVerifyCollectionInstructionAsync(input, config) {
52
+ const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
53
+ const accounts = {
54
+ treeAuthority: {
55
+ value: input.treeAuthority ?? null,
56
+ isWritable: false
57
+ },
58
+ leafOwner: {
59
+ value: input.leafOwner ?? null,
60
+ isWritable: false
61
+ },
62
+ leafDelegate: {
63
+ value: input.leafDelegate ?? null,
64
+ isWritable: false
65
+ },
66
+ merkleTree: {
67
+ value: input.merkleTree ?? null,
68
+ isWritable: true
69
+ },
70
+ payer: {
71
+ value: input.payer ?? null,
72
+ isWritable: false
73
+ },
74
+ treeDelegate: {
75
+ value: input.treeDelegate ?? null,
76
+ isWritable: false
77
+ },
78
+ collectionAuthority: {
79
+ value: input.collectionAuthority ?? null,
80
+ isWritable: false
81
+ },
82
+ collectionAuthorityRecordPda: {
83
+ value: input.collectionAuthorityRecordPda ?? null,
84
+ isWritable: false
85
+ },
86
+ collectionMint: {
87
+ value: input.collectionMint ?? null,
88
+ isWritable: false
89
+ },
90
+ collectionMetadata: {
91
+ value: input.collectionMetadata ?? null,
92
+ isWritable: true
93
+ },
94
+ editionAccount: {
95
+ value: input.editionAccount ?? null,
96
+ isWritable: false
97
+ },
98
+ bubblegumSigner: {
99
+ value: input.bubblegumSigner ?? null,
100
+ isWritable: false
101
+ },
102
+ logWrapper: {
103
+ value: input.logWrapper ?? null,
104
+ isWritable: false
105
+ },
106
+ compressionProgram: {
107
+ value: input.compressionProgram ?? null,
108
+ isWritable: false
109
+ },
110
+ tokenMetadataProgram: {
111
+ value: input.tokenMetadataProgram ?? null,
112
+ isWritable: false
113
+ },
114
+ systemProgram: {
115
+ value: input.systemProgram ?? null,
116
+ isWritable: false
117
+ }
118
+ };
119
+ const args = { ...input };
120
+ if (!accounts.treeAuthority.value) accounts.treeAuthority.value = await findTreeConfigPda({ merkleTree: getAddressFromResolvedInstructionAccount("merkleTree", accounts.merkleTree.value) });
121
+ if (!accounts.collectionAuthorityRecordPda.value) {
122
+ accounts.collectionAuthorityRecordPda.value = programAddress;
123
+ accounts.collectionAuthorityRecordPda.isWritable = false;
124
+ }
125
+ if (!accounts.collectionMetadata.value) accounts.collectionMetadata.value = await findMetadataPda({
126
+ programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
127
+ mint: getAddressFromResolvedInstructionAccount("collectionMint", accounts.collectionMint.value)
128
+ });
129
+ if (!accounts.editionAccount.value) accounts.editionAccount.value = await findMasterEditionPda({
130
+ programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
131
+ mint: getAddressFromResolvedInstructionAccount("collectionMint", accounts.collectionMint.value)
132
+ });
133
+ if (!accounts.bubblegumSigner.value) accounts.bubblegumSigner.value = await findBubblegumSignerPda();
134
+ if (!accounts.logWrapper.value) accounts.logWrapper.value = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV";
135
+ if (!accounts.compressionProgram.value) accounts.compressionProgram.value = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK";
136
+ if (!accounts.tokenMetadataProgram.value) accounts.tokenMetadataProgram.value = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";
137
+ if (!accounts.systemProgram.value) accounts.systemProgram.value = "11111111111111111111111111111111";
138
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
139
+ return Object.freeze({
140
+ accounts: [
141
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
142
+ getAccountMeta("leafOwner", accounts.leafOwner),
143
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
144
+ getAccountMeta("merkleTree", accounts.merkleTree),
145
+ getAccountMeta("payer", accounts.payer),
146
+ getAccountMeta("treeDelegate", accounts.treeDelegate),
147
+ getAccountMeta("collectionAuthority", accounts.collectionAuthority),
148
+ getAccountMeta("collectionAuthorityRecordPda", accounts.collectionAuthorityRecordPda),
149
+ getAccountMeta("collectionMint", accounts.collectionMint),
150
+ getAccountMeta("collectionMetadata", accounts.collectionMetadata),
151
+ getAccountMeta("editionAccount", accounts.editionAccount),
152
+ getAccountMeta("bubblegumSigner", accounts.bubblegumSigner),
153
+ getAccountMeta("logWrapper", accounts.logWrapper),
154
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
155
+ getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
156
+ getAccountMeta("systemProgram", accounts.systemProgram)
157
+ ],
158
+ data: getVerifyCollectionInstructionDataEncoder().encode(args),
159
+ programAddress
160
+ });
116
161
  }
117
- export function parseVerifyCollectionInstruction(instruction) {
118
- if (instruction.accounts.length < 16) {
119
- throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, {
120
- actualAccountMetas: instruction.accounts.length,
121
- expectedAccountMetas: 16,
122
- });
123
- }
124
- let accountIndex = 0;
125
- const getNextAccount = () => {
126
- const accountMeta = instruction.accounts[accountIndex];
127
- accountIndex += 1;
128
- return accountMeta;
129
- };
130
- return {
131
- programAddress: instruction.programAddress,
132
- accounts: {
133
- treeAuthority: getNextAccount(),
134
- leafOwner: getNextAccount(),
135
- leafDelegate: getNextAccount(),
136
- merkleTree: getNextAccount(),
137
- payer: getNextAccount(),
138
- treeDelegate: getNextAccount(),
139
- collectionAuthority: getNextAccount(),
140
- collectionAuthorityRecordPda: getNextAccount(),
141
- collectionMint: getNextAccount(),
142
- collectionMetadata: getNextAccount(),
143
- editionAccount: getNextAccount(),
144
- bubblegumSigner: getNextAccount(),
145
- logWrapper: getNextAccount(),
146
- compressionProgram: getNextAccount(),
147
- tokenMetadataProgram: getNextAccount(),
148
- systemProgram: getNextAccount(),
149
- },
150
- data: getVerifyCollectionInstructionDataDecoder().decode(instruction.data),
151
- };
162
+ function getVerifyCollectionInstruction(input, config) {
163
+ const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
164
+ const accounts = {
165
+ treeAuthority: {
166
+ value: input.treeAuthority ?? null,
167
+ isWritable: false
168
+ },
169
+ leafOwner: {
170
+ value: input.leafOwner ?? null,
171
+ isWritable: false
172
+ },
173
+ leafDelegate: {
174
+ value: input.leafDelegate ?? null,
175
+ isWritable: false
176
+ },
177
+ merkleTree: {
178
+ value: input.merkleTree ?? null,
179
+ isWritable: true
180
+ },
181
+ payer: {
182
+ value: input.payer ?? null,
183
+ isWritable: false
184
+ },
185
+ treeDelegate: {
186
+ value: input.treeDelegate ?? null,
187
+ isWritable: false
188
+ },
189
+ collectionAuthority: {
190
+ value: input.collectionAuthority ?? null,
191
+ isWritable: false
192
+ },
193
+ collectionAuthorityRecordPda: {
194
+ value: input.collectionAuthorityRecordPda ?? null,
195
+ isWritable: false
196
+ },
197
+ collectionMint: {
198
+ value: input.collectionMint ?? null,
199
+ isWritable: false
200
+ },
201
+ collectionMetadata: {
202
+ value: input.collectionMetadata ?? null,
203
+ isWritable: true
204
+ },
205
+ editionAccount: {
206
+ value: input.editionAccount ?? null,
207
+ isWritable: false
208
+ },
209
+ bubblegumSigner: {
210
+ value: input.bubblegumSigner ?? null,
211
+ isWritable: false
212
+ },
213
+ logWrapper: {
214
+ value: input.logWrapper ?? null,
215
+ isWritable: false
216
+ },
217
+ compressionProgram: {
218
+ value: input.compressionProgram ?? null,
219
+ isWritable: false
220
+ },
221
+ tokenMetadataProgram: {
222
+ value: input.tokenMetadataProgram ?? null,
223
+ isWritable: false
224
+ },
225
+ systemProgram: {
226
+ value: input.systemProgram ?? null,
227
+ isWritable: false
228
+ }
229
+ };
230
+ const args = { ...input };
231
+ if (!accounts.collectionAuthorityRecordPda.value) {
232
+ accounts.collectionAuthorityRecordPda.value = programAddress;
233
+ accounts.collectionAuthorityRecordPda.isWritable = false;
234
+ }
235
+ if (!accounts.logWrapper.value) accounts.logWrapper.value = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV";
236
+ if (!accounts.compressionProgram.value) accounts.compressionProgram.value = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK";
237
+ if (!accounts.tokenMetadataProgram.value) accounts.tokenMetadataProgram.value = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s";
238
+ if (!accounts.systemProgram.value) accounts.systemProgram.value = "11111111111111111111111111111111";
239
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
240
+ return Object.freeze({
241
+ accounts: [
242
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
243
+ getAccountMeta("leafOwner", accounts.leafOwner),
244
+ getAccountMeta("leafDelegate", accounts.leafDelegate),
245
+ getAccountMeta("merkleTree", accounts.merkleTree),
246
+ getAccountMeta("payer", accounts.payer),
247
+ getAccountMeta("treeDelegate", accounts.treeDelegate),
248
+ getAccountMeta("collectionAuthority", accounts.collectionAuthority),
249
+ getAccountMeta("collectionAuthorityRecordPda", accounts.collectionAuthorityRecordPda),
250
+ getAccountMeta("collectionMint", accounts.collectionMint),
251
+ getAccountMeta("collectionMetadata", accounts.collectionMetadata),
252
+ getAccountMeta("editionAccount", accounts.editionAccount),
253
+ getAccountMeta("bubblegumSigner", accounts.bubblegumSigner),
254
+ getAccountMeta("logWrapper", accounts.logWrapper),
255
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
256
+ getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
257
+ getAccountMeta("systemProgram", accounts.systemProgram)
258
+ ],
259
+ data: getVerifyCollectionInstructionDataEncoder().encode(args),
260
+ programAddress
261
+ });
152
262
  }
263
+ function parseVerifyCollectionInstruction(instruction) {
264
+ if (instruction.accounts.length < 16) throw new SolanaError(SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, {
265
+ actualAccountMetas: instruction.accounts.length,
266
+ expectedAccountMetas: 16
267
+ });
268
+ let accountIndex = 0;
269
+ const getNextAccount = () => {
270
+ const accountMeta = instruction.accounts[accountIndex];
271
+ accountIndex += 1;
272
+ return accountMeta;
273
+ };
274
+ return {
275
+ programAddress: instruction.programAddress,
276
+ accounts: {
277
+ treeAuthority: getNextAccount(),
278
+ leafOwner: getNextAccount(),
279
+ leafDelegate: getNextAccount(),
280
+ merkleTree: getNextAccount(),
281
+ payer: getNextAccount(),
282
+ treeDelegate: getNextAccount(),
283
+ collectionAuthority: getNextAccount(),
284
+ collectionAuthorityRecordPda: getNextAccount(),
285
+ collectionMint: getNextAccount(),
286
+ collectionMetadata: getNextAccount(),
287
+ editionAccount: getNextAccount(),
288
+ bubblegumSigner: getNextAccount(),
289
+ logWrapper: getNextAccount(),
290
+ compressionProgram: getNextAccount(),
291
+ tokenMetadataProgram: getNextAccount(),
292
+ systemProgram: getNextAccount()
293
+ },
294
+ data: getVerifyCollectionInstructionDataDecoder().decode(instruction.data)
295
+ };
296
+ }
297
+ //#endregion
298
+ export { VERIFY_COLLECTION_DISCRIMINATOR, getVerifyCollectionDiscriminatorBytes, getVerifyCollectionInstruction, getVerifyCollectionInstructionAsync, getVerifyCollectionInstructionDataCodec, getVerifyCollectionInstructionDataDecoder, getVerifyCollectionInstructionDataEncoder, parseVerifyCollectionInstruction };
299
+
153
300
  //# sourceMappingURL=verifyCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verifyCollection.js","sourceRoot":"","sources":["../../../src/generated/instructions/verifyCollection.ts"],"names":[],"mappings":"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","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 ReadonlyAccount,\n ReadonlySignerAccount,\n ReadonlyUint8Array,\n TransactionSigner,\n WritableAccount,\n} from \"@solana/kit\";\nimport type { ResolvedInstructionAccount } from \"@solana/program-client-core\";\nimport type { MetadataArgs, MetadataArgsArgs } from \"../types/index.js\";\nimport {\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\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 { getAccountMetaFactory } from \"@solana/program-client-core\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\nimport {\n getMetadataArgsDecoder,\n getMetadataArgsEncoder,\n} from \"../types/index.js\";\n\nexport const VERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([56, 113, 101, 253, 79, 55, 122, 169]);\n\nexport function getVerifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n VERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type VerifyCollectionInstruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta = string,\n TAccountLeafOwner extends string | AccountMeta = string,\n TAccountLeafDelegate extends string | AccountMeta = string,\n TAccountMerkleTree extends string | AccountMeta = string,\n TAccountPayer extends string | AccountMeta = string,\n TAccountTreeDelegate extends string | AccountMeta = string,\n TAccountCollectionAuthority extends string | AccountMeta = string,\n TAccountCollectionAuthorityRecordPda extends string | AccountMeta = string,\n TAccountCollectionMint extends string | AccountMeta = string,\n TAccountCollectionMetadata extends string | AccountMeta = string,\n TAccountEditionAccount extends string | AccountMeta = string,\n TAccountBubblegumSigner extends string | AccountMeta = string,\n TAccountLogWrapper extends string | AccountMeta = string,\n TAccountCompressionProgram extends string | AccountMeta = string,\n TAccountTokenMetadataProgram extends\n | string\n | AccountMeta = \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\",\n TAccountSystemProgram extends\n | string\n | AccountMeta = \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? ReadonlyAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountLeafOwner extends string\n ? ReadonlyAccount<TAccountLeafOwner>\n : TAccountLeafOwner,\n TAccountLeafDelegate extends string\n ? ReadonlyAccount<TAccountLeafDelegate>\n : TAccountLeafDelegate,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountPayer extends string\n ? ReadonlySignerAccount<TAccountPayer> &\n AccountSignerMeta<TAccountPayer>\n : TAccountPayer,\n TAccountTreeDelegate extends string\n ? ReadonlyAccount<TAccountTreeDelegate>\n : TAccountTreeDelegate,\n TAccountCollectionAuthority extends string\n ? ReadonlySignerAccount<TAccountCollectionAuthority> &\n AccountSignerMeta<TAccountCollectionAuthority>\n : TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda extends string\n ? ReadonlyAccount<TAccountCollectionAuthorityRecordPda>\n : TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint extends string\n ? ReadonlyAccount<TAccountCollectionMint>\n : TAccountCollectionMint,\n TAccountCollectionMetadata extends string\n ? WritableAccount<TAccountCollectionMetadata>\n : TAccountCollectionMetadata,\n TAccountEditionAccount extends string\n ? ReadonlyAccount<TAccountEditionAccount>\n : TAccountEditionAccount,\n TAccountBubblegumSigner extends string\n ? ReadonlyAccount<TAccountBubblegumSigner>\n : TAccountBubblegumSigner,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountTokenMetadataProgram extends string\n ? ReadonlyAccount<TAccountTokenMetadataProgram>\n : TAccountTokenMetadataProgram,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport interface VerifyCollectionInstructionData {\n discriminator: ReadonlyUint8Array;\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: bigint;\n index: number;\n message: MetadataArgs;\n}\n\nexport interface VerifyCollectionInstructionDataArgs {\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: number | bigint;\n index: number;\n message: MetadataArgsArgs;\n}\n\nexport function getVerifyCollectionInstructionDataEncoder(): Encoder<VerifyCollectionInstructionDataArgs> {\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 [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n [\"message\", getMetadataArgsEncoder()],\n ]),\n (value) => ({ ...value, discriminator: VERIFY_COLLECTION_DISCRIMINATOR }),\n );\n}\n\nexport function getVerifyCollectionInstructionDataDecoder(): Decoder<VerifyCollectionInstructionData> {\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 [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n [\"message\", getMetadataArgsDecoder()],\n ]);\n}\n\nexport function getVerifyCollectionInstructionDataCodec(): Codec<\n VerifyCollectionInstructionDataArgs,\n VerifyCollectionInstructionData\n> {\n return combineCodec(\n getVerifyCollectionInstructionDataEncoder(),\n getVerifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport interface VerifyCollectionInput<\n TAccountTreeAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountPayer extends string = string,\n TAccountTreeDelegate extends string = string,\n TAccountCollectionAuthority extends string = string,\n TAccountCollectionAuthorityRecordPda extends string = string,\n TAccountCollectionMint extends string = string,\n TAccountCollectionMetadata extends string = string,\n TAccountEditionAccount extends string = string,\n TAccountBubblegumSigner extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountTokenMetadataProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority: Address<TAccountTreeAuthority>;\n leafOwner: Address<TAccountLeafOwner>;\n leafDelegate: Address<TAccountLeafDelegate>;\n merkleTree: Address<TAccountMerkleTree>;\n payer: TransactionSigner<TAccountPayer>;\n /**\n * This account is checked to be a signer in\n * the case of `set_and_verify_collection` where\n * we are actually changing the NFT metadata.\n */\n treeDelegate: Address<TAccountTreeDelegate>;\n collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;\n /**\n * If there is no collecton authority record PDA then\n * this must be the Bubblegum program address.\n */\n collectionAuthorityRecordPda: Address<TAccountCollectionAuthorityRecordPda>;\n collectionMint: Address<TAccountCollectionMint>;\n collectionMetadata: Address<TAccountCollectionMetadata>;\n editionAccount: Address<TAccountEditionAccount>;\n bubblegumSigner: Address<TAccountBubblegumSigner>;\n logWrapper: Address<TAccountLogWrapper>;\n compressionProgram: Address<TAccountCompressionProgram>;\n tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;\n systemProgram?: Address<TAccountSystemProgram>;\n root: VerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: VerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: VerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: VerifyCollectionInstructionDataArgs[\"nonce\"];\n index: VerifyCollectionInstructionDataArgs[\"index\"];\n message: VerifyCollectionInstructionDataArgs[\"message\"];\n}\n\nexport function getVerifyCollectionInstruction<\n TAccountTreeAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountMerkleTree extends string,\n TAccountPayer extends string,\n TAccountTreeDelegate extends string,\n TAccountCollectionAuthority extends string,\n TAccountCollectionAuthorityRecordPda extends string,\n TAccountCollectionMint extends string,\n TAccountCollectionMetadata extends string,\n TAccountEditionAccount extends string,\n TAccountBubblegumSigner extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountTokenMetadataProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: VerifyCollectionInput<\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\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: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: false },\n treeDelegate: { value: input.treeDelegate ?? null, isWritable: false },\n collectionAuthority: {\n value: input.collectionAuthority ?? null,\n isWritable: false,\n },\n collectionAuthorityRecordPda: {\n value: input.collectionAuthorityRecordPda ?? null,\n isWritable: false,\n },\n collectionMint: { value: input.collectionMint ?? null, isWritable: false },\n collectionMetadata: {\n value: input.collectionMetadata ?? null,\n isWritable: true,\n },\n editionAccount: { value: input.editionAccount ?? null, isWritable: false },\n bubblegumSigner: {\n value: input.bubblegumSigner ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n tokenMetadataProgram: {\n value: input.tokenMetadataProgram ?? 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.tokenMetadataProgram.value) {\n accounts.tokenMetadataProgram.value =\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\" as Address<\"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\">;\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(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"treeDelegate\", accounts.treeDelegate),\n getAccountMeta(\"collectionAuthority\", accounts.collectionAuthority),\n getAccountMeta(\n \"collectionAuthorityRecordPda\",\n accounts.collectionAuthorityRecordPda,\n ),\n getAccountMeta(\"collectionMint\", accounts.collectionMint),\n getAccountMeta(\"collectionMetadata\", accounts.collectionMetadata),\n getAccountMeta(\"editionAccount\", accounts.editionAccount),\n getAccountMeta(\"bubblegumSigner\", accounts.bubblegumSigner),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"tokenMetadataProgram\", accounts.tokenMetadataProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getVerifyCollectionInstructionDataEncoder().encode(\n args as VerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >);\n}\n\nexport interface ParsedVerifyCollectionInstruction<\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 leafOwner: TAccountMetas[1];\n leafDelegate: TAccountMetas[2];\n merkleTree: TAccountMetas[3];\n payer: TAccountMetas[4];\n /**\n * This account is checked to be a signer in\n * the case of `set_and_verify_collection` where\n * we are actually changing the NFT metadata.\n */\n treeDelegate: TAccountMetas[5];\n collectionAuthority: TAccountMetas[6];\n /**\n * If there is no collecton authority record PDA then\n * this must be the Bubblegum program address.\n */\n collectionAuthorityRecordPda: TAccountMetas[7];\n collectionMint: TAccountMetas[8];\n collectionMetadata: TAccountMetas[9];\n editionAccount: TAccountMetas[10];\n bubblegumSigner: TAccountMetas[11];\n logWrapper: TAccountMetas[12];\n compressionProgram: TAccountMetas[13];\n tokenMetadataProgram: TAccountMetas[14];\n systemProgram: TAccountMetas[15];\n };\n data: VerifyCollectionInstructionData;\n}\n\nexport function parseVerifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedVerifyCollectionInstruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 16) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 16,\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 return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n leafOwner: getNextAccount(),\n leafDelegate: getNextAccount(),\n merkleTree: getNextAccount(),\n payer: getNextAccount(),\n treeDelegate: getNextAccount(),\n collectionAuthority: getNextAccount(),\n collectionAuthorityRecordPda: getNextAccount(),\n collectionMint: getNextAccount(),\n collectionMetadata: getNextAccount(),\n editionAccount: getNextAccount(),\n bubblegumSigner: getNextAccount(),\n logWrapper: getNextAccount(),\n compressionProgram: getNextAccount(),\n tokenMetadataProgram: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getVerifyCollectionInstructionDataDecoder().decode(instruction.data),\n };\n}\n"]}
1
+ {"version":3,"file":"verifyCollection.js","names":[],"sources":["../../../src/generated/instructions/verifyCollection.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 ReadonlyAccount,\n ReadonlySignerAccount,\n ReadonlyUint8Array,\n TransactionSigner,\n WritableAccount,\n} from \"@solana/kit\";\nimport type { ResolvedInstructionAccount } from \"@solana/program-client-core\";\nimport type { MetadataArgs, MetadataArgsArgs } from \"../types/index.js\";\nimport {\n address,\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\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 {\n findBubblegumSignerPda,\n findMasterEditionPda,\n findMetadataPda,\n findTreeConfigPda,\n} from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\nimport {\n getMetadataArgsDecoder,\n getMetadataArgsEncoder,\n} from \"../types/index.js\";\n\nexport const VERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([56, 113, 101, 253, 79, 55, 122, 169]);\n\nexport function getVerifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n VERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type VerifyCollectionInstruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountTreeAuthority extends string | AccountMeta<string> = string,\n TAccountLeafOwner extends string | AccountMeta<string> = string,\n TAccountLeafDelegate extends string | AccountMeta<string> = string,\n TAccountMerkleTree extends string | AccountMeta<string> = string,\n TAccountPayer extends string | AccountMeta<string> = string,\n TAccountTreeDelegate extends string | AccountMeta<string> = string,\n TAccountCollectionAuthority extends string | AccountMeta<string> = string,\n TAccountCollectionAuthorityRecordPda extends\n | string\n | AccountMeta<string> = \"BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY\",\n TAccountCollectionMint extends string | AccountMeta<string> = string,\n TAccountCollectionMetadata extends string | AccountMeta<string> = string,\n TAccountEditionAccount extends string | AccountMeta<string> = string,\n TAccountBubblegumSigner extends string | AccountMeta<string> = string,\n TAccountLogWrapper extends\n | string\n | AccountMeta<string> = \"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\",\n TAccountCompressionProgram extends\n | string\n | AccountMeta<string> = \"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\",\n TAccountTokenMetadataProgram extends\n | string\n | AccountMeta<string> = \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\",\n TAccountSystemProgram extends\n | string\n | AccountMeta<string> = \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? ReadonlyAccount<TAccountTreeAuthority>\n : TAccountTreeAuthority,\n TAccountLeafOwner extends string\n ? ReadonlyAccount<TAccountLeafOwner>\n : TAccountLeafOwner,\n TAccountLeafDelegate extends string\n ? ReadonlyAccount<TAccountLeafDelegate>\n : TAccountLeafDelegate,\n TAccountMerkleTree extends string\n ? WritableAccount<TAccountMerkleTree>\n : TAccountMerkleTree,\n TAccountPayer extends string\n ? ReadonlySignerAccount<TAccountPayer> &\n AccountSignerMeta<TAccountPayer>\n : TAccountPayer,\n TAccountTreeDelegate extends string\n ? ReadonlyAccount<TAccountTreeDelegate>\n : TAccountTreeDelegate,\n TAccountCollectionAuthority extends string\n ? ReadonlySignerAccount<TAccountCollectionAuthority> &\n AccountSignerMeta<TAccountCollectionAuthority>\n : TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda extends string\n ? ReadonlyAccount<TAccountCollectionAuthorityRecordPda>\n : TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint extends string\n ? ReadonlyAccount<TAccountCollectionMint>\n : TAccountCollectionMint,\n TAccountCollectionMetadata extends string\n ? WritableAccount<TAccountCollectionMetadata>\n : TAccountCollectionMetadata,\n TAccountEditionAccount extends string\n ? ReadonlyAccount<TAccountEditionAccount>\n : TAccountEditionAccount,\n TAccountBubblegumSigner extends string\n ? ReadonlyAccount<TAccountBubblegumSigner>\n : TAccountBubblegumSigner,\n TAccountLogWrapper extends string\n ? ReadonlyAccount<TAccountLogWrapper>\n : TAccountLogWrapper,\n TAccountCompressionProgram extends string\n ? ReadonlyAccount<TAccountCompressionProgram>\n : TAccountCompressionProgram,\n TAccountTokenMetadataProgram extends string\n ? ReadonlyAccount<TAccountTokenMetadataProgram>\n : TAccountTokenMetadataProgram,\n TAccountSystemProgram extends string\n ? ReadonlyAccount<TAccountSystemProgram>\n : TAccountSystemProgram,\n ...TRemainingAccounts,\n ]\n >;\n\nexport interface VerifyCollectionInstructionData {\n discriminator: ReadonlyUint8Array;\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: bigint;\n index: number;\n message: MetadataArgs;\n}\n\nexport interface VerifyCollectionInstructionDataArgs {\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: number | bigint;\n index: number;\n message: MetadataArgsArgs;\n}\n\nexport function getVerifyCollectionInstructionDataEncoder(): Encoder<VerifyCollectionInstructionDataArgs> {\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 [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n [\"message\", getMetadataArgsEncoder()],\n ]),\n (value) => ({ ...value, discriminator: VERIFY_COLLECTION_DISCRIMINATOR }),\n );\n}\n\nexport function getVerifyCollectionInstructionDataDecoder(): Decoder<VerifyCollectionInstructionData> {\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 [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n [\"message\", getMetadataArgsDecoder()],\n ]);\n}\n\nexport function getVerifyCollectionInstructionDataCodec(): Codec<\n VerifyCollectionInstructionDataArgs,\n VerifyCollectionInstructionData\n> {\n return combineCodec(\n getVerifyCollectionInstructionDataEncoder(),\n getVerifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport interface VerifyCollectionAsyncInput<\n TAccountTreeAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountPayer extends string = string,\n TAccountTreeDelegate extends string = string,\n TAccountCollectionAuthority extends string = string,\n TAccountCollectionAuthorityRecordPda extends string = string,\n TAccountCollectionMint extends string = string,\n TAccountCollectionMetadata extends string = string,\n TAccountEditionAccount extends string = string,\n TAccountBubblegumSigner extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountTokenMetadataProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority?: Address<TAccountTreeAuthority>;\n leafOwner: Address<TAccountLeafOwner>;\n leafDelegate: Address<TAccountLeafDelegate>;\n merkleTree: Address<TAccountMerkleTree>;\n payer: TransactionSigner<TAccountPayer>;\n /**\n * This account is checked to be a signer in\n * the case of `set_and_verify_collection` where\n * we are actually changing the NFT metadata.\n */\n treeDelegate: Address<TAccountTreeDelegate>;\n collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;\n /**\n * If there is no collecton authority record PDA then\n * this must be the Bubblegum program address.\n */\n collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;\n collectionMint: Address<TAccountCollectionMint>;\n collectionMetadata?: Address<TAccountCollectionMetadata>;\n editionAccount?: Address<TAccountEditionAccount>;\n bubblegumSigner?: Address<TAccountBubblegumSigner>;\n logWrapper?: Address<TAccountLogWrapper>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;\n systemProgram?: Address<TAccountSystemProgram>;\n root: VerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: VerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: VerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: VerifyCollectionInstructionDataArgs[\"nonce\"];\n index: VerifyCollectionInstructionDataArgs[\"index\"];\n message: VerifyCollectionInstructionDataArgs[\"message\"];\n}\n\nexport async function getVerifyCollectionInstructionAsync<\n TAccountTreeAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountMerkleTree extends string,\n TAccountPayer extends string,\n TAccountTreeDelegate extends string,\n TAccountCollectionAuthority extends string,\n TAccountCollectionAuthorityRecordPda extends string,\n TAccountCollectionMint extends string,\n TAccountCollectionMetadata extends string,\n TAccountEditionAccount extends string,\n TAccountBubblegumSigner extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountTokenMetadataProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: VerifyCollectionAsyncInput<\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): Promise<\n VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\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: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: false },\n treeDelegate: { value: input.treeDelegate ?? null, isWritable: false },\n collectionAuthority: {\n value: input.collectionAuthority ?? null,\n isWritable: false,\n },\n collectionAuthorityRecordPda: {\n value: input.collectionAuthorityRecordPda ?? null,\n isWritable: false,\n },\n collectionMint: { value: input.collectionMint ?? null, isWritable: false },\n collectionMetadata: {\n value: input.collectionMetadata ?? null,\n isWritable: true,\n },\n editionAccount: { value: input.editionAccount ?? null, isWritable: false },\n bubblegumSigner: {\n value: input.bubblegumSigner ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n tokenMetadataProgram: {\n value: input.tokenMetadataProgram ?? 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.collectionAuthorityRecordPda.value) {\n accounts.collectionAuthorityRecordPda.value = programAddress;\n accounts.collectionAuthorityRecordPda.isWritable = false;\n }\n if (!accounts.collectionMetadata.value) {\n accounts.collectionMetadata.value = await findMetadataPda({\n programId: address(\"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\"),\n mint: getAddressFromResolvedInstructionAccount(\n \"collectionMint\",\n accounts.collectionMint.value,\n ),\n });\n }\n if (!accounts.editionAccount.value) {\n accounts.editionAccount.value = await findMasterEditionPda({\n programId: address(\"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\"),\n mint: getAddressFromResolvedInstructionAccount(\n \"collectionMint\",\n accounts.collectionMint.value,\n ),\n });\n }\n if (!accounts.bubblegumSigner.value) {\n accounts.bubblegumSigner.value = await findBubblegumSignerPda();\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\" as Address<\"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\" as Address<\"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\">;\n }\n if (!accounts.tokenMetadataProgram.value) {\n accounts.tokenMetadataProgram.value =\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\" as Address<\"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\">;\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(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"treeDelegate\", accounts.treeDelegate),\n getAccountMeta(\"collectionAuthority\", accounts.collectionAuthority),\n getAccountMeta(\n \"collectionAuthorityRecordPda\",\n accounts.collectionAuthorityRecordPda,\n ),\n getAccountMeta(\"collectionMint\", accounts.collectionMint),\n getAccountMeta(\"collectionMetadata\", accounts.collectionMetadata),\n getAccountMeta(\"editionAccount\", accounts.editionAccount),\n getAccountMeta(\"bubblegumSigner\", accounts.bubblegumSigner),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"tokenMetadataProgram\", accounts.tokenMetadataProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getVerifyCollectionInstructionDataEncoder().encode(\n args as VerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >);\n}\n\nexport interface VerifyCollectionInput<\n TAccountTreeAuthority extends string = string,\n TAccountLeafOwner extends string = string,\n TAccountLeafDelegate extends string = string,\n TAccountMerkleTree extends string = string,\n TAccountPayer extends string = string,\n TAccountTreeDelegate extends string = string,\n TAccountCollectionAuthority extends string = string,\n TAccountCollectionAuthorityRecordPda extends string = string,\n TAccountCollectionMint extends string = string,\n TAccountCollectionMetadata extends string = string,\n TAccountEditionAccount extends string = string,\n TAccountBubblegumSigner extends string = string,\n TAccountLogWrapper extends string = string,\n TAccountCompressionProgram extends string = string,\n TAccountTokenMetadataProgram extends string = string,\n TAccountSystemProgram extends string = string,\n> {\n treeAuthority: Address<TAccountTreeAuthority>;\n leafOwner: Address<TAccountLeafOwner>;\n leafDelegate: Address<TAccountLeafDelegate>;\n merkleTree: Address<TAccountMerkleTree>;\n payer: TransactionSigner<TAccountPayer>;\n /**\n * This account is checked to be a signer in\n * the case of `set_and_verify_collection` where\n * we are actually changing the NFT metadata.\n */\n treeDelegate: Address<TAccountTreeDelegate>;\n collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;\n /**\n * If there is no collecton authority record PDA then\n * this must be the Bubblegum program address.\n */\n collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;\n collectionMint: Address<TAccountCollectionMint>;\n collectionMetadata: Address<TAccountCollectionMetadata>;\n editionAccount: Address<TAccountEditionAccount>;\n bubblegumSigner: Address<TAccountBubblegumSigner>;\n logWrapper?: Address<TAccountLogWrapper>;\n compressionProgram?: Address<TAccountCompressionProgram>;\n tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;\n systemProgram?: Address<TAccountSystemProgram>;\n root: VerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: VerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: VerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: VerifyCollectionInstructionDataArgs[\"nonce\"];\n index: VerifyCollectionInstructionDataArgs[\"index\"];\n message: VerifyCollectionInstructionDataArgs[\"message\"];\n}\n\nexport function getVerifyCollectionInstruction<\n TAccountTreeAuthority extends string,\n TAccountLeafOwner extends string,\n TAccountLeafDelegate extends string,\n TAccountMerkleTree extends string,\n TAccountPayer extends string,\n TAccountTreeDelegate extends string,\n TAccountCollectionAuthority extends string,\n TAccountCollectionAuthorityRecordPda extends string,\n TAccountCollectionMint extends string,\n TAccountCollectionMetadata extends string,\n TAccountEditionAccount extends string,\n TAccountBubblegumSigner extends string,\n TAccountLogWrapper extends string,\n TAccountCompressionProgram extends string,\n TAccountTokenMetadataProgram extends string,\n TAccountSystemProgram extends string,\n TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n>(\n input: VerifyCollectionInput<\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >,\n config?: { programAddress?: TProgramAddress },\n): VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\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: false },\n leafOwner: { value: input.leafOwner ?? null, isWritable: false },\n leafDelegate: { value: input.leafDelegate ?? null, isWritable: false },\n merkleTree: { value: input.merkleTree ?? null, isWritable: true },\n payer: { value: input.payer ?? null, isWritable: false },\n treeDelegate: { value: input.treeDelegate ?? null, isWritable: false },\n collectionAuthority: {\n value: input.collectionAuthority ?? null,\n isWritable: false,\n },\n collectionAuthorityRecordPda: {\n value: input.collectionAuthorityRecordPda ?? null,\n isWritable: false,\n },\n collectionMint: { value: input.collectionMint ?? null, isWritable: false },\n collectionMetadata: {\n value: input.collectionMetadata ?? null,\n isWritable: true,\n },\n editionAccount: { value: input.editionAccount ?? null, isWritable: false },\n bubblegumSigner: {\n value: input.bubblegumSigner ?? null,\n isWritable: false,\n },\n logWrapper: { value: input.logWrapper ?? null, isWritable: false },\n compressionProgram: {\n value: input.compressionProgram ?? null,\n isWritable: false,\n },\n tokenMetadataProgram: {\n value: input.tokenMetadataProgram ?? 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.collectionAuthorityRecordPda.value) {\n accounts.collectionAuthorityRecordPda.value = programAddress;\n accounts.collectionAuthorityRecordPda.isWritable = false;\n }\n if (!accounts.logWrapper.value) {\n accounts.logWrapper.value =\n \"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\" as Address<\"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\">;\n }\n if (!accounts.compressionProgram.value) {\n accounts.compressionProgram.value =\n \"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\" as Address<\"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\">;\n }\n if (!accounts.tokenMetadataProgram.value) {\n accounts.tokenMetadataProgram.value =\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\" as Address<\"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\">;\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(\"leafOwner\", accounts.leafOwner),\n getAccountMeta(\"leafDelegate\", accounts.leafDelegate),\n getAccountMeta(\"merkleTree\", accounts.merkleTree),\n getAccountMeta(\"payer\", accounts.payer),\n getAccountMeta(\"treeDelegate\", accounts.treeDelegate),\n getAccountMeta(\"collectionAuthority\", accounts.collectionAuthority),\n getAccountMeta(\n \"collectionAuthorityRecordPda\",\n accounts.collectionAuthorityRecordPda,\n ),\n getAccountMeta(\"collectionMint\", accounts.collectionMint),\n getAccountMeta(\"collectionMetadata\", accounts.collectionMetadata),\n getAccountMeta(\"editionAccount\", accounts.editionAccount),\n getAccountMeta(\"bubblegumSigner\", accounts.bubblegumSigner),\n getAccountMeta(\"logWrapper\", accounts.logWrapper),\n getAccountMeta(\"compressionProgram\", accounts.compressionProgram),\n getAccountMeta(\"tokenMetadataProgram\", accounts.tokenMetadataProgram),\n getAccountMeta(\"systemProgram\", accounts.systemProgram),\n ],\n data: getVerifyCollectionInstructionDataEncoder().encode(\n args as VerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as VerifyCollectionInstruction<\n TProgramAddress,\n TAccountTreeAuthority,\n TAccountLeafOwner,\n TAccountLeafDelegate,\n TAccountMerkleTree,\n TAccountPayer,\n TAccountTreeDelegate,\n TAccountCollectionAuthority,\n TAccountCollectionAuthorityRecordPda,\n TAccountCollectionMint,\n TAccountCollectionMetadata,\n TAccountEditionAccount,\n TAccountBubblegumSigner,\n TAccountLogWrapper,\n TAccountCompressionProgram,\n TAccountTokenMetadataProgram,\n TAccountSystemProgram\n >);\n}\n\nexport interface ParsedVerifyCollectionInstruction<\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 leafOwner: TAccountMetas[1];\n leafDelegate: TAccountMetas[2];\n merkleTree: TAccountMetas[3];\n payer: TAccountMetas[4];\n /**\n * This account is checked to be a signer in\n * the case of `set_and_verify_collection` where\n * we are actually changing the NFT metadata.\n */\n treeDelegate: TAccountMetas[5];\n collectionAuthority: TAccountMetas[6];\n /**\n * If there is no collecton authority record PDA then\n * this must be the Bubblegum program address.\n */\n collectionAuthorityRecordPda: TAccountMetas[7];\n collectionMint: TAccountMetas[8];\n collectionMetadata: TAccountMetas[9];\n editionAccount: TAccountMetas[10];\n bubblegumSigner: TAccountMetas[11];\n logWrapper: TAccountMetas[12];\n compressionProgram: TAccountMetas[13];\n tokenMetadataProgram: TAccountMetas[14];\n systemProgram: TAccountMetas[15];\n };\n data: VerifyCollectionInstructionData;\n}\n\nexport function parseVerifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedVerifyCollectionInstruction<TProgram, TAccountMetas> {\n if (instruction.accounts.length < 16) {\n throw new SolanaError(\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n {\n actualAccountMetas: instruction.accounts.length,\n expectedAccountMetas: 16,\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 return {\n programAddress: instruction.programAddress,\n accounts: {\n treeAuthority: getNextAccount(),\n leafOwner: getNextAccount(),\n leafDelegate: getNextAccount(),\n merkleTree: getNextAccount(),\n payer: getNextAccount(),\n treeDelegate: getNextAccount(),\n collectionAuthority: getNextAccount(),\n collectionAuthorityRecordPda: getNextAccount(),\n collectionMint: getNextAccount(),\n collectionMetadata: getNextAccount(),\n editionAccount: getNextAccount(),\n bubblegumSigner: getNextAccount(),\n logWrapper: getNextAccount(),\n compressionProgram: getNextAccount(),\n tokenMetadataProgram: getNextAccount(),\n systemProgram: getNextAccount(),\n },\n data: getVerifyCollectionInstructionDataDecoder().decode(instruction.data),\n };\n}\n"],"mappings":"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"}