1"""
2Document preprocessing modules.
3
4This package provides modular document preprocessing capabilities
5including OCR, table extraction, and metadata enrichment.
6"""
7
8from __future__ import annotations
9
10from typing import TYPE_CHECKING
11
12from lexigram.ai.rag.exceptions import PreprocessingError
13from lexigram.ai.rag.preprocessing.base import AbstractPreprocessor
14from lexigram.ai.rag.preprocessing.document import PreprocessedDocument
15from lexigram.ai.rag.preprocessing.enricher import MetadataEnricher
16from lexigram.ai.rag.preprocessing.ocr import OCRPreprocessor
17from lexigram.ai.rag.preprocessing.pipeline import PreprocessingPipeline
18from lexigram.ai.rag.preprocessing.tables import TableExtractor
19from lexigram.ai.rag.preprocessing.types import (
20 DocumentMetadata,
21 DocumentType,
22 ExtractedImage,
23 ExtractedTable,
24 TableFormat,
25)
26
27__all__ = [
28 "AbstractPreprocessor",
29 "DocumentMetadata",
30 "DocumentType",
31 "ExtractedImage",
32 "ExtractedTable",
33 "MetadataEnricher",
34 "OCRPreprocessor",
35 "PreprocessedDocument",
36 "PreprocessingError",
37 "PreprocessingPipeline",
38 "TableExtractor",
39 "TableFormat",
40]