Trait pallet_proof_of_stake::pallet::Config
source · pub trait Config: Config + PoSBenchmarkingConfig {
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
type ActivationReservesProvider: ActivationReservesProviderTrait<Self::AccountId, <<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance, <<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>;
type NativeCurrencyId: Get<<<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>;
type Currency: MultiTokenCurrencyExtended<Self::AccountId> + MultiTokenReservableCurrency<Self::AccountId>;
type LiquidityMiningIssuanceVault: Get<Self::AccountId>;
type RewardsDistributionPeriod: Get<u32>;
type RewardsSchedulesLimit: Get<u32>;
type Min3rdPartyRewardValutationPerSession: Get<u128>;
type Min3rdPartyRewardVolume: Get<u128>;
type SchedulesPerBlock: Get<u32>;
type WeightInfo: WeightInfo;
type ValuationApi: ValutationApiTrait<Self>;
}
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>
type ActivationReservesProvider: ActivationReservesProviderTrait<Self::AccountId, <<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance, <<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>
type NativeCurrencyId: Get<<<Self as Config>::Currency as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>
type Currency: MultiTokenCurrencyExtended<Self::AccountId> + MultiTokenReservableCurrency<Self::AccountId>
sourcetype LiquidityMiningIssuanceVault: Get<Self::AccountId>
type LiquidityMiningIssuanceVault: Get<Self::AccountId>
The account id that holds the liquidity mining issuance
type RewardsDistributionPeriod: Get<u32>
sourcetype RewardsSchedulesLimit: Get<u32>
type RewardsSchedulesLimit: Get<u32>
The maximum number of schedules that can be active at one moment
sourcetype Min3rdPartyRewardValutationPerSession: Get<u128>
type Min3rdPartyRewardValutationPerSession: Get<u128>
The minimum number of rewards per session for schedule rewards