Trait pallet_issuance::pallet::Config
source · pub trait Config: Config {
Show 18 associated items
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
type NativeCurrencyId: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>;
type Tokens: MultiTokenCurrencyExtended<Self::AccountId>;
type BlocksPerRound: Get<u32>;
type HistoryLimit: Get<u32>;
type LiquidityMiningIssuanceVault: Get<Self::AccountId>;
type StakingIssuanceVault: Get<Self::AccountId>;
type TotalCrowdloanAllocation: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>;
type ImmediateTGEReleasePercent: Get<Percent>;
type IssuanceCap: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>;
type LinearIssuanceBlocks: Get<u32>;
type LiquidityMiningSplit: Get<Perbill>;
type StakingSplit: Get<Perbill>;
type TGEReleasePeriod: Get<u32>;
type TGEReleaseBegin: Get<u32>;
type VestingProvider: MultiTokenVestingSchedule<Self::AccountId, Currency = Self::Tokens, Moment = BlockNumberFor<Self>>;
type WeightInfo: WeightInfo;
type LiquidityMiningApi: LiquidityMiningApi<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>;
}
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. Configure the pallet by specifying the parameters and types on which it depends.
Required Associated Types§
sourcetype RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>
Because this pallet emits events, it depends on the runtime’s definition of an event.
sourcetype NativeCurrencyId: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>
type NativeCurrencyId: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::CurrencyId>
MGA currency to check total_issuance
sourcetype Tokens: MultiTokenCurrencyExtended<Self::AccountId>
type Tokens: MultiTokenCurrencyExtended<Self::AccountId>
Tokens
sourcetype BlocksPerRound: Get<u32>
type BlocksPerRound: Get<u32>
Number of blocks per session/round
sourcetype HistoryLimit: Get<u32>
type HistoryLimit: Get<u32>
Number of sessions to store issuance history for
sourcetype LiquidityMiningIssuanceVault: Get<Self::AccountId>
type LiquidityMiningIssuanceVault: Get<Self::AccountId>
The account id that holds the liquidity mining issuance
sourcetype StakingIssuanceVault: Get<Self::AccountId>
type StakingIssuanceVault: Get<Self::AccountId>
The account id that holds the staking issuance
sourcetype TotalCrowdloanAllocation: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>
type TotalCrowdloanAllocation: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>
The total mga allocated for crowdloans
sourcetype ImmediateTGEReleasePercent: Get<Percent>
type ImmediateTGEReleasePercent: Get<Percent>
The maximum amount of Mangata tokens
sourcetype IssuanceCap: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>
type IssuanceCap: Get<<<Self as Config>::Tokens as MultiTokenCurrency<<Self as Config>::AccountId>>::Balance>
The maximum amount of Mangata tokens
sourcetype LinearIssuanceBlocks: Get<u32>
type LinearIssuanceBlocks: Get<u32>
The number of blocks the issuance is linear
sourcetype LiquidityMiningSplit: Get<Perbill>
type LiquidityMiningSplit: Get<Perbill>
The split of issuance for liquidity mining rewards
sourcetype StakingSplit: Get<Perbill>
type StakingSplit: Get<Perbill>
The split of issuance for staking rewards
sourcetype TGEReleasePeriod: Get<u32>
type TGEReleasePeriod: Get<u32>
The number of blocks the tge tokens vest for
sourcetype TGEReleaseBegin: Get<u32>
type TGEReleaseBegin: Get<u32>
The block at which the tge tokens begin to vest
sourcetype VestingProvider: MultiTokenVestingSchedule<Self::AccountId, Currency = Self::Tokens, Moment = BlockNumberFor<Self>>
type VestingProvider: MultiTokenVestingSchedule<Self::AccountId, Currency = Self::Tokens, Moment = BlockNumberFor<Self>>
The vesting pallet