pub trait Config: Config {
    type RuntimeEvent: From<Event<Self>> + IsType<<Self as Config>::RuntimeEvent>;
    type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin> + GetDispatchInfo + From<Call<Self>> + IsSubType<Call<Self>> + IsType<<Self as Config>::RuntimeCall>;
    type Currency: ReservableCurrency<Self::AccountId>;
    type ProxyType: Parameter + Member + Ord + PartialOrd + InstanceFilter<<Self as Config>::RuntimeCall> + Default + MaxEncodedLen;
    type ProxyDepositBase: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
    type ProxyDepositFactor: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
    type MaxProxies: Get<u32>;
    type WeightInfo: WeightInfo;
    type MaxPending: Get<u32>;
    type CallHasher: Hash;
    type AnnouncementDepositBase: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
    type AnnouncementDepositFactor: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
}
Expand description

Configuration trait.

Required Associated Types§

source

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

The overarching event type.

source

type RuntimeCall: Parameter + Dispatchable<RuntimeOrigin = Self::RuntimeOrigin> + GetDispatchInfo + From<Call<Self>> + IsSubType<Call<Self>> + IsType<<Self as Config>::RuntimeCall>

The overarching call type.

source

type Currency: ReservableCurrency<Self::AccountId>

The currency mechanism.

source

type ProxyType: Parameter + Member + Ord + PartialOrd + InstanceFilter<<Self as Config>::RuntimeCall> + Default + MaxEncodedLen

A kind of proxy; specified with the proxy and passed in to the IsProxyable fitler. The instance filter determines whether a given call may be proxied under this type.

IMPORTANT: Default must be provided and MUST BE the the most permissive value.

source

type ProxyDepositBase: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>

The base amount of currency needed to reserve for creating a proxy.

This is held for an additional storage item whose value size is sizeof(Balance) bytes and whose key size is sizeof(AccountId) bytes.

source

type ProxyDepositFactor: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>

The amount of currency needed per proxy added.

This is held for adding 32 bytes plus an instance of ProxyType more into a pre-existing storage value. Thus, when configuring ProxyDepositFactor one should take into account 32 + proxy_type.encode().len() bytes of data.

source

type MaxProxies: Get<u32>

The maximum amount of proxies allowed for a single account.

source

type WeightInfo: WeightInfo

Weight information for extrinsics in this pallet.

source

type MaxPending: Get<u32>

The maximum amount of time-delayed announcements that are allowed to be pending.

source

type CallHasher: Hash

The type of hash used for hashing the call.

source

type AnnouncementDepositBase: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>

The base amount of currency needed to reserve for creating an announcement.

This is held when a new storage item holding a Balance is created (typically 16 bytes).

source

type AnnouncementDepositFactor: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>

The amount of currency needed per announcement made.

This is held for adding an AccountId, Hash and BlockNumber (typically 68 bytes) into a pre-existing storage value.

Implementors§