-
Notifications
You must be signed in to change notification settings - Fork 4
/
expected_keepers.go
26 lines (22 loc) · 1.1 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
package types
import (
sdk "github.com/cosmos/cosmos-sdk/types"
"github.com/cosmos/cosmos-sdk/x/auth/types"
)
// BankKeeper defines the contract needed to be fulfilled for banking and supply dependencies.
type BankKeeper interface {
GetSupply(ctx sdk.Context, denom string) sdk.Coin
SendCoinsFromModuleToAccount(ctx sdk.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error
SendCoinsFromAccountToModule(ctx sdk.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error
MintCoins(ctx sdk.Context, moduleName string, amt sdk.Coins) error
BurnCoins(ctx sdk.Context, moduleName string, amt sdk.Coins) error
GetBalance(ctx sdk.Context, addr sdk.AccAddress, denom string) sdk.Coin
SendCoins(ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error
}
// AirdropKeeper defines the contract needed to be fulfilled for airdrop dependencies.
type AirdropKeeper interface {
PostClaimedSnAsset(ctx sdk.Context, userAddr sdk.AccAddress)
}
type AccountKeeper interface {
GetModuleAccount(ctx sdk.Context, moduleName string) types.ModuleAccountI
}