chia_sdk_driver/primitives/nft/
nft_mint.rs1use chia_protocol::Bytes32;
2use chia_puzzles::NFT_METADATA_UPDATER_DEFAULT_HASH;
3use chia_sdk_types::conditions::TransferNft;
4
5use crate::HashedPtr;
6
7#[derive(Debug, Clone, PartialEq, Eq)]
8pub struct NftMint {
9 pub metadata: HashedPtr,
10 pub metadata_updater_puzzle_hash: Bytes32,
11 pub royalty_puzzle_hash: Bytes32,
12 pub royalty_basis_points: u16,
13 pub p2_puzzle_hash: Bytes32,
14 pub transfer_condition: Option<TransferNft>,
15}
16
17impl NftMint {
18 pub fn new(
19 metadata: HashedPtr,
20 p2_puzzle_hash: Bytes32,
21 royalty_basis_points: u16,
22 transfer_condition: Option<TransferNft>,
23 ) -> Self {
24 Self {
25 metadata,
26 metadata_updater_puzzle_hash: NFT_METADATA_UPDATER_DEFAULT_HASH.into(),
27 royalty_puzzle_hash: p2_puzzle_hash,
28 royalty_basis_points,
29 p2_puzzle_hash,
30 transfer_condition,
31 }
32 }
33}