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

from __future__ import annotations
from .anthropicimagemimetype import AnthropicImageMimeType
from openrouter.types import BaseModel
from openrouter.utils import validate_open_enum
from pydantic.functional_validators import PlainValidator
from typing import Literal
from typing_extensions import Annotated, TypedDict


AnthropicBase64ImageSourceType = Literal["base64",]


class AnthropicBase64ImageSourceTypedDict(TypedDict):
    data: str
    media_type: AnthropicImageMimeType
    type: AnthropicBase64ImageSourceType


class AnthropicBase64ImageSource(BaseModel):
    data: str

    media_type: Annotated[
        AnthropicImageMimeType, PlainValidator(validate_open_enum(False))
    ]

    type: AnthropicBase64ImageSourceType
