// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/devops/pkg/service/operation (interfaces: OperationServiceAPI)
//
// Generated by this command:
//
//	mockgen -destination api_mock.go -package=operation github.com/tidbcloud/devops/pkg/service/operation OperationServiceAPI
//

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

import (
	context "context"
	reflect "reflect"

	operation "github.com/tidbcloud/devops/entity/operation"
	gomock "go.uber.org/mock/gomock"
)

// MockOperationServiceAPI is a mock of OperationServiceAPI interface.
type MockOperationServiceAPI struct {
	ctrl     *gomock.Controller
	recorder *MockOperationServiceAPIMockRecorder
	isgomock struct{}
}

// MockOperationServiceAPIMockRecorder is the mock recorder for MockOperationServiceAPI.
type MockOperationServiceAPIMockRecorder struct {
	mock *MockOperationServiceAPI
}

// NewMockOperationServiceAPI creates a new mock instance.
func NewMockOperationServiceAPI(ctrl *gomock.Controller) *MockOperationServiceAPI {
	mock := &MockOperationServiceAPI{ctrl: ctrl}
	mock.recorder = &MockOperationServiceAPIMockRecorder{mock}
	return mock
}

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

// CancelInstance mocks base method.
func (m *MockOperationServiceAPI) CancelInstance(ctx context.Context, id uint64) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CancelInstance", ctx, id)
	ret0, _ := ret[0].(error)
	return ret0
}

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

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

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

// FinishInstanceAction mocks base method.
func (m *MockOperationServiceAPI) FinishInstanceAction(ctx context.Context, id uint64, order operation.ActionOrder, result operation.ActionStatus, output string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "FinishInstanceAction", ctx, id, order, result, output)
	ret0, _ := ret[0].(error)
	return ret0
}

// FinishInstanceAction indicates an expected call of FinishInstanceAction.
func (mr *MockOperationServiceAPIMockRecorder) FinishInstanceAction(ctx, id, order, result, output any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FinishInstanceAction", reflect.TypeOf((*MockOperationServiceAPI)(nil).FinishInstanceAction), ctx, id, order, result, output)
}

// GetAction mocks base method.
func (m *MockOperationServiceAPI) GetAction(ctx context.Context, name operation.ActionName) (*operation.ActionMetadata, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAction", ctx, name)
	ret0, _ := ret[0].(*operation.ActionMetadata)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetInstance mocks base method.
func (m *MockOperationServiceAPI) GetInstance(ctx context.Context, id uint64) (*operation.Instance, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetInstance", ctx, id)
	ret0, _ := ret[0].(*operation.Instance)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetOperation mocks base method.
func (m *MockOperationServiceAPI) GetOperation(ctx context.Context, name string, param GetOperationParam) (*operation.Operation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetOperation", ctx, name, param)
	ret0, _ := ret[0].(*operation.Operation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetOperation indicates an expected call of GetOperation.
func (mr *MockOperationServiceAPIMockRecorder) GetOperation(ctx, name, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetOperation", reflect.TypeOf((*MockOperationServiceAPI)(nil).GetOperation), ctx, name, param)
}

// GetOperationClusterWhiteListInfo mocks base method.
func (m *MockOperationServiceAPI) GetOperationClusterWhiteListInfo(ctx context.Context, clusterID string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetOperationClusterWhiteListInfo", ctx, clusterID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListActions mocks base method.
func (m *MockOperationServiceAPI) ListActions(ctx context.Context) ([]*operation.ActionMetadata, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListActions", ctx)
	ret0, _ := ret[0].([]*operation.ActionMetadata)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListInstances mocks base method.
func (m *MockOperationServiceAPI) ListInstances(ctx context.Context, param ListInstanceParam) ([]*operation.Instance, int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListInstances", ctx, param)
	ret0, _ := ret[0].([]*operation.Instance)
	ret1, _ := ret[1].(int64)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

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

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

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

// ListOperations mocks base method.
func (m *MockOperationServiceAPI) ListOperations(ctx context.Context, param ListOperationParam) ([]*operation.Operation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListOperations", ctx, param)
	ret0, _ := ret[0].([]*operation.Operation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// PreviewInstance mocks base method.
func (m *MockOperationServiceAPI) PreviewInstance(ctx context.Context, param CreateInstanceParam) (*PreviewInstanceResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "PreviewInstance", ctx, param)
	ret0, _ := ret[0].(*PreviewInstanceResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// StartInstanceAction mocks base method.
func (m *MockOperationServiceAPI) StartInstanceAction(ctx context.Context, id uint64, order operation.ActionOrder, operatorEmail string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "StartInstanceAction", ctx, id, order, operatorEmail)
	ret0, _ := ret[0].(error)
	return ret0
}

// StartInstanceAction indicates an expected call of StartInstanceAction.
func (mr *MockOperationServiceAPIMockRecorder) StartInstanceAction(ctx, id, order, operatorEmail any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "StartInstanceAction", reflect.TypeOf((*MockOperationServiceAPI)(nil).StartInstanceAction), ctx, id, order, operatorEmail)
}

// SubmitInstance mocks base method.
func (m *MockOperationServiceAPI) SubmitInstance(ctx context.Context, id uint64) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SubmitInstance", ctx, id)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// UpdateInstance mocks base method.
func (m *MockOperationServiceAPI) UpdateInstance(ctx context.Context, id uint64, param UpdateInstanceParam) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateInstance", ctx, id, param)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateInstance indicates an expected call of UpdateInstance.
func (mr *MockOperationServiceAPIMockRecorder) UpdateInstance(ctx, id, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateInstance", reflect.TypeOf((*MockOperationServiceAPI)(nil).UpdateInstance), ctx, id, param)
}
