package repository

import "nex/backend/internal/domain"

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

// ModelRepository 模型数据仓库接口
type ModelRepository interface {
	Create(model *domain.Model) error
	GetByID(id string) (*domain.Model, error)
	List(providerID string) ([]domain.Model, error)
	FindByProviderAndModelName(providerID, modelName string) (*domain.Model, error)
	ListEnabled() ([]domain.Model, error)
	Update(id string, updates map[string]interface{}) error
	Delete(id string) error
}
