from __future__ import annotations

"""Nexure Python SDK — AI Decision Governance.

Usage:
    from nexure import Nexure

    nx = Nexure(api_key="nx_live_...")
    record = nx.decisions.record(
        decision_type="credit_underwriting",
        evidence={"fico_score": 711},
        action="approve",
        decided_by="reviewer_schen",
    )
"""

from nexure._version import __version__
from nexure.async_client import AsyncNexure
from nexure.client import Nexure
from nexure.exceptions import (
    AuthenticationError,
    NexureError,
    NotFoundError,
    RateLimitError,
    ServerError,
    ValidationError,
)
from nexure.models import (
    AnalyticsComparisons,
    AnalyticsDrift,
    AnalyticsOverrides,
    AnalyticsOverview,
    ApiKeyCreated,
    ApiKeyInfo,
    ApiKeyList,
    DecisionBrief,
    DecisionList,
    DecisionPackage,
    DecisionRecord,
    ForensicReport,
    LedgerVerification,
    TemplateDetail,
    TemplateInfo,
    TemplateList,
    VisibilityScore,
)

__all__ = [
    "__version__",
    "AsyncNexure",
    "Nexure",
    "NexureError",
    "AuthenticationError",
    "ValidationError",
    "RateLimitError",
    "NotFoundError",
    "ServerError",
    "DecisionRecord",
    "DecisionList",
    "DecisionPackage",
    "DecisionBrief",
    "ForensicReport",
    "LedgerVerification",
    "TemplateInfo",
    "TemplateDetail",
    "TemplateList",
    "AnalyticsOverview",
    "AnalyticsOverrides",
    "AnalyticsDrift",
    "AnalyticsComparisons",
    "VisibilityScore",
    "ApiKeyCreated",
    "ApiKeyInfo",
    "ApiKeyList",
]
