利用可能なガード

NFT Burnガード

概要

NFT Burnガードは、事前定義されたNFTコレクションの保有者へのミントを制限し、保有者のNFTをバーンします。したがって、バーンするNFTのミントアドレスは、ミント時に支払者によって提供される必要があります。

ガード設定

NFT Burnガードには以下の設定が含まれます:

  • Required Collection: 必要なNFTコレクションのミントアドレス。ミントに使用するNFTは、このコレクションの一部である必要があります。

NFT Burnガードを使用してCandy Machineをセットアップする

create(umi, {
// ...
guards: {
nftBurn: some({ requiredCollection: requiredCollectionNft.publicKey }),
},
});

APIリファレンス: create, NftBurn

ミント設定

NFT Burnガードには以下のミント設定が含まれます:

  • Required Collection: 必要なNFTコレクションのミントアドレス。
  • Mint: バーンするNFTのミントアドレス。これは、必要なコレクションの一部であり、ミンターに属している必要があります。
  • Token Standard: バーンするNFTのトークン標準。
  • Token Account (オプション): NFTとその所有者を明示的にリンクするトークンアカウントをオプションで提供できます。デフォルトでは、支払者の関連トークンアカウントが使用されます。

SDKを使用せずに手動で命令を構築する場合は、これらのミント設定などを命令の引数と残りのアカウントの組み合わせとして提供する必要があることに注意してください。詳細については、Candy Guardのプログラムドキュメントを参照してください。

NFT Burnガードを使用してミントする

NFT BurnガードのMint Settingsは、次のようにmintArgs引数を使用して渡すことができます。

import { TokenStandard } from "@metaplex-foundation/mpl-token-metadata";
mintV1(umi, {
// ...
mintArgs: {
nftBurn: some({
requiredCollection: requiredCollectionNft.publicKey,
mint: nftToBurn.publicKey,
tokenStandard: TokenStandard.NonFungible,
}),
},
});

APIリファレンス: mintV1, NftBurnMintArgs

ルート命令

NFT Burnガードはルート命令をサポートしていません。