using ROLAC.API.Entities; namespace ROLAC.API.Services.Disbursement; /// Data needed to render one printed check (header + ledger stub lines). public class CheckPrintModel { public ChurchProfile Issuer { get; set; } = null!; public Check Check { get; set; } = null!; public List Lines { get; set; } = []; public string AmountInWords { get; set; } = ""; // Captured receipt e-signature, populated only when rendering a signed receipt. public byte[]? SignatureImage { get; set; } public string SignatureContentType { get; set; } = "image/png"; } public interface ICheckPrintService { /// Renders the 8.5"x11" check (check + two ledger stubs) to a PDF stream. Task RenderPdfAsync(CheckPrintModel model); /// /// Renders a receipt PDF acknowledging a signed check: check info, the disbursement /// detail lines, and the embedded e-signature image with the signer name and timestamp. /// Task RenderReceiptPdfAsync(CheckPrintModel model); }