pub trait Config: Config<RuntimeCall = <Self as Config>::RuntimeCall> + Config<Balance = u128> {
    type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin, PostInfo = PostDispatchInfo, Info = DispatchInfo> + GetDispatchInfo + IsSubType<Call<Self>>;
    type Dex: ExportDexGeneral<Self::AccountId, Self::CurrencyId>;
    type Currency: Currency<Self::AccountId, Balance = u128>;
    type OnUnbalanced: OnUnbalanced<<Self::Currency as Currency<Self::AccountId>>::NegativeImbalance>;
    type DexWeightInfo: 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 RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin, PostInfo = PostDispatchInfo, Info = DispatchInfo> + GetDispatchInfo + IsSubType<Call<Self>>

The aggregated call type.

source

type Dex: ExportDexGeneral<Self::AccountId, Self::CurrencyId>

dex api

source

type Currency: Currency<Self::AccountId, Balance = u128>

The currency trait.

source

type OnUnbalanced: OnUnbalanced<<Self::Currency as Currency<Self::AccountId>>::NegativeImbalance>

What to do with fees. Typically this is a transfer to the block author or treasury

source

type DexWeightInfo: WeightInfo

weights of dex operations

Implementors§