Files
Nexus.Reader/src/NexusReader.Application/Abstractions/Services/IBookStorageService.cs
T

30 lines
973 B
C#

namespace NexusReader.Application.Abstractions.Services;
/// <summary>
/// Service for managing ebook and cover file storage.
/// </summary>
public interface IBookStorageService
{
/// <summary>
/// Saves an ebook file and returns its relative path/URL.
/// </summary>
Task<string> SaveEbookAsync(byte[] data, string fileName);
/// <summary>
/// Saves an ebook file using a stream and returns its relative path/URL.
/// </summary>
Task<string> SaveEbookAsync(Stream data, string fileName);
/// <summary>
/// Saves a cover image and returns its relative path/URL.
/// Returns null if no cover data is provided.
/// </summary>
Task<string?> SaveCoverAsync(byte[] data, string fileName);
/// <summary>
/// Saves a cover image using a stream and returns its relative path/URL.
/// Returns null if no cover data is provided.
/// </summary>
Task<string?> SaveCoverAsync(Stream data, string fileName);
}