Sigil documentation
ReferenceRust referencesigil-sdk

sigil-sdk · nft

Source declarations, signatures and documentation for nft.

Source: sigil/node/sigil-sdk/src/nft.rs. SHA-256: ad901fe315da1c546036b38df4ee4d7a4043c5f53177a93822fd3f1f9e4fac5e.

This reference follows declared source modules, retains conditional attributes, and includes public declarations and implementation methods. Private-module re-exports and trait resolution require the compiler; this is a source reference, not a claim that every listed item is a root import. Function bodies and constant values are omitted.

nft::TransactionBuilder::create_nft_collection

Build a CreateNftCollection transaction.

The sender_did on the builder must match issuer_did (enforced by the executor, not here).

#[allow(clippy::too_many_arguments)]
pub fn create_nft_collection(
        self,
        collection_id: &str,
        name: &str,
        symbol: &str,
        kind: NftKind,
        issuer_did: &str,
        controller_did: &str,
        policy: CollectionPolicy,
        metadata_uri: Option<&str>,
    ) -> Transaction;

Source line: 36.

nft::TransactionBuilder::mint_nft

Build a MintNft transaction.

#[allow(clippy::too_many_arguments)]
pub fn mint_nft(
        self,
        collection_id: &str,
        token_id: u128,
        recipient_did: &str,
        metadata_uri: Option<&str>,
        metadata_hash: Option<SigilHash>,
        locked: Option<bool>,
        burn_auth: Option<BurnAuth>,
        identity: Option<IdentityBinding>,
    ) -> Transaction;

Source line: 67.

nft::TransactionBuilder::transfer_nft

Build a TransferNft transaction.

pub fn transfer_nft(
        self,
        collection_id: &str,
        token_id: u128,
        from_did: &str,
        to_did: &str,
    ) -> Transaction;

Source line: 91.

nft::TransactionBuilder::burn_nft

Build a BurnNft transaction.

pub fn burn_nft(self, collection_id: &str, token_id: u128, authorized_by: &str) -> Transaction;

Source line: 107.

nft::TransactionBuilder::set_nft_metadata

Build a SetNftMetadata transaction (ERC-4906 inspired).

At least one of metadata_uri or metadata_hash should be supplied; the executor rejects transactions where both are None.

pub fn set_nft_metadata(
        self,
        collection_id: &str,
        token_id: u128,
        metadata_uri: Option<&str>,
        metadata_hash: Option<SigilHash>,
    ) -> Transaction;

Source line: 119.

nft::TransactionBuilder::verify_identity_nft

Build a VerifyIdentityNft transaction.

pub fn verify_identity_nft(
        self,
        collection_id: &str,
        token_id: u128,
        verifier_did: &str,
        new_verification_level: u8,
        note: Option<&str>,
    ) -> Transaction;

Source line: 135.

On this page