using System; using System.IO; using System.Threading.Tasks; using DysonNetwork.Common.Models; namespace DysonNetwork.Common.Interfaces { public interface IFileServiceClient { Task GetFileAsync(string fileId); Task GetFileStreamAsync(string fileId); Task UploadFileAsync(Stream fileStream, string fileName, string? contentType = null); Task DeleteFileAsync(string fileId); Task ProcessImageAsync(Stream imageStream, string fileName, string? contentType = null); Task GetFileUrl(string fileId, bool useCdn = false); } }