"""
agent_item_choice automatically generated by SDKgen please do not edit this file manually
https://sdkgen.app
"""

from pydantic import BaseModel, Field, GetCoreSchemaHandler, Tag
from pydantic_core import CoreSchema, core_schema
from typing import Any, Dict, Generic, List, Optional, TypeVar, Annotated, Union, Literal
from .agent_item import AgentItem
from .agent_item_binary import AgentItemBinary
from .agent_item_object import AgentItemObject
from .agent_item_text import AgentItemText
from .agent_item_tool_call import AgentItemToolCall


# Choice agent message
class AgentItemChoice(AgentItem):
    type: Literal["choice"] = Field(alias="type")
    items: List[Annotated[Union["AgentItemBinary", "AgentItemChoice", "AgentItemObject", "AgentItemText", "AgentItemToolCall"], Field(discriminator="type")]] = Field(alias="items")
    pass


