Trait polkadot_sdk_frame::traits::tokens::nonfungibles_v2::Destroy
pub trait Destroy<AccountId>: Inspect<AccountId> {
type DestroyWitness: Parameter;
// Required methods
fn get_destroy_witness(
collection: &Self::CollectionId,
) -> Option<Self::DestroyWitness>;
fn destroy(
collection: Self::CollectionId,
witness: Self::DestroyWitness,
maybe_check_owner: Option<AccountId>,
) -> Result<Self::DestroyWitness, DispatchError>;
}
Expand description
Trait for providing the ability to destroy collections of nonfungible items.
Required Associated Types§
type DestroyWitness: Parameter
type DestroyWitness: Parameter
The witness data needed to destroy an item.
Required Methods§
fn get_destroy_witness(
collection: &Self::CollectionId,
) -> Option<Self::DestroyWitness>
fn get_destroy_witness( collection: &Self::CollectionId, ) -> Option<Self::DestroyWitness>
Provide the appropriate witness data needed to destroy an item.
fn destroy(
collection: Self::CollectionId,
witness: Self::DestroyWitness,
maybe_check_owner: Option<AccountId>,
) -> Result<Self::DestroyWitness, DispatchError>
fn destroy( collection: Self::CollectionId, witness: Self::DestroyWitness, maybe_check_owner: Option<AccountId>, ) -> Result<Self::DestroyWitness, DispatchError>
Destroy an existing fungible item.
collection
: TheCollectionId
to be destroyed.witness
: Any witness data that needs to be provided to complete the operation successfully.maybe_check_owner
: An optionalAccountId
that can be used to authorize the destroy command. If not provided, we will not do any authorization checks before destroying the item.
If successful, this function will return the actual witness data from the destroyed item. This may be different than the witness data provided, and can be used to refund weight.
Object Safety§
This trait is not object safe.