using DocumentService.Application.Common.DTOs; using DocumentService.Client.Models.Results; namespace DocumentService.Client.Interfaces; /// /// Orchestrated multi-step workflows that combine multiple DocumentService operations into /// a single, higher-level call. Prefer these over manually chaining individual clients. /// public interface IWorkflowsClient { /// /// Validates the PDF and attempts Swiss QR Code extraction in a single call, /// returning both results together. The method never throws on invalid documents – /// the caller receives the full regardless of outcome, /// enabling detailed logging, diagnostics, or batch processing without try/catch. /// /// PDF file as byte array. /// /// false (default) – returns a parsed object.
/// true – returns raw QR text lines without parsing. /// /// Cancellation token. /// /// A containing the /// (always populated) and the (null if the /// document was invalid). /// Task InspectSwissQrCodeAsync( byte[] pdfBytes, bool raw = false, CancellationToken cancellationToken = default); /// /// PDF file as a stream. /// /// Cancellation token. Task InspectSwissQrCodeAsync( Stream pdfStream, bool raw = false, CancellationToken cancellationToken = default); }