pub trait Config: Config + Config {
    type FeeKey: Parameter + MaybeSerializeDeserialize + MaxEncodedLen;
    type Currency: Currency<Self::AccountId>;
    type Treasury: OnUnbalanced<ImbalanceOf<Self>>;
    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
    type FeeChangeOrigin: EnsureOrigin<Self::RuntimeOrigin>;
    type DefaultFeeValue: Get<BalanceOf<Self>>;
    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 FeeKey: Parameter + MaybeSerializeDeserialize + MaxEncodedLen

Key type used for storing and identifying fees.

source

type Currency: Currency<Self::AccountId>

The currency mechanism.

source

type Treasury: OnUnbalanced<ImbalanceOf<Self>>

The treasury destination.

source

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

The overarching event type.

source

type FeeChangeOrigin: EnsureOrigin<Self::RuntimeOrigin>

Required origin for changing fees.

source

type DefaultFeeValue: Get<BalanceOf<Self>>

Default value for fee keys.

source

type WeightInfo: WeightInfo

Type representing the weight of this pallet.

Object Safety§

This trait is not object safe.

Implementors§