/** * The public API for Ream. * * The package reads Word, Excel, PowerPoint and PDF — including the legacy * `.doc` / `.xls` / `.ppt` — and converts any of them to PDF, SVG, HTML, DOCX or * XLSX, implemented from the ECMA-376 and ISO 32000 specifications without * wrapping LibreOffice, headless Office, or any commercial SDK. * * Typical use: * * ```ts * import { Ream } from 'reamkit'; * const doc = Ream.parse(bytes); // format sniffed * const pdf = await doc.convert('pdf'); // one parse, any target * ``` * * Advanced consumers can build custom pipelines from the reader/writer * interfaces, drive the layout engine directly via {@link renderStyledPdf}, * supply a hyphenator, or import the typed document model from the * `reamkit/document-model` subpath. * * @packageDocumentation */ export { fetchFontSet, resolveFamilyKey } from './core/fonts/index.js'; export type { FamilyKey, FetchFontSetOptions, FetchLike } from './core/fonts/index.js'; export { renderStyledPdf } from './pdf/index.js'; export type { StyledRenderOptions, DocumentInfo } from './pdf/index.js'; export { signPdf } from './pdf/index.js'; export type { SignaturePlaceholder, SignerCredentials, SignatureOptions } from './pdf/index.js'; export type { PdfEncryptOptions, PdfPermissions } from './pdf/index.js'; export { FontRegistry, parseTtf, subsetTtf } from './core/font/index.js'; export type { FontBytesByVariant, FontVariant, ParsedTtf } from './core/font/index.js'; export { getHyphenator, createLanguageHyphenator, createHyphenator, splitPatternBundle, } from './core/hyphenation/index.js'; export type { Hyphenator, HyphenatorOptions, SupportedLanguage } from './core/hyphenation/index.js'; export type { Pt, ResourceId, Feature, KnownFeature, Loss, LossReport, LossSeverity, NativeBag, } from './core/ir/index.js'; export { FEATURES, ResourceStore, ConversionLossError, formatLoss, pt, twipsToPt, halfPtToPt, eighthPtToPt, emuToPt, pxToPt, inchToPt, mmToPt, } from './core/ir/index.js'; export type { FlowDoc } from './core/ir/flow.js'; export type { DocumentReader, DocumentWriter, ReadOptions, ReadResult, WriteOptions, WriteResult, } from './core/ir/adapters.js'; export { docxReader, readDocx } from './word/docx-reader.js'; export { xlsxReader, readXlsx } from './excel/xlsx-reader.js'; export { Ream } from './core/converter/ream.js'; export type { ReamConvertOptions, ReamParseOptions, ReamTarget } from './core/converter/ream.js'; export { isEncryptedPackage, WrongPasswordError } from './core/crypto/offcrypto.js'; export { createConverter } from './core/converter/facade.js'; export type { Converter, ConvertOptions, ConvertResult, CreateConverterOptions, } from './core/converter/facade.js'; export type { PageItem, PageItemBase, TextLineItem, BorderItem, FillItem, ImageItem, ShapeItem, LaidOutPage, } from './layout/page-doc.js'; export { chainProviders, callerFontProvider, embeddedDocFontProvider, remoteFontProvider, localFontProvider, readOs2FsType, isEmbeddingRestricted, NO_FONT, } from './core/fonts/provider.js'; export type { FontProvider, FontRequest, FontAnswer } from './core/fonts/provider.js'; export { svgWriter, writeSvg } from './svg/svg-writer.js'; export type { SvgWriteOptions } from './svg/svg-writer.js'; export { htmlWriter, writeHtml } from './html/html-writer.js'; export { markdownWriter, writeMarkdown } from './markdown/markdown-writer.js'; export type { StreamFilter, StreamFilters } from './pdf-reader/document.js'; export type { MarkdownWriteOptions } from './markdown/markdown-writer.js'; export { docxWriter, writeDocx } from './word/docx-writer.js'; export { layoutStyledDocument } from './layout/styled-layout.js'; export type { LaidOutDocument } from './layout/page-doc.js';