package bll

import (
	"context"
	"net/http"
	"yx-dataset-server/app/schema"
)

// IFile 文件管理业务逻辑接口
type IFile interface {
	// 文件上传
	Upload(ctx context.Context, r *http.Request, formKey, bucket string) (*schema.FileInfo, error)
	// 从本地文件路径上传
	UploadFromLocal(ctx context.Context, filePath string, bucket string) (*schema.FileInfo, error)
	Download(ctx context.Context, filePath string) ([]byte, string, error)

	UploadAllTrainFiles(ctx context.Context, path, bucket string) ([]*schema.FileInfo, error)
}
