-
Notifications
You must be signed in to change notification settings - Fork 0
/
expected_keepers.go
32 lines (26 loc) · 1.17 KB
/
expected_keepers.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package types // noalias
import (
sdk "github.com/furyaxyz/fuxchain/libs/cosmos-sdk/types"
"github.com/furyaxyz/fuxchain/libs/cosmos-sdk/x/supply/exported"
govtypes "github.com/furyaxyz/fuxchain/x/gov/types"
)
// StakingKeeper defines the expected staking keeper
type StakingKeeper interface {
StakingTokenSupply(ctx sdk.Context) sdk.Dec
BondedRatio(ctx sdk.Context) sdk.Dec
IsValidator(ctx sdk.Context, addr sdk.AccAddress) bool
}
// SupplyKeeper defines the expected supply keeper
type SupplyKeeper interface {
GetModuleAddress(name string) sdk.AccAddress
// TODO remove with genesis 2-phases refactor https://github.com/cosmos/cosmos-sdk/issues/2862
SetModuleAccount(sdk.Context, exported.ModuleAccountI)
SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error
SendCoinsFromModuleToModule(ctx sdk.Context, senderModule, recipientModule string, amt sdk.Coins) error
MintCoins(ctx sdk.Context, name string, amt sdk.Coins) error
}
// GovKeeper defines the expected gov Keeper
type GovKeeper interface {
GetDepositParams(ctx sdk.Context) govtypes.DepositParams
GetVotingParams(ctx sdk.Context) govtypes.VotingParams
}