pub trait Mutate: Inspect {
// Required methods
fn register_asset(
asset_id: Option<Self::AssetId>,
metadata: AssetMetadata<Self::Balance, Self::CustomMetadata, Self::StringLimit>
) -> DispatchResult;
fn update_asset(
asset_id: Self::AssetId,
decimals: Option<u32>,
name: Option<BoundedVec<u8, Self::StringLimit>>,
symbol: Option<BoundedVec<u8, Self::StringLimit>>,
existential_deposit: Option<Self::Balance>,
location: Option<Option<VersionedMultiLocation>>,
additional: Option<Self::CustomMetadata>
) -> DispatchResult;
}