using System.Threading; using System.Threading.Tasks; namespace Knot.Modules.Profiles.Application.Abstractions; /// /// Интерфейс для хранения аватаров в S3 (MinIO). /// Отдельный от IFileStorageService модуля Storage, /// чтобы не создавать прямой зависимости на Storage модуль. /// public interface IAvatarStorageService { /// /// Загружает файл в S3-бакет аватаров и возвращает fileId (ключ объекта). /// Task UploadAsync(System.IO.Stream stream, string fileName, string contentType, CancellationToken ct = default); /// /// Удаляет файл аватара из S3 по fileId. /// Task DeleteAsync(string fileId, CancellationToken ct = default); }