// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/jiraport/pkg/db (interfaces: Interface,NotificationTransition)

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

import (
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	config "github.com/tidbcloud/jiraport/pkg/config"
	entity "github.com/tidbcloud/jiraport/pkg/entity"
)

// MockInterface is a mock of Interface interface.
type MockInterface struct {
	ctrl     *gomock.Controller
	recorder *MockInterfaceMockRecorder
}

// MockInterfaceMockRecorder is the mock recorder for MockInterface.
type MockInterfaceMockRecorder struct {
	mock *MockInterface
}

// NewMockInterface creates a new mock instance.
func NewMockInterface(ctrl *gomock.Controller) *MockInterface {
	mock := &MockInterface{ctrl: ctrl}
	mock.recorder = &MockInterfaceMockRecorder{mock}
	return mock
}

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

// AddMessage mocks base method.
func (m *MockInterface) AddMessage(arg0 uint, arg1 *entity.MessageIndex) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AddMessage", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

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

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

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

// CreateNotification mocks base method.
func (m *MockInterface) CreateNotification(arg0 string, arg1 *entity.Issue) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateNotification", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// GetMessage mocks base method.
func (m *MockInterface) GetMessage(arg0 *entity.MessageIndex) (*entity.Message, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetMessage", arg0)
	ret0, _ := ret[0].(*entity.Message)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetNotification mocks base method.
func (m *MockInterface) GetNotification(arg0 uint) (*entity.Notification, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetNotification", arg0)
	ret0, _ := ret[0].(*entity.Notification)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetNotificationActionExecInfo mocks base method.
func (m *MockInterface) GetNotificationActionExecInfo(arg0 uint) (*entity.NotificationActionExecInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetNotificationActionExecInfo", arg0)
	ret0, _ := ret[0].(*entity.NotificationActionExecInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListNotificationsByIssueKey mocks base method.
func (m *MockInterface) ListNotificationsByIssueKey(arg0 string) ([]entity.Notification, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListNotificationsByIssueKey", arg0)
	ret0, _ := ret[0].([]entity.Notification)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// SelectAssigneeFromCandidate mocks base method.
func (m *MockInterface) SelectAssigneeFromCandidate(arg0 []string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectAssigneeFromCandidate", arg0)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

// MockNotificationTransition is a mock of NotificationTransition interface.
type MockNotificationTransition struct {
	ctrl     *gomock.Controller
	recorder *MockNotificationTransitionMockRecorder
}

// MockNotificationTransitionMockRecorder is the mock recorder for MockNotificationTransition.
type MockNotificationTransitionMockRecorder struct {
	mock *MockNotificationTransition
}

// NewMockNotificationTransition creates a new mock instance.
func NewMockNotificationTransition(ctrl *gomock.Controller) *MockNotificationTransition {
	mock := &MockNotificationTransition{ctrl: ctrl}
	mock.recorder = &MockNotificationTransitionMockRecorder{mock}
	return mock
}

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

// GlobalTransitionWithUpdate mocks base method.
func (m *MockNotificationTransition) GlobalTransitionWithUpdate(arg0 *entity.Issue, arg1 config.NotificationTransitionEvent) ([]*entity.NotificationActionExecInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GlobalTransitionWithUpdate", arg0, arg1)
	ret0, _ := ret[0].([]*entity.NotificationActionExecInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// Transition mocks base method.
func (m *MockNotificationTransition) Transition(arg0 uint, arg1 config.NotificationTransitionEvent) (*entity.NotificationActionExecInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Transition", arg0, arg1)
	ret0, _ := ret[0].(*entity.NotificationActionExecInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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