// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/kweaver-ai/kweaver-core/decision-agent/agent-backend/agent-factory/src/port/driven/idbaccess (interfaces: IBizDomainAgentTplRelRepo)
//
// Generated by this command:
//
//	mockgen -package idbaccessmock -destination ./idbaccessmock/biz_domain_agent_tpl_rel.go github.com/kweaver-ai/kweaver-core/decision-agent/agent-backend/agent-factory/src/port/driven/idbaccess IBizDomainAgentTplRelRepo
//

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

import (
	context "context"
	sql "database/sql"
	reflect "reflect"

	dapo "github.com/kweaver-ai/kweaver-core/decision-agent/agent-backend/agent-factory/src/infra/persistence/dapo"
	sqlx "github.com/kweaver-ai/proton-rds-sdk-go/sqlx"
	gomock "go.uber.org/mock/gomock"
)

// MockIBizDomainAgentTplRelRepo is a mock of IBizDomainAgentTplRelRepo interface.
type MockIBizDomainAgentTplRelRepo struct {
	ctrl     *gomock.Controller
	recorder *MockIBizDomainAgentTplRelRepoMockRecorder
	isgomock struct{}
}

// MockIBizDomainAgentTplRelRepoMockRecorder is the mock recorder for MockIBizDomainAgentTplRelRepo.
type MockIBizDomainAgentTplRelRepoMockRecorder struct {
	mock *MockIBizDomainAgentTplRelRepo
}

// NewMockIBizDomainAgentTplRelRepo creates a new mock instance.
func NewMockIBizDomainAgentTplRelRepo(ctrl *gomock.Controller) *MockIBizDomainAgentTplRelRepo {
	mock := &MockIBizDomainAgentTplRelRepo{ctrl: ctrl}
	mock.recorder = &MockIBizDomainAgentTplRelRepoMockRecorder{mock}
	return mock
}

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

// BatchCreate mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) BatchCreate(ctx context.Context, tx *sql.Tx, pos []*dapo.BizDomainAgentTplRelPo) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BatchCreate", ctx, tx, pos)
	ret0, _ := ret[0].(error)
	return ret0
}

// BatchCreate indicates an expected call of BatchCreate.
func (mr *MockIBizDomainAgentTplRelRepoMockRecorder) BatchCreate(ctx, tx, pos any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BatchCreate", reflect.TypeOf((*MockIBizDomainAgentTplRelRepo)(nil).BatchCreate), ctx, tx, pos)
}

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

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

// DeleteByAgentTplID mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) DeleteByAgentTplID(ctx context.Context, tx *sql.Tx, agentTplID int64) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteByAgentTplID", ctx, tx, agentTplID)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteByAgentTplID indicates an expected call of DeleteByAgentTplID.
func (mr *MockIBizDomainAgentTplRelRepoMockRecorder) DeleteByAgentTplID(ctx, tx, agentTplID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteByAgentTplID", reflect.TypeOf((*MockIBizDomainAgentTplRelRepo)(nil).DeleteByAgentTplID), ctx, tx, agentTplID)
}

// DeleteByBizDomainID mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) DeleteByBizDomainID(ctx context.Context, tx *sql.Tx, bizDomainID string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteByBizDomainID", ctx, tx, bizDomainID)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteByBizDomainID indicates an expected call of DeleteByBizDomainID.
func (mr *MockIBizDomainAgentTplRelRepoMockRecorder) DeleteByBizDomainID(ctx, tx, bizDomainID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteByBizDomainID", reflect.TypeOf((*MockIBizDomainAgentTplRelRepo)(nil).DeleteByBizDomainID), ctx, tx, bizDomainID)
}

// GetByAgentTplID mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) GetByAgentTplID(ctx context.Context, tx *sql.Tx, agentTplID int64) ([]*dapo.BizDomainAgentTplRelPo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByAgentTplID", ctx, tx, agentTplID)
	ret0, _ := ret[0].([]*dapo.BizDomainAgentTplRelPo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetByAgentTplID indicates an expected call of GetByAgentTplID.
func (mr *MockIBizDomainAgentTplRelRepoMockRecorder) GetByAgentTplID(ctx, tx, agentTplID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByAgentTplID", reflect.TypeOf((*MockIBizDomainAgentTplRelRepo)(nil).GetByAgentTplID), ctx, tx, agentTplID)
}

// GetByBizDomainID mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) GetByBizDomainID(ctx context.Context, tx *sql.Tx, bizDomainID string) ([]*dapo.BizDomainAgentTplRelPo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByBizDomainID", ctx, tx, bizDomainID)
	ret0, _ := ret[0].([]*dapo.BizDomainAgentTplRelPo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetByBizDomainID indicates an expected call of GetByBizDomainID.
func (mr *MockIBizDomainAgentTplRelRepoMockRecorder) GetByBizDomainID(ctx, tx, bizDomainID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByBizDomainID", reflect.TypeOf((*MockIBizDomainAgentTplRelRepo)(nil).GetByBizDomainID), ctx, tx, bizDomainID)
}

// GetDB mocks base method.
func (m *MockIBizDomainAgentTplRelRepo) GetDB() *sqlx.DB {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetDB")
	ret0, _ := ret[0].(*sqlx.DB)
	return ret0
}

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