// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/baetyl/baetyl-cloud/v2/plugin (interfaces: Index)

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

import (
	sql "database/sql"
	common "github.com/baetyl/baetyl-cloud/v2/common"
	gomock "github.com/golang/mock/gomock"
	sqlx "github.com/jmoiron/sqlx"
	reflect "reflect"
)

// MockIndex is a mock of Index interface
type MockIndex struct {
	ctrl     *gomock.Controller
	recorder *MockIndexMockRecorder
}

// MockIndexMockRecorder is the mock recorder for MockIndex
type MockIndexMockRecorder struct {
	mock *MockIndex
}

// NewMockIndex creates a new mock instance
func NewMockIndex(ctrl *gomock.Controller) *MockIndex {
	mock := &MockIndex{ctrl: ctrl}
	mock.recorder = &MockIndexMockRecorder{mock}
	return mock
}

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

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

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

// CreateIndex mocks base method
func (m *MockIndex) CreateIndex(arg0 string, arg1, arg2 common.Resource, arg3, arg4 string) (sql.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateIndex", arg0, arg1, arg2, arg3, arg4)
	ret0, _ := ret[0].(sql.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// CreateIndexTx mocks base method
func (m *MockIndex) CreateIndexTx(arg0 *sqlx.Tx, arg1 string, arg2, arg3 common.Resource, arg4, arg5 string) (sql.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateIndexTx", arg0, arg1, arg2, arg3, arg4, arg5)
	ret0, _ := ret[0].(sql.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteIndex mocks base method
func (m *MockIndex) DeleteIndex(arg0 string, arg1, arg2 common.Resource, arg3 string) (sql.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteIndex", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(sql.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteIndexTx mocks base method
func (m *MockIndex) DeleteIndexTx(arg0 *sqlx.Tx, arg1 string, arg2, arg3 common.Resource, arg4 string) (sql.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteIndexTx", arg0, arg1, arg2, arg3, arg4)
	ret0, _ := ret[0].(sql.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListIndex mocks base method
func (m *MockIndex) ListIndex(arg0 string, arg1, arg2 common.Resource, arg3 string) ([]string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListIndex", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].([]string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListIndexTx mocks base method
func (m *MockIndex) ListIndexTx(arg0 *sqlx.Tx, arg1 string, arg2, arg3 common.Resource, arg4 string) ([]string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListIndexTx", arg0, arg1, arg2, arg3, arg4)
	ret0, _ := ret[0].([]string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// RefreshIndex mocks base method
func (m *MockIndex) RefreshIndex(arg0 interface{}, arg1 string, arg2, arg3 common.Resource, arg4 string, arg5 []string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "RefreshIndex", arg0, arg1, arg2, arg3, arg4, arg5)
	ret0, _ := ret[0].(error)
	return ret0
}

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