github.com/cosmos/cosmos-sdk@v0.50.10/x/genutil/types/expected_keepers.go (about)

     1  package types
     2  
     3  import (
     4  	"context"
     5  	"encoding/json"
     6  
     7  	abci "github.com/cometbft/cometbft/abci/types"
     8  
     9  	"github.com/cosmos/cosmos-sdk/codec"
    10  	sdk "github.com/cosmos/cosmos-sdk/types"
    11  	bankexported "github.com/cosmos/cosmos-sdk/x/bank/exported"
    12  )
    13  
    14  // StakingKeeper defines the expected staking keeper (noalias)
    15  type StakingKeeper interface {
    16  	ApplyAndReturnValidatorSetUpdates(context.Context) (updates []abci.ValidatorUpdate, err error)
    17  }
    18  
    19  // AccountKeeper defines the expected account keeper (noalias)
    20  type AccountKeeper interface {
    21  	NewAccount(context.Context, sdk.AccountI) sdk.AccountI
    22  	SetAccount(context.Context, sdk.AccountI)
    23  	IterateAccounts(ctx context.Context, process func(sdk.AccountI) (stop bool))
    24  }
    25  
    26  // GenesisAccountsIterator defines the expected iterating genesis accounts object (noalias)
    27  type GenesisAccountsIterator interface {
    28  	IterateGenesisAccounts(
    29  		cdc *codec.LegacyAmino,
    30  		appGenesis map[string]json.RawMessage,
    31  		cb func(sdk.AccountI) (stop bool),
    32  	)
    33  }
    34  
    35  // GenesisAccountsIterator defines the expected iterating genesis accounts object (noalias)
    36  type GenesisBalancesIterator interface {
    37  	IterateGenesisBalances(
    38  		cdc codec.JSONCodec,
    39  		appGenesis map[string]json.RawMessage,
    40  		cb func(bankexported.GenesisBalance) (stop bool),
    41  	)
    42  }