"""session-store — Unified Session & Message Access."""

from session_store.detector import AutoDetector
from session_store.errors import (
    MessageNotFoundError,
    NoActiveSessionError,
    SessionLoadError,
    SessionNotFoundError,
    SessionStoreError,
)
from session_store.models import SessionExport, SessionInfo, SessionMessage
from session_store.protocol import SessionSource
from session_store.registry import SourceRegistry, default_registry
from session_store.selector import MessageSelector
from session_store.store import SessionStore

__all__ = [
    # Models
    "SessionMessage",
    "SessionExport",
    "SessionInfo",
    # Protocol (for adapter implementers)
    "SessionSource",
    # Registry (for advanced setup)
    "SourceRegistry",
    "default_registry",
    # Client facade (main API)
    "SessionStore",
    # Sub-components (for advanced use)
    "AutoDetector",
    "MessageSelector",
    # Errors
    "SessionStoreError",
    "SessionNotFoundError",
    "SessionLoadError",
    "MessageNotFoundError",
    "NoActiveSessionError",
]
