// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/stacklok/toolhive-registry-server/internal/sync/state (interfaces: RegistryStateService)
//
// Generated by this command:
//
//	mockgen -destination=mocks/mock_registry_state_service.go -package=mocks github.com/stacklok/toolhive-registry-server/internal/sync/state RegistryStateService
//

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

import (
	context "context"
	reflect "reflect"

	config "github.com/stacklok/toolhive-registry-server/internal/config"
	status "github.com/stacklok/toolhive-registry-server/internal/status"
	gomock "go.uber.org/mock/gomock"
)

// MockRegistryStateService is a mock of RegistryStateService interface.
type MockRegistryStateService struct {
	ctrl     *gomock.Controller
	recorder *MockRegistryStateServiceMockRecorder
	isgomock struct{}
}

// MockRegistryStateServiceMockRecorder is the mock recorder for MockRegistryStateService.
type MockRegistryStateServiceMockRecorder struct {
	mock *MockRegistryStateService
}

// NewMockRegistryStateService creates a new mock instance.
func NewMockRegistryStateService(ctrl *gomock.Controller) *MockRegistryStateService {
	mock := &MockRegistryStateService{ctrl: ctrl}
	mock.recorder = &MockRegistryStateServiceMockRecorder{mock}
	return mock
}

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

// GetNextSyncJob mocks base method.
func (m *MockRegistryStateService) GetNextSyncJob(ctx context.Context, predicate func(*config.SourceConfig, *status.SyncStatus) bool) (*config.SourceConfig, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetNextSyncJob", ctx, predicate)
	ret0, _ := ret[0].(*config.SourceConfig)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

// Initialize mocks base method.
func (m *MockRegistryStateService) Initialize(ctx context.Context, cfg *config.Config) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Initialize", ctx, cfg)
	ret0, _ := ret[0].(error)
	return ret0
}

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

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

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

// UpdateSyncStatus mocks base method.
func (m *MockRegistryStateService) UpdateSyncStatus(ctx context.Context, registryName string, syncStatus *status.SyncStatus) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateSyncStatus", ctx, registryName, syncStatus)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateSyncStatus indicates an expected call of UpdateSyncStatus.
func (mr *MockRegistryStateServiceMockRecorder) UpdateSyncStatus(ctx, registryName, syncStatus any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateSyncStatus", reflect.TypeOf((*MockRegistryStateService)(nil).UpdateSyncStatus), ctx, registryName, syncStatus)
}
