// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/base-org/pessimism/internal/etl (interfaces: ETL)

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

import (
	big "math/big"
	reflect "reflect"

	core "github.com/base-org/pessimism/internal/core"
	process "github.com/base-org/pessimism/internal/etl/process"
	gomock "github.com/golang/mock/gomock"
)

// MockETL is a mock of ETL interface.
type MockETL struct {
	ctrl     *gomock.Controller
	recorder *MockETLMockRecorder
}

// MockETLMockRecorder is the mock recorder for MockETL.
type MockETLMockRecorder struct {
	mock *MockETL
}

// NewMockETL creates a new mock instance.
func NewMockETL(ctrl *gomock.Controller) *MockETL {
	mock := &MockETL{ctrl: ctrl}
	mock.recorder = &MockETLMockRecorder{mock}
	return mock
}

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

// ActiveCount mocks base method.
func (m *MockETL) ActiveCount() int {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ActiveCount")
	ret0, _ := ret[0].(int)
	return ret0
}

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

// CreateProcess mocks base method.
func (m *MockETL) CreateProcess(arg0 *core.ClientConfig, arg1 core.ProcessID, arg2 core.PathID, arg3 *core.DataTopic) (process.Process, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateProcess", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(process.Process)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateProcess indicates an expected call of CreateProcess.
func (mr *MockETLMockRecorder) CreateProcess(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateProcess", reflect.TypeOf((*MockETL)(nil).CreateProcess), arg0, arg1, arg2, arg3)
}

// CreateProcessPath mocks base method.
func (m *MockETL) CreateProcessPath(arg0 *core.PathConfig) (core.PathID, bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateProcessPath", arg0)
	ret0, _ := ret[0].(core.PathID)
	ret1, _ := ret[1].(bool)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// CreateProcessPath indicates an expected call of CreateProcessPath.
func (mr *MockETLMockRecorder) CreateProcessPath(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateProcessPath", reflect.TypeOf((*MockETL)(nil).CreateProcessPath), arg0)
}

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

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

// GetBlockHeight mocks base method.
func (m *MockETL) GetBlockHeight(arg0 core.PathID) (*big.Int, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetBlockHeight", arg0)
	ret0, _ := ret[0].(*big.Int)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetBlockHeight indicates an expected call of GetBlockHeight.
func (mr *MockETLMockRecorder) GetBlockHeight(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetBlockHeight", reflect.TypeOf((*MockETL)(nil).GetBlockHeight), arg0)
}

// GetStateKey mocks base method.
func (m *MockETL) GetStateKey(arg0 core.TopicType) (*core.StateKey, bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetStateKey", arg0)
	ret0, _ := ret[0].(*core.StateKey)
	ret1, _ := ret[1].(bool)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetStateKey indicates an expected call of GetStateKey.
func (mr *MockETLMockRecorder) GetStateKey(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetStateKey", reflect.TypeOf((*MockETL)(nil).GetStateKey), arg0)
}

// Run mocks base method.
func (m *MockETL) Run(arg0 core.PathID) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Run", arg0)
	ret0, _ := ret[0].(error)
	return ret0
}

// Run indicates an expected call of Run.
func (mr *MockETLMockRecorder) Run(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Run", reflect.TypeOf((*MockETL)(nil).Run), arg0)
}

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

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