package file

import (
	"codeberg.org/mapleopentech/monorepo/native/desktop/maplefile/internal/domain/file"
)

type UpdateUseCase struct {
	fileRepo file.Repository
}

// ProvideUpdateUseCase creates the use case for Wire
func ProvideUpdateUseCase(fileRepo file.Repository) *UpdateUseCase {
	return &UpdateUseCase{fileRepo: fileRepo}
}

// Execute updates an existing file record
func (uc *UpdateUseCase) Execute(f *file.File) error {
	return uc.fileRepo.Update(f)
}
