pub trait Config: Config {
    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
    type Scope: Member + Parameter + MaxEncodedLen;
    type Role: Member + Parameter;
    type Storage: Member + Parameter + Properties<Property = Self::Role> + Default + MaxEncodedLen;
    type Editors: Contains<(Self::AccountId, Option<Self::Role>, Self::Scope, Self::Role)>;
    type AdminOrigin: EnsureOrigin<Self::RuntimeOrigin>;
    type MaxRolesPerScope: Get<u32>;
    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. Configure the pallet by specifying the parameters and types on which it depends.

Required Associated Types§

source

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.

source

type Scope: Member + Parameter + MaxEncodedLen

source

type Role: Member + Parameter

source

type Storage: Member + Parameter + Properties<Property = Self::Role> + Default + MaxEncodedLen

source

type Editors: Contains<(Self::AccountId, Option<Self::Role>, Self::Scope, Self::Role)>

source

type AdminOrigin: EnsureOrigin<Self::RuntimeOrigin>

source

type MaxRolesPerScope: Get<u32>

source

type WeightInfo: WeightInfo

Object Safety§

This trait is not object safe.

Implementors§