github.com/Finschia/finschia-sdk@v0.48.1/x/mint/types/expected_keepers.go (about) 1 package types // noalias 2 3 import ( 4 sdk "github.com/Finschia/finschia-sdk/types" 5 "github.com/Finschia/finschia-sdk/x/auth/types" 6 ) 7 8 // StakingKeeper defines the expected staking keeper 9 type StakingKeeper interface { 10 StakingTokenSupply(ctx sdk.Context) sdk.Int 11 BondedRatio(ctx sdk.Context) sdk.Dec 12 } 13 14 // AccountKeeper defines the contract required for account APIs. 15 type AccountKeeper interface { 16 GetModuleAddress(name string) sdk.AccAddress 17 18 // TODO remove with genesis 2-phases refactor https://github.com/cosmos/cosmos-sdk/issues/2862 19 SetModuleAccount(sdk.Context, types.ModuleAccountI) 20 GetModuleAccount(ctx sdk.Context, moduleName string) types.ModuleAccountI 21 } 22 23 // BankKeeper defines the contract needed to be fulfilled for banking and supply 24 // dependencies. 25 type BankKeeper interface { 26 SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error 27 SendCoinsFromModuleToModule(ctx sdk.Context, senderModule, recipientModule string, amt sdk.Coins) error 28 MintCoins(ctx sdk.Context, name string, amt sdk.Coins) error 29 }