2019-02-13 15:01:50 -08:00
|
|
|
package types
|
|
|
|
|
|
|
|
import sdk "github.com/cosmos/cosmos-sdk/types"
|
|
|
|
|
|
|
|
// expected coin keeper
|
|
|
|
type DistributionKeeper interface {
|
|
|
|
GetFeePoolCommunityCoins(ctx sdk.Context) sdk.DecCoins
|
2019-03-06 10:54:12 -08:00
|
|
|
GetValidatorOutstandingRewardsCoins(ctx sdk.Context, val sdk.ValAddress) sdk.DecCoins
|
2019-02-13 15:01:50 -08:00
|
|
|
}
|
|
|
|
|
|
|
|
// expected fee collection keeper
|
|
|
|
type FeeCollectionKeeper interface {
|
|
|
|
GetCollectedFees(ctx sdk.Context) sdk.Coins
|
|
|
|
}
|
|
|
|
|
|
|
|
// expected bank keeper
|
|
|
|
type BankKeeper interface {
|
|
|
|
DelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error)
|
|
|
|
UndelegateCoins(ctx sdk.Context, addr sdk.AccAddress, amt sdk.Coins) (sdk.Tags, sdk.Error)
|
|
|
|
}
|
2019-03-28 16:27:47 -07:00
|
|
|
|
|
|
|
// expected crisis keeper
|
|
|
|
type CrisisKeeper interface {
|
|
|
|
RegisterRoute(moduleName, route string, invar sdk.Invariant)
|
|
|
|
}
|