// Code generated by MockGen. DO NOT EDIT.
// Source: ../interfaces/concept_group_access.go
//
// Generated by this command:
//
//	mockgen -source ../interfaces/concept_group_access.go -destination ../interfaces/mock/mock_concept_group_access.go
//

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

import (
	interfaces "bkn-backend/interfaces"
	context "context"
	sql "database/sql"
	reflect "reflect"

	gomock "go.uber.org/mock/gomock"
)

// MockConceptGroupAccess is a mock of ConceptGroupAccess interface.
type MockConceptGroupAccess struct {
	ctrl     *gomock.Controller
	recorder *MockConceptGroupAccessMockRecorder
	isgomock struct{}
}

// MockConceptGroupAccessMockRecorder is the mock recorder for MockConceptGroupAccess.
type MockConceptGroupAccessMockRecorder struct {
	mock *MockConceptGroupAccess
}

// NewMockConceptGroupAccess creates a new mock instance.
func NewMockConceptGroupAccess(ctrl *gomock.Controller) *MockConceptGroupAccess {
	mock := &MockConceptGroupAccess{ctrl: ctrl}
	mock.recorder = &MockConceptGroupAccessMockRecorder{mock}
	return mock
}

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

// CheckConceptGroupExistByID mocks base method.
func (m *MockConceptGroupAccess) CheckConceptGroupExistByID(ctx context.Context, knID, branch, cgID string) (string, bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CheckConceptGroupExistByID", ctx, knID, branch, cgID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(bool)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// CheckConceptGroupExistByID indicates an expected call of CheckConceptGroupExistByID.
func (mr *MockConceptGroupAccessMockRecorder) CheckConceptGroupExistByID(ctx, knID, branch, cgID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CheckConceptGroupExistByID", reflect.TypeOf((*MockConceptGroupAccess)(nil).CheckConceptGroupExistByID), ctx, knID, branch, cgID)
}

// CheckConceptGroupExistByName mocks base method.
func (m *MockConceptGroupAccess) CheckConceptGroupExistByName(ctx context.Context, knID, branch, cgName string) (string, bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CheckConceptGroupExistByName", ctx, knID, branch, cgName)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(bool)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// CheckConceptGroupExistByName indicates an expected call of CheckConceptGroupExistByName.
func (mr *MockConceptGroupAccessMockRecorder) CheckConceptGroupExistByName(ctx, knID, branch, cgName any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CheckConceptGroupExistByName", reflect.TypeOf((*MockConceptGroupAccess)(nil).CheckConceptGroupExistByName), ctx, knID, branch, cgName)
}

// CreateConceptGroup mocks base method.
func (m *MockConceptGroupAccess) CreateConceptGroup(ctx context.Context, tx *sql.Tx, conceptGroup *interfaces.ConceptGroup) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateConceptGroup", ctx, tx, conceptGroup)
	ret0, _ := ret[0].(error)
	return ret0
}

// CreateConceptGroup indicates an expected call of CreateConceptGroup.
func (mr *MockConceptGroupAccessMockRecorder) CreateConceptGroup(ctx, tx, conceptGroup any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateConceptGroup", reflect.TypeOf((*MockConceptGroupAccess)(nil).CreateConceptGroup), ctx, tx, conceptGroup)
}

// CreateConceptGroupRelation mocks base method.
func (m *MockConceptGroupAccess) CreateConceptGroupRelation(ctx context.Context, tx *sql.Tx, kn *interfaces.ConceptGroupRelation) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateConceptGroupRelation", ctx, tx, kn)
	ret0, _ := ret[0].(error)
	return ret0
}

// CreateConceptGroupRelation indicates an expected call of CreateConceptGroupRelation.
func (mr *MockConceptGroupAccessMockRecorder) CreateConceptGroupRelation(ctx, tx, kn any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateConceptGroupRelation", reflect.TypeOf((*MockConceptGroupAccess)(nil).CreateConceptGroupRelation), ctx, tx, kn)
}

// DeleteConceptGroupByID mocks base method.
func (m *MockConceptGroupAccess) DeleteConceptGroupByID(ctx context.Context, tx *sql.Tx, knID, branch, cgID string) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteConceptGroupByID", ctx, tx, knID, branch, cgID)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// DeleteConceptGroupByID indicates an expected call of DeleteConceptGroupByID.
func (mr *MockConceptGroupAccessMockRecorder) DeleteConceptGroupByID(ctx, tx, knID, branch, cgID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteConceptGroupByID", reflect.TypeOf((*MockConceptGroupAccess)(nil).DeleteConceptGroupByID), ctx, tx, knID, branch, cgID)
}

