"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""

from __future__ import annotations
from .availablemodels import AvailableModels
from enum import Enum
from mixpeek.types import BaseModel
from typing_extensions import TypedDict


class EmbeddingConfigType(str, Enum):
    r"""Type of the input"""

    TEXT = "text"
    URL = "url"
    BASE64 = "base64"


class EmbeddingConfigTypedDict(TypedDict):
    type: EmbeddingConfigType
    r"""Type of the input"""
    value: str
    r"""Value of the input"""
    embedding_model: AvailableModels


class EmbeddingConfig(BaseModel):
    type: EmbeddingConfigType
    r"""Type of the input"""

    value: str
    r"""Value of the input"""

    embedding_model: AvailableModels
