"""AiFastDb - High-performance AI-friendly database engine.

Python bindings for the Rust-based AiFastDb engine, providing:
- Core key-value database with vector search
- SocialGraphV2 for social network analysis
- Federation for heterogeneous storage management
- Embedding and semantic capabilities

Usage:
    >>> import aifastdb
    >>> print(aifastdb.__version__)
"""

from aifastdb._native import __version__

# ---- Exception types ----
from aifastdb._native import (
    AiFastDbError,
    StoreNotFoundError,
    RecordNotFoundError,
    QueryError,
    WriteError,
    TransactionError,
    StorageError,
    CircuitBreakerError,
    RateLimitError,
)

# ---- Enum types ----
from aifastdb._native import (
    ContentType,
    StoreType,
)

# ---- Database classes (phase-24) ----
from aifastdb._native import (
    AiFastDb,
    Collection,
)

# ---- SocialGraphV2 (phase-25) ----
from aifastdb._native import SocialGraphV2

# ---- Federation & DocumentStore (phase-27) ----
from aifastdb._native import (
    DocumentStore,
    Federation,
    FederatedTransaction,
)

# ---- Perception / Embedding / Reasoning (phase-28) ----
from aifastdb._native import (
    EmbeddingEngine,
    ReasoningEngine,
    PerceptionPipeline,
)

# ---- High-concurrency storage (phase-30) ----
from aifastdb._native import (
    ConcurrentDocumentStore,
    VectorIndex,
)

# ---- Pandas integration (phase-29, lazy import) ----
# Usage: from aifastdb.pandas_ext import to_dataframe

__all__ = [
    # Version
    "__version__",
    # Exceptions
    "AiFastDbError",
    "StoreNotFoundError",
    "RecordNotFoundError",
    "QueryError",
    "WriteError",
    "TransactionError",
    "StorageError",
    "CircuitBreakerError",
    "RateLimitError",
    # Enums
    "ContentType",
    "StoreType",
    # Database
    "AiFastDb",
    "Collection",
    # SocialGraphV2
    "SocialGraphV2",
    # Federation & DocumentStore
    "DocumentStore",
    "Federation",
    "FederatedTransaction",
    # Perception / Embedding / Reasoning
    "EmbeddingEngine",
    "ReasoningEngine",
    "PerceptionPipeline",
    # High-concurrency storage
    "ConcurrentDocumentStore",
    "VectorIndex",
]
