pub trait Config: Config {
    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
    type AssetId: Member + Parameter + Default + Copy + HasCompact + MaxEncodedLen;
    type AssetRegistrarMetadata: Member + Parameter + Default;
    type ForeignAssetType: Parameter + Member + Ord + PartialOrd + Into<Self::AssetId> + Default;
    type Balance: Member + Parameter + AtLeast32BitUnsigned + Default + Copy + MaxEncodedLen;
    type AssetRegistrar: AssetRegistrar<Self>;
    type ForeignAssetModifierOrigin: EnsureOrigin<Self::RuntimeOrigin>;
    type WeightInfo: WeightInfo;
}
Expand description

Configuration trait of this pallet.

The main purpose of this trait is to act as an interface between this pallet and the runtime in which it is embedded in. A type, function, or constant in this trait is essentially left to be configured by the runtime that includes this pallet.

Consequently, a runtime that wants to include this pallet must implement this trait.

Required Associated Types§

source

type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>

source

type AssetId: Member + Parameter + Default + Copy + HasCompact + MaxEncodedLen

The Asset Id. This will be used to create the asset and to associate it with a assetType

source

type AssetRegistrarMetadata: Member + Parameter + Default

The Asset Metadata we want to store

source

type ForeignAssetType: Parameter + Member + Ord + PartialOrd + Into<Self::AssetId> + Default

The Foreign Asset Kind.

source

type Balance: Member + Parameter + AtLeast32BitUnsigned + Default + Copy + MaxEncodedLen

The units in which we record balances.

source

type AssetRegistrar: AssetRegistrar<Self>

The asset Registrar. The trait we use to register Assets

source

type ForeignAssetModifierOrigin: EnsureOrigin<Self::RuntimeOrigin>

Origin that is allowed to create and modify asset information for foreign assets

source

type WeightInfo: WeightInfo

Object Safety§

This trait is not object safe.

Implementors§