// DeleteConceptGroupRelationsByKnID mocks base method.
func (m *MockConceptGroupAccess) DeleteConceptGroupRelationsByKnID(ctx context.Context, tx *sql.Tx, knID, branch string) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteConceptGroupRelationsByKnID", ctx, tx, knID, branch)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// DeleteConceptGroupRelationsByKnID indicates an expected call of DeleteConceptGroupRelationsByKnID.
func (mr *MockConceptGroupAccessMockRecorder) DeleteConceptGroupRelationsByKnID(ctx, tx, knID, branch any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteConceptGroupRelationsByKnID", reflect.TypeOf((*MockConceptGroupAccess)(nil).DeleteConceptGroupRelationsByKnID), ctx, tx, knID, branch)
}

// DeleteConceptGroupsByKnID mocks base method.
func (m *MockConceptGroupAccess) DeleteConceptGroupsByKnID(ctx context.Context, tx *sql.Tx, knID, branch string) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteConceptGroupsByKnID", ctx, tx, knID, branch)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// DeleteConceptGroupsByKnID indicates an expected call of DeleteConceptGroupsByKnID.
func (mr *MockConceptGroupAccessMockRecorder) DeleteConceptGroupsByKnID(ctx, tx, knID, branch any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteConceptGroupsByKnID", reflect.TypeOf((*MockConceptGroupAccess)(nil).DeleteConceptGroupsByKnID), ctx, tx, knID, branch)
}

// DeleteObjectTypesFromGroup mocks base method.
func (m *MockConceptGroupAccess) DeleteObjectTypesFromGroup(ctx context.Context, tx *sql.Tx, query interfaces.ConceptGroupRelationsQueryParams) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteObjectTypesFromGroup", ctx, tx, query)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// DeleteObjectTypesFromGroup indicates an expected call of DeleteObjectTypesFromGroup.
func (mr *MockConceptGroupAccessMockRecorder) DeleteObjectTypesFromGroup(ctx, tx, query any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteObjectTypesFromGroup", reflect.TypeOf((*MockConceptGroupAccess)(nil).DeleteObjectTypesFromGroup), ctx, tx, query)
}

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

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

