@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":"unverifyCollection.js","names":[],"sources":["../../../src/generated/instructions/unverifyCollection.ts"],"sourcesContent":["/**\n * This code was AUTOGENERATED using the Codama library.\n * Please DO NOT EDIT THIS FILE, instead use visitors\n * to add features, then rerun Codama to update it.\n *\n * @see https://github.com/codama-idl/codama\n */\n\nimport type {\n AccountMeta,\n AccountSignerMeta,\n Address,\n Codec,\n Decoder,\n Encoder,\n Instruction,\n InstructionWithAccounts,\n InstructionWithData,\n ReadonlyAccount,\n ReadonlySignerAccount,\n ReadonlyUint8Array,\n TransactionSigner,\n WritableAccount,\n} from \"@solana/kit\";\nimport type { ResolvedInstructionAccount } from \"@solana/program-client-core\";\nimport type { MetadataArgs, MetadataArgsArgs } from \"../types/index.js\";\nimport {\n address,\n combineCodec,\n fixDecoderSize,\n fixEncoderSize,\n getArrayDecoder,\n getArrayEncoder,\n getBytesDecoder,\n getBytesEncoder,\n getStructDecoder,\n getStructEncoder,\n getU8Decoder,\n getU8Encoder,\n getU32Decoder,\n getU32Encoder,\n getU64Decoder,\n getU64Encoder,\n SOLANA_ERROR__PROGRAM_CLIENTS__INSUFFICIENT_ACCOUNT_METAS,\n SolanaError,\n transformEncoder,\n} from \"@solana/kit\";\nimport {\n getAccountMetaFactory,\n getAddressFromResolvedInstructionAccount,\n} from \"@solana/program-client-core\";\nimport {\n findBubblegumSignerPda,\n findMasterEditionPda,\n findMetadataPda,\n findTreeConfigPda,\n} from \"../pdas/index.js\";\nimport { BUBBLEGUM_PROGRAM_ADDRESS } from \"../programs/index.js\";\nimport {\n getMetadataArgsDecoder,\n getMetadataArgsEncoder,\n} from \"../types/index.js\";\n\nexport const UNVERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([250, 251, 42, 106, 41, 137, 186, 168]);\n\nexport function getUnverifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n UNVERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type UnverifyCollectionInstruction<\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 UnverifyCollectionInstructionData {\n discriminator: ReadonlyUint8Array;\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: bigint;\n index: number;\n message: MetadataArgs;\n}\n\nexport interface UnverifyCollectionInstructionDataArgs {\n root: number[];\n dataHash: number[];\n creatorHash: number[];\n nonce: number | bigint;\n index: number;\n message: MetadataArgsArgs;\n}\n\nexport function getUnverifyCollectionInstructionDataEncoder(): Encoder<UnverifyCollectionInstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([\n [\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)],\n [\"root\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"dataHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"creatorHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n [\"message\", getMetadataArgsEncoder()],\n ]),\n (value) => ({ ...value, discriminator: UNVERIFY_COLLECTION_DISCRIMINATOR }),\n );\n}\n\nexport function getUnverifyCollectionInstructionDataDecoder(): Decoder<UnverifyCollectionInstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n [\"root\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"dataHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"creatorHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n [\"message\", getMetadataArgsDecoder()],\n ]);\n}\n\nexport function getUnverifyCollectionInstructionDataCodec(): Codec<\n UnverifyCollectionInstructionDataArgs,\n UnverifyCollectionInstructionData\n> {\n return combineCodec(\n getUnverifyCollectionInstructionDataEncoder(),\n getUnverifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport interface UnverifyCollectionAsyncInput<\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: UnverifyCollectionInstructionDataArgs[\"root\"];\n dataHash: UnverifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: UnverifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: UnverifyCollectionInstructionDataArgs[\"nonce\"];\n index: UnverifyCollectionInstructionDataArgs[\"index\"];\n message: UnverifyCollectionInstructionDataArgs[\"message\"];\n}\n\nexport async function getUnverifyCollectionInstructionAsync<\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: UnverifyCollectionAsyncInput<\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 UnverifyCollectionInstruction<\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: getUnverifyCollectionInstructionDataEncoder().encode(\n args as UnverifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as UnverifyCollectionInstruction<\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 UnverifyCollectionInput<\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: UnverifyCollectionInstructionDataArgs[\"root\"];\n dataHash: UnverifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: UnverifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: UnverifyCollectionInstructionDataArgs[\"nonce\"];\n index: UnverifyCollectionInstructionDataArgs[\"index\"];\n message: UnverifyCollectionInstructionDataArgs[\"message\"];\n}\n\nexport function getUnverifyCollectionInstruction<\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: UnverifyCollectionInput<\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): UnverifyCollectionInstruction<\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: getUnverifyCollectionInstructionDataEncoder().encode(\n args as UnverifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as UnverifyCollectionInstruction<\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 ParsedUnverifyCollectionInstruction<\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: UnverifyCollectionInstructionData;\n}\n\nexport function parseUnverifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedUnverifyCollectionInstruction<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: getUnverifyCollectionInstructionDataDecoder().decode(\n instruction.data,\n ),\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"unverifyCollection.js","names":[],"sources":["../../../src/generated/instructions/unverifyCollection.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 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 UNVERIFY_COLLECTION_DISCRIMINATOR: ReadonlyUint8Array =\n new Uint8Array([250, 251, 42, 106, 41, 137, 186, 168]);\n\nexport function getUnverifyCollectionDiscriminatorBytes(): ReadonlyUint8Array {\n return fixEncoderSize(getBytesEncoder(), 8).encode(\n UNVERIFY_COLLECTION_DISCRIMINATOR,\n );\n}\n\nexport type UnverifyCollectionInstruction<\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 UnverifyCollectionInstructionData = {\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 * its collection is marked unverified.\n */\n message: MetadataArgs;\n};\n\nexport type UnverifyCollectionInstructionDataArgs = {\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 * its collection is marked unverified.\n */\n message: MetadataArgsArgs;\n};\n\nexport function getUnverifyCollectionInstructionDataEncoder(): Encoder<UnverifyCollectionInstructionDataArgs> {\n return transformEncoder(\n getStructEncoder([\n [\"discriminator\", fixEncoderSize(getBytesEncoder(), 8)],\n [\"root\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"dataHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"creatorHash\", getArrayEncoder(getU8Encoder(), { size: 32 })],\n [\"nonce\", getU64Encoder()],\n [\"index\", getU32Encoder()],\n [\"message\", getMetadataArgsEncoder()],\n ]),\n (value) => ({ ...value, discriminator: UNVERIFY_COLLECTION_DISCRIMINATOR }),\n );\n}\n\nexport function getUnverifyCollectionInstructionDataDecoder(): Decoder<UnverifyCollectionInstructionData> {\n return getStructDecoder([\n [\"discriminator\", fixDecoderSize(getBytesDecoder(), 8)],\n [\"root\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"dataHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"creatorHash\", getArrayDecoder(getU8Decoder(), { size: 32 })],\n [\"nonce\", getU64Decoder()],\n [\"index\", getU32Decoder()],\n [\"message\", getMetadataArgsDecoder()],\n ]);\n}\n\nexport function getUnverifyCollectionInstructionDataCodec(): Codec<\n UnverifyCollectionInstructionDataArgs,\n UnverifyCollectionInstructionData\n> {\n return combineCodec(\n getUnverifyCollectionInstructionDataEncoder(),\n getUnverifyCollectionInstructionDataDecoder(),\n );\n}\n\nexport type UnverifyCollectionAsyncInput<\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 this instruction path shares logic\n * with `setAndVerifyCollection`, which actually changes the leaf's\n * metadata.\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: UnverifyCollectionInstructionDataArgs[\"root\"];\n dataHash: UnverifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: UnverifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: UnverifyCollectionInstructionDataArgs[\"nonce\"];\n index: UnverifyCollectionInstructionDataArgs[\"index\"];\n message: UnverifyCollectionInstructionDataArgs[\"message\"];\n};\n\n/**\n * Unverifies a previously verified collection from a leaf node.\n *\n * Marks the `collection` field of the leaf's metadata as unverified,\n * without removing the collection reference itself.\n */\nexport async function getUnverifyCollectionInstructionAsync<\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: UnverifyCollectionAsyncInput<\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 UnverifyCollectionInstruction<\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: getUnverifyCollectionInstructionDataEncoder().encode(\n args as UnverifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as UnverifyCollectionInstruction<\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 UnverifyCollectionInput<\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 this instruction path shares logic\n * with `setAndVerifyCollection`, which actually changes the leaf's\n * metadata.\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: UnverifyCollectionInstructionDataArgs[\"root\"];\n dataHash: UnverifyCollectionInstructionDataArgs[\"dataHash\"];\n creatorHash: UnverifyCollectionInstructionDataArgs[\"creatorHash\"];\n nonce: UnverifyCollectionInstructionDataArgs[\"nonce\"];\n index: UnverifyCollectionInstructionDataArgs[\"index\"];\n message: UnverifyCollectionInstructionDataArgs[\"message\"];\n};\n\n/**\n * Unverifies a previously verified collection from a leaf node.\n *\n * Marks the `collection` field of the leaf's metadata as unverified,\n * without removing the collection reference itself.\n */\nexport function getUnverifyCollectionInstruction<\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: UnverifyCollectionInput<\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): UnverifyCollectionInstruction<\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: getUnverifyCollectionInstructionDataEncoder().encode(\n args as UnverifyCollectionInstructionDataArgs,\n ),\n programAddress,\n } as UnverifyCollectionInstruction<\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 ParsedUnverifyCollectionInstruction<\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 this instruction path shares logic\n * with `setAndVerifyCollection`, which actually changes the leaf's\n * metadata.\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: UnverifyCollectionInstructionData;\n};\n\nexport function parseUnverifyCollectionInstruction<\n TProgram extends string,\n TAccountMetas extends readonly AccountMeta[],\n>(\n instruction: Instruction<TProgram> &\n InstructionWithAccounts<TAccountMetas> &\n InstructionWithData<ReadonlyUint8Array>,\n): ParsedUnverifyCollectionInstruction<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: getUnverifyCollectionInstructionDataDecoder().decode(\n instruction.data,\n ),\n };\n}\n"],"mappings":"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"}
|
|
@@ -1,40 +1,118 @@
|
|
|
1
1
|
import { MetadataArgs, MetadataArgsArgs } from "../types/metadataArgs.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, ReadonlyAccount, ReadonlySignerAccount, ReadonlyUint8Array, TransactionSigner, WritableAccount } from "@solana/kit";
|
|
4
|
-
|
|
5
6
|
//#region src/generated/instructions/unverifyCreator.d.ts
|
|
6
7
|
declare const UNVERIFY_CREATOR_DISCRIMINATOR: ReadonlyUint8Array;
|
|
7
8
|
declare function getUnverifyCreatorDiscriminatorBytes(): ReadonlyUint8Array;
|
|
8
9
|
type UnverifyCreatorInstruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountTreeAuthority extends string | AccountMeta<string> = string, TAccountLeafOwner extends string | AccountMeta<string> = string, TAccountLeafDelegate extends string | AccountMeta<string> = string, TAccountMerkleTree extends string | AccountMeta<string> = string, TAccountPayer extends string | AccountMeta<string> = string, TAccountCreator extends string | AccountMeta<string> = string, TAccountLogWrapper extends string | AccountMeta<string> = "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV", TAccountCompressionProgram extends string | AccountMeta<string> = "cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK", TAccountSystemProgram extends string | AccountMeta<string> = "11111111111111111111111111111111", TRemainingAccounts extends readonly AccountMeta<string>[] = []> = Instruction<TProgram> & InstructionWithData<ReadonlyUint8Array> & InstructionWithAccounts<[TAccountTreeAuthority extends string ? ReadonlyAccount<TAccountTreeAuthority> : TAccountTreeAuthority, TAccountLeafOwner extends string ? ReadonlyAccount<TAccountLeafOwner> : TAccountLeafOwner, TAccountLeafDelegate extends string ? ReadonlyAccount<TAccountLeafDelegate> : TAccountLeafDelegate, TAccountMerkleTree extends string ? WritableAccount<TAccountMerkleTree> : TAccountMerkleTree, TAccountPayer extends string ? ReadonlySignerAccount<TAccountPayer> & AccountSignerMeta<TAccountPayer> : TAccountPayer, TAccountCreator extends string ? ReadonlySignerAccount<TAccountCreator> & AccountSignerMeta<TAccountCreator> : TAccountCreator, TAccountLogWrapper extends string ? ReadonlyAccount<TAccountLogWrapper> : TAccountLogWrapper, TAccountCompressionProgram extends string ? ReadonlyAccount<TAccountCompressionProgram> : TAccountCompressionProgram, TAccountSystemProgram extends string ? ReadonlyAccount<TAccountSystemProgram> : TAccountSystemProgram, ...TRemainingAccounts]>;
|
|
9
|
-
|
|
10
|
+
type UnverifyCreatorInstructionData = {
|
|
10
11
|
discriminator: ReadonlyUint8Array;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
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
|
+
* Keccak256 hash of the leaf's metadata, used together with `root` to
|
|
19
|
+
* verify the leaf before it is modified.
|
|
20
|
+
*/
|
|
21
|
+
dataHash: Array<number>;
|
|
22
|
+
/**
|
|
23
|
+
* Keccak256 hash of the leaf's creators array, used together with
|
|
24
|
+
* `root` to verify the leaf before it is modified.
|
|
25
|
+
*/
|
|
26
|
+
creatorHash: Array<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 metadata args, verified against `dataHash` before
|
|
40
|
+
* `creator` is marked unverified.
|
|
41
|
+
*/
|
|
16
42
|
message: MetadataArgs;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
43
|
+
};
|
|
44
|
+
type UnverifyCreatorInstructionDataArgs = {
|
|
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
|
+
* Keccak256 hash of the leaf's metadata, used together with `root` to
|
|
52
|
+
* verify the leaf before it is modified.
|
|
53
|
+
*/
|
|
54
|
+
dataHash: Array<number>;
|
|
55
|
+
/**
|
|
56
|
+
* Keccak256 hash of the leaf's creators array, used together with
|
|
57
|
+
* `root` to verify the leaf before it is modified.
|
|
58
|
+
*/
|
|
59
|
+
creatorHash: Array<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 metadata args, verified against `dataHash` before
|
|
73
|
+
* `creator` is marked unverified.
|
|
74
|
+
*/
|
|
24
75
|
message: MetadataArgsArgs;
|
|
25
|
-
}
|
|
76
|
+
};
|
|
26
77
|
declare function getUnverifyCreatorInstructionDataEncoder(): Encoder<UnverifyCreatorInstructionDataArgs>;
|
|
27
78
|
declare function getUnverifyCreatorInstructionDataDecoder(): Decoder<UnverifyCreatorInstructionData>;
|
|
28
79
|
declare function getUnverifyCreatorInstructionDataCodec(): Codec<UnverifyCreatorInstructionDataArgs, UnverifyCreatorInstructionData>;
|
|
29
|
-
|
|
80
|
+
type UnverifyCreatorAsyncInput<TAccountTreeAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountPayer extends string = string, TAccountCreator extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram 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
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
31
87
|
leafOwner: Address<TAccountLeafOwner>;
|
|
88
|
+
/**
|
|
89
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
90
|
+
* delegate is set.
|
|
91
|
+
*/
|
|
32
92
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
93
|
+
/**
|
|
94
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
95
|
+
* owned by the account compression program.
|
|
96
|
+
*/
|
|
33
97
|
merkleTree: Address<TAccountMerkleTree>;
|
|
98
|
+
/** Account that pays for the transaction and any account rent. */
|
|
34
99
|
payer: TransactionSigner<TAccountPayer>;
|
|
100
|
+
/**
|
|
101
|
+
* One of the leaf's creators, whose verified flag is being changed by
|
|
102
|
+
* this instruction. Must sign to (un)verify itself.
|
|
103
|
+
*/
|
|
35
104
|
creator: TransactionSigner<TAccountCreator>;
|
|
105
|
+
/**
|
|
106
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
107
|
+
* can reconstruct the tree.
|
|
108
|
+
*/
|
|
36
109
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
110
|
+
/**
|
|
111
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
112
|
+
* Merkle tree.
|
|
113
|
+
*/
|
|
37
114
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
115
|
+
/** The Solana System program. */
|
|
38
116
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
39
117
|
root: UnverifyCreatorInstructionDataArgs["root"];
|
|
40
118
|
dataHash: UnverifyCreatorInstructionDataArgs["dataHash"];
|
|
@@ -42,19 +120,52 @@ interface UnverifyCreatorAsyncInput<TAccountTreeAuthority extends string = strin
|
|
|
42
120
|
nonce: UnverifyCreatorInstructionDataArgs["nonce"];
|
|
43
121
|
index: UnverifyCreatorInstructionDataArgs["index"];
|
|
44
122
|
message: UnverifyCreatorInstructionDataArgs["message"];
|
|
45
|
-
}
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Unverifies a creator from a leaf node.
|
|
126
|
+
*
|
|
127
|
+
* The named `creator` must sign to remove their own verified flag from
|
|
128
|
+
* the leaf's creators array.
|
|
129
|
+
*/
|
|
46
130
|
declare function getUnverifyCreatorInstructionAsync<TAccountTreeAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountPayer extends string, TAccountCreator extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: UnverifyCreatorAsyncInput<TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountPayer, TAccountCreator, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>, config?: {
|
|
47
131
|
programAddress?: TProgramAddress;
|
|
48
132
|
}): Promise<UnverifyCreatorInstruction<TProgramAddress, TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountPayer, TAccountCreator, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>>;
|
|
49
|
-
|
|
133
|
+
type UnverifyCreatorInput<TAccountTreeAuthority extends string = string, TAccountLeafOwner extends string = string, TAccountLeafDelegate extends string = string, TAccountMerkleTree extends string = string, TAccountPayer extends string = string, TAccountCreator extends string = string, TAccountLogWrapper extends string = string, TAccountCompressionProgram extends string = string, TAccountSystemProgram extends string = string> = {
|
|
134
|
+
/**
|
|
135
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
136
|
+
* as the tree's authority for CPIs into the compression program.
|
|
137
|
+
*/
|
|
50
138
|
treeAuthority: Address<TAccountTreeAuthority>;
|
|
139
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
51
140
|
leafOwner: Address<TAccountLeafOwner>;
|
|
141
|
+
/**
|
|
142
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
143
|
+
* delegate is set.
|
|
144
|
+
*/
|
|
52
145
|
leafDelegate: Address<TAccountLeafDelegate>;
|
|
146
|
+
/**
|
|
147
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
148
|
+
* owned by the account compression program.
|
|
149
|
+
*/
|
|
53
150
|
merkleTree: Address<TAccountMerkleTree>;
|
|
151
|
+
/** Account that pays for the transaction and any account rent. */
|
|
54
152
|
payer: TransactionSigner<TAccountPayer>;
|
|
153
|
+
/**
|
|
154
|
+
* One of the leaf's creators, whose verified flag is being changed by
|
|
155
|
+
* this instruction. Must sign to (un)verify itself.
|
|
156
|
+
*/
|
|
55
157
|
creator: TransactionSigner<TAccountCreator>;
|
|
158
|
+
/**
|
|
159
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
160
|
+
* can reconstruct the tree.
|
|
161
|
+
*/
|
|
56
162
|
logWrapper?: Address<TAccountLogWrapper>;
|
|
163
|
+
/**
|
|
164
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
165
|
+
* Merkle tree.
|
|
166
|
+
*/
|
|
57
167
|
compressionProgram?: Address<TAccountCompressionProgram>;
|
|
168
|
+
/** The Solana System program. */
|
|
58
169
|
systemProgram?: Address<TAccountSystemProgram>;
|
|
59
170
|
root: UnverifyCreatorInstructionDataArgs["root"];
|
|
60
171
|
dataHash: UnverifyCreatorInstructionDataArgs["dataHash"];
|
|
@@ -62,25 +173,58 @@ interface UnverifyCreatorInput<TAccountTreeAuthority extends string = string, TA
|
|
|
62
173
|
nonce: UnverifyCreatorInstructionDataArgs["nonce"];
|
|
63
174
|
index: UnverifyCreatorInstructionDataArgs["index"];
|
|
64
175
|
message: UnverifyCreatorInstructionDataArgs["message"];
|
|
65
|
-
}
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* Unverifies a creator from a leaf node.
|
|
179
|
+
*
|
|
180
|
+
* The named `creator` must sign to remove their own verified flag from
|
|
181
|
+
* the leaf's creators array.
|
|
182
|
+
*/
|
|
66
183
|
declare function getUnverifyCreatorInstruction<TAccountTreeAuthority extends string, TAccountLeafOwner extends string, TAccountLeafDelegate extends string, TAccountMerkleTree extends string, TAccountPayer extends string, TAccountCreator extends string, TAccountLogWrapper extends string, TAccountCompressionProgram extends string, TAccountSystemProgram extends string, TProgramAddress extends Address = typeof BUBBLEGUM_PROGRAM_ADDRESS>(input: UnverifyCreatorInput<TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountPayer, TAccountCreator, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>, config?: {
|
|
67
184
|
programAddress?: TProgramAddress;
|
|
68
185
|
}): UnverifyCreatorInstruction<TProgramAddress, TAccountTreeAuthority, TAccountLeafOwner, TAccountLeafDelegate, TAccountMerkleTree, TAccountPayer, TAccountCreator, TAccountLogWrapper, TAccountCompressionProgram, TAccountSystemProgram>;
|
|
69
|
-
|
|
186
|
+
type ParsedUnverifyCreatorInstruction<TProgram extends string = typeof BUBBLEGUM_PROGRAM_ADDRESS, TAccountMetas extends readonly AccountMeta[] = readonly AccountMeta[]> = {
|
|
70
187
|
programAddress: Address<TProgram>;
|
|
71
188
|
accounts: {
|
|
189
|
+
/**
|
|
190
|
+
* The tree's `TreeConfig` PDA, which stores its configuration and acts
|
|
191
|
+
* as the tree's authority for CPIs into the compression program.
|
|
192
|
+
*/
|
|
72
193
|
treeAuthority: TAccountMetas[0];
|
|
194
|
+
/** Owner of the compressed NFT leaf being operated on. */
|
|
73
195
|
leafOwner: TAccountMetas[1];
|
|
196
|
+
/**
|
|
197
|
+
* Delegate authority for the leaf; defaults to the leaf owner when no
|
|
198
|
+
* delegate is set.
|
|
199
|
+
*/
|
|
74
200
|
leafDelegate: TAccountMetas[2];
|
|
201
|
+
/**
|
|
202
|
+
* The concurrent Merkle tree account storing the compressed leaves,
|
|
203
|
+
* owned by the account compression program.
|
|
204
|
+
*/
|
|
75
205
|
merkleTree: TAccountMetas[3];
|
|
206
|
+
/** Account that pays for the transaction and any account rent. */
|
|
76
207
|
payer: TAccountMetas[4];
|
|
208
|
+
/**
|
|
209
|
+
* One of the leaf's creators, whose verified flag is being changed by
|
|
210
|
+
* this instruction. Must sign to (un)verify itself.
|
|
211
|
+
*/
|
|
77
212
|
creator: TAccountMetas[5];
|
|
213
|
+
/**
|
|
214
|
+
* The SPL/MPL Noop program, used to log leaf data so off-chain indexers
|
|
215
|
+
* can reconstruct the tree.
|
|
216
|
+
*/
|
|
78
217
|
logWrapper: TAccountMetas[6];
|
|
218
|
+
/**
|
|
219
|
+
* The SPL/MPL Account Compression program that owns and manages the
|
|
220
|
+
* Merkle tree.
|
|
221
|
+
*/
|
|
79
222
|
compressionProgram: TAccountMetas[7];
|
|
223
|
+
/** The Solana System program. */
|
|
80
224
|
systemProgram: TAccountMetas[8];
|
|
81
225
|
};
|
|
82
226
|
data: UnverifyCreatorInstructionData;
|
|
83
|
-
}
|
|
227
|
+
};
|
|
84
228
|
declare function parseUnverifyCreatorInstruction<TProgram extends string, TAccountMetas extends readonly AccountMeta[]>(instruction: Instruction<TProgram> & InstructionWithAccounts<TAccountMetas> & InstructionWithData<ReadonlyUint8Array>): ParsedUnverifyCreatorInstruction<TProgram, TAccountMetas>;
|
|
85
229
|
//#endregion
|
|
86
230
|
export { ParsedUnverifyCreatorInstruction, UNVERIFY_CREATOR_DISCRIMINATOR, UnverifyCreatorAsyncInput, UnverifyCreatorInput, UnverifyCreatorInstruction, UnverifyCreatorInstructionData, UnverifyCreatorInstructionDataArgs, getUnverifyCreatorDiscriminatorBytes, getUnverifyCreatorInstruction, getUnverifyCreatorInstructionAsync, getUnverifyCreatorInstructionDataCodec, getUnverifyCreatorInstructionDataDecoder, getUnverifyCreatorInstructionDataEncoder, parseUnverifyCreatorInstruction };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unverifyCreator.d.ts","names":[],"sources":["../../../src/generated/instructions/unverifyCreator.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"unverifyCreator.d.ts","names":[],"sources":["../../../src/generated/instructions/unverifyCreator.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, 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/unverifyCreator.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 UNVERIFY_CREATOR_DISCRIMINATOR = new Uint8Array([
|
|
8
15
|
107,
|
|
9
16
|
178,
|
|
@@ -45,6 +52,12 @@ function getUnverifyCreatorInstructionDataDecoder() {
|
|
|
45
52
|
function getUnverifyCreatorInstructionDataCodec() {
|
|
46
53
|
return combineCodec(getUnverifyCreatorInstructionDataEncoder(), getUnverifyCreatorInstructionDataDecoder());
|
|
47
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* Unverifies a creator from a leaf node.
|
|
57
|
+
*
|
|
58
|
+
* The named `creator` must sign to remove their own verified flag from
|
|
59
|
+
* the leaf's creators array.
|
|
60
|
+
*/
|
|
48
61
|
async function getUnverifyCreatorInstructionAsync(input, config) {
|
|
49
62
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
50
63
|
const accounts = {
|
|
@@ -107,6 +120,12 @@ async function getUnverifyCreatorInstructionAsync(input, config) {
|
|
|
107
120
|
programAddress
|
|
108
121
|
});
|
|
109
122
|
}
|
|
123
|
+
/**
|
|
124
|
+
* Unverifies a creator from a leaf node.
|
|
125
|
+
*
|
|
126
|
+
* The named `creator` must sign to remove their own verified flag from
|
|
127
|
+
* the leaf's creators array.
|
|
128
|
+
*/
|
|
110
129
|
function getUnverifyCreatorInstruction(input, config) {
|
|
111
130
|
const programAddress = config?.programAddress ?? "BGUMAp9Gq7iTEuizy4pqaxsTyUCBK68MDfK752saRPUY";
|
|
112
131
|
const accounts = {
|