// Code generated by MockGen. DO NOT EDIT.
// Source: x/coredaos/types/expected_keepers.go

// Package testutil is a generated GoMock package.
package testutil

import (
	context "context"
	reflect "reflect"
	time "time"

	math "cosmossdk.io/math"
	v1 "github.com/atomone-hub/atomone/x/gov/types/v1"
	types "github.com/cosmos/cosmos-sdk/types"
	gomock "github.com/golang/mock/gomock"
)

// MockGovKeeper is a mock of GovKeeper interface.
type MockGovKeeper struct {
	ctrl     *gomock.Controller
	recorder *MockGovKeeperMockRecorder
}

// MockGovKeeperMockRecorder is the mock recorder for MockGovKeeper.
type MockGovKeeperMockRecorder struct {
	mock *MockGovKeeper
}

// NewMockGovKeeper creates a new mock instance.
func NewMockGovKeeper(ctrl *gomock.Controller) *MockGovKeeper {
	mock := &MockGovKeeper{ctrl: ctrl}
	mock.recorder = &MockGovKeeperMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockGovKeeper) EXPECT() *MockGovKeeperMockRecorder {
	return m.recorder
}

// DecrementActiveProposalsNumber mocks base method.
func (m *MockGovKeeper) DecrementActiveProposalsNumber(ctx types.Context) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "DecrementActiveProposalsNumber", ctx)
}

// DecrementActiveProposalsNumber indicates an expected call of DecrementActiveProposalsNumber.
func (mr *MockGovKeeperMockRecorder) DecrementActiveProposalsNumber(ctx interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DecrementActiveProposalsNumber", reflect.TypeOf((*MockGovKeeper)(nil).DecrementActiveProposalsNumber), ctx)
}

// DeleteAndBurnDeposits mocks base method.
func (m *MockGovKeeper) DeleteAndBurnDeposits(ctx types.Context, proposalID uint64) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "DeleteAndBurnDeposits", ctx, proposalID)
}

// DeleteAndBurnDeposits indicates an expected call of DeleteAndBurnDeposits.
func (mr *MockGovKeeperMockRecorder) DeleteAndBurnDeposits(ctx, proposalID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteAndBurnDeposits", reflect.TypeOf((*MockGovKeeper)(nil).DeleteAndBurnDeposits), ctx, proposalID)
}

// DeleteVotes mocks base method.
func (m *MockGovKeeper) DeleteVotes(ctx types.Context, proposalID uint64) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "DeleteVotes", ctx, proposalID)
}

// DeleteVotes indicates an expected call of DeleteVotes.
func (mr *MockGovKeeperMockRecorder) DeleteVotes(ctx, proposalID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteVotes", reflect.TypeOf((*MockGovKeeper)(nil).DeleteVotes), ctx, proposalID)
}

// GetProposal mocks base method.
func (m *MockGovKeeper) GetProposal(ctx types.Context, id uint64) (v1.Proposal, bool) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetProposal", ctx, id)
	ret0, _ := ret[0].(v1.Proposal)
	ret1, _ := ret[1].(bool)
	return ret0, ret1
}

// GetProposal indicates an expected call of GetProposal.
func (mr *MockGovKeeperMockRecorder) GetProposal(ctx, id interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetProposal", reflect.TypeOf((*MockGovKeeper)(nil).GetProposal), ctx, id)
}

// GetProposalID mocks base method.
func (m *MockGovKeeper) GetProposalID(ctx types.Context) (uint64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetProposalID", ctx)
	ret0, _ := ret[0].(uint64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetProposalID indicates an expected call of GetProposalID.
func (mr *MockGovKeeperMockRecorder) GetProposalID(ctx interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetProposalID", reflect.TypeOf((*MockGovKeeper)(nil).GetProposalID), ctx)
}

// InsertActiveProposalQueue mocks base method.
func (m *MockGovKeeper) InsertActiveProposalQueue(ctx types.Context, proposalID uint64, endTime time.Time) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "InsertActiveProposalQueue", ctx, proposalID, endTime)
}

// InsertActiveProposalQueue indicates an expected call of InsertActiveProposalQueue.
func (mr *MockGovKeeperMockRecorder) InsertActiveProposalQueue(ctx, proposalID, endTime interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "InsertActiveProposalQueue", reflect.TypeOf((*MockGovKeeper)(nil).InsertActiveProposalQueue), ctx, proposalID, endTime)
}

