@macalinao/clients-mpl-bubblegum 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/accounts/index.d.ts +2 -1
- package/dist/generated/accounts/treeConfig.d.ts +22 -7
- package/dist/generated/accounts/treeConfig.d.ts.map +1 -1
- package/dist/generated/accounts/treeConfig.js +7 -0
- package/dist/generated/accounts/treeConfig.js.map +1 -1
- package/dist/generated/accounts/voucher.d.ts +14 -7
- package/dist/generated/accounts/voucher.d.ts.map +1 -1
- package/dist/generated/accounts/voucher.js +7 -0
- package/dist/generated/accounts/voucher.js.map +1 -1
- package/dist/generated/errors/bubblegum.d.ts +0 -1
- package/dist/generated/errors/bubblegum.d.ts.map +1 -1
- package/dist/generated/errors/bubblegum.js +66 -59
- package/dist/generated/errors/bubblegum.js.map +1 -1
- package/dist/generated/errors/index.d.ts +2 -1
- package/dist/generated/index.d.ts +8 -1
- package/dist/generated/instructions/burn.d.ts +141 -17
- package/dist/generated/instructions/burn.d.ts.map +1 -1
- package/dist/generated/instructions/burn.js +23 -0
- package/dist/generated/instructions/burn.js.map +1 -1
- package/dist/generated/instructions/burnV2.d.ts +179 -31
- package/dist/generated/instructions/burnV2.d.ts.map +1 -1
- package/dist/generated/instructions/burnV2.js +21 -0
- package/dist/generated/instructions/burnV2.js.map +1 -1
- package/dist/generated/instructions/cancelRedeem.d.ts +99 -13
- package/dist/generated/instructions/cancelRedeem.d.ts.map +1 -1
- package/dist/generated/instructions/cancelRedeem.js +19 -0
- package/dist/generated/instructions/cancelRedeem.js.map +1 -1
- package/dist/generated/instructions/closeTreeV2.d.ts +85 -19
- package/dist/generated/instructions/closeTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/closeTreeV2.js +21 -0
- package/dist/generated/instructions/closeTreeV2.js.map +1 -1
- package/dist/generated/instructions/collectV2.d.ts +20 -7
- package/dist/generated/instructions/collectV2.d.ts.map +1 -1
- package/dist/generated/instructions/collectV2.js +10 -0
- package/dist/generated/instructions/collectV2.js.map +1 -1
- package/dist/generated/instructions/compress.d.ts +119 -9
- package/dist/generated/instructions/compress.d.ts.map +1 -1
- package/dist/generated/instructions/compress.js +21 -0
- package/dist/generated/instructions/compress.js.map +1 -1
- package/dist/generated/instructions/createTree.d.ts +117 -11
- package/dist/generated/instructions/createTree.d.ts.map +1 -1
- package/dist/generated/instructions/createTree.js +23 -0
- package/dist/generated/instructions/createTree.js.map +1 -1
- package/dist/generated/instructions/createTreeV2.d.ts +109 -14
- package/dist/generated/instructions/createTreeV2.d.ts.map +1 -1
- package/dist/generated/instructions/createTreeV2.js +23 -0
- package/dist/generated/instructions/createTreeV2.js.map +1 -1
- package/dist/generated/instructions/decompressV1.d.ts +106 -11
- package/dist/generated/instructions/decompressV1.d.ts.map +1 -1
- package/dist/generated/instructions/decompressV1.js +25 -0
- package/dist/generated/instructions/decompressV1.js.map +1 -1
- package/dist/generated/instructions/delegate.d.ts +140 -17
- package/dist/generated/instructions/delegate.d.ts.map +1 -1
- package/dist/generated/instructions/delegate.js +19 -0
- package/dist/generated/instructions/delegate.js.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts +171 -27
- package/dist/generated/instructions/delegateAndFreezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateAndFreezeV2.js +17 -0
- package/dist/generated/instructions/delegateAndFreezeV2.js.map +1 -1
- package/dist/generated/instructions/delegateV2.d.ts +169 -27
- package/dist/generated/instructions/delegateV2.d.ts.map +1 -1
- package/dist/generated/instructions/delegateV2.js +15 -0
- package/dist/generated/instructions/delegateV2.js.map +1 -1
- package/dist/generated/instructions/freezeV2.d.ts +174 -28
- package/dist/generated/instructions/freezeV2.d.ts.map +1 -1
- package/dist/generated/instructions/freezeV2.js +23 -0
- package/dist/generated/instructions/freezeV2.js.map +1 -1
- package/dist/generated/instructions/index.d.ts +2 -1
- package/dist/generated/instructions/mintToCollectionV1.d.ts +171 -20
- package/dist/generated/instructions/mintToCollectionV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintToCollectionV1.js +23 -0
- package/dist/generated/instructions/mintToCollectionV1.js.map +1 -1
- package/dist/generated/instructions/mintV1.d.ts +109 -11
- package/dist/generated/instructions/mintV1.d.ts.map +1 -1
- package/dist/generated/instructions/mintV1.js +21 -0
- package/dist/generated/instructions/mintV1.js.map +1 -1
- package/dist/generated/instructions/mintV2.d.ts +163 -17
- package/dist/generated/instructions/mintV2.d.ts.map +1 -1
- package/dist/generated/instructions/mintV2.js +45 -0
- package/dist/generated/instructions/mintV2.js.map +1 -1
- package/dist/generated/instructions/redeem.d.ts +153 -17
- package/dist/generated/instructions/redeem.d.ts.map +1 -1
- package/dist/generated/instructions/redeem.js +23 -0
- package/dist/generated/instructions/redeem.js.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.d.ts +222 -38
- package/dist/generated/instructions/setAndVerifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/setAndVerifyCollection.js +21 -0
- package/dist/generated/instructions/setAndVerifyCollection.js.map +1 -1
- package/dist/generated/instructions/setCollectionV2.d.ts +186 -39
- package/dist/generated/instructions/setCollectionV2.d.ts.map +1 -1
- package/dist/generated/instructions/setCollectionV2.js +21 -0
- package/dist/generated/instructions/setCollectionV2.js.map +1 -1
- package/dist/generated/instructions/setDecompressableState.d.ts +40 -9
- package/dist/generated/instructions/setDecompressableState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressableState.js +13 -0
- package/dist/generated/instructions/setDecompressableState.js.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.d.ts +41 -9
- package/dist/generated/instructions/setDecompressibleState.d.ts.map +1 -1
- package/dist/generated/instructions/setDecompressibleState.js +14 -0
- package/dist/generated/instructions/setDecompressibleState.js.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.d.ts +166 -31
- package/dist/generated/instructions/setNonTransferableV2.d.ts.map +1 -1
- package/dist/generated/instructions/setNonTransferableV2.js +23 -0
- package/dist/generated/instructions/setNonTransferableV2.js.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.d.ts +65 -9
- package/dist/generated/instructions/setTreeDelegate.d.ts.map +1 -1
- package/dist/generated/instructions/setTreeDelegate.js +21 -0
- package/dist/generated/instructions/setTreeDelegate.js.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.d.ts +158 -24
- package/dist/generated/instructions/thawAndRevokeV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawAndRevokeV2.js +17 -0
- package/dist/generated/instructions/thawAndRevokeV2.js.map +1 -1
- package/dist/generated/instructions/thawV2.d.ts +166 -28
- package/dist/generated/instructions/thawV2.d.ts.map +1 -1
- package/dist/generated/instructions/thawV2.js +15 -0
- package/dist/generated/instructions/thawV2.js.map +1 -1
- package/dist/generated/instructions/transfer.d.ts +140 -17
- package/dist/generated/instructions/transfer.d.ts.map +1 -1
- package/dist/generated/instructions/transfer.js +19 -0
- package/dist/generated/instructions/transfer.js.map +1 -1
- package/dist/generated/instructions/transferV2.d.ts +167 -31
- package/dist/generated/instructions/transferV2.d.ts.map +1 -1
- package/dist/generated/instructions/transferV2.js +21 -0
- package/dist/generated/instructions/transferV2.js.map +1 -1
- package/dist/generated/instructions/unverifyCollection.d.ts +215 -38
- package/dist/generated/instructions/unverifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCollection.js +19 -0
- package/dist/generated/instructions/unverifyCollection.js.map +1 -1
- package/dist/generated/instructions/unverifyCreator.d.ts +161 -17
- package/dist/generated/instructions/unverifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreator.js +19 -0
- package/dist/generated/instructions/unverifyCreator.js.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/unverifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/unverifyCreatorV2.js +19 -0
- package/dist/generated/instructions/unverifyCreatorV2.js.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.d.ts +180 -28
- package/dist/generated/instructions/updateAssetDataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateAssetDataV2.js +21 -0
- package/dist/generated/instructions/updateAssetDataV2.js.map +1 -1
- package/dist/generated/instructions/updateMetadata.d.ts +183 -28
- package/dist/generated/instructions/updateMetadata.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadata.js +21 -0
- package/dist/generated/instructions/updateMetadata.js.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.d.ts +162 -27
- package/dist/generated/instructions/updateMetadataV2.d.ts.map +1 -1
- package/dist/generated/instructions/updateMetadataV2.js +19 -0
- package/dist/generated/instructions/updateMetadataV2.js.map +1 -1
- package/dist/generated/instructions/verifyCollection.d.ts +215 -38
- package/dist/generated/instructions/verifyCollection.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCollection.js +19 -0
- package/dist/generated/instructions/verifyCollection.js.map +1 -1
- package/dist/generated/instructions/verifyCreator.d.ts +161 -17
- package/dist/generated/instructions/verifyCreator.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreator.js +19 -0
- package/dist/generated/instructions/verifyCreator.js.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.d.ts +143 -21
- package/dist/generated/instructions/verifyCreatorV2.d.ts.map +1 -1
- package/dist/generated/instructions/verifyCreatorV2.js +19 -0
- package/dist/generated/instructions/verifyCreatorV2.js.map +1 -1
- package/dist/generated/pdas/assetId.d.ts +2 -3
- package/dist/generated/pdas/assetId.d.ts.map +1 -1
- package/dist/generated/pdas/assetId.js +7 -0
- package/dist/generated/pdas/assetId.js.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts +0 -1
- package/dist/generated/pdas/bubblegumSigner.d.ts.map +1 -1
- package/dist/generated/pdas/bubblegumSigner.js +7 -0
- package/dist/generated/pdas/bubblegumSigner.js.map +1 -1
- package/dist/generated/pdas/index.d.ts +2 -1
- package/dist/generated/pdas/masterEdition.d.ts +2 -3
- package/dist/generated/pdas/masterEdition.d.ts.map +1 -1
- package/dist/generated/pdas/masterEdition.js +7 -0
- package/dist/generated/pdas/masterEdition.js.map +1 -1
- package/dist/generated/pdas/metadata.d.ts +2 -3
- package/dist/generated/pdas/metadata.d.ts.map +1 -1
- package/dist/generated/pdas/metadata.js +7 -0
- package/dist/generated/pdas/metadata.js.map +1 -1
- package/dist/generated/pdas/mintAuthority.d.ts +2 -3
- package/dist/generated/pdas/mintAuthority.d.ts.map +1 -1
- package/dist/generated/pdas/mintAuthority.js +7 -0
- package/dist/generated/pdas/mintAuthority.js.map +1 -1
- package/dist/generated/pdas/treeConfig.d.ts +2 -3
- package/dist/generated/pdas/treeConfig.d.ts.map +1 -1
- package/dist/generated/pdas/treeConfig.js +7 -0
- package/dist/generated/pdas/treeConfig.js.map +1 -1
- package/dist/generated/pdas/voucher.d.ts +2 -3
- package/dist/generated/pdas/voucher.d.ts.map +1 -1
- package/dist/generated/pdas/voucher.js +7 -0
- package/dist/generated/pdas/voucher.js.map +1 -1
- package/dist/generated/programs/bubblegum.d.ts +17 -12
- package/dist/generated/programs/bubblegum.d.ts.map +1 -1
- package/dist/generated/programs/bubblegum.js +11 -1
- package/dist/generated/programs/bubblegum.js.map +1 -1
- package/dist/generated/programs/index.d.ts +2 -1
- package/dist/generated/programs/mplTokenMetadata.d.ts +8 -8
- package/dist/generated/programs/mplTokenMetadata.d.ts.map +1 -1
- package/dist/generated/programs/mplTokenMetadata.js +7 -0
- package/dist/generated/programs/mplTokenMetadata.js.map +1 -1
- package/dist/generated/types/assetDataSchema.d.ts +4 -1
- package/dist/generated/types/assetDataSchema.d.ts.map +1 -1
- package/dist/generated/types/assetDataSchema.js +11 -0
- package/dist/generated/types/assetDataSchema.js.map +1 -1
- package/dist/generated/types/bubblegumEventType.d.ts +4 -1
- package/dist/generated/types/bubblegumEventType.d.ts.map +1 -1
- package/dist/generated/types/bubblegumEventType.js +11 -0
- package/dist/generated/types/bubblegumEventType.js.map +1 -1
- package/dist/generated/types/collection.d.ts +9 -3
- package/dist/generated/types/collection.d.ts.map +1 -1
- package/dist/generated/types/collection.js +7 -0
- package/dist/generated/types/collection.js.map +1 -1
- package/dist/generated/types/creator.d.ts +9 -7
- package/dist/generated/types/creator.d.ts.map +1 -1
- package/dist/generated/types/creator.js +7 -0
- package/dist/generated/types/creator.js.map +1 -1
- package/dist/generated/types/decompressibleState.d.ts +5 -1
- package/dist/generated/types/decompressibleState.d.ts.map +1 -1
- package/dist/generated/types/decompressibleState.js +12 -0
- package/dist/generated/types/decompressibleState.js.map +1 -1
- package/dist/generated/types/index.d.ts +2 -1
- package/dist/generated/types/instructionName.d.ts +4 -1
- package/dist/generated/types/instructionName.d.ts.map +1 -1
- package/dist/generated/types/instructionName.js +11 -0
- package/dist/generated/types/instructionName.js.map +1 -1
- package/dist/generated/types/leafSchema.d.ts +51 -13
- package/dist/generated/types/leafSchema.d.ts.map +1 -1
- package/dist/generated/types/leafSchema.js +7 -0
- package/dist/generated/types/leafSchema.js.map +1 -1
- package/dist/generated/types/metadataArgs.d.ts +19 -7
- package/dist/generated/types/metadataArgs.d.ts.map +1 -1
- package/dist/generated/types/metadataArgs.js +7 -0
- package/dist/generated/types/metadataArgs.js.map +1 -1
- package/dist/generated/types/metadataArgsV2.d.ts +14 -7
- package/dist/generated/types/metadataArgsV2.d.ts.map +1 -1
- package/dist/generated/types/metadataArgsV2.js +7 -0
- package/dist/generated/types/metadataArgsV2.js.map +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts +1 -1
- package/dist/generated/types/tokenProgramVersion.d.ts.map +1 -1
- package/dist/generated/types/tokenProgramVersion.js +8 -0
- package/dist/generated/types/tokenProgramVersion.js.map +1 -1
- package/dist/generated/types/tokenStandard.d.ts +5 -1
- package/dist/generated/types/tokenStandard.d.ts.map +1 -1
- package/dist/generated/types/tokenStandard.js +12 -0
- package/dist/generated/types/tokenStandard.js.map +1 -1
- package/dist/generated/types/updateArgs.d.ts +26 -7
- package/dist/generated/types/updateArgs.d.ts.map +1 -1
- package/dist/generated/types/updateArgs.js +7 -0
- package/dist/generated/types/updateArgs.js.map +1 -1
- package/dist/generated/types/useMethod.d.ts +1 -1
- package/dist/generated/types/useMethod.d.ts.map +1 -1
- package/dist/generated/types/useMethod.js +8 -0
- package/dist/generated/types/useMethod.js.map +1 -1
- package/dist/generated/types/uses.d.ts +16 -5
- package/dist/generated/types/uses.d.ts.map +1 -1
- package/dist/generated/types/uses.js +7 -0
- package/dist/generated/types/uses.js.map +1 -1
- package/dist/generated/types/version.d.ts +5 -1
- package/dist/generated/types/version.d.ts.map +1 -1
- package/dist/generated/types/version.js +12 -0
- package/dist/generated/types/version.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +6 -6
- package/src/generated/accounts/treeConfig.ts +36 -27
- package/src/generated/accounts/voucher.ts +30 -23
- package/src/generated/errors/bubblegum.ts +121 -154
- package/src/generated/instructions/burn.ts +157 -35
- package/src/generated/instructions/burnV2.ts +197 -52
- package/src/generated/instructions/cancelRedeem.ts +116 -32
- package/src/generated/instructions/closeTreeV2.ts +96 -35
- package/src/generated/instructions/collectV2.ts +34 -23
- package/src/generated/instructions/compress.ts +136 -30
- package/src/generated/instructions/createTree.ts +137 -33
- package/src/generated/instructions/createTreeV2.ts +128 -36
- package/src/generated/instructions/decompressV1.ts +124 -31
- package/src/generated/instructions/delegate.ts +159 -38
- package/src/generated/instructions/delegateAndFreezeV2.ts +191 -51
- package/src/generated/instructions/delegateV2.ts +189 -51
- package/src/generated/instructions/freezeV2.ts +193 -49
- package/src/generated/instructions/mintToCollectionV1.ts +186 -37
- package/src/generated/instructions/mintV1.ts +127 -31
- package/src/generated/instructions/mintV2.ts +184 -45
- package/src/generated/instructions/redeem.ts +172 -38
- package/src/generated/instructions/setAndVerifyCollection.ts +236 -54
- package/src/generated/instructions/setCollectionV2.ts +202 -58
- package/src/generated/instructions/setDecompressableState.ts +59 -31
- package/src/generated/instructions/setDecompressibleState.ts +60 -31
- package/src/generated/instructions/setNonTransferableV2.ts +184 -52
- package/src/generated/instructions/setTreeDelegate.ts +82 -28
- package/src/generated/instructions/thawAndRevokeV2.ts +179 -48
- package/src/generated/instructions/thawV2.ts +185 -49
- package/src/generated/instructions/transfer.ts +156 -35
- package/src/generated/instructions/transferV2.ts +185 -52
- package/src/generated/instructions/unverifyCollection.ts +229 -54
- package/src/generated/instructions/unverifyCreator.ts +181 -39
- package/src/generated/instructions/unverifyCreatorV2.ts +164 -46
- package/src/generated/instructions/updateAssetDataV2.ts +200 -50
- package/src/generated/instructions/updateMetadata.ts +200 -52
- package/src/generated/instructions/updateMetadataV2.ts +183 -54
- package/src/generated/instructions/verifyCollection.ts +229 -54
- package/src/generated/instructions/verifyCreator.ts +181 -39
- package/src/generated/instructions/verifyCreatorV2.ts +164 -46
- package/src/generated/pdas/assetId.ts +4 -3
- package/src/generated/pdas/bubblegumSigner.ts +6 -2
- package/src/generated/pdas/masterEdition.ts +4 -3
- package/src/generated/pdas/metadata.ts +4 -3
- package/src/generated/pdas/mintAuthority.ts +8 -4
- package/src/generated/pdas/treeConfig.ts +8 -4
- package/src/generated/pdas/voucher.ts +4 -3
- package/src/generated/programs/bubblegum.ts +146 -144
- package/src/generated/programs/mplTokenMetadata.ts +5 -10
- package/src/generated/types/assetDataSchema.ts +14 -8
- package/src/generated/types/bubblegumEventType.ts +13 -7
- package/src/generated/types/collection.ts +13 -8
- package/src/generated/types/creator.ts +11 -10
- package/src/generated/types/decompressibleState.ts +14 -7
- package/src/generated/types/instructionName.ts +46 -40
- package/src/generated/types/leafSchema.ts +59 -22
- package/src/generated/types/metadataArgs.ts +35 -27
- package/src/generated/types/metadataArgsV2.ts +23 -20
- package/src/generated/types/tokenProgramVersion.ts +10 -7
- package/src/generated/types/tokenStandard.ts +16 -9
- package/src/generated/types/updateArgs.ts +36 -15
- package/src/generated/types/useMethod.ts +11 -8
- package/src/generated/types/uses.ts +24 -11
- package/src/generated/types/version.ts +14 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setAndVerifyCollection.js","names":[],"sources":["../../../src/generated/instructions/setAndVerifyCollection.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 getAddressDecoder,\n getAddressEncoder,\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 SET_AND_VERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([235, 242, 121, 216, 158, 234, 180, 234]);\n\nexport function getSetAndVerifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n SET_AND_VERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type SetAndVerifyCollectionInstruction<\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 string | AccountMeta<string> =\n \"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 string | AccountMeta<string> =\n \"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\",\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\",\n TAccountTokenMetadataProgram extends string | AccountMeta<string> =\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? 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 SetAndVerifyCollectionInstructionData {\n discriminator: ReadonlyUint8Array;\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: bigint;\n index: number;\n message: MetadataArgs;\n collection: Address;\n}\n\nexport interface SetAndVerifyCollectionInstructionDataArgs {\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: number | bigint;\n index: number;\n message: MetadataArgsArgs;\n collection: Address;\n}\n\nexport function getSetAndVerifyCollectionInstructionDataEncoder(): Encoder<SetAndVerifyCollectionInstructionDataArgs> {\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 [\"collection\", getAddressEncoder()],\n ]),\n (value) => ({\n ...value,\n discriminator: SET_AND_VERIFY_COLLECTION_DISCRIMINATOR,\n }),\n );\n}\n\nexport function getSetAndVerifyCollectionInstructionDataDecoder(): Decoder<SetAndVerifyCollectionInstructionData> {\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 [\"collection\", getAddressDecoder()],\n ]);\n}\n\nexport function getSetAndVerifyCollectionInstructionDataCodec(): Codec<\n SetAndVerifyCollectionInstructionDataArgs,\n SetAndVerifyCollectionInstructionData\n> {\n return combineCodec(\n getSetAndVerifyCollectionInstructionDataEncoder(),\n getSetAndVerifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport interface SetAndVerifyCollectionAsyncInput<\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: SetAndVerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: SetAndVerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: SetAndVerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: SetAndVerifyCollectionInstructionDataArgs[\"nonce\"];\n index: SetAndVerifyCollectionInstructionDataArgs[\"index\"];\n message: SetAndVerifyCollectionInstructionDataArgs[\"message\"];\n collection: SetAndVerifyCollectionInstructionDataArgs[\"collection\"];\n}\n\nexport async function getSetAndVerifyCollectionInstructionAsync<\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: SetAndVerifyCollectionAsyncInput<\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 SetAndVerifyCollectionInstruction<\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: getSetAndVerifyCollectionInstructionDataEncoder().encode(\n args as SetAndVerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as SetAndVerifyCollectionInstruction<\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 SetAndVerifyCollectionInput<\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: SetAndVerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: SetAndVerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: SetAndVerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: SetAndVerifyCollectionInstructionDataArgs[\"nonce\"];\n index: SetAndVerifyCollectionInstructionDataArgs[\"index\"];\n message: SetAndVerifyCollectionInstructionDataArgs[\"message\"];\n collection: SetAndVerifyCollectionInstructionDataArgs[\"collection\"];\n}\n\nexport function getSetAndVerifyCollectionInstruction<\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: SetAndVerifyCollectionInput<\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): SetAndVerifyCollectionInstruction<\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: getSetAndVerifyCollectionInstructionDataEncoder().encode(\n args as SetAndVerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as SetAndVerifyCollectionInstruction<\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 ParsedSetAndVerifyCollectionInstruction<\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: SetAndVerifyCollectionInstructionData;\n}\n\nexport function parseSetAndVerifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedSetAndVerifyCollectionInstruction<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: getSetAndVerifyCollectionInstructionDataDecoder().decode(\n instruction.data,\n ),\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setAndVerifyCollection.js","names":[],"sources":["../../../src/generated/instructions/setAndVerifyCollection.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport {\n address,\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getAddressDecoder,\n getAddressEncoder,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\n getStructDecoder,\n getStructEncoder,\n getU32Decoder,\n getU32Encoder,\n getU64Decoder,\n getU64Encoder,\n getU8Decoder,\n getU8Encoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n type AccountMeta,\n type AccountSignerMeta,\n type Address,\n type Codec,\n type Decoder,\n type Encoder,\n type Instruction,\n type InstructionWithAccounts,\n type InstructionWithData,\n type ReadonlyAccount,\n type ReadonlySignerAccount,\n type ReadonlyUint8Array,\n type TransactionSigner,\n type WritableAccount,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n type ResolvedInstructionAccount,\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 type MetadataArgs,\n type MetadataArgsArgs,\n} from \"../types/index.js\";\n\nexport const SET_AND_VERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([235, 242, 121, 216, 158, 234, 180, 234]);\n\nexport function getSetAndVerifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n SET_AND_VERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type SetAndVerifyCollectionInstruction<\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 string | AccountMeta<string> =\n \"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 string | AccountMeta<string> =\n \"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV\",\n TAccountCompressionProgram extends string | AccountMeta<string> =\n \"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK\",\n TAccountTokenMetadataProgram extends string | AccountMeta<string> =\n \"metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s\",\n TAccountSystemProgram extends string | AccountMeta<string> =\n \"11111111111111111111111111111111\",\n TRemainingAccounts extends readonly AccountMeta<string>[] = [],\n> = Instruction<TProgram> &\n InstructionWithData<ReadonlyUint8Array> &\n InstructionWithAccounts<\n [\n TAccountTreeAuthority extends string\n ? 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 type SetAndVerifyCollectionInstructionData = {\n discriminator: ReadonlyUint8Array;\n /**\n * Current Merkle root of the tree, used together with the Merkle proof\n * (passed as remaining accounts) to verify the leaf being operated on.\n */\n root: Array<number>;\n /**\n * Keccak256 hash of the leaf's metadata, used together with `root` to\n * verify the leaf before it is modified.\n */\n dataHash: Array<number>;\n /**\n * Keccak256 hash of the leaf's creators array, used together with\n * `root` to verify the leaf before it is modified.\n */\n creatorHash: Array<number>;\n /**\n * Tree-scoped nonce identifying the leaf, equal to the tree's\n * `numMinted` at the time the leaf was minted. Combined with the tree\n * address to derive the leaf's asset id.\n */\n nonce: bigint;\n /**\n * Position of the leaf within the Merkle tree, used with the Merkle\n * proof to locate and verify the leaf.\n */\n index: number;\n /**\n * The leaf's current metadata args, verified against `dataHash` before\n * `collection` is set and marked verified.\n */\n message: MetadataArgs;\n /**\n * Collection mint to set on the leaf's metadata and mark verified in\n * the same instruction.\n */\n collection: Address;\n};\n\nexport type SetAndVerifyCollectionInstructionDataArgs = {\n /**\n * Current Merkle root of the tree, used together with the Merkle proof\n * (passed as remaining accounts) to verify the leaf being operated on.\n */\n root: Array<number>;\n /**\n * Keccak256 hash of the leaf's metadata, used together with `root` to\n * verify the leaf before it is modified.\n */\n dataHash: Array<number>;\n /**\n * Keccak256 hash of the leaf's creators array, used together with\n * `root` to verify the leaf before it is modified.\n */\n creatorHash: Array<number>;\n /**\n * Tree-scoped nonce identifying the leaf, equal to the tree's\n * `numMinted` at the time the leaf was minted. Combined with the tree\n * address to derive the leaf's asset id.\n */\n nonce: number | bigint;\n /**\n * Position of the leaf within the Merkle tree, used with the Merkle\n * proof to locate and verify the leaf.\n */\n index: number;\n /**\n * The leaf's current metadata args, verified against `dataHash` before\n * `collection` is set and marked verified.\n */\n message: MetadataArgsArgs;\n /**\n * Collection mint to set on the leaf's metadata and mark verified in\n * the same instruction.\n */\n collection: Address;\n};\n\nexport function getSetAndVerifyCollectionInstructionDataEncoder(): Encoder<SetAndVerifyCollectionInstructionDataArgs> {\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 [\"collection\", getAddressEncoder()],\n ]),\n (value) => ({\n ...value,\n discriminator: SET_AND_VERIFY_COLLECTION_DISCRIMINATOR,\n }),\n );\n}\n\nexport function getSetAndVerifyCollectionInstructionDataDecoder(): Decoder<SetAndVerifyCollectionInstructionData> {\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 [\"collection\", getAddressDecoder()],\n ]);\n}\n\nexport function getSetAndVerifyCollectionInstructionDataCodec(): Codec<\n SetAndVerifyCollectionInstructionDataArgs,\n SetAndVerifyCollectionInstructionData\n> {\n return combineCodec(\n getSetAndVerifyCollectionInstructionDataEncoder(),\n getSetAndVerifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport type SetAndVerifyCollectionAsyncInput<\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 /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority?: Address<TAccountTreeAuthority>;\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: Address<TAccountLeafOwner>;\n /**\n * Delegate authority for the leaf; defaults to the leaf owner when no\n * delegate is set.\n */\n leafDelegate: Address<TAccountLeafDelegate>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /** Account that pays for the transaction and any account rent. */\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Checked as a signer here because `setAndVerifyCollection` actually\n * changes the leaf's metadata, unlike plain collection verification.\n */\n treeDelegate: Address<TAccountTreeDelegate>;\n /**\n * Authority of the collection the asset is being added to or removed\n * from (typically the collection's update authority or a delegate).\n */\n collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;\n /**\n * If there is no collection authority record PDA, pass the Bubblegum\n * program address instead.\n */\n collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;\n /** Mint account of the Token Metadata collection NFT. */\n collectionMint: Address<TAccountCollectionMint>;\n /** Metadata account of the Token Metadata collection NFT. */\n collectionMetadata?: Address<TAccountCollectionMetadata>;\n /** Master edition account of the Token Metadata collection NFT. */\n editionAccount?: Address<TAccountEditionAccount>;\n /**\n * PDA Bubblegum uses to sign the CPI into the Token Metadata program\n * that (un)verifies the collection.\n */\n bubblegumSigner?: Address<TAccountBubblegumSigner>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /**\n * The Token Metadata program, invoked to read or (un)verify the\n * legacy collection accounts.\n */\n tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n root: SetAndVerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: SetAndVerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: SetAndVerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: SetAndVerifyCollectionInstructionDataArgs[\"nonce\"];\n index: SetAndVerifyCollectionInstructionDataArgs[\"index\"];\n message: SetAndVerifyCollectionInstructionDataArgs[\"message\"];\n collection: SetAndVerifyCollectionInstructionDataArgs[\"collection\"];\n};\n\n/**\n * Sets a collection on a leaf's metadata and verifies it in one\n * instruction.\n *\n * Equivalent to updating the leaf's `collection` field to `collection`\n * and then verifying it, without a separate `verifyCollection` call.\n */\nexport async function getSetAndVerifyCollectionInstructionAsync<\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: SetAndVerifyCollectionAsyncInput<\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 SetAndVerifyCollectionInstruction<\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: getSetAndVerifyCollectionInstructionDataEncoder().encode(\n args as SetAndVerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as SetAndVerifyCollectionInstruction<\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 type SetAndVerifyCollectionInput<\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 /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: Address<TAccountTreeAuthority>;\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: Address<TAccountLeafOwner>;\n /**\n * Delegate authority for the leaf; defaults to the leaf owner when no\n * delegate is set.\n */\n leafDelegate: Address<TAccountLeafDelegate>;\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: Address<TAccountMerkleTree>;\n /** Account that pays for the transaction and any account rent. */\n payer: TransactionSigner<TAccountPayer>;\n /**\n * Checked as a signer here because `setAndVerifyCollection` actually\n * changes the leaf's metadata, unlike plain collection verification.\n */\n treeDelegate: Address<TAccountTreeDelegate>;\n /**\n * Authority of the collection the asset is being added to or removed\n * from (typically the collection's update authority or a delegate).\n */\n collectionAuthority: TransactionSigner<TAccountCollectionAuthority>;\n /**\n * If there is no collection authority record PDA, pass the Bubblegum\n * program address instead.\n */\n collectionAuthorityRecordPda?: Address<TAccountCollectionAuthorityRecordPda>;\n /** Mint account of the Token Metadata collection NFT. */\n collectionMint: Address<TAccountCollectionMint>;\n /** Metadata account of the Token Metadata collection NFT. */\n collectionMetadata: Address<TAccountCollectionMetadata>;\n /** Master edition account of the Token Metadata collection NFT. */\n editionAccount: Address<TAccountEditionAccount>;\n /**\n * PDA Bubblegum uses to sign the CPI into the Token Metadata program\n * that (un)verifies the collection.\n */\n bubblegumSigner: Address<TAccountBubblegumSigner>;\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper?: Address<TAccountLogWrapper>;\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram?: Address<TAccountCompressionProgram>;\n /**\n * The Token Metadata program, invoked to read or (un)verify the\n * legacy collection accounts.\n */\n tokenMetadataProgram?: Address<TAccountTokenMetadataProgram>;\n /** The Solana System program. */\n systemProgram?: Address<TAccountSystemProgram>;\n root: SetAndVerifyCollectionInstructionDataArgs[\"root\"];\n dataHash: SetAndVerifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: SetAndVerifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: SetAndVerifyCollectionInstructionDataArgs[\"nonce\"];\n index: SetAndVerifyCollectionInstructionDataArgs[\"index\"];\n message: SetAndVerifyCollectionInstructionDataArgs[\"message\"];\n collection: SetAndVerifyCollectionInstructionDataArgs[\"collection\"];\n};\n\n/**\n * Sets a collection on a leaf's metadata and verifies it in one\n * instruction.\n *\n * Equivalent to updating the leaf's `collection` field to `collection`\n * and then verifying it, without a separate `verifyCollection` call.\n */\nexport function getSetAndVerifyCollectionInstruction<\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: SetAndVerifyCollectionInput<\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): SetAndVerifyCollectionInstruction<\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: getSetAndVerifyCollectionInstructionDataEncoder().encode(\n args as SetAndVerifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as SetAndVerifyCollectionInstruction<\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 type ParsedSetAndVerifyCollectionInstruction<\n TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS,\n TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[],\n> = {\n programAddress: Address<TProgram>;\n accounts: {\n /**\n * The tree's `TreeConfig` PDA, which stores its configuration and acts\n * as the tree's authority for CPIs into the compression program.\n */\n treeAuthority: TAccountMetas[0];\n /** Owner of the compressed NFT leaf being operated on. */\n leafOwner: TAccountMetas[1];\n /**\n * Delegate authority for the leaf; defaults to the leaf owner when no\n * delegate is set.\n */\n leafDelegate: TAccountMetas[2];\n /**\n * The concurrent Merkle tree account storing the compressed leaves,\n * owned by the account compression program.\n */\n merkleTree: TAccountMetas[3];\n /** Account that pays for the transaction and any account rent. */\n payer: TAccountMetas[4];\n /**\n * Checked as a signer here because `setAndVerifyCollection` actually\n * changes the leaf's metadata, unlike plain collection verification.\n */\n treeDelegate: TAccountMetas[5];\n /**\n * Authority of the collection the asset is being added to or removed\n * from (typically the collection's update authority or a delegate).\n */\n collectionAuthority: TAccountMetas[6];\n /**\n * If there is no collection authority record PDA, pass the Bubblegum\n * program address instead.\n */\n collectionAuthorityRecordPda: TAccountMetas[7];\n /** Mint account of the Token Metadata collection NFT. */\n collectionMint: TAccountMetas[8];\n /** Metadata account of the Token Metadata collection NFT. */\n collectionMetadata: TAccountMetas[9];\n /** Master edition account of the Token Metadata collection NFT. */\n editionAccount: TAccountMetas[10];\n /**\n * PDA Bubblegum uses to sign the CPI into the Token Metadata program\n * that (un)verifies the collection.\n */\n bubblegumSigner: TAccountMetas[11];\n /**\n * The SPL/MPL Noop program, used to log leaf data so off-chain indexers\n * can reconstruct the tree.\n */\n logWrapper: TAccountMetas[12];\n /**\n * The SPL/MPL Account Compression program that owns and manages the\n * Merkle tree.\n */\n compressionProgram: TAccountMetas[13];\n /**\n * The Token Metadata program, invoked to read or (un)verify the\n * legacy collection accounts.\n */\n tokenMetadataProgram: TAccountMetas[14];\n /** The Solana System program. */\n systemProgram: TAccountMetas[15];\n };\n data: SetAndVerifyCollectionInstructionData;\n};\n\nexport function parseSetAndVerifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedSetAndVerifyCollectionInstruction<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: getSetAndVerifyCollectionInstructionDataDecoder().decode(\n instruction.data,\n ),\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,55 +1,133 @@
|
|
|
1
1
|
import { MetadataArgsV2, MetadataArgsV2Args } from "../types/metadataArgsV2.js";
|
|
2
|
+
import "../types/index.js";
|
|
2
3
|
import { BUBBLEGUM_PROGRAM_ADDRESS } from "../programs/bubblegum.js";
|
|
4
|
+
import "../programs/index.js";
|
|
3
5
|
import { AccountMeta, AccountSignerMeta, Address, Codec, Decoder, Encoder, Instruction, InstructionWithAccounts, InstructionWithData, Option, OptionOrNullable, ReadonlyAccount, ReadonlySignerAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount, WritableSignerAccount } from "@solana/kit";
|
|
4
|
-
|
|
5
6
|
//#region src/generated/instructions/setCollectionV2.d.ts
|
|
6
7
|
declare const SET_COLLECTION_V2_DISCRIMINATOR: ReadonlyUint8Array;
|
|
7
8
|
declare function getSetCollectionV2DiscriminatorBytes(): ReadonlyUint8Array;
|
|
8
9
|
type SetCollectionV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountTreeAuthority extends string | AccountMeta<string> = string, TAccountPayer extends string | AccountMeta<string> = string, TAccountAuthority extends string | AccountMeta<string> = string, TAccountNewCollectionAuthority extends string | AccountMeta<string> = string, TAccountLeafOwner extends string | AccountMeta<string> = string, TAccountLeafDelegate extends string | AccountMeta<string> = string, TAccountMerkleTree extends string | AccountMeta<string> = string, TAccountCoreCollection extends string | AccountMeta<string> = string, TAccountNewCoreCollection extends string | AccountMeta<string> = string, TAccountMplCoreCpiSigner extends string | AccountMeta<string> = "CbNY3JiXdXNE9tPNEk1aRZVEkWdj2v7kfJLNQwZZgpXk", TAccountLogWrapper extends string | AccountMeta<string> = "mnoopTCrg4p8ry25e4bcWA9XZjbNjMTfgYVGGEdRsf3", TAccountCompressionProgram extends string | AccountMeta<string> = "mcmt6YrQEMKw8Mw43FmpRLmf7BqRnFMKmAcbxE3xkAW", TAccountMplCoreProgram extends string | AccountMeta<string> = "CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d", TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountTreeAuthority extends string ? WritableAccount<TAccountTreeAuthority> : TAccountTreeAuthority, TAccountPayer extends string ? WritableSignerAccount<TAccountPayer> & AccountSignerMeta<TAccountPayer> : TAccountPayer, TAccountAuthority extends string ? ReadonlySignerAccount<TAccountAuthority> & AccountSignerMeta<TAccountAuthority> : TAccountAuthority, TAccountNewCollectionAuthority extends string ? ReadonlySignerAccount<TAccountNewCollectionAuthority> & AccountSignerMeta<TAccountNewCollectionAuthority> : TAccountNewCollectionAuthority, TAccountLeafOwner extends string ? ReadonlyAccount<TAccountLeafOwner> : TAccountLeafOwner, TAccountLeafDelegate extends string ? ReadonlyAccount<TAccountLeafDelegate> : TAccountLeafDelegate, TAccountMerkleTree extends string ? WritableAccount<TAccountMerkleTree> : TAccountMerkleTree, TAccountCoreCollection extends string ? WritableAccount<TAccountCoreCollection> : TAccountCoreCollection, TAccountNewCoreCollection extends string ? WritableAccount<TAccountNewCoreCollection> : TAccountNewCoreCollection, TAccountMplCoreCpiSigner extends string ? ReadonlyAccount<TAccountMplCoreCpiSigner> : TAccountMplCoreCpiSigner, TAccountLogWrapper extends string ? ReadonlyAccount<TAccountLogWrapper> : TAccountLogWrapper, TAccountCompressionProgram extends string ? ReadonlyAccount<TAccountCompressionProgram> : TAccountCompressionProgram, TAccountMplCoreProgram extends string ? ReadonlyAccount<TAccountMplCoreProgram> : TAccountMplCoreProgram, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts]>;
|
|
9
|
-
|
|
10
|
+
type SetCollectionV2InstructionData = {
|
|
10
11
|
discriminator: ReadonlyUint8Array;
|
|
11
|
-
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* Current Merkle root of the tree, used together with the Merkle proof
|
|
14
|
+
* (passed as remaining accounts) to verify the leaf being operated on.
|
|
15
|
+
*/
|
|
16
|
+
root: Array<number>;
|
|
17
|
+
/**
|
|
18
|
+
* Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,
|
|
19
|
+
* carried through unchanged by this instruction.
|
|
20
|
+
*/
|
|
21
|
+
assetDataHash: Option<Array<number>>;
|
|
22
|
+
/**
|
|
23
|
+
* Expected current status flags (e.g. frozen, non-transferable) of the
|
|
24
|
+
* `LeafSchema` V2 leaf, verified before this instruction updates them.
|
|
25
|
+
*/
|
|
13
26
|
flags: Option<number>;
|
|
27
|
+
/**
|
|
28
|
+
* Tree-scoped nonce identifying the leaf, equal to the tree's
|
|
29
|
+
* `numMinted` at the time the leaf was minted. Combined with the tree
|
|
30
|
+
* address to derive the leaf's asset id.
|
|
31
|
+
*/
|
|
14
32
|
nonce: bigint;
|
|
33
|
+
/**
|
|
34
|
+
* Position of the leaf within the Merkle tree, used with the Merkle
|
|
35
|
+
* proof to locate and verify the leaf.
|
|
36
|
+
*/
|
|
15
37
|
index: number;
|
|
38
|
+
/**
|
|
39
|
+
* The leaf's current `MetadataArgsV2`, verified against `dataHash`
|
|
40
|
+
* before its collection is set.
|
|
41
|
+
*/
|
|
16
42
|
message: MetadataArgsV2;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
43
|
+
};
|
|
44
|
+
type SetCollectionV2InstructionDataArgs = {
|
|
45
|
+
/**
|
|
46
|
+
* Current Merkle root of the tree, used together with the Merkle proof
|
|
47
|
+
* (passed as remaining accounts) to verify the leaf being operated on.
|
|
48
|
+
*/
|
|
49
|
+
root: Array<number>;
|
|
50
|
+
/**
|
|
51
|
+
* Expected current `assetDataHash` of the `LeafSchema` V2 leaf, if any,
|
|
52
|
+
* carried through unchanged by this instruction.
|
|
53
|
+
*/
|
|
54
|
+
assetDataHash: OptionOrNullable<Array<number>>;
|
|
55
|
+
/**
|
|
56
|
+
* Expected current status flags (e.g. frozen, non-transferable) of the
|
|
57
|
+
* `LeafSchema` V2 leaf, verified before this instruction updates them.
|
|
58
|
+
*/
|
|
21
59
|
flags: OptionOrNullable<number>;
|
|
60
|
+
/**
|
|
61
|
+
* Tree-scoped nonce identifying the leaf, equal to the tree's
|
|
62
|
+
* `numMinted` at the time the leaf was minted. Combined with the tree
|
|
63
|
+
* address to derive the leaf's asset id.
|
|
64
|
+
*/
|
|
22
65
|
nonce: number | bigint;
|
|
66
|
+
/**
|
|
67
|
+
* Position of the leaf within the Merkle tree, used with the Merkle
|
|
68
|
+
* proof to locate and verify the leaf.
|
|
69
|
+
*/
|
|
23
70
|
index: number;
|
|
71
|
+
/**
|
|
72
|
+
* The leaf's current `MetadataArgsV2`, verified against `dataHash`
|
|
73
|
+
* before its collection is set.
|
|
74
|
+
*/
|
|
24
75
|
message: MetadataArgsV2Args;
|
|
25
|
-
}
|
|
76
|
+
};
|
|
26
77
|
declare function getSetCollectionV2InstructionDataEncoder(): Encoder<SetCollectionV2InstructionDataArgs>;
|
|
27
78
|
declare function getSetCollectionV2InstructionDataDecoder(): Decoder<SetCollectionV2InstructionData>;
|
|
28
79
|
declare function getSetCollectionV2InstructionDataCodec(): Codec<SetCollectionV2InstructionDataArgs, SetCollectionV2InstructionData>;
|
|
29
|
-
|
|
80
|
+
type SetCollectionV2AsyncInput<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountNewCollectionAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountNewCoreCollection extends string = string, TAccountMplCoreCpiSigner extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountMplCoreProgram extends string = string, TAccountSystemProgram extends string = string> = {
|
|
81
|
+
/**
|
|
82
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
83
|
+
* as the tree's authority for CPIs into the compression program.
|
|
84
|
+
*/
|
|
30
85
|
treeAuthority?: Address<TAccountTreeAuthority>;
|
|
86
|
+
/** Account that pays for the transaction and any account rent. */
|
|
31
87
|
payer: TransactionSigner<TAccountPayer>;
|
|
32
88
|
/**
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
89
|
+
* If the item is not currently in a collection, must be the tree
|
|
90
|
+
* owner/delegate. If the item is being removed from a collection,
|
|
91
|
+
* must be an authority for the existing collection. Defaults to
|
|
92
|
+
* `payer`.
|
|
93
|
+
*/
|
|
37
94
|
authority?: TransactionSigner<TAccountAuthority>;
|
|
38
95
|
/**
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
96
|
+
* If the item is being added to a new collection, must be the
|
|
97
|
+
* authority for the new collection. Defaults to `authority`.
|
|
98
|
+
*/
|
|
42
99
|
newCollectionAuthority?: TransactionSigner<TAccountNewCollectionAuthority>;
|
|
100
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
43
101
|
leafOwner: Address<TAccountLeafOwner>;
|
|
44
|
-
/** Defaults to `
|
|
102
|
+
/** Defaults to `leafOwner`. */
|
|
45
103
|
leafDelegate?: Address<TAccountLeafDelegate>;
|
|
104
|
+
/**
|
|
105
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
106
|
+
* owned by the account compression program.
|
|
107
|
+
*/
|
|
46
108
|
merkleTree: Address<TAccountMerkleTree>;
|
|
109
|
+
/** MPL Core collection account the asset belongs to (V2 collections). */
|
|
47
110
|
coreCollection?: Address<TAccountCoreCollection>;
|
|
111
|
+
/** MPL Core collection account the asset is being moved into. */
|
|
48
112
|
newCoreCollection?: Address<TAccountNewCoreCollection>;
|
|
113
|
+
/**
|
|
114
|
+
* PDA Bubblegum uses to sign CPIs into the MPL Core program on behalf
|
|
115
|
+
* of a core collection.
|
|
116
|
+
*/
|
|
49
117
|
mplCoreCpiSigner?: Address<TAccountMplCoreCpiSigner>;
|
|
118
|
+
/**
|
|
119
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
120
|
+
* can reconstruct the tree.
|
|
121
|
+
*/
|
|
50
122
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
123
|
+
/**
|
|
124
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
125
|
+
* Merkle tree.
|
|
126
|
+
*/
|
|
51
127
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
128
|
+
/** The MPL Core program, invoked for V2 collection CPIs. */
|
|
52
129
|
mplCoreProgram?: Address<TAccountMplCoreProgram>;
|
|
130
|
+
/** The Solana System program. */
|
|
53
131
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
54
132
|
root: SetCollectionV2InstructionDataArgs["root"];
|
|
55
133
|
assetDataHash: SetCollectionV2InstructionDataArgs["assetDataHash"];
|
|
@@ -57,34 +135,68 @@ interface SetCollectionV2AsyncInput<TAccountTreeAuthority extends string = strin
|
|
|
57
135
|
nonce: SetCollectionV2InstructionDataArgs["nonce"];
|
|
58
136
|
index: SetCollectionV2InstructionDataArgs["index"];
|
|
59
137
|
message: SetCollectionV2InstructionDataArgs["message"];
|
|
60
|
-
}
|
|
138
|
+
};
|
|
139
|
+
/**
|
|
140
|
+
* Sets the collection on a `LeafSchema` V2 leaf node.
|
|
141
|
+
*
|
|
142
|
+
* Unlike the V1 flow, no separate verification step is required: any
|
|
143
|
+
* collection recorded on a V2 leaf is automatically considered
|
|
144
|
+
* verified.
|
|
145
|
+
*/
|
|
61
146
|
declare function getSetCollectionV2InstructionAsync<TAccountTreeAuthority extends string, TAccountPayer extends string, TAccountAuthority extends string, TAccountNewCollectionAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountCoreCollection extends string, TAccountNewCoreCollection extends string, TAccountMplCoreCpiSigner extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountMplCoreProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: SetCollectionV2AsyncInput<TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountNewCollectionAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountCoreCollection, TAccountNewCoreCollection, TAccountMplCoreCpiSigner, TAccountLogWrapper, TAccountCompressionProgram, TAccountMplCoreProgram, TAccountSystemProgram>, config?: {
|
|
62
147
|
programAddress?: TProgramAddress;
|
|
63
148
|
}): Promise<SetCollectionV2Instruction<TProgramAddress, TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountNewCollectionAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountCoreCollection, TAccountNewCoreCollection, TAccountMplCoreCpiSigner, TAccountLogWrapper, TAccountCompressionProgram, TAccountMplCoreProgram, TAccountSystemProgram>>;
|
|
64
|
-
|
|
149
|
+
type SetCollectionV2Input<TAccountTreeAuthority extends string = string, TAccountPayer extends string = string, TAccountAuthority extends string = string, TAccountNewCollectionAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountCoreCollection extends string = string, TAccountNewCoreCollection extends string = string, TAccountMplCoreCpiSigner extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountMplCoreProgram extends string = string, TAccountSystemProgram extends string = string> = {
|
|
150
|
+
/**
|
|
151
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
152
|
+
* as the tree's authority for CPIs into the compression program.
|
|
153
|
+
*/
|
|
65
154
|
treeAuthority: Address<TAccountTreeAuthority>;
|
|
155
|
+
/** Account that pays for the transaction and any account rent. */
|
|
66
156
|
payer: TransactionSigner<TAccountPayer>;
|
|
67
157
|
/**
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
158
|
+
* If the item is not currently in a collection, must be the tree
|
|
159
|
+
* owner/delegate. If the item is being removed from a collection,
|
|
160
|
+
* must be an authority for the existing collection. Defaults to
|
|
161
|
+
* `payer`.
|
|
162
|
+
*/
|
|
72
163
|
authority?: TransactionSigner<TAccountAuthority>;
|
|
73
164
|
/**
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
165
|
+
* If the item is being added to a new collection, must be the
|
|
166
|
+
* authority for the new collection. Defaults to `authority`.
|
|
167
|
+
*/
|
|
77
168
|
newCollectionAuthority?: TransactionSigner<TAccountNewCollectionAuthority>;
|
|
169
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
78
170
|
leafOwner: Address<TAccountLeafOwner>;
|
|
79
|
-
/** Defaults to `
|
|
171
|
+
/** Defaults to `leafOwner`. */
|
|
80
172
|
leafDelegate?: Address<TAccountLeafDelegate>;
|
|
173
|
+
/**
|
|
174
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
175
|
+
* owned by the account compression program.
|
|
176
|
+
*/
|
|
81
177
|
merkleTree: Address<TAccountMerkleTree>;
|
|
178
|
+
/** MPL Core collection account the asset belongs to (V2 collections). */
|
|
82
179
|
coreCollection?: Address<TAccountCoreCollection>;
|
|
180
|
+
/** MPL Core collection account the asset is being moved into. */
|
|
83
181
|
newCoreCollection?: Address<TAccountNewCoreCollection>;
|
|
182
|
+
/**
|
|
183
|
+
* PDA Bubblegum uses to sign CPIs into the MPL Core program on behalf
|
|
184
|
+
* of a core collection.
|
|
185
|
+
*/
|
|
84
186
|
mplCoreCpiSigner?: Address<TAccountMplCoreCpiSigner>;
|
|
187
|
+
/**
|
|
188
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
189
|
+
* can reconstruct the tree.
|
|
190
|
+
*/
|
|
85
191
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
192
|
+
/**
|
|
193
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
194
|
+
* Merkle tree.
|
|
195
|
+
*/
|
|
86
196
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
197
|
+
/** The MPL Core program, invoked for V2 collection CPIs. */
|
|
87
198
|
mplCoreProgram?: Address<TAccountMplCoreProgram>;
|
|
199
|
+
/** The Solana System program. */
|
|
88
200
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
89
201
|
root: SetCollectionV2InstructionDataArgs["root"];
|
|
90
202
|
assetDataHash: SetCollectionV2InstructionDataArgs["assetDataHash"];
|
|
@@ -92,39 +204,74 @@ interface SetCollectionV2Input<TAccountTreeAuthority extends string = string, TA
|
|
|
92
204
|
nonce: SetCollectionV2InstructionDataArgs["nonce"];
|
|
93
205
|
index: SetCollectionV2InstructionDataArgs["index"];
|
|
94
206
|
message: SetCollectionV2InstructionDataArgs["message"];
|
|
95
|
-
}
|
|
207
|
+
};
|
|
208
|
+
/**
|
|
209
|
+
* Sets the collection on a `LeafSchema` V2 leaf node.
|
|
210
|
+
*
|
|
211
|
+
* Unlike the V1 flow, no separate verification step is required: any
|
|
212
|
+
* collection recorded on a V2 leaf is automatically considered
|
|
213
|
+
* verified.
|
|
214
|
+
*/
|
|
96
215
|
declare function getSetCollectionV2Instruction<TAccountTreeAuthority extends string, TAccountPayer extends string, TAccountAuthority extends string, TAccountNewCollectionAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountCoreCollection extends string, TAccountNewCoreCollection extends string, TAccountMplCoreCpiSigner extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountMplCoreProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: SetCollectionV2Input<TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountNewCollectionAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountCoreCollection, TAccountNewCoreCollection, TAccountMplCoreCpiSigner, TAccountLogWrapper, TAccountCompressionProgram, TAccountMplCoreProgram, TAccountSystemProgram>, config?: {
|
|
97
216
|
programAddress?: TProgramAddress;
|
|
98
217
|
}): SetCollectionV2Instruction<TProgramAddress, TAccountTreeAuthority, TAccountPayer, TAccountAuthority, TAccountNewCollectionAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountCoreCollection, TAccountNewCoreCollection, TAccountMplCoreCpiSigner, TAccountLogWrapper, TAccountCompressionProgram, TAccountMplCoreProgram, TAccountSystemProgram>;
|
|
99
|
-
|
|
218
|
+
type ParsedSetCollectionV2Instruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
100
219
|
programAddress: Address<TProgram>;
|
|
101
220
|
accounts: {
|
|
221
|
+
/**
|
|
222
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
223
|
+
* as the tree's authority for CPIs into the compression program.
|
|
224
|
+
*/
|
|
102
225
|
treeAuthority: TAccountMetas[0];
|
|
226
|
+
/** Account that pays for the transaction and any account rent. */
|
|
103
227
|
payer: TAccountMetas[1];
|
|
104
228
|
/**
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
229
|
+
* If the item is not currently in a collection, must be the tree
|
|
230
|
+
* owner/delegate. If the item is being removed from a collection,
|
|
231
|
+
* must be an authority for the existing collection. Defaults to
|
|
232
|
+
* `payer`.
|
|
233
|
+
*/
|
|
109
234
|
authority?: TAccountMetas[2] | undefined;
|
|
110
235
|
/**
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
236
|
+
* If the item is being added to a new collection, must be the
|
|
237
|
+
* authority for the new collection. Defaults to `authority`.
|
|
238
|
+
*/
|
|
114
239
|
newCollectionAuthority?: TAccountMetas[3] | undefined;
|
|
115
|
-
|
|
240
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
241
|
+
leafOwner: TAccountMetas[4];
|
|
242
|
+
/** Defaults to `leafOwner`. */
|
|
116
243
|
leafDelegate?: TAccountMetas[5] | undefined;
|
|
244
|
+
/**
|
|
245
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
246
|
+
* owned by the account compression program.
|
|
247
|
+
*/
|
|
117
248
|
merkleTree: TAccountMetas[6];
|
|
249
|
+
/** MPL Core collection account the asset belongs to (V2 collections). */
|
|
118
250
|
coreCollection?: TAccountMetas[7] | undefined;
|
|
251
|
+
/** MPL Core collection account the asset is being moved into. */
|
|
119
252
|
newCoreCollection?: TAccountMetas[8] | undefined;
|
|
253
|
+
/**
|
|
254
|
+
* PDA Bubblegum uses to sign CPIs into the MPL Core program on behalf
|
|
255
|
+
* of a core collection.
|
|
256
|
+
*/
|
|
120
257
|
mplCoreCpiSigner: TAccountMetas[9];
|
|
258
|
+
/**
|
|
259
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
260
|
+
* can reconstruct the tree.
|
|
261
|
+
*/
|
|
121
262
|
logWrapper: TAccountMetas[10];
|
|
263
|
+
/**
|
|
264
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
265
|
+
* Merkle tree.
|
|
266
|
+
*/
|
|
122
267
|
compressionProgram: TAccountMetas[11];
|
|
268
|
+
/** The MPL Core program, invoked for V2 collection CPIs. */
|
|
123
269
|
mplCoreProgram: TAccountMetas[12];
|
|
270
|
+
/** The Solana System program. */
|
|
124
271
|
systemProgram: TAccountMetas[13];
|
|
125
272
|
};
|
|
126
273
|
data: SetCollectionV2InstructionData;
|
|
127
|
-
}
|
|
274
|
+
};
|
|
128
275
|
declare function parseSetCollectionV2Instruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedSetCollectionV2Instruction<TProgram, TAccountMetas>;
|
|
129
276
|
//#endregion
|
|
130
277
|
export { ParsedSetCollectionV2Instruction, SET_COLLECTION_V2_DISCRIMINATOR, SetCollectionV2AsyncInput, SetCollectionV2Input, SetCollectionV2Instruction, SetCollectionV2InstructionData, SetCollectionV2InstructionDataArgs, getSetCollectionV2DiscriminatorBytes, getSetCollectionV2Instruction, getSetCollectionV2InstructionAsync, getSetCollectionV2InstructionDataCodec, getSetCollectionV2InstructionDataDecoder, getSetCollectionV2InstructionDataEncoder, parseSetCollectionV2Instruction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setCollectionV2.d.ts","names":[],"sources":["../../../src/generated/instructions/setCollectionV2.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"setCollectionV2.d.ts","names":[],"sources":["../../../src/generated/instructions/setCollectionV2.ts"],"mappings":"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"}
|
|
@@ -4,6 +4,13 @@ import "../programs/bubblegum.js";
|
|
|
4
4
|
import { SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS, SolanaError, combineCodec, fixDecoderSize, fixEncoderSize, getArrayDecoder, getArrayEncoder, getBytesDecoder, getBytesEncoder, getOptionDecoder, getOptionEncoder, getStructDecoder, getStructEncoder, getU32Decoder, getU32Encoder, getU64Decoder, getU64Encoder, getU8Decoder, getU8Encoder, transformEncoder } from "@solana/kit";
|
|
5
5
|
import { getAccountMetaFactory, getAddressFromResolvedInstructionAccount } from "@solana/program-client-core";
|
|
6
6
|
//#region src/generated/instructions/setCollectionV2.ts
|
|
7
|
+
/**
|
|
8
|
+
* This code was AUTOGENERATED using the Codama library.
|
|
9
|
+
* Please DO NOT EDIT THIS FILE, instead use visitors
|
|
10
|
+
* to add features, then rerun Codama to update it.
|
|
11
|
+
*
|
|
12
|
+
* @see https://github.com/codama-idl/codama
|
|
13
|
+
*/
|
|
7
14
|
const SET_COLLECTION_V2_DISCRIMINATOR = new Uint8Array([
|
|
8
15
|
229,
|
|
9
16
|
35,
|
|
@@ -45,6 +52,13 @@ function getSetCollectionV2InstructionDataDecoder() {
|
|
|
45
52
|
function getSetCollectionV2InstructionDataCodec() {
|
|
46
53
|
return combineCodec(getSetCollectionV2InstructionDataEncoder(), getSetCollectionV2InstructionDataDecoder());
|
|
47
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Sets the collection on a `LeafSchema` V2 leaf node.
|
|
57
|
+
*
|
|
58
|
+
* Unlike the V1 flow, no separate verification step is required: any
|
|
59
|
+
* collection recorded on a V2 leaf is automatically considered
|
|
60
|
+
* verified.
|
|
61
|
+
*/
|
|
48
62
|
async function getSetCollectionV2InstructionAsync(input, config) {
|
|
49
63
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
50
64
|
const accounts = {
|
|
@@ -134,6 +148,13 @@ async function getSetCollectionV2InstructionAsync(input, config) {
|
|
|
134
148
|
programAddress
|
|
135
149
|
});
|
|
136
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Sets the collection on a `LeafSchema` V2 leaf node.
|
|
153
|
+
*
|
|
154
|
+
* Unlike the V1 flow, no separate verification step is required: any
|
|
155
|
+
* collection recorded on a V2 leaf is automatically considered
|
|
156
|
+
* verified.
|
|
157
|
+
*/
|
|
137
158
|
function getSetCollectionV2Instruction(input, config) {
|
|
138
159
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
139
160
|
const accounts = {
|