"""
agent_input 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_choice import AgentItemChoice
from .agent_item_object import AgentItemObject
from .agent_item_text import AgentItemText
from .agent_item_tool_call import AgentItemToolCall


# This object represents an agent input
class AgentInput(BaseModel):
    previous_id: Optional[str] = Field(default=None, alias="previousId")
    item: Annotated[Union["AgentItemBinary", "AgentItemChoice", "AgentItemObject", "AgentItemText", "AgentItemToolCall"], Field(discriminator="type")] = Field(alias="item")
    pass