// ProposalKinds mocks base method.
func (m *MockGovKeeper) ProposalKinds(proposal v1.Proposal) v1.ProposalKinds {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ProposalKinds", proposal)
	ret0, _ := ret[0].(v1.ProposalKinds)
	return ret0
}

// ProposalKinds indicates an expected call of ProposalKinds.
func (mr *MockGovKeeperMockRecorder) ProposalKinds(proposal interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ProposalKinds", reflect.TypeOf((*MockGovKeeper)(nil).ProposalKinds), proposal)
}

// RefundAndDeleteDeposits mocks base method.
func (m *MockGovKeeper) RefundAndDeleteDeposits(ctx types.Context, proposalID uint64) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RefundAndDeleteDeposits", ctx, proposalID)
}

// RefundAndDeleteDeposits indicates an expected call of RefundAndDeleteDeposits.
func (mr *MockGovKeeperMockRecorder) RefundAndDeleteDeposits(ctx, proposalID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RefundAndDeleteDeposits", reflect.TypeOf((*MockGovKeeper)(nil).RefundAndDeleteDeposits), ctx, proposalID)
}

// RemoveFromActiveProposalQueue mocks base method.
func (m *MockGovKeeper) RemoveFromActiveProposalQueue(ctx types.Context, proposalID uint64, endTime time.Time) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RemoveFromActiveProposalQueue", ctx, proposalID, endTime)
}

// RemoveFromActiveProposalQueue indicates an expected call of RemoveFromActiveProposalQueue.
func (mr *MockGovKeeperMockRecorder) RemoveFromActiveProposalQueue(ctx, proposalID, endTime interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveFromActiveProposalQueue", reflect.TypeOf((*MockGovKeeper)(nil).RemoveFromActiveProposalQueue), ctx, proposalID, endTime)
}

// SetProposal mocks base method.
func (m *MockGovKeeper) SetProposal(ctx types.Context, proposal v1.Proposal) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "SetProposal", ctx, proposal)
}

// SetProposal indicates an expected call of SetProposal.
func (mr *MockGovKeeperMockRecorder) SetProposal(ctx, proposal interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetProposal", reflect.TypeOf((*MockGovKeeper)(nil).SetProposal), ctx, proposal)
}

// UpdateMinDeposit mocks base method.
func (m *MockGovKeeper) UpdateMinDeposit(ctx types.Context, checkElapsedTime bool) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "UpdateMinDeposit", ctx, checkElapsedTime)
}

// UpdateMinDeposit indicates an expected call of UpdateMinDeposit.
func (mr *MockGovKeeperMockRecorder) UpdateMinDeposit(ctx, checkElapsedTime interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateMinDeposit", reflect.TypeOf((*MockGovKeeper)(nil).UpdateMinDeposit), ctx, checkElapsedTime)
}

// UpdateMinInitialDeposit mocks base method.
func (m *MockGovKeeper) UpdateMinInitialDeposit(ctx types.Context, checkElapsedTime bool) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "UpdateMinInitialDeposit", ctx, checkElapsedTime)
}

// UpdateMinInitialDeposit indicates an expected call of UpdateMinInitialDeposit.
func (mr *MockGovKeeperMockRecorder) UpdateMinInitialDeposit(ctx, checkElapsedTime interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateMinInitialDeposit", reflect.TypeOf((*MockGovKeeper)(nil).UpdateMinInitialDeposit), ctx, checkElapsedTime)
}

// MockStakingKeeper is a mock of StakingKeeper interface.
type MockStakingKeeper struct {
	ctrl     *gomock.Controller
	recorder *MockStakingKeeperMockRecorder
}

// MockStakingKeeperMockRecorder is the mock recorder for MockStakingKeeper.
type MockStakingKeeperMockRecorder struct {
	mock *MockStakingKeeper
}

// NewMockStakingKeeper creates a new mock instance.
func NewMockStakingKeeper(ctrl *gomock.Controller) *MockStakingKeeper {
	mock := &MockStakingKeeper{ctrl: ctrl}
	mock.recorder = &MockStakingKeeperMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockStakingKeeper) EXPECT() *MockStakingKeeperMockRecorder {
	return m.recorder
}

// GetDelegatorBonded mocks base method.
func (m *MockStakingKeeper) GetDelegatorBonded(ctx context.Context, delegator types.AccAddress) (math.Int, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDelegatorBonded", ctx, delegator)
	ret0, _ := ret[0].(math.Int)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetDelegatorBonded indicates an expected call of GetDelegatorBonded.
func (mr *MockStakingKeeperMockRecorder) GetDelegatorBonded(ctx, delegator interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDelegatorBonded", reflect.TypeOf((*MockStakingKeeper)(nil).GetDelegatorBonded), ctx, delegator)
}

// GetDelegatorUnbonding mocks base method.
func (m *MockStakingKeeper) GetDelegatorUnbonding(ctx context.Context, delegator types.AccAddress) (math.Int, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDelegatorUnbonding", ctx, delegator)
	ret0, _ := ret[0].(math.Int)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetDelegatorUnbonding indicates an expected call of GetDelegatorUnbonding.
func (mr *MockStakingKeeperMockRecorder) GetDelegatorUnbonding(ctx, delegator interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetDelegatorUnbonding", reflect.TypeOf((*MockStakingKeeper)(nil).GetDelegatorUnbonding), ctx, delegator)
}

// MockAccountKeeper is a mock of AccountKeeper interface.
type MockAccountKeeper struct {
	ctrl     *gomock.Controller
	recorder *MockAccountKeeperMockRecorder
}

// MockAccountKeeperMockRecorder is the mock recorder for MockAccountKeeper.
type MockAccountKeeperMockRecorder struct {
	mock *MockAccountKeeper
}

// NewMockAccountKeeper creates a new mock instance.
func NewMockAccountKeeper(ctrl *gomock.Controller) *MockAccountKeeper {
	mock := &MockAccountKeeper{ctrl: ctrl}
	mock.recorder = &MockAccountKeeperMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockAccountKeeper) EXPECT() *MockAccountKeeperMockRecorder {
	return m.recorder
}

// GetAccount mocks base method.
func (m *MockAccountKeeper) GetAccount(ctx context.Context, addr types.AccAddress) types.AccountI {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAccount", ctx, addr)
	ret0, _ := ret[0].(types.AccountI)
	return ret0
}

// GetAccount indicates an expected call of GetAccount.
func (mr *MockAccountKeeperMockRecorder) GetAccount(ctx, addr interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAccount", reflect.TypeOf((*MockAccountKeeper)(nil).GetAccount), ctx, addr)
}

// NewAccountWithAddress mocks base method.
func (m *MockAccountKeeper) NewAccountWithAddress(ctx context.Context, addr types.AccAddress) types.AccountI {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "NewAccountWithAddress", ctx, addr)
	ret0, _ := ret[0].(types.AccountI)
	return ret0
}

// NewAccountWithAddress indicates an expected call of NewAccountWithAddress.
func (mr *MockAccountKeeperMockRecorder) NewAccountWithAddress(ctx, addr interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewAccountWithAddress", reflect.TypeOf((*MockAccountKeeper)(nil).NewAccountWithAddress), ctx, addr)
}

// SetAccount mocks base method.
func (m *MockAccountKeeper) SetAccount(ctx context.Context, acc types.AccountI) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "SetAccount", ctx, acc)
}

// SetAccount indicates an expected call of SetAccount.
func (mr *MockAccountKeeperMockRecorder) SetAccount(ctx, acc interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetAccount", reflect.TypeOf((*MockAccountKeeper)(nil).SetAccount), ctx, acc)
}

// MockBankKeeper is a mock of BankKeeper interface.
type MockBankKeeper struct {
	ctrl     *gomock.Controller
	recorder *MockBankKeeperMockRecorder
}

// MockBankKeeperMockRecorder is the mock recorder for MockBankKeeper.
type MockBankKeeperMockRecorder struct {
	mock *MockBankKeeper
}

// NewMockBankKeeper creates a new mock instance.
func NewMockBankKeeper(ctrl *gomock.Controller) *MockBankKeeper {
	mock := &MockBankKeeper{ctrl: ctrl}
	mock.recorder = &MockBankKeeperMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockBankKeeper) EXPECT() *MockBankKeeperMockRecorder {
	return m.recorder
}

// SpendableCoins mocks base method.
func (m *MockBankKeeper) SpendableCoins(ctx context.Context, addr types.AccAddress) types.Coins {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SpendableCoins", ctx, addr)
	ret0, _ := ret[0].(types.Coins)
	return ret0
}

// SpendableCoins indicates an expected call of SpendableCoins.
func (mr *MockBankKeeperMockRecorder) SpendableCoins(ctx, addr interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SpendableCoins", reflect.TypeOf((*MockBankKeeper)(nil).SpendableCoins), ctx, addr)
}
