oliverbooth.dev/OliverBooth.Common/Data/Web/IBook.cs
Oliver Booth 6ec4103a3a
refactor: separate Markdig extensions from project
Also introduces .Common project to house common references and types
2024-05-05 02:18:20 +01:00

38 lines
966 B
C#

namespace OliverBooth.Common.Data.Web;
/// <summary>
/// Represents a book.
/// </summary>
public interface IBook
{
/// <summary>
/// Gets the author of the book.
/// </summary>
/// <value>The author of the book.</value>
string Author { get; }
/// <summary>
/// Gets the ISBN of the book.
/// </summary>
/// <value>The ISBN of the book.</value>
string Isbn { get; }
/// <summary>
/// Gets the state of the book.
/// </summary>
/// <value>The state of the book.</value>
BookState State { get; }
/// <summary>
/// Gets the title of the book.
/// </summary>
/// <value>The title of the book.</value>
string Title { get; }
/// <summary>
/// Generates the barcode for this book.
/// </summary>
/// <returns>The EAN-13 barcode encoded as PNG in Base64.</returns>
/// <remarks>This value should be disposed.</remarks>
string GetBarcode();
}