#!/usr/bin/env python3
from __future__ import annotations

from .identity import (
    MyChemResolver,
    classify_hits,
    contains_boundary_phrase,
    extract_hit_names,
    normalize_match_key,
    normalize_match_segment,
    primary_hit_name,
    sanitize_mychem_query,
    split_normalized_segments,
    split_vaccine_components,
    strip_parentheticals,
    summarize_hit,
)
from .io import (
    DEFAULT_PROJECTION_DROP_KEYS,
    EXPERIMENT_ROOT,
    MYCHEM_BASE,
    MYCHEM_CACHE_PATH,
    MYCHEM_FIELDS,
    RESULTS_DIR,
    SCRIPT_DIR,
    SOURCE_CACHE_FILES,
    UPSTREAM_CACHE_DIR,
    USER_AGENT,
    WHO_API_URL,
    WHO_DEVICES_URL,
    WHO_FINISHED_URL,
    WHO_VACCINES_URL,
    WORK_DIR,
    cache_path_for_url,
    clean_text,
    diff_payloads,
    ensure_work_dirs,
    fetch_bytes,
    fetch_json_url,
    fetch_text,
    header_key,
    iso_now,
    normalize_for_projection,
    normalize_header,
    parse_csv_rows,
    read_json,
    round_seconds,
    sample_rows,
    sha256_bytes,
    sha256_json,
    source_snapshot,
    time_call,
    to_plain_data,
    write_json,
)
from .loaders import (
    REQUIRED_FINISHED_HEADERS,
    derive_inn,
    device_schema_summary,
    load_apis,
    load_devices,
    load_finished_pharma,
    load_vaccines,
    normalize_who_date,
    schema_overlap,
    schema_summary,
)
from .probes import (
    API_LINKAGE_RESULT_PATH,
    METADATA_RESULT_PATH,
    PROBE_RESULT_PATHS,
    PROBE_SUMMARY_PATH,
    SCHEMA_RESULT_PATH,
    VACCINE_IDENTITY_RESULT_PATH,
    build_api_linkage_probe_payload,
    build_metadata_probe_payload,
    build_schema_probe_payload,
    build_vaccine_identity_probe_payload,
    component_query_options,
    count_presence,
    run_probe_suite,
    ticket_validation_samples,
    write_api_linkage_probe_result,
    write_metadata_probe_result,
    write_probe_summary,
    write_schema_probe_result,
    write_vaccine_identity_probe_result,
)
from .reports import (
    DESIGN_PATH,
    FULL_SCALE_RESULTS_PATH,
    MEANINGFUL_VACCINE_FIELDS,
    REGRESSION_CONTROL_PATH,
    SAMPLES_PATH,
    VALIDATION_PATH,
    VALIDATION_TERMS,
    build_contract_numbers,
    build_full_scale_results,
    build_loader_design_payload,
    build_probe_projection,
    build_regression_control_payload,
    build_sample_records_payload,
    build_validation_payload,
    current_cache_state,
    diff_vaccine_identity_projection,
    write_regression_control_result,
    write_validation_result,
)
from .types import (
    WhoDeviceCatalog,
    WhoFinishedPharmaEntry,
    WhoFinishedPharmaTable,
    WhoFullScaleArtifacts,
    WhoTable,
)

__all__ = [
    "API_LINKAGE_RESULT_PATH",
    "DEFAULT_PROJECTION_DROP_KEYS",
    "DESIGN_PATH",
    "EXPERIMENT_ROOT",
    "FULL_SCALE_RESULTS_PATH",
    "MEANINGFUL_VACCINE_FIELDS",
    "MYCHEM_BASE",
    "MYCHEM_CACHE_PATH",
    "MYCHEM_FIELDS",
    "METADATA_RESULT_PATH",
    "MyChemResolver",
    "PROBE_RESULT_PATHS",
    "PROBE_SUMMARY_PATH",
    "REGRESSION_CONTROL_PATH",
    "REQUIRED_FINISHED_HEADERS",
    "RESULTS_DIR",
    "SAMPLES_PATH",
    "SCHEMA_RESULT_PATH",
    "SCRIPT_DIR",
    "SOURCE_CACHE_FILES",
    "UPSTREAM_CACHE_DIR",
    "USER_AGENT",
    "VALIDATION_PATH",
    "VALIDATION_TERMS",
    "VACCINE_IDENTITY_RESULT_PATH",
    "WHO_API_URL",
    "WHO_DEVICES_URL",
    "WHO_FINISHED_URL",
    "WHO_VACCINES_URL",
    "WORK_DIR",
    "WhoDeviceCatalog",
    "WhoFinishedPharmaEntry",
    "WhoFinishedPharmaTable",
    "WhoFullScaleArtifacts",
    "WhoTable",
    "build_api_linkage_probe_payload",
    "build_contract_numbers",
    "build_full_scale_results",
    "build_loader_design_payload",
    "build_metadata_probe_payload",
    "build_probe_projection",
    "build_regression_control_payload",
    "build_sample_records_payload",
    "build_schema_probe_payload",
    "build_validation_payload",
    "build_vaccine_identity_probe_payload",
    "cache_path_for_url",
    "classify_hits",
    "clean_text",
    "component_query_options",
    "contains_boundary_phrase",
    "count_presence",
    "current_cache_state",
    "derive_inn",
    "device_schema_summary",
    "diff_payloads",
    "diff_vaccine_identity_projection",
    "ensure_work_dirs",
    "extract_hit_names",
    "fetch_bytes",
    "fetch_json_url",
    "fetch_text",
    "header_key",
    "iso_now",
    "load_apis",
    "load_devices",
    "load_finished_pharma",
    "load_vaccines",
    "normalize_for_projection",
    "normalize_header",
    "normalize_match_key",
    "normalize_match_segment",
    "normalize_who_date",
    "parse_csv_rows",
    "primary_hit_name",
    "read_json",
    "round_seconds",
    "run_probe_suite",
    "sample_rows",
    "sanitize_mychem_query",
    "schema_overlap",
    "schema_summary",
    "sha256_bytes",
    "sha256_json",
    "source_snapshot",
    "split_normalized_segments",
    "split_vaccine_components",
    "strip_parentheticals",
    "summarize_hit",
    "ticket_validation_samples",
    "time_call",
    "to_plain_data",
    "write_api_linkage_probe_result",
    "write_json",
    "write_metadata_probe_result",
    "write_probe_summary",
    "write_regression_control_result",
    "write_schema_probe_result",
    "write_validation_result",
    "write_vaccine_identity_probe_result",
]
