pub trait Config: Config {
    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
    type BanHandler: BanHandler<AccountId = Self::AccountId>;
    type EraInfoProvider: EraInfoProvider<AccountId = Self::AccountId>;
    type ValidatorProvider: ValidatorProvider<AccountId = Self::AccountId>;
    type ValidatorRewardsHandler: ValidatorRewardsHandler<AccountId = Self::AccountId>;
    type ValidatorExtractor: ValidatorExtractor<AccountId = Self::AccountId>;
    type FinalityCommitteeManager: FinalityCommitteeManager<Self::AccountId>;
    type SessionPeriod: Get<u32>;
}
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 BanHandler: BanHandler<AccountId = Self::AccountId>

Something that handles bans

source

type EraInfoProvider: EraInfoProvider<AccountId = Self::AccountId>

Something that provides information about era.

source

type ValidatorProvider: ValidatorProvider<AccountId = Self::AccountId>

Something that provides information about validator.

source

type ValidatorRewardsHandler: ValidatorRewardsHandler<AccountId = Self::AccountId>

Something that handles addition of rewards for validators.

source

type ValidatorExtractor: ValidatorExtractor<AccountId = Self::AccountId>

Something that handles removal of the validators

source

type FinalityCommitteeManager: FinalityCommitteeManager<Self::AccountId>

source

type SessionPeriod: Get<u32>

Nr of blocks in the session.

Object Safety§

This trait is not object safe.

Implementors§