using Pldpro.Web.Services.Models; namespace Pldpro.Web.Services; public interface IStorageService { Task> ListBucketsAsync(CancellationToken ct = default); Task CreateBucketAsync(string bucketName, CancellationToken ct = default); Task> ListObjectsAsync(string bucket, CancellationToken ct = default); Task UploadObjectAsync(string bucket, string key, Stream content, string contentType, CancellationToken ct = default); Task<(Stream Stream, string ContentType, long? ContentLength)> GetObjectAsync(string bucket, string key, CancellationToken ct = default); }