NftPayment: {
    destination: PublicKey;
    requiredCollection: PublicKey;
}

Guard that charges another NFT (token) from a specific collection as payment for the mint.

List of accounts required:

  1. [writeable] Token account of the NFT.
  2. [writeable] Metadata account of the NFT.
  3. [] Mint account of the NFT.
  4. [] Account to receive the NFT.
  5. [writeable] Destination PDA key (seeds [destination pubkey, token program id, nft mint pubkey]).
  6. [] spl-associate-token program ID.
  7. [] SPL token program.
  8. [] Token Metadata program.
  9. [] Master edition (pNFT)
  10. [writable] Owner token record (pNFT)
  11. [writable] Destination token record (pNFT)
  12. [] Token Authorization Rules program (pNFT)
  13. [] Token Authorization Rules account (pNFT)

Type declaration

Generated using TypeDoc