Sigil documentation
ReferenceRust referencesigil-wallet

sigil-wallet · nft

Source declarations, signatures and documentation for nft.

Source: sigil/node/sigil-wallet/src/nft.rs. SHA-256: fab50f3119158acfe84b4beeced9896234a2922f12f13ae264c11b9cb22c325d.

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::create_collection

Create a new NFT collection on-chain.

#[allow(clippy::too_many_arguments)]
pub async fn create_collection(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    name: &str,
    symbol: &str,
    kind: NftKind,
    issuer_did: &str,
    controller_did: &str,
    policy: CollectionPolicy,
    metadata_uri: Option<&str>,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 73.

nft::mint_nft

Mint a new NFT token.

#[allow(clippy::too_many_arguments)]
pub async fn mint_nft(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    token_id: u128,
    recipient_did: &str,
    metadata_uri: Option<&str>,
    metadata_hash: Option<sigil_core::hash::SigilHash>,
    locked: Option<bool>,
    burn_auth: Option<BurnAuth>,
    identity: Option<IdentityBinding>,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 107.

nft::transfer_nft

Transfer an NFT token to a new owner.

#[allow(clippy::too_many_arguments)]
pub async fn transfer_nft(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    token_id: u128,
    to_did: &str,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 140.

nft::burn_nft

Burn (destroy) an NFT token.

pub async fn burn_nft(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    token_id: u128,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 163.

nft::set_nft_metadata

Update the metadata URI and/or hash of an NFT (ERC-4906).

#[allow(clippy::too_many_arguments)]
pub async fn set_nft_metadata(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    token_id: u128,
    metadata_uri: Option<&str>,
    metadata_hash: Option<sigil_core::hash::SigilHash>,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 185.

nft::verify_identity_nft

Advance the verification level on an identity NFT.

#[allow(clippy::too_many_arguments)]
pub async fn verify_identity_nft(
    rpc_url: &str,
    chain_id: &str,
    sender_did: &str,
    collection_id: &str,
    token_id: u128,
    new_verification_level: u8,
    note: Option<&str>,
    passphrase: &str,
    nonce: u64,
) -> WalletResult<String>;

Source line: 210.

nft::print_nft_tx

Print an NFT transaction confirmation.

pub fn print_nft_tx(action: &str, collection: &str, token_id: u128, tx_hash: &str);

Source line: 239.

On this page