// Code generated by MockGen. DO NOT EDIT.
// Source: alarms_repository_interface.go
//
// Generated by this command:
//
//	mockgen -source=alarms_repository_interface.go -destination=generated/mock_repo.generated.go -package=generated
//
// Package generated is a generated GoMock package.
package generated

import (
	context "context"
	reflect "reflect"

	uuid "github.com/google/uuid"
	pgx "github.com/jackc/pgx/v5"
	models "github.com/openshift-kni/oran-o2ims/internal/service/alarms/internal/db/models"
	models0 "github.com/openshift-kni/oran-o2ims/internal/service/common/db/models"
	gomock "go.uber.org/mock/gomock"
)

// MockAlarmRepositoryInterface is a mock of AlarmRepositoryInterface interface.
type MockAlarmRepositoryInterface struct {
	ctrl     *gomock.Controller
	recorder *MockAlarmRepositoryInterfaceMockRecorder
}

// MockAlarmRepositoryInterfaceMockRecorder is the mock recorder for MockAlarmRepositoryInterface.
type MockAlarmRepositoryInterfaceMockRecorder struct {
	mock *MockAlarmRepositoryInterface
}

// NewMockAlarmRepositoryInterface creates a new mock instance.
func NewMockAlarmRepositoryInterface(ctrl *gomock.Controller) *MockAlarmRepositoryInterface {
	mock := &MockAlarmRepositoryInterface{ctrl: ctrl}
	mock.recorder = &MockAlarmRepositoryInterfaceMockRecorder{mock}
	return mock
}

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

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

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

// CreateServiceConfiguration mocks base method.
func (m *MockAlarmRepositoryInterface) CreateServiceConfiguration(ctx context.Context, defaultRetentionPeriod int) (*models.ServiceConfiguration, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateServiceConfiguration", ctx, defaultRetentionPeriod)
	ret0, _ := ret[0].(*models.ServiceConfiguration)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteAlarmSubscription mocks base method.
func (m *MockAlarmRepositoryInterface) DeleteAlarmSubscription(ctx context.Context, id uuid.UUID) (int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteAlarmSubscription", ctx, id)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteAlarmsDataChange mocks base method.
func (m *MockAlarmRepositoryInterface) DeleteAlarmsDataChange(ctx context.Context, dataChangeId uuid.UUID) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteAlarmsDataChange", ctx, dataChangeId)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// GetAlarmEventRecord mocks base method.
func (m *MockAlarmRepositoryInterface) GetAlarmEventRecord(ctx context.Context, id uuid.UUID) (*models.AlarmEventRecord, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAlarmEventRecord", ctx, id)
	ret0, _ := ret[0].(*models.AlarmEventRecord)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

// GetAlarmSubscription mocks base method.
func (m *MockAlarmRepositoryInterface) GetAlarmSubscription(ctx context.Context, id uuid.UUID) (*models.AlarmSubscription, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAlarmSubscription", ctx, id)
	ret0, _ := ret[0].(*models.AlarmSubscription)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

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

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

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

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

// PatchAlarmEventRecordACK mocks base method.
func (m *MockAlarmRepositoryInterface) PatchAlarmEventRecordACK(ctx context.Context, id uuid.UUID, record *models.AlarmEventRecord) (*models.AlarmEventRecord, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "PatchAlarmEventRecordACK", ctx, id, record)
	ret0, _ := ret[0].(*models.AlarmEventRecord)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

// ResolveStaleAlarmEventCaaSRecord indicates an expected call of ResolveStaleAlarmEventCaaSRecord.
func (mr *MockAlarmRepositoryInterfaceMockRecorder) ResolveStaleAlarmEventCaaSRecord(ctx, tx, generationID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ResolveStaleAlarmEventCaaSRecord", reflect.TypeOf((*MockAlarmRepositoryInterface)(nil).ResolveStaleAlarmEventCaaSRecord), ctx, tx, generationID)
}

// UpdateServiceConfiguration mocks base method.
func (m *MockAlarmRepositoryInterface) UpdateServiceConfiguration(ctx context.Context, id uuid.UUID, record *models.ServiceConfiguration) (*models.ServiceConfiguration, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateServiceConfiguration", ctx, id, record)
	ret0, _ := ret[0].(*models.ServiceConfiguration)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// UpdateSubscriptionEventCursor mocks base method.
func (m *MockAlarmRepositoryInterface) UpdateSubscriptionEventCursor(ctx context.Context, subscription models.AlarmSubscription) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateSubscriptionEventCursor", ctx, subscription)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// UpsertAlarmEventCaaSRecord mocks base method.
func (m *MockAlarmRepositoryInterface) UpsertAlarmEventCaaSRecord(ctx context.Context, tx pgx.Tx, records []models.AlarmEventRecord, generationID int64) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpsertAlarmEventCaaSRecord", ctx, tx, records, generationID)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpsertAlarmEventCaaSRecord indicates an expected call of UpsertAlarmEventCaaSRecord.
func (mr *MockAlarmRepositoryInterfaceMockRecorder) UpsertAlarmEventCaaSRecord(ctx, tx, records, generationID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpsertAlarmEventCaaSRecord", reflect.TypeOf((*MockAlarmRepositoryInterface)(nil).UpsertAlarmEventCaaSRecord), ctx, tx, records, generationID)
}

// WithTransaction mocks base method.
func (m *MockAlarmRepositoryInterface) WithTransaction(ctx context.Context, fn func(pgx.Tx) error) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "WithTransaction", ctx, fn)
	ret0, _ := ret[0].(error)
	return ret0
}

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