package file

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

type GetUseCase struct {
	fileRepo file.Repository
}

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

// Execute retrieves a file by ID
func (uc *GetUseCase) Execute(id string) (*file.File, error) {
	return uc.fileRepo.Get(id)
}
