mod document;
mod pipeline;
mod plausibility;
mod rendering;
mod scoring;
#[cfg(any(feature = "ocr", feature = "ocr-pipeline"))]
pub(crate) use plausibility::scan_text_plausibility;
#[cfg(any(feature = "ocr", feature = "ocr-pipeline"))]
pub(crate) use scoring::{OcrGateOutcome, apply_flagged_pages, evaluate_ocr_skip_gate, evaluate_per_page_ocr};
#[cfg(feature = "ocr")]
pub(crate) use scoring::{mean_text_conf_of, page_ocr_confidence, word_count_of};
#[cfg(feature = "ocr")]
pub(crate) use scoring::{ocr_content_is_repairable_prose, repair_ocr_numeric_tokens};
#[cfg(any(feature = "ocr", feature = "ocr-pipeline"))]
#[allow(unused_imports)]
pub(crate) use scoring::{NativeTextStats, OcrFallbackDecision, evaluate_native_text_for_ocr};
#[cfg(all(test, feature = "ocr", feature = "pdf"))]
#[allow(unused_imports)]
pub(crate) use rendering::render_selected_pages_for_ocr;
#[cfg(any(feature = "ocr", feature = "ocr-pipeline"))]
pub(crate) use document::{
boundaries_after_replacements, merge_ocr_pages_into_internal_document,
merge_structured_ocr_pages_into_internal_document,
};
#[cfg(all(paddle_ocr, any(feature = "ocr", feature = "ocr-pipeline"), feature = "pdf"))]
pub(crate) use pipeline::extract_full_document_ocr_pipeline_per_page;
#[cfg(all(any(feature = "ocr", feature = "ocr-pipeline"), feature = "pdf"))]
pub(crate) use pipeline::{
extract_mixed_ocr_native_with_single_block_pages, failed_run_page_failures, route_level_ocr_page_failures,
};
#[cfg(all(test, any(feature = "ocr", feature = "ocr-pipeline")))]
#[allow(unused_imports)]
pub(crate) use pipeline::extract_with_ocr;
#[cfg(any(feature = "ocr", feature = "ocr-pipeline"))]
pub(crate) use pipeline::{
OcrRunResult, PageOcrHints, apply_numeric_repair_to_whole_document_ocr, extract_with_ocr_with_page_hints,
numeric_repair_enabled, run_ocr_pipeline,
};
#[cfg(all(test, feature = "ocr", feature = "pdf"))]
mod failed_page_record_tests;
#[cfg(all(test, any(feature = "ocr", feature = "ocr-pipeline")))]
mod numeric_repair_tests;
#[cfg(all(test, any(feature = "ocr", feature = "ocr-pipeline")))]
mod plausibility_tests;
#[cfg(all(test, any(feature = "ocr", feature = "ocr-pipeline")))]
mod recognition_noise_tests;
#[cfg(all(test, feature = "ocr"))]
mod tests;