namespace Ping.Application.Contracts { public interface IStorageService { Task GetFileAsync(string bucket, string key, CancellationToken cancellationToken); Task GetUrlAsync(string bucket, string key, TimeSpan expirationTime, CancellationToken cancellationToken); Task GetUploadUrlAsync( string bucket, string key, string contentType, TimeSpan expirationTime, CancellationToken cancellationToken, bool preventOverwrite = true); Task HeadObjectAsync(string bucket, string key, CancellationToken cancellationToken); Task RemoveFileAsync(string bucket, string key, CancellationToken cancellationToken); } }