from __future__ import annotations

from .chunking import build_chunk_payload, chunk_text, load_text
from .constants import (
    CHUNK_SIZES,
    DEFAULT_INGEST_BATCH,
    DEFAULT_ROOT_DIR,
    DOC_FAMILY_BY_DOCUMENT_TYPE,
    EVIDENCE_ROLE_BY_DOCUMENT_TYPE,
    GOLD_REFERENCE_ROLE_BY_DOCUMENT_TYPE,
    MANIFEST_PATH,
    PACKAGE_NAME_MAP,
    PROJECT_DEFAULTS_PATH,
    REQUIRED_FOR_BY_DOCUMENT_TYPE,
    RETRIEVAL_PRIORITY_BY_DOCUMENT_TYPE,
    STAGE_NORMALIZATION_MAP,
    TASK_TYPE_BY_DOCUMENT_GROUP,
    TASK_TYPE_BY_DOCUMENT_TYPE,
    TRAINING_VALUE_BY_DOCUMENT_TYPE,
    USED_FOR_TASKS_BY_DOCUMENT_TYPE,
)
from .metadata_builders import (
    build_file_metadata,
    infer_document_type,
    infer_package_label,
    infer_requires_ocr,
    infer_stage,
    infer_version_role,
)
from .text_utils import (
    compact_text,
    infer_folder_scope,
    infer_section_title,
    load_manifest,
    load_schema,
    parse_decision_fields,
    slugify,
    strip_accents,
)

__all__ = [
    "CHUNK_SIZES",
    "DEFAULT_INGEST_BATCH",
    "DEFAULT_ROOT_DIR",
    "DOC_FAMILY_BY_DOCUMENT_TYPE",
    "EVIDENCE_ROLE_BY_DOCUMENT_TYPE",
    "GOLD_REFERENCE_ROLE_BY_DOCUMENT_TYPE",
    "MANIFEST_PATH",
    "PACKAGE_NAME_MAP",
    "PROJECT_DEFAULTS_PATH",
    "REQUIRED_FOR_BY_DOCUMENT_TYPE",
    "RETRIEVAL_PRIORITY_BY_DOCUMENT_TYPE",
    "STAGE_NORMALIZATION_MAP",
    "TASK_TYPE_BY_DOCUMENT_GROUP",
    "TASK_TYPE_BY_DOCUMENT_TYPE",
    "TRAINING_VALUE_BY_DOCUMENT_TYPE",
    "USED_FOR_TASKS_BY_DOCUMENT_TYPE",
    "build_chunk_payload",
    "build_file_metadata",
    "chunk_text",
    "compact_text",
    "infer_document_type",
    "infer_folder_scope",
    "infer_package_label",
    "infer_requires_ocr",
    "infer_section_title",
    "infer_stage",
    "infer_version_role",
    "load_manifest",
    "load_schema",
    "load_text",
    "parse_decision_fields",
    "slugify",
    "strip_accents",
]
