github.com/InjectiveLabs/sdk-go@v1.53.0/chain/permissions/types/expected_keepers.go (about)

     1  package types
     2  
     3  import (
     4  	"context"
     5  
     6  	sdk "github.com/cosmos/cosmos-sdk/types"
     7  	banktypes "github.com/cosmos/cosmos-sdk/x/bank/types"
     8  
     9  	tftypes "github.com/InjectiveLabs/sdk-go/chain/tokenfactory/types"
    10  )
    11  
    12  type BankKeeper interface {
    13  	AppendSendRestriction(restriction banktypes.SendRestrictionFn)
    14  	PrependSendRestriction(restriction banktypes.SendRestrictionFn)
    15  	ClearSendRestriction()
    16  	SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error
    17  }
    18  
    19  type TokenFactoryKeeper interface {
    20  	GetAuthorityMetadata(ctx sdk.Context, denom string) (tftypes.DenomAuthorityMetadata, error)
    21  }
    22  
    23  type WasmKeeper interface {
    24  	HasContractInfo(ctx context.Context, contractAddress sdk.AccAddress) bool
    25  	QuerySmart(ctx context.Context, contractAddr sdk.AccAddress, req []byte) ([]byte, error)
    26  }