Trait pallet_alliance::pallet::Config
source · pub trait Config<I: 'static = ()>: Config {
Show 21 associated items
type RuntimeEvent: From<Event<Self, I>> + IsType<<Self as Config>::RuntimeEvent>;
type Proposal: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin, PostInfo = PostDispatchInfo> + From<Call<Self>> + From<Call<Self, I>> + GetDispatchInfo + IsSubType<Call<Self, I>> + IsType<<Self as Config>::RuntimeCall>;
type AdminOrigin: EnsureOrigin<Self::RuntimeOrigin>;
type MembershipManager: EnsureOrigin<Self::RuntimeOrigin>;
type AnnouncementOrigin: EnsureOrigin<Self::RuntimeOrigin>;
type Currency: ReservableCurrency<Self::AccountId>;
type Slashed: OnUnbalanced<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::NegativeImbalance>;
type InitializeMembers: InitializeMembers<Self::AccountId>;
type MembershipChanged: ChangeMembers<Self::AccountId>;
type IdentityVerifier: IdentityVerifier<Self::AccountId>;
type ProposalProvider: ProposalProvider<Self::AccountId, Self::Hash, Self::Proposal>;
type MaxProposals: Get<ProposalIndex>;
type MaxFellows: Get<u32>;
type MaxAllies: Get<u32>;
type MaxUnscrupulousItems: Get<u32>;
type MaxWebsiteUrlLength: Get<u32>;
type AllyDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
type MaxAnnouncementsCount: Get<u32>;
type MaxMembersCount: Get<u32>;
type WeightInfo: WeightInfo;
type RetirementPeriod: Get<BlockNumberFor<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§
sourcetype RuntimeEvent: From<Event<Self, I>> + IsType<<Self as Config>::RuntimeEvent>
type RuntimeEvent: From<Event<Self, I>> + IsType<<Self as Config>::RuntimeEvent>
The overarching event type.
sourcetype Proposal: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin, PostInfo = PostDispatchInfo> + From<Call<Self>> + From<Call<Self, I>> + GetDispatchInfo + IsSubType<Call<Self, I>> + IsType<<Self as Config>::RuntimeCall>
type Proposal: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin, PostInfo = PostDispatchInfo> + From<Call<Self>> + From<Call<Self, I>> + GetDispatchInfo + IsSubType<Call<Self, I>> + IsType<<Self as Config>::RuntimeCall>
The runtime call dispatch type.
sourcetype AdminOrigin: EnsureOrigin<Self::RuntimeOrigin>
type AdminOrigin: EnsureOrigin<Self::RuntimeOrigin>
Origin for admin-level operations, like setting the Alliance’s rules.
sourcetype MembershipManager: EnsureOrigin<Self::RuntimeOrigin>
type MembershipManager: EnsureOrigin<Self::RuntimeOrigin>
Origin that manages entry and forcible discharge from the Alliance.
sourcetype AnnouncementOrigin: EnsureOrigin<Self::RuntimeOrigin>
type AnnouncementOrigin: EnsureOrigin<Self::RuntimeOrigin>
Origin for making announcements and adding/removing unscrupulous items.
sourcetype Currency: ReservableCurrency<Self::AccountId>
type Currency: ReservableCurrency<Self::AccountId>
The currency used for deposits.
sourcetype Slashed: OnUnbalanced<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::NegativeImbalance>
type Slashed: OnUnbalanced<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::NegativeImbalance>
What to do with slashed funds.
sourcetype InitializeMembers: InitializeMembers<Self::AccountId>
type InitializeMembers: InitializeMembers<Self::AccountId>
What to do with initial voting members of the Alliance.
sourcetype MembershipChanged: ChangeMembers<Self::AccountId>
type MembershipChanged: ChangeMembers<Self::AccountId>
What to do when a member has been added or removed.
sourcetype IdentityVerifier: IdentityVerifier<Self::AccountId>
type IdentityVerifier: IdentityVerifier<Self::AccountId>
The identity verifier of an Alliance member.
sourcetype ProposalProvider: ProposalProvider<Self::AccountId, Self::Hash, Self::Proposal>
type ProposalProvider: ProposalProvider<Self::AccountId, Self::Hash, Self::Proposal>
The provider of the proposal operation.
sourcetype MaxProposals: Get<ProposalIndex>
type MaxProposals: Get<ProposalIndex>
Maximum number of proposals allowed to be active in parallel.
sourcetype MaxFellows: Get<u32>
type MaxFellows: Get<u32>
The maximum number of Fellows supported by the pallet. Used for weight estimation.
NOTE:
- Benchmarks will need to be re-run and weights adjusted if this changes.
- This pallet assumes that dependencies keep to the limit without enforcing it.
sourcetype MaxAllies: Get<u32>
type MaxAllies: Get<u32>
The maximum number of Allies supported by the pallet. Used for weight estimation.
NOTE:
- Benchmarks will need to be re-run and weights adjusted if this changes.
- This pallet assumes that dependencies keep to the limit without enforcing it.
sourcetype MaxUnscrupulousItems: Get<u32>
type MaxUnscrupulousItems: Get<u32>
The maximum number of the unscrupulous items supported by the pallet.
sourcetype MaxWebsiteUrlLength: Get<u32>
type MaxWebsiteUrlLength: Get<u32>
The maximum length of a website URL.
sourcetype AllyDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::Balance>
type AllyDeposit: Get<<<Self as Config<I>>::Currency as Currency<<Self as Config>::AccountId>>::Balance>
The deposit required for submitting candidacy.
sourcetype MaxAnnouncementsCount: Get<u32>
type MaxAnnouncementsCount: Get<u32>
The maximum number of announcements.
sourcetype MaxMembersCount: Get<u32>
type MaxMembersCount: Get<u32>
The maximum number of members per member role.
sourcetype WeightInfo: WeightInfo
type WeightInfo: WeightInfo
Weight information for extrinsics in this pallet.
sourcetype RetirementPeriod: Get<BlockNumberFor<Self>>
type RetirementPeriod: Get<BlockNumberFor<Self>>
The number of blocks a member must wait between giving a retirement notice and retiring.
Supposed to be greater than time required to kick_member
.