pub trait Config: Config {
    type Event: From<Event<Self>> + IsType<<Self as Config>::Event>;
    type WeightInfo: WeightInfo;
    type Call: Parameter + Dispatchable<Origin = Self::Origin, PostInfo = PostDispatchInfo> + GetDispatchInfo + From<Call<Self>>;
    type Currency: ReservableCurrency<Self::AccountId>;
    type ConfigDepositBase: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
    type FriendDepositFactor: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
    type MaxFriends: Get<u32>;
    type RecoveryDeposit: Get<<<Self as Config>::Currency as Currency<<Self as Config>::AccountId>>::Balance>;
}
Expand description

Configuration trait.

Required Associated Types§

The overarching event type.

Weight information for extrinsics in this pallet.

The overarching call type.

The currency mechanism.

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

This is held for an additional storage item whose value size is 2 + sizeof(BlockNumber, Balance) bytes.

The amount of currency needed per additional user when creating a recovery configuration.

This is held for adding sizeof(AccountId) bytes more into a pre-existing storage value.

The maximum amount of friends allowed in a recovery configuration.

NOTE: The threshold programmed in this Pallet uses u16, so it does not really make sense to have a limit here greater than u16::MAX. But also, that is a lot more than you should probably set this value to anyway…

The base amount of currency needed to reserve for starting a recovery.

This is primarily held for deterring malicious recovery attempts, and should have a value large enough that a bad actor would choose not to place this deposit. It also acts to fund additional storage item whose value size is sizeof(BlockNumber, Balance + T * AccountId) bytes. Where T is a configurable threshold.

Implementors§