Trait pallet_inv4::pallet::Config

source ·
pub trait Config: Config + Config {
Show 18 associated items type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>; type CoreId: Parameter + Member + AtLeast32BitUnsigned + Default + Copy + Display + MaxEncodedLen + Clone + Into<u32>; type Currency: Currency<Self::AccountId> + ReservableCurrency<Self::AccountId>; type RuntimeCall: Parameter + Dispatchable<Info = DispatchInfo, RuntimeOrigin = <Self as Config>::RuntimeOrigin, PostInfo = PostDispatchInfo> + GetDispatchInfo + From<Call<Self>> + GetCallMetadata + FullCodec; type MaxCallers: Get<u32>; type MaxMetadata: Get<u32>; type RuntimeOrigin: From<Origin<Self>> + From<<Self as Config>::RuntimeOrigin> + From<RawOrigin<<Self as Config>::AccountId>>; type CoreSeedBalance: Get<BalanceOf<Self>>; type CoreCreationFee: Get<BalanceOf<Self>>; type RelayCoreCreationFee: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::Balance>; type RelayAssetId: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::AssetId>; type AssetsProvider: Inspect<Self::AccountId, Balance = BalanceOf<Self>, AssetId = Self::CoreId> + Mutate<Self::AccountId, AssetId = Self::CoreId>; type Tokens: Balanced<Self::AccountId> + Inspect<Self::AccountId>; type FeeCharger: MultisigFeeHandler<Self>; type ParaId: Get<u32>; type MaxCallSize: Get<u32>; type WeightInfo: WeightInfo; type LengthToFee: WeightToFee<Balance = BalanceOf<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§

source

type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>

Runtime event type

source

type CoreId: Parameter + Member + AtLeast32BitUnsigned + Default + Copy + Display + MaxEncodedLen + Clone + Into<u32>

Integer id type for the core id

source

type Currency: Currency<Self::AccountId> + ReservableCurrency<Self::AccountId>

Currency type

source

type RuntimeCall: Parameter + Dispatchable<Info = DispatchInfo, RuntimeOrigin = <Self as Config>::RuntimeOrigin, PostInfo = PostDispatchInfo> + GetDispatchInfo + From<Call<Self>> + GetCallMetadata + FullCodec

The overarching call type

source

type MaxCallers: Get<u32>

The maximum numbers of caller accounts on a single multisig proposal

source

type MaxMetadata: Get<u32>

The maximum length of the core metadata and the metadata of multisig proposals

source

type RuntimeOrigin: From<Origin<Self>> + From<<Self as Config>::RuntimeOrigin> + From<RawOrigin<<Self as Config>::AccountId>>

The outer Origin type.

source

type CoreSeedBalance: Get<BalanceOf<Self>>

Base voting token balance to give callers when creating a core

source

type CoreCreationFee: Get<BalanceOf<Self>>

Fee for creating a core in the native token

source

type RelayCoreCreationFee: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::Balance>

Fee for creating a core in the relay token

source

type RelayAssetId: Get<<<Self as Config>::Tokens as Inspect<<Self as Config>::AccountId>>::AssetId>

Relay token asset id in the runtime

source

type AssetsProvider: Inspect<Self::AccountId, Balance = BalanceOf<Self>, AssetId = Self::CoreId> + Mutate<Self::AccountId, AssetId = Self::CoreId>

Provider of assets functionality for the voting tokens

source

type Tokens: Balanced<Self::AccountId> + Inspect<Self::AccountId>

Provider of balance tokens in the runtime

source

type FeeCharger: MultisigFeeHandler<Self>

Implementation of the fee handler for both core creation fee and multisig call fees

source

type ParaId: Get<u32>

ParaId of the parachain, to be used for deriving the core account id

source

type MaxCallSize: Get<u32>

Maximum size of a multisig proposal call

source

type WeightInfo: WeightInfo

Weight info for dispatchable calls

source

type LengthToFee: WeightToFee<Balance = BalanceOf<Self>>

Byte to fee conversion provider, from pallet_transaction_payment.

Object Safety§

This trait is not object safe.

Implementors§