@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
@@ -25,18 +25,29 @@ import type {
25
25
  import type { ResolvedInstructionAccount } from "@solana/program-client-core";
26
26
  import type { MetadataArgs, MetadataArgsArgs } from "../types/index.js";
27
27
  import {
28
+ address,
28
29
  combineCodec,
29
30
  fixDecoderSize,
30
31
  fixEncoderSize,
32
+ getAddressEncoder,
31
33
  getBytesDecoder,
32
34
  getBytesEncoder,
35
+ getProgramDerivedAddress,
33
36
  getStructDecoder,
34
37
  getStructEncoder,
35
38
  SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,
36
39
  SolanaError,
37
40
  transformEncoder,
38
41
  } from "@solana/kit";
39
- import { getAccountMetaFactory } from "@solana/program-client-core";
42
+ import {
43
+ getAccountMetaFactory,
44
+ getAddressFromResolvedInstructionAccount,
45
+ } from "@solana/program-client-core";
46
+ import {
47
+ findMasterEditionPda,
48
+ findMetadataPda,
49
+ findMintAuthorityPda,
50
+ } from "../pdas/index.js";
40
51
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
41
52
  import {
42
53
  getMetadataArgsDecoder,
@@ -55,30 +66,32 @@ export function getDecompressV1DiscriminatorBytes(): ReadonlyUint8Array {
55
66
 
56
67
  export type DecompressV1Instruction<
57
68
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
58
- TAccountVoucher extends string | AccountMeta = string,
59
- TAccountLeafOwner extends string | AccountMeta = string,
60
- TAccountTokenAccount extends string | AccountMeta = string,
61
- TAccountMint extends string | AccountMeta = string,
62
- TAccountMintAuthority extends string | AccountMeta = string,
63
- TAccountMetadata extends string | AccountMeta = string,
64
- TAccountMasterEdition extends string | AccountMeta = string,
69
+ TAccountVoucher extends string | AccountMeta<string> = string,
70
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
71
+ TAccountTokenAccount extends string | AccountMeta<string> = string,
72
+ TAccountMint extends string | AccountMeta<string> = string,
73
+ TAccountMintAuthority extends string | AccountMeta<string> = string,
74
+ TAccountMetadata extends string | AccountMeta<string> = string,
75
+ TAccountMasterEdition extends string | AccountMeta<string> = string,
65
76
  TAccountSystemProgram extends
66
77
  | string
67
- | AccountMeta = "11111111111111111111111111111111",
78
+ | AccountMeta<string> = "11111111111111111111111111111111",
68
79
  TAccountSysvarRent extends
69
80
  | string
70
- | AccountMeta = "SysvarRent111111111111111111111111111111111",
81
+ | AccountMeta<string> = "SysvarRent111111111111111111111111111111111",
71
82
  TAccountTokenMetadataProgram extends
72
83
  | string
73
- | AccountMeta = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
84
+ | AccountMeta<string> = "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
74
85
  TAccountTokenProgram extends
75
86
  | string
76
- | AccountMeta = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
87
+ | AccountMeta<string> = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
77
88
  TAccountAssociatedTokenProgram extends
78
89
  | string
79
- | AccountMeta = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
80
- TAccountLogWrapper extends string | AccountMeta = string,
81
- TRemainingAccounts extends readonly AccountMeta[] = [],
90
+ | AccountMeta<string> = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL",
91
+ TAccountLogWrapper extends
92
+ | string
93
+ | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
94
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
82
95
  > = Instruction<TProgram> &
83
96
  InstructionWithData<ReadonlyUint8Array> &
84
97
  InstructionWithAccounts<
@@ -163,6 +176,231 @@ export function getDecompressV1InstructionDataCodec(): Codec<
163
176
  );
164
177
  }
165
178
 
179
+ export interface DecompressV1AsyncInput<
180
+ TAccountVoucher extends string = string,
181
+ TAccountLeafOwner extends string = string,
182
+ TAccountTokenAccount extends string = string,
183
+ TAccountMint extends string = string,
184
+ TAccountMintAuthority extends string = string,
185
+ TAccountMetadata extends string = string,
186
+ TAccountMasterEdition extends string = string,
187
+ TAccountSystemProgram extends string = string,
188
+ TAccountSysvarRent extends string = string,
189
+ TAccountTokenMetadataProgram extends string = string,
190
+ TAccountTokenProgram extends string = string,
191
+ TAccountAssociatedTokenProgram extends string = string,
192
+ TAccountLogWrapper extends string = string,
193
+ > {
194
+ voucher: Address<TAccountVoucher>;
195
+ leafOwner: TransactionSigner<TAccountLeafOwner>;
196
+ tokenAccount?: Address<TAccountTokenAccount>;
197
+ mint: Address<TAccountMint>;
198
+ mintAuthority?: Address<TAccountMintAuthority>;
199
+ metadata?: Address<TAccountMetadata>;
200
+ masterEdition?: Address<TAccountMasterEdition>;
201
+ systemProgram?: Address<TAccountSystemProgram>;
202
+ sysvarRent?: Address<TAccountSysvarRent>;
203
+ tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
204
+ tokenProgram?: Address<TAccountTokenProgram>;
205
+ associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
206
+ logWrapper?: Address<TAccountLogWrapper>;
207
+ metadataArg: DecompressV1InstructionDataArgs["metadata"];
208
+ }
209
+
210
+ export async function getDecompressV1InstructionAsync<
211
+ TAccountVoucher extends string,
212
+ TAccountLeafOwner extends string,
213
+ TAccountTokenAccount extends string,
214
+ TAccountMint extends string,
215
+ TAccountMintAuthority extends string,
216
+ TAccountMetadata extends string,
217
+ TAccountMasterEdition extends string,
218
+ TAccountSystemProgram extends string,
219
+ TAccountSysvarRent extends string,
220
+ TAccountTokenMetadataProgram extends string,
221
+ TAccountTokenProgram extends string,
222
+ TAccountAssociatedTokenProgram extends string,
223
+ TAccountLogWrapper extends string,
224
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
225
+ >(
226
+ input: DecompressV1AsyncInput<
227
+ TAccountVoucher,
228
+ TAccountLeafOwner,
229
+ TAccountTokenAccount,
230
+ TAccountMint,
231
+ TAccountMintAuthority,
232
+ TAccountMetadata,
233
+ TAccountMasterEdition,
234
+ TAccountSystemProgram,
235
+ TAccountSysvarRent,
236
+ TAccountTokenMetadataProgram,
237
+ TAccountTokenProgram,
238
+ TAccountAssociatedTokenProgram,
239
+ TAccountLogWrapper
240
+ >,
241
+ config?: { programAddress?: TProgramAddress },
242
+ ): Promise<
243
+ DecompressV1Instruction<
244
+ TProgramAddress,
245
+ TAccountVoucher,
246
+ TAccountLeafOwner,
247
+ TAccountTokenAccount,
248
+ TAccountMint,
249
+ TAccountMintAuthority,
250
+ TAccountMetadata,
251
+ TAccountMasterEdition,
252
+ TAccountSystemProgram,
253
+ TAccountSysvarRent,
254
+ TAccountTokenMetadataProgram,
255
+ TAccountTokenProgram,
256
+ TAccountAssociatedTokenProgram,
257
+ TAccountLogWrapper
258
+ >
259
+ > {
260
+ // Program address.
261
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
262
+
263
+ // Original accounts.
264
+ const originalAccounts = {
265
+ voucher: { value: input.voucher ?? null, isWritable: true },
266
+ leafOwner: { value: input.leafOwner ?? null, isWritable: true },
267
+ tokenAccount: { value: input.tokenAccount ?? null, isWritable: true },
268
+ mint: { value: input.mint ?? null, isWritable: true },
269
+ mintAuthority: { value: input.mintAuthority ?? null, isWritable: true },
270
+ metadata: { value: input.metadata ?? null, isWritable: true },
271
+ masterEdition: { value: input.masterEdition ?? null, isWritable: true },
272
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
273
+ sysvarRent: { value: input.sysvarRent ?? null, isWritable: false },
274
+ tokenMetadataProgram: {
275
+ value: input.tokenMetadataProgram ?? null,
276
+ isWritable: false,
277
+ },
278
+ tokenProgram: { value: input.tokenProgram ?? null, isWritable: false },
279
+ associatedTokenProgram: {
280
+ value: input.associatedTokenProgram ?? null,
281
+ isWritable: false,
282
+ },
283
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
284
+ };
285
+ const accounts = originalAccounts as Record<
286
+ keyof typeof originalAccounts,
287
+ ResolvedInstructionAccount
288
+ >;
289
+
290
+ // Original args.
291
+ const args = { ...input, metadata: input.metadataArg };
292
+
293
+ // Resolve default values.
294
+ if (!accounts.tokenAccount.value) {
295
+ accounts.tokenAccount.value = await getProgramDerivedAddress({
296
+ programAddress:
297
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" as Address<"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL">,
298
+ seeds: [
299
+ getAddressEncoder().encode(
300
+ getAddressFromResolvedInstructionAccount(
301
+ "leafOwner",
302
+ accounts.leafOwner.value,
303
+ ),
304
+ ),
305
+ getAddressEncoder().encode(
306
+ address("TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA"),
307
+ ),
308
+ getAddressEncoder().encode(
309
+ getAddressFromResolvedInstructionAccount("mint", accounts.mint.value),
310
+ ),
311
+ ],
312
+ });
313
+ }
314
+ if (!accounts.mintAuthority.value) {
315
+ accounts.mintAuthority.value = await findMintAuthorityPda({
316
+ mint: getAddressFromResolvedInstructionAccount(
317
+ "mint",
318
+ accounts.mint.value,
319
+ ),
320
+ });
321
+ }
322
+ if (!accounts.metadata.value) {
323
+ accounts.metadata.value = await findMetadataPda({
324
+ programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
325
+ mint: getAddressFromResolvedInstructionAccount(
326
+ "mint",
327
+ accounts.mint.value,
328
+ ),
329
+ });
330
+ }
331
+ if (!accounts.masterEdition.value) {
332
+ accounts.masterEdition.value = await findMasterEditionPda({
333
+ programId: address("metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s"),
334
+ mint: getAddressFromResolvedInstructionAccount(
335
+ "mint",
336
+ accounts.mint.value,
337
+ ),
338
+ });
339
+ }
340
+ if (!accounts.systemProgram.value) {
341
+ accounts.systemProgram.value =
342
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
343
+ }
344
+ if (!accounts.sysvarRent.value) {
345
+ accounts.sysvarRent.value =
346
+ "SysvarRent111111111111111111111111111111111" as Address<"SysvarRent111111111111111111111111111111111">;
347
+ }
348
+ if (!accounts.tokenMetadataProgram.value) {
349
+ accounts.tokenMetadataProgram.value =
350
+ "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s" as Address<"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s">;
351
+ }
352
+ if (!accounts.tokenProgram.value) {
353
+ accounts.tokenProgram.value =
354
+ "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" as Address<"TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA">;
355
+ }
356
+ if (!accounts.associatedTokenProgram.value) {
357
+ accounts.associatedTokenProgram.value =
358
+ "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" as Address<"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL">;
359
+ }
360
+ if (!accounts.logWrapper.value) {
361
+ accounts.logWrapper.value =
362
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
363
+ }
364
+
365
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
366
+ return Object.freeze({
367
+ accounts: [
368
+ getAccountMeta("voucher", accounts.voucher),
369
+ getAccountMeta("leafOwner", accounts.leafOwner),
370
+ getAccountMeta("tokenAccount", accounts.tokenAccount),
371
+ getAccountMeta("mint", accounts.mint),
372
+ getAccountMeta("mintAuthority", accounts.mintAuthority),
373
+ getAccountMeta("metadata", accounts.metadata),
374
+ getAccountMeta("masterEdition", accounts.masterEdition),
375
+ getAccountMeta("systemProgram", accounts.systemProgram),
376
+ getAccountMeta("sysvarRent", accounts.sysvarRent),
377
+ getAccountMeta("tokenMetadataProgram", accounts.tokenMetadataProgram),
378
+ getAccountMeta("tokenProgram", accounts.tokenProgram),
379
+ getAccountMeta("associatedTokenProgram", accounts.associatedTokenProgram),
380
+ getAccountMeta("logWrapper", accounts.logWrapper),
381
+ ],
382
+ data: getDecompressV1InstructionDataEncoder().encode(
383
+ args as DecompressV1InstructionDataArgs,
384
+ ),
385
+ programAddress,
386
+ } as DecompressV1Instruction<
387
+ TProgramAddress,
388
+ TAccountVoucher,
389
+ TAccountLeafOwner,
390
+ TAccountTokenAccount,
391
+ TAccountMint,
392
+ TAccountMintAuthority,
393
+ TAccountMetadata,
394
+ TAccountMasterEdition,
395
+ TAccountSystemProgram,
396
+ TAccountSysvarRent,
397
+ TAccountTokenMetadataProgram,
398
+ TAccountTokenProgram,
399
+ TAccountAssociatedTokenProgram,
400
+ TAccountLogWrapper
401
+ >);
402
+ }
403
+
166
404
  export interface DecompressV1Input<
167
405
  TAccountVoucher extends string = string,
168
406
  TAccountLeafOwner extends string = string,
@@ -190,7 +428,7 @@ export interface DecompressV1Input<
190
428
  tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;
191
429
  tokenProgram?: Address<TAccountTokenProgram>;
192
430
  associatedTokenProgram?: Address<TAccountAssociatedTokenProgram>;
193
- logWrapper: Address<TAccountLogWrapper>;
431
+ logWrapper?: Address<TAccountLogWrapper>;
194
432
  metadataArg: DecompressV1InstructionDataArgs["metadata"];
195
433
  }
