package service

import "nex/backend/internal/domain"

//go:generate go run go.uber.org/mock/mockgen -source=provider_service.go -destination=../../tests/mocks/mock_provider_service.go -package=mocks

// ProviderService 供应商服务接口
type ProviderService interface {
	Create(provider *domain.Provider) error
	Get(id string) (*domain.Provider, error)
	List() ([]domain.Provider, error)
	Update(id string, updates map[string]interface{}) error
	Delete(id string) error
	// 统一模型 ID 相关方法
	ListEnabledModels() ([]domain.Model, error)
	GetModelByProviderAndName(providerID, modelName string) (*domain.Model, error)
}
