Trait pallet_pool_fees::pallet::Config
source · 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§
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
sourcetype FeeId: Parameter + Member + Default + TypeInfo + MaxEncodedLen + Copy + EnsureAdd + One + Ord
type FeeId: Parameter + Member + Default + TypeInfo + MaxEncodedLen + Copy + EnsureAdd + One + Ord
The identifier of a particular fee
sourcetype Balance: Balance + FixedPointOperand + From<Seconds>
type Balance: Balance + FixedPointOperand + From<Seconds>
The source of truth for the balance of accounts
sourcetype CurrencyId: Parameter + Member + Copy + TypeInfo + MaxEncodedLen
type CurrencyId: Parameter + Member + Copy + TypeInfo + MaxEncodedLen
The currency type of transferrable tokens
sourcetype PoolId: Member + Parameter + Default + Copy + HasCompact + MaxEncodedLen
type PoolId: Member + Parameter + Default + Copy + HasCompact + MaxEncodedLen
The pool id type required for the investment identifier
sourcetype Rate: Parameter + Member + FixedPointNumberExtension + TypeInfo + MaxEncodedLen
type Rate: Parameter + Member + FixedPointNumberExtension + TypeInfo + MaxEncodedLen
Type for price ratio for cost of incoming currency relative to outgoing
sourcetype Tokens: Mutate<Self::AccountId> + Inspect<Self::AccountId, AssetId = Self::CurrencyId, Balance = Self::Balance>
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.
sourcetype RuntimeChange: From<Change<Self>> + TryInto<Change<Self>>
type RuntimeChange: From<Change<Self>> + TryInto<Change<Self>>
The source of truth for runtime changes.
sourcetype ChangeGuard: ChangeGuard<PoolId = Self::PoolId, ChangeId = Self::Hash, Change = Self::RuntimeChange>
type ChangeGuard: ChangeGuard<PoolId = Self::PoolId, ChangeId = Self::Hash, Change = Self::RuntimeChange>
Used to notify the runtime about changes that require special treatment.
sourcetype PoolReserve: PoolReserve<Self::AccountId, Self::CurrencyId, Balance = Self::Balance, PoolId = Self::PoolId>
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.
sourcetype IsPoolAdmin: PreConditions<(Self::AccountId, Self::PoolId), Result = bool>
type IsPoolAdmin: PreConditions<(Self::AccountId, Self::PoolId), Result = bool>
Used to verify pool admin permissions
sourcetype MaxPoolFeesPerBucket: Get<u32>
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.
sourcetype MaxFeesPerPool: Get<u32>
type MaxFeesPerPool: Get<u32>
The upper bound for the total number of fees per pool.
sourcetype PalletId: Get<PalletId>
type PalletId: Get<PalletId>
Identifier of this pallet used as an account which temporarily stores disbursing fees in between closing and executing an epoch.