using DocumentOperator.Domain.ValueObjects; namespace DocumentOperator.Application.Common.Interfaces; /// /// Interface for Swiss QR Code processing operations. /// Extracts and parses Swiss QR Codes from PDF documents. /// public interface ISwissQrCodeProcessor { /// /// Extracts and parses Swiss QR Code from the last page of a PDF document. /// /// PDF document as byte array /// Cancellation token /// Parsed Swiss QR Code data /// /// Thrown when no Swiss QR Code is found on the last page /// /// /// Thrown when PDF processing fails /// Task ExtractSwissQrCodeAsync(byte[] pdfBytes, CancellationToken cancellationToken = default); }