namespace SolutionErp.Application.Common.Interfaces;

// Convert document bytes between office formats. Infrastructure impl shells out
// to LibreOffice headless (soffice.exe --headless --convert-to TARGET).
//
// Supported source/target combos are whatever LibreOffice supports, commonly:
//   docx → pdf, doc → docx, xlsx → pdf, xls → xlsx
//
// Future swap: QuestPDF for PDF-only, Aspose.Words for quality, or cloud API —
// without touching callers.
public interface IDocumentConverter
{
    Task<byte[]> ConvertAsync(byte[] sourceBytes, string sourceExt, string targetExt, CancellationToken ct = default);
}
