pub trait Config: Config {
type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
type Currency: Currency<Self::AccountId>;
type PalletId: Get<PalletId>;
type ProtocolFee: Get<Perbill>;
type ProtocolFeeReceiver: WithAccountId<Self::AccountId>;
type ExistentialDeposit: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
type MaxAllocs: Get<u32>;
type OracleMembers: Contains<Self::AccountId>;
type MintCurve: Get<&'static MintCurve<Self>>;
type BlockNumberProvider: BlockNumberProvider<BlockNumber = BlockNumberFor<Self>>;
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>
type Currency: Currency<Self::AccountId>
type PalletId: Get<PalletId>
type ProtocolFee: Get<Perbill>
type ProtocolFeeReceiver: WithAccountId<Self::AccountId>
Sourcetype ExistentialDeposit: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>
type ExistentialDeposit: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>
Runtime existential deposit
type OracleMembers: Contains<Self::AccountId>
Sourcetype MintCurve: Get<&'static MintCurve<Self>>
type MintCurve: Get<&'static MintCurve<Self>>
MintCurve acts as an upper bound limiting how much the total token issuance can inflate over a configured session
Sourcetype BlockNumberProvider: BlockNumberProvider<BlockNumber = BlockNumberFor<Self>>
type BlockNumberProvider: BlockNumberProvider<BlockNumber = BlockNumberFor<Self>>
Provide access to the block number that should be used in mint curve calculations. For example those who use this pallet for a parachain may decide to use the block creation pace of the relay chain for timing.
Sourcetype WeightInfo: WeightInfo
type WeightInfo: WeightInfo
Weight information for extrinsics in this pallet.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.