from enum import Enum


class RetrievalMode(str, Enum):
    DENSE = "dense"
    SPARSE = "sparse"
    HYBRID = "hybrid"
    SEMANTIC = "semantic"


class LoaderType(str, Enum):
    Default = "Default"
    DataIngestionTool = "DataIngestionTool"
    CustomLoader = "CustomLoader"


class SplitterType(str, Enum):
    RecursiveCharacter = "RecursiveCharacter"
    Character = "Character"
    Hybrid = "Hybrid"
    Sematic = "Semantic"
    CustomSplitter = "CustomSplitter"
    NotSplit = "NotSplit"


class KnowledgeUpdateMode(str, Enum):
    APPEND_MODIFIED_DOCS = "append_modified_docs"
    ADD_NEW_COLLECTION = "add_new_collection"

