"""
Data Storage Layer

Modules for storing and retrieving document data:
- Vector Store: Qdrant vector database interface
- Embeddings: Embedding model wrapper (OpenAI, local alternatives)
- Citations: Citation tracking system for traceability
"""

from sage.data.storage.citations import ChunkCitation, CitationTracker
from sage.data.storage.embeddings import (
    EmbeddingConfig,
    EmbeddingModel,
    LocalEmbedding,
    OpenAIEmbedding,
    SparseEncoder,
    create_embedding_model,
)
from sage.data.storage.vector_store import (
    HybridRetriever,
    QdrantMode,
    QdrantVectorStore,
    SearchResult,
    VectorStore,  # Alias for backward compatibility
    VectorStoreConfig,
)

__all__ = [
    # Vector Store
    "QdrantVectorStore",
    "VectorStore",
    "VectorStoreConfig",
    "QdrantMode",
    "HybridRetriever",
    "SearchResult",
    # Embeddings
    "EmbeddingModel",
    "OpenAIEmbedding",
    "LocalEmbedding",
    "SparseEncoder",
    "EmbeddingConfig",
    "create_embedding_model",
    # Citations
    "CitationTracker",
    "ChunkCitation",
]
