using Knot.Shared.Kernel.Storage;

namespace Knot.Contracts.Profiles.Domain;

public interface IAvatarStorageService
{
    Task<string> UploadAsync(Stream stream, string fileName, string contentType, CancellationToken cancellationToken = default);
    Task DeleteAsync(string fileKey, CancellationToken cancellationToken = default);
    Task<Stream?> GetAsync(string fileKey, CancellationToken cancellationToken = default);
    string GetFileUrl(string fileKey);
}
