"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT."""
# @generated-id: 683ae72d0efa

from __future__ import annotations
from .judgeclassificationoutputoption import (
    JudgeClassificationOutputOption,
    JudgeClassificationOutputOptionTypedDict,
)
from mistralai.client.types import BaseModel
from mistralai.client.utils import validate_const
import pydantic
from pydantic.functional_validators import AfterValidator
from typing import List, Literal
from typing_extensions import Annotated, TypedDict


class JudgeClassificationOutputTypedDict(TypedDict):
    options: List[JudgeClassificationOutputOptionTypedDict]
    type: Literal["CLASSIFICATION"]


class JudgeClassificationOutput(BaseModel):
    options: List[JudgeClassificationOutputOption]

    type: Annotated[
        Annotated[
            Literal["CLASSIFICATION"], AfterValidator(validate_const("CLASSIFICATION"))
        ],
        pydantic.Field(alias="type"),
    ] = "CLASSIFICATION"


try:
    JudgeClassificationOutput.model_rebuild()
except NameError:
    pass
