pub trait BlockRewardProvider<AccountId> {
    type Currency: ReservableCurrency<AccountId>;

    // Required methods
    fn distribute_block_reward(
        from: &AccountId,
        amount: <Self::Currency as Currency<AccountId>>::Balance
    ) -> DispatchResult;
    fn withdraw_reward(
        who: &AccountId
    ) -> Result<<Self::Currency as Currency<AccountId>>::Balance, DispatchError>;
}

Required Associated Types§

source

type Currency: ReservableCurrency<AccountId>

Required Methods§

source

fn distribute_block_reward( from: &AccountId, amount: <Self::Currency as Currency<AccountId>>::Balance ) -> DispatchResult

source

fn withdraw_reward( who: &AccountId ) -> Result<<Self::Currency as Currency<AccountId>>::Balance, DispatchError>

Implementors§