// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/ava-labs/avalanchego/snow/networking/timeout (interfaces: Manager)
//
// Generated by this command:
//
//	mockgen -package=timeoutmock -destination=timeoutmock/manager.go -mock_names=Manager=Manager . Manager
//

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

import (
	reflect "reflect"
	time "time"

	ids "github.com/ava-labs/avalanchego/ids"
	message "github.com/ava-labs/avalanchego/message"
	snow "github.com/ava-labs/avalanchego/snow"
	gomock "go.uber.org/mock/gomock"
)

// Manager is a mock of Manager interface.
type Manager struct {
	ctrl     *gomock.Controller
	recorder *ManagerMockRecorder
	isgomock struct{}
}

// ManagerMockRecorder is the mock recorder for Manager.
type ManagerMockRecorder struct {
	mock *Manager
}

// NewManager creates a new mock instance.
func NewManager(ctrl *gomock.Controller) *Manager {
	mock := &Manager{ctrl: ctrl}
	mock.recorder = &ManagerMockRecorder{mock}
	return mock
}

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

// Dispatch mocks base method.
func (m *Manager) Dispatch() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "Dispatch")
}

// Dispatch indicates an expected call of Dispatch.
func (mr *ManagerMockRecorder) Dispatch() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Dispatch", reflect.TypeOf((*Manager)(nil).Dispatch))
}

// IsBenched mocks base method.
func (m *Manager) IsBenched(nodeID ids.NodeID, chainID ids.ID) bool {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "IsBenched", nodeID, chainID)
	ret0, _ := ret[0].(bool)
	return ret0
}

// IsBenched indicates an expected call of IsBenched.
func (mr *ManagerMockRecorder) IsBenched(nodeID, chainID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "IsBenched", reflect.TypeOf((*Manager)(nil).IsBenched), nodeID, chainID)
}

// RegisterChain mocks base method.
func (m *Manager) RegisterChain(ctx *snow.ConsensusContext) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "RegisterChain", ctx)
	ret0, _ := ret[0].(error)
	return ret0
}

// RegisterChain indicates an expected call of RegisterChain.
func (mr *ManagerMockRecorder) RegisterChain(ctx any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterChain", reflect.TypeOf((*Manager)(nil).RegisterChain), ctx)
}

// RegisterRequest mocks base method.
func (m *Manager) RegisterRequest(nodeID ids.NodeID, chainID ids.ID, measureLatency bool, requestID ids.RequestID, timeoutHandler func()) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RegisterRequest", nodeID, chainID, measureLatency, requestID, timeoutHandler)
}

// RegisterRequest indicates an expected call of RegisterRequest.
func (mr *ManagerMockRecorder) RegisterRequest(nodeID, chainID, measureLatency, requestID, timeoutHandler any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterRequest", reflect.TypeOf((*Manager)(nil).RegisterRequest), nodeID, chainID, measureLatency, requestID, timeoutHandler)
}

// RegisterRequestToUnreachableValidator mocks base method.
func (m *Manager) RegisterRequestToUnreachableValidator() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RegisterRequestToUnreachableValidator")
}

// RegisterRequestToUnreachableValidator indicates an expected call of RegisterRequestToUnreachableValidator.
func (mr *ManagerMockRecorder) RegisterRequestToUnreachableValidator() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterRequestToUnreachableValidator", reflect.TypeOf((*Manager)(nil).RegisterRequestToUnreachableValidator))
}

// RegisterResponse mocks base method.
func (m *Manager) RegisterResponse(nodeID ids.NodeID, chainID ids.ID, requestID ids.RequestID, op message.Op, latency time.Duration) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RegisterResponse", nodeID, chainID, requestID, op, latency)
}

// RegisterResponse indicates an expected call of RegisterResponse.
func (mr *ManagerMockRecorder) RegisterResponse(nodeID, chainID, requestID, op, latency any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterResponse", reflect.TypeOf((*Manager)(nil).RegisterResponse), nodeID, chainID, requestID, op, latency)
}

// RemoveRequest mocks base method.
func (m *Manager) RemoveRequest(requestID ids.RequestID) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "RemoveRequest", requestID)
}

// RemoveRequest indicates an expected call of RemoveRequest.
func (mr *ManagerMockRecorder) RemoveRequest(requestID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RemoveRequest", reflect.TypeOf((*Manager)(nil).RemoveRequest), requestID)
}

// Stop mocks base method.
func (m *Manager) Stop() {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "Stop")
}

// Stop indicates an expected call of Stop.
func (mr *ManagerMockRecorder) Stop() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Stop", reflect.TypeOf((*Manager)(nil).Stop))
}

// TimeoutDuration mocks base method.
func (m *Manager) TimeoutDuration() time.Duration {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "TimeoutDuration")
	ret0, _ := ret[0].(time.Duration)
	return ret0
}

// TimeoutDuration indicates an expected call of TimeoutDuration.
func (mr *ManagerMockRecorder) TimeoutDuration() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "TimeoutDuration", reflect.TypeOf((*Manager)(nil).TimeoutDuration))
}