// GetAllConceptGroupsByKnID mocks base method.
func (m *MockConceptGroupAccess) GetAllConceptGroupsByKnID(ctx context.Context, knID, branch string) (map[string]*interfaces.ConceptGroup, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAllConceptGroupsByKnID", ctx, knID, branch)
	ret0, _ := ret[0].(map[string]*interfaces.ConceptGroup)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetAllConceptGroupsByKnID indicates an expected call of GetAllConceptGroupsByKnID.
func (mr *MockConceptGroupAccessMockRecorder) GetAllConceptGroupsByKnID(ctx, knID, branch any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAllConceptGroupsByKnID", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetAllConceptGroupsByKnID), ctx, knID, branch)
}

// GetConceptGroupByID mocks base method.
func (m *MockConceptGroupAccess) GetConceptGroupByID(ctx context.Context, knID, branch, cgID string) (*interfaces.ConceptGroup, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConceptGroupByID", ctx, knID, branch, cgID)
	ret0, _ := ret[0].(*interfaces.ConceptGroup)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetConceptGroupByID indicates an expected call of GetConceptGroupByID.
func (mr *MockConceptGroupAccessMockRecorder) GetConceptGroupByID(ctx, knID, branch, cgID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConceptGroupByID", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetConceptGroupByID), ctx, knID, branch, cgID)
}

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

// GetConceptGroupIDsByKnID indicates an expected call of GetConceptGroupIDsByKnID.
func (mr *MockConceptGroupAccessMockRecorder) GetConceptGroupIDsByKnID(ctx, knID, branch any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConceptGroupIDsByKnID", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetConceptGroupIDsByKnID), ctx, knID, branch)
}

// GetConceptGroupsByIDs mocks base method.
func (m *MockConceptGroupAccess) GetConceptGroupsByIDs(ctx context.Context, tx *sql.Tx, knID, branch string, cgIDs []string) ([]*interfaces.ConceptGroup, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConceptGroupsByIDs", ctx, tx, knID, branch, cgIDs)
	ret0, _ := ret[0].([]*interfaces.ConceptGroup)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetConceptGroupsByIDs indicates an expected call of GetConceptGroupsByIDs.
func (mr *MockConceptGroupAccessMockRecorder) GetConceptGroupsByIDs(ctx, tx, knID, branch, cgIDs any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConceptGroupsByIDs", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetConceptGroupsByIDs), ctx, tx, knID, branch, cgIDs)
}

// GetConceptGroupsByOTIDs mocks base method.
func (m *MockConceptGroupAccess) GetConceptGroupsByOTIDs(ctx context.Context, tx *sql.Tx, query interfaces.ConceptGroupRelationsQueryParams) (map[string][]*interfaces.ConceptGroup, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConceptGroupsByOTIDs", ctx, tx, query)
	ret0, _ := ret[0].(map[string][]*interfaces.ConceptGroup)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetConceptGroupsByOTIDs indicates an expected call of GetConceptGroupsByOTIDs.
func (mr *MockConceptGroupAccessMockRecorder) GetConceptGroupsByOTIDs(ctx, tx, query any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConceptGroupsByOTIDs", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetConceptGroupsByOTIDs), ctx, tx, query)
}

// GetConceptGroupsTotal mocks base method.
func (m *MockConceptGroupAccess) GetConceptGroupsTotal(ctx context.Context, query interfaces.ConceptGroupsQueryParams) (int, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConceptGroupsTotal", ctx, query)
	ret0, _ := ret[0].(int)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

// GetConceptIDsByConceptGroupIDs indicates an expected call of GetConceptIDsByConceptGroupIDs.
func (mr *MockConceptGroupAccessMockRecorder) GetConceptIDsByConceptGroupIDs(ctx, knID, branch, cgIDs, conceptType any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConceptIDsByConceptGroupIDs", reflect.TypeOf((*MockConceptGroupAccess)(nil).GetConceptIDsByConceptGroupIDs), ctx, knID, branch, cgIDs, conceptType)
}

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

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

// ListConceptGroupRelations mocks base method.
func (m *MockConceptGroupAccess) ListConceptGroupRelations(ctx context.Context, tx *sql.Tx, query interfaces.ConceptGroupRelationsQueryParams) ([]interfaces.ConceptGroupRelation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListConceptGroupRelations", ctx, tx, query)
	ret0, _ := ret[0].([]interfaces.ConceptGroupRelation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListConceptGroupRelations indicates an expected call of ListConceptGroupRelations.
func (mr *MockConceptGroupAccessMockRecorder) ListConceptGroupRelations(ctx, tx, query any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListConceptGroupRelations", reflect.TypeOf((*MockConceptGroupAccess)(nil).ListConceptGroupRelations), ctx, tx, query)
}

// ListConceptGroups mocks base method.
func (m *MockConceptGroupAccess) ListConceptGroups(ctx context.Context, query interfaces.ConceptGroupsQueryParams) ([]*interfaces.ConceptGroup, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListConceptGroups", ctx, query)
	ret0, _ := ret[0].([]*interfaces.ConceptGroup)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// UpdateConceptGroup mocks base method.
func (m *MockConceptGroupAccess) UpdateConceptGroup(ctx context.Context, tx *sql.Tx, conceptGroup *interfaces.ConceptGroup) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateConceptGroup", ctx, tx, conceptGroup)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateConceptGroup indicates an expected call of UpdateConceptGroup.
func (mr *MockConceptGroupAccessMockRecorder) UpdateConceptGroup(ctx, tx, conceptGroup any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateConceptGroup", reflect.TypeOf((*MockConceptGroupAccess)(nil).UpdateConceptGroup), ctx, tx, conceptGroup)
}

// UpdateConceptGroupDetail mocks base method.
func (m *MockConceptGroupAccess) UpdateConceptGroupDetail(ctx context.Context, knID, branch, cgID, detail string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateConceptGroupDetail", ctx, knID, branch, cgID, detail)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateConceptGroupDetail indicates an expected call of UpdateConceptGroupDetail.
func (mr *MockConceptGroupAccessMockRecorder) UpdateConceptGroupDetail(ctx, knID, branch, cgID, detail any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateConceptGroupDetail", reflect.TypeOf((*MockConceptGroupAccess)(nil).UpdateConceptGroupDetail), ctx, knID, branch, cgID, detail)
}
