@effortlessmotion/pdf-to-md
    Preparing search index...

    Interface Analysis

    analyze()'s output: plain, JSON-serializable per-page words/blocks plus the same QA report the other entry points return.

    interface Analysis {
        outputVersion: number;
        pages: AnalysisPage[];
        report: Report;
    }
    Index
    outputVersion: number

    manually-bumped integer — see Report.outputVersion / report.ts's OUTPUT_VERSION.

    pages: AnalysisPage[]
    report: Report

    the same QA report extractText/extractOcr/pdfToMarkdown return, always measured off real markdown (OCR: the shared core's output; TEXT: buildMarkdown's reflowed output, not this coarser IR) — never stale relative to the IR.