using DocumentService.Client.Interfaces; using DocumentService.Client.Models.Requests; using Microsoft.Extensions.Logging; using System.Net.Http; namespace DocumentService.Client.Clients; /// /// Implementation of the PDF digital-signing client. /// public class PdfSignatureClient(HttpClient httpClient, ILogger logger) : BaseDocumentClient(httpClient, logger), IPdfSignatureClient { /// public async Task SignAsync(byte[] pdfBytes, SignPdfOptions options, byte[]? signatureImageBytes = null, CancellationToken cancellationToken = default) { var request = new SignPdfRequest { Base64Pdf = ToBase64(pdfBytes), Base64SignatureImage = signatureImageBytes is null ? null : ToBase64(signatureImageBytes), Options = options }; return await SendJsonForStreamAsync("/api/pdf/signature/sign", request, cancellationToken); } }