// Code generated by MockGen. DO NOT EDIT.
// Source: provider_service.go
//
// Generated by this command:
//
//	mockgen -source=provider_service.go -destination=../../tests/mocks/mock_provider_service.go -package=mocks
//

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

import (
	reflect "reflect"

	domain "nex/backend/internal/domain"

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

// MockProviderService is a mock of ProviderService interface.
type MockProviderService struct {
	ctrl     *gomock.Controller
	recorder *MockProviderServiceMockRecorder
	isgomock struct{}
}

// MockProviderServiceMockRecorder is the mock recorder for MockProviderService.
type MockProviderServiceMockRecorder struct {
	mock *MockProviderService
}

// NewMockProviderService creates a new mock instance.
func NewMockProviderService(ctrl *gomock.Controller) *MockProviderService {
	mock := &MockProviderService{ctrl: ctrl}
	mock.recorder = &MockProviderServiceMockRecorder{mock}
	return mock
}

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

// Create mocks base method.
func (m *MockProviderService) Create(provider *domain.Provider) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", provider)
	ret0, _ := ret[0].(error)
	return ret0
}

// Create indicates an expected call of Create.
func (mr *MockProviderServiceMockRecorder) Create(provider any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockProviderService)(nil).Create), provider)
}

// Delete mocks base method.
func (m *MockProviderService) Delete(id string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Delete", id)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// Get mocks base method.
func (m *MockProviderService) Get(id string) (*domain.Provider, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", id)
	ret0, _ := ret[0].(*domain.Provider)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetModelByProviderAndName mocks base method.
func (m *MockProviderService) GetModelByProviderAndName(providerID, modelName string) (*domain.Model, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetModelByProviderAndName", providerID, modelName)
	ret0, _ := ret[0].(*domain.Model)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetModelByProviderAndName indicates an expected call of GetModelByProviderAndName.
func (mr *MockProviderServiceMockRecorder) GetModelByProviderAndName(providerID, modelName any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetModelByProviderAndName", reflect.TypeOf((*MockProviderService)(nil).GetModelByProviderAndName), providerID, modelName)
}

// List mocks base method.
func (m *MockProviderService) List() ([]domain.Provider, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List")
	ret0, _ := ret[0].([]domain.Provider)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// ListEnabledModels mocks base method.
func (m *MockProviderService) ListEnabledModels() ([]domain.Model, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListEnabledModels")
	ret0, _ := ret[0].([]domain.Model)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// Update mocks base method.
func (m *MockProviderService) Update(id string, updates map[string]any) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Update", id, updates)
	ret0, _ := ret[0].(error)
	return ret0
}

// Update indicates an expected call of Update.
func (mr *MockProviderServiceMockRecorder) Update(id, updates any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockProviderService)(nil).Update), id, updates)
}