196
434
 
@@ -296,6 +534,10 @@ export function getDecompressV1Instruction<
296
534
  accounts.associatedTokenProgram.value =
297
535
  "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL" as Address<"ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL">;
298
536
  }
537
+ if (!accounts.logWrapper.value) {
538
+ accounts.logWrapper.value =
539
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
540
+ }
299
541
 
300
542
  const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
301
543
  return Object.freeze({
@@ -43,7 +43,11 @@ import {
43
43
  SolanaError,
44
44
  transformEncoder,
45
45
  } from "@solana/kit";
46
- import { getAccountMetaFactory } from "@solana/program-client-core";
46
+ import {
47
+ getAccountMetaFactory,
48
+ getAddressFromResolvedInstructionAccount,
49
+ } from "@solana/program-client-core";
50
+ import { findTreeConfigPda } from "../pdas/index.js";
47
51
  import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/index.js";
48
52
 
49
53
  export const DELEGATE_DISCRIMINATOR: ReadonlyUint8Array = new Uint8Array([
@@ -56,17 +60,21 @@ export function getDelegateDiscriminatorBytes(): ReadonlyUint8Array {
56
60
 
57
61
  export type DelegateInstruction<
58
62
  TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,
59
- TAccountTreeAuthority extends string | AccountMeta = string,
60
- TAccountLeafOwner extends string | AccountMeta = string,
61
- TAccountPreviousLeafDelegate extends string | AccountMeta = string,
62
- TAccountNewLeafDelegate extends string | AccountMeta = string,
63
- TAccountMerkleTree extends string | AccountMeta = string,
64
- TAccountLogWrapper extends string | AccountMeta = string,
65
- TAccountCompressionProgram extends string | AccountMeta = string,
63
+ TAccountTreeAuthority extends string | AccountMeta<string> = string,
64
+ TAccountLeafOwner extends string | AccountMeta<string> = string,
65
+ TAccountPreviousLeafDelegate extends string | AccountMeta<string> = string,
66
+ TAccountNewLeafDelegate extends string | AccountMeta<string> = string,
67
+ TAccountMerkleTree extends string | AccountMeta<string> = string,
68
+ TAccountLogWrapper extends
69
+ | string
70
+ | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
71
+ TAccountCompressionProgram extends
72
+ | string
73
+ | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK",
66
74
  TAccountSystemProgram extends
67
75
  | string
68
- | AccountMeta = "11111111111111111111111111111111",
69
- TRemainingAccounts extends readonly AccountMeta[] = [],
76
+ | AccountMeta<string> = "11111111111111111111111111111111",
77
+ TRemainingAccounts extends readonly AccountMeta<string>[] = [],
70
78
  > = Instruction<TProgram> &
71
79
  InstructionWithData<ReadonlyUint8Array> &
72
80
  InstructionWithAccounts<
@@ -152,6 +160,148 @@ export function getDelegateInstructionDataCodec(): FixedSizeCodec<
152
160
  );
153
161
  }
154
162
 
163
+ export interface DelegateAsyncInput<
164
+ TAccountTreeAuthority extends string = string,
165
+ TAccountLeafOwner extends string = string,
166
+ TAccountPreviousLeafDelegate extends string = string,
167
+ TAccountNewLeafDelegate extends string = string,
168
+ TAccountMerkleTree extends string = string,
169
+ TAccountLogWrapper extends string = string,
170
+ TAccountCompressionProgram extends string = string,
171
+ TAccountSystemProgram extends string = string,
172
+ > {
173
+ treeAuthority?: Address<TAccountTreeAuthority>;
174
+ leafOwner: TransactionSigner<TAccountLeafOwner>;
175
+ previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
176
+ newLeafDelegate: Address<TAccountNewLeafDelegate>;
177
+ merkleTree: Address<TAccountMerkleTree>;
178
+ logWrapper?: Address<TAccountLogWrapper>;
179
+ compressionProgram?: Address<TAccountCompressionProgram>;
180
+ systemProgram?: Address<TAccountSystemProgram>;
181
+ root: DelegateInstructionDataArgs["root"];
182
+ dataHash: DelegateInstructionDataArgs["dataHash"];
183
+ creatorHash: DelegateInstructionDataArgs["creatorHash"];
184
+ nonce: DelegateInstructionDataArgs["nonce"];
185
+ index: DelegateInstructionDataArgs["index"];
186
+ }
187
+
188
+ export async function getDelegateInstructionAsync<
189
+ TAccountTreeAuthority extends string,
190
+ TAccountLeafOwner extends string,
191
+ TAccountPreviousLeafDelegate extends string,
192
+ TAccountNewLeafDelegate extends string,
193
+ TAccountMerkleTree extends string,
194
+ TAccountLogWrapper extends string,
195
+ TAccountCompressionProgram extends string,
196
+ TAccountSystemProgram extends string,
197
+ TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS,
198
+ >(
199
+ input: DelegateAsyncInput<
200
+ TAccountTreeAuthority,
201
+ TAccountLeafOwner,
202
+ TAccountPreviousLeafDelegate,
203
+ TAccountNewLeafDelegate,
204
+ TAccountMerkleTree,
205
+ TAccountLogWrapper,
206
+ TAccountCompressionProgram,
207
+ TAccountSystemProgram
208
+ >,
209
+ config?: { programAddress?: TProgramAddress },
210
+ ): Promise<
211
+ DelegateInstruction<
212
+ TProgramAddress,
213
+ TAccountTreeAuthority,
214
+ TAccountLeafOwner,
215
+ TAccountPreviousLeafDelegate,
216
+ TAccountNewLeafDelegate,
217
+ TAccountMerkleTree,
218
+ TAccountLogWrapper,
219
+ TAccountCompressionProgram,
220
+ TAccountSystemProgram
221
+ >
222
+ > {
223
+ // Program address.
224
+ const programAddress = config?.programAddress ?? BUBBLEGUM_PROGRAM_ADDRESS;
225
+
226
+ // Original accounts.
227
+ const originalAccounts = {
228
+ treeAuthority: { value: input.treeAuthority ?? null, isWritable: false },
229
+ leafOwner: { value: input.leafOwner ?? null, isWritable: false },
230
+ previousLeafDelegate: {
231
+ value: input.previousLeafDelegate ?? null,
232
+ isWritable: false,
233
+ },
234
+ newLeafDelegate: {
235
+ value: input.newLeafDelegate ?? null,
236
+ isWritable: false,
237
+ },
238
+ merkleTree: { value: input.merkleTree ?? null, isWritable: true },
239
+ logWrapper: { value: input.logWrapper ?? null, isWritable: false },
240
+ compressionProgram: {
241
+ value: input.compressionProgram ?? null,
242
+ isWritable: false,
243
+ },
244
+ systemProgram: { value: input.systemProgram ?? null, isWritable: false },
245
+ };
246
+ const accounts = originalAccounts as Record<
247
+ keyof typeof originalAccounts,
248
+ ResolvedInstructionAccount
249
+ >;
250
+
251
+ // Original args.
252
+ const args = { ...input };
253
+
254
+ // Resolve default values.
255
+ if (!accounts.treeAuthority.value) {
256
+ accounts.treeAuthority.value = await findTreeConfigPda({
257
+ merkleTree: getAddressFromResolvedInstructionAccount(
258
+ "merkleTree",
259
+ accounts.merkleTree.value,
260
+ ),
261
+ });
262
+ }
263
+ if (!accounts.logWrapper.value) {
264
+ accounts.logWrapper.value =
265
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
266
+ }
267
+ if (!accounts.compressionProgram.value) {
268
+ accounts.compressionProgram.value =
269
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
270
+ }
271
+ if (!accounts.systemProgram.value) {
272
+ accounts.systemProgram.value =
273
+ "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;
274
+ }
275
+
276
+ const getAccountMeta = getAccountMetaFactory(programAddress, "programId");
277
+ return Object.freeze({
278
+ accounts: [
279
+ getAccountMeta("treeAuthority", accounts.treeAuthority),
280
+ getAccountMeta("leafOwner", accounts.leafOwner),
281
+ getAccountMeta("previousLeafDelegate", accounts.previousLeafDelegate),
282
+ getAccountMeta("newLeafDelegate", accounts.newLeafDelegate),
283
+ getAccountMeta("merkleTree", accounts.merkleTree),
284
+ getAccountMeta("logWrapper", accounts.logWrapper),
285
+ getAccountMeta("compressionProgram", accounts.compressionProgram),
286
+ getAccountMeta("systemProgram", accounts.systemProgram),
287
+ ],
288
+ data: getDelegateInstructionDataEncoder().encode(
289
+ args as DelegateInstructionDataArgs,
290
+ ),
291
+ programAddress,
292
+ } as DelegateInstruction<
293
+ TProgramAddress,
294
+ TAccountTreeAuthority,
295
+ TAccountLeafOwner,
296
+ TAccountPreviousLeafDelegate,
297
+ TAccountNewLeafDelegate,
298
+ TAccountMerkleTree,
299
+ TAccountLogWrapper,
300
+ TAccountCompressionProgram,
301
+ TAccountSystemProgram
302
+ >);
303
+ }
304
+
155
305
  export interface DelegateInput<
156
306
  TAccountTreeAuthority extends string = string,
157
307
  TAccountLeafOwner extends string = string,
@@ -167,8 +317,8 @@ export interface DelegateInput<
167
317
  previousLeafDelegate: Address<TAccountPreviousLeafDelegate>;
168
318
  newLeafDelegate: Address<TAccountNewLeafDelegate>;
169
319
  merkleTree: Address<TAccountMerkleTree>;
170
- logWrapper: Address<TAccountLogWrapper>;
171
- compressionProgram: Address<TAccountCompressionProgram>;
320
+ logWrapper?: Address<TAccountLogWrapper>;
321
+ compressionProgram?: Address<TAccountCompressionProgram>;
172
322
  systemProgram?: Address<TAccountSystemProgram>;
173
323
  root: DelegateInstructionDataArgs["root"];
174
324
  dataHash: DelegateInstructionDataArgs["dataHash"];
@@ -242,6 +392,14 @@ export function getDelegateInstruction<
242
392
  const args = { ...input };
243
393
 
244
394
  // Resolve default values.
395
+ if (!accounts.logWrapper.value) {
396
+ accounts.logWrapper.value =
397
+ "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV" as Address<"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV">;
398
+ }
399
+ if (!accounts.compressionProgram.value) {
400
+ accounts.compressionProgram.value =
401
+ "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK" as Address<"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK">;
402
+ }
245
403
  if (!accounts.systemProgram.value) {
246
404
  accounts.systemProgram.value =
247
405
  "11111111111111111111111111111111" as Address<"11111111111111111111111111111111">;