mod cal_rec_boxes;
pub mod config;
mod det;
pub mod doc_pipeline;
mod engine;
mod geometry;
pub mod image_impl;
pub mod layout;
mod orient;
mod postprocess;
mod preprocess;
mod rec;
pub mod rusto_ocr;
pub mod table;
mod types;
#[cfg(not(feature = "use-opencv"))]
mod contours;
#[cfg(feature = "ffi")]
pub mod ffi;
pub use config::{ModelPreset, RustOConfig, PPV3_MODEL_CONFIG, PPV4_MODEL_CONFIG, PPV5_MODEL_CONFIG, PPV6_MODEL_CONFIG};
pub use det::TextDetector;
pub use doc_pipeline::{DocBlock, DocPipeline, DocPipelineConfig, DocResult};
pub use layout::{LayoutDetector, LayoutOutput, LayoutRegion, LayoutType};
pub use orient::{OrientClassifier, OrientOutput, Orientation};
pub use rec::{TextRecOutput, TextRecognizer, WordInfo, WordType};
pub use rusto_ocr::{RustO, RustOOutput};
pub use table::{TableDetector, TableDetectorConfig, TableModelType, TableStructure, TableStructureConfig, TableStructureRecognizer};
pub use types::{ClsConfig, DetConfig, Frame, GlobalConfig, LayoutConfig, OrientConfig, RecConfig};
pub use RustO as RapidOcr;
pub use crate::engine::EngineError;
#[derive(Debug, Clone, PartialEq, serde::Serialize, serde::Deserialize)]
pub struct TextResult {
pub text: String,
pub score: f32,
pub box_points: [(f32, f32); 4],
pub frame: Frame,
}