-
Notifications
You must be signed in to change notification settings - Fork 55
/
expected_keepers.go
42 lines (37 loc) 路 2.04 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
33
34
35
36
37
38
39
40
41
42
package types
import (
sdk "github.com/cosmos/cosmos-sdk/types"
banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
ammtypes "github.com/crescent-network/crescent/v5/x/amm/types"
)
// AccountKeeper defines the expected interface needed for the module.
type AccountKeeper interface {
GetModuleAddress(name string) sdk.AccAddress
}
// BankKeeper defines the expected interface needed for the module.
type BankKeeper interface {
GetBalance(ctx sdk.Context, addr sdk.AccAddress, denom string) sdk.Coin
GetAllBalances(ctx sdk.Context, addr sdk.AccAddress) sdk.Coins
GetSupply(ctx sdk.Context, denom string) sdk.Coin
SpendableCoins(ctx sdk.Context, addr sdk.AccAddress) sdk.Coins
SendCoins(ctx sdk.Context, fromAddr sdk.AccAddress, toAddr sdk.AccAddress, amt sdk.Coins) error
InputOutputCoins(ctx sdk.Context, inputs []banktypes.Input, outputs []banktypes.Output) error
MintCoins(ctx sdk.Context, name string, amt sdk.Coins) error
BurnCoins(ctx sdk.Context, moduleName string, amt sdk.Coins) error
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
}
type AMMKeeper interface {
GetPool(ctx sdk.Context, poolId uint64) (pool ammtypes.Pool, found bool)
GetPositionByParams(
ctx sdk.Context, ownerAddr sdk.AccAddress, poolId uint64, lowerTick, upperTick int32) (position ammtypes.Position, found bool)
AddLiquidity(
ctx sdk.Context, ownerAddr, fromAddr sdk.AccAddress, poolId uint64,
lowerPrice, upperPrice sdk.Dec, desiredAmt sdk.Coins) (position ammtypes.Position, liquidity sdk.Int, amt sdk.Coins, err error)
RemoveLiquidity(
ctx sdk.Context, ownerAddr, toAddr sdk.AccAddress,
positionId uint64, liquidity sdk.Int) (position ammtypes.Position, amt sdk.Coins, err error)
Collect(
ctx sdk.Context, ownerAddr, toAddr sdk.AccAddress, positionId uint64, amt sdk.Coins) error
CollectibleCoins(ctx sdk.Context, positionId uint64) (fee, farmingRewards sdk.Coins, err error)
}