pub trait Config: Config {
Show 16 associated items type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>; type FeeId: Parameter + Member + Default + TypeInfo + MaxEncodedLen + Copy + EnsureAdd + One + Ord; type Balance: Balance + FixedPointOperand + From<Seconds>; type CurrencyId: Parameter + Member + Copy + TypeInfo + MaxEncodedLen; type PoolId: Member + Parameter + Default + Copy + HasCompact + MaxEncodedLen; type Rate: Parameter + Member + FixedPointNumberExtension + TypeInfo + MaxEncodedLen; type Tokens: Mutate<Self::AccountId> + Inspect<Self::AccountId, AssetId = Self::CurrencyId, Balance = Self::Balance>; type RuntimeChange: From<Change<Self>> + TryInto<Change<Self>>; type ChangeGuard: ChangeGuard<PoolId = Self::PoolId, ChangeId = Self::Hash, Change = Self::RuntimeChange>; type PoolReserve: PoolReserve<Self::AccountId, Self::CurrencyId, Balance = Self::Balance, PoolId = Self::PoolId>; type IsPoolAdmin: PreConditions<(Self::AccountId, Self::PoolId), Result = bool>; type MaxPoolFeesPerBucket: Get<u32>; type MaxFeesPerPool: Get<u32>; type PalletId: Get<PalletId>; type Time: TimeAsSecs; 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 FeeId: Parameter + Member + Default + TypeInfo + MaxEncodedLen + Copy + EnsureAdd + One + Ord

The identifier of a particular fee

source

type Balance: Balance + FixedPointOperand + From<Seconds>

The source of truth for the balance of accounts

source

type CurrencyId: Parameter + Member + Copy + TypeInfo + MaxEncodedLen

The currency type of transferrable tokens

source

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

The pool id type required for the investment identifier

source

type Rate: Parameter + Member + FixedPointNumberExtension + TypeInfo + MaxEncodedLen

Type for price ratio for cost of incoming currency relative to outgoing

source

type Tokens: Mutate<Self::AccountId> + Inspect<Self::AccountId, AssetId = Self::CurrencyId, Balance = Self::Balance>

The type for handling transfers, burning and minting of multi-assets.

source

type RuntimeChange: From<Change<Self>> + TryInto<Change<Self>>

The source of truth for runtime changes.

source

type ChangeGuard: ChangeGuard<PoolId = Self::PoolId, ChangeId = Self::Hash, Change = Self::RuntimeChange>

Used to notify the runtime about changes that require special treatment.

source

type PoolReserve: PoolReserve<Self::AccountId, Self::CurrencyId, Balance = Self::Balance, PoolId = Self::PoolId>

The source of truth for pool existence and provider for pool reserve operations required to withdraw fees.

source

type IsPoolAdmin: PreConditions<(Self::AccountId, Self::PoolId), Result = bool>

Used to verify pool admin permissions

source

type MaxPoolFeesPerBucket: Get<u32>

The pool fee bound per bucket. If multiplied with the number of bucket variants, this yields the max number of fees per pool.

source

type MaxFeesPerPool: Get<u32>

The upper bound for the total number of fees per pool.

source

type PalletId: Get<PalletId>

Identifier of this pallet used as an account which temporarily stores disbursing fees in between closing and executing an epoch.

source

type Time: TimeAsSecs

Fetching method for the time of the current block

source

type WeightInfo: WeightInfo

Object Safety§

This trait is not object safe.

Implementors§