
    .Ui                    N   d dl mZ d dlmZmZmZ d dlmZmZm	Z	  G d de      Z
 G d de      Z G d d	e      Z G d
 de      Z G d de      Z G d de      Z G d de      Z G d de      Zeeeeef    e	d      f   Z	  G d de      Zeeef   Z	  G d de      Zy)    )annotations)	AnnotatedLiteralUnion)	BaseModel
ConfigDictFieldc                  D    e Zd ZU dZdZded<   	 dZded<   	  ed	      Zy)
	InputTextz)Text input content for realtime messages.
input_textzLiteral['input_text']typeN
str | Nonetextallowextra	__name__
__module____qualname____doc__r   __annotations__r   r   model_config     q/home/jay/workspace/tools/ai-image-gen/jaaz-app/server/venv/lib/python3.12/site-packages/agents/realtime/items.pyr   r      s,    3".D
.-D* G,Lr   r   c                  T    e Zd ZU dZdZded<   	 dZded<   	 dZded<   	  ed	
      Z	y)
InputAudioz*Audio input content for realtime messages.input_audiozLiteral['input_audio']r   Nr   audio
transcriptr   r   
r   r   r   r   r   r   r    r!   r   r   r   r   r   r   r      s9    4#0D
 0.E:(!J
!4 G,Lr   r   c                  T    e Zd ZU dZdZded<   	 dZded<   	 dZded<   	  ed	
      Z	y)
InputImagez*Image input content for realtime messages.input_imagezLiteral['input_image']r   Nr   	image_urldetailr   r   )
r   r   r   r   r   r   r&   r'   r   r   r   r   r   r$   r$   %   s9    4#0D
 0. Iz 9FJ= G,Lr   r$   c                  D    e Zd ZU dZdZded<   	 dZded<   	  ed      Zy)	AssistantTextz6Text content from the assistant in realtime responses.r   zLiteral['text']r   Nr   r   r   r   r   r   r   r)   r)   5   s+    @"D/"/D*. G,Lr   r)   c                  T    e Zd ZU dZdZded<   	 dZded<   	 dZded<   	  ed	      Z	y)
AssistantAudioz7Audio content from the assistant in realtime responses.r    zLiteral['audio']r   Nr   r!   r   r   r"   r   r   r   r+   r+   B   s9    A$D
$0E:;!J
!/ G,Lr   r+   c                  l    e Zd ZU dZded<   	 dZded<   	 dZded	<   	 d
Zded<   	 ded<   	  ed      Z	y)SystemMessageItemz0A system message item in realtime conversations.stritem_idNr   previous_item_idmessageLiteral['message']r   systemzLiteral['system']rolezlist[InputText]contentr   r   
r   r   r   r   r   r0   r   r4   r   r   r   r   r   r-   r-   R   sL    :L2#'j'6(D
(0&D
&26 G,Lr   r-   c                  l    e Zd ZU dZded<   	 dZded<   	 dZded	<   	 d
Zded<   	 ded<   	  ed      Z	y)UserMessageItemz.A user message item in realtime conversations.r.   r/   Nr   r0   r1   r2   r   userzLiteral['user']r4   zQlist[Annotated[InputText | InputAudio | InputImage, Field(discriminator='type')]]r5   r   r   r6   r   r   r   r8   r8   h   sK    8L2#'j'6(D
(0"D/"0^^6 G,Lr   r8   c                  |    e Zd ZU dZded<   	 dZded<   	 dZded	<   	 d
Zded<   	 dZded<   	 ded<   	  e	d      Z
y)AssistantMessageItemz4An assistant message item in realtime conversations.r.   r/   Nr   r0   r1   r2   r   	assistantzLiteral['assistant']r4   z8Literal['in_progress', 'completed', 'incomplete'] | NonestatuszLlist[Annotated[AssistantText | AssistantAudio, Field(discriminator='type')]]r5   r   r   )r   r   r   r   r   r0   r   r4   r=   r   r   r   r   r   r;   r;   ~   sZ    >L2#'j'6(D
(0!,D
,5GKFDK1YYI G,Lr   r;   r4   )discriminatorc                      e Zd ZU dZded<   	 dZded<   	 ded<   	 dZd	ed
<   	 ded<   	 ded<   	 ded<   	 dZded<   	  ed      Z	y)RealtimeToolCallItemz+A tool call item in realtime conversations.r.   r/   Nr   r0   call_idfunction_callzLiteral['function_call']r   z#Literal['in_progress', 'completed']r=   	argumentsnameoutputr   r   )
r   r   r   r   r   r0   r   rE   r   r   r   r   r   r@   r@      sd    5L4#'j'6/%4D
"46//0N7
I,FJ4 G,Lr   r@   c                  (    e Zd ZU dZded<   	 ded<   y)RealtimeResponsez#A response from the realtime model.r.   idzlist[RealtimeMessageItem]rE   N)r   r   r   r   r   r   r   r   rG   rG      s    -G.%%0r   rG   N)
__future__r   typingr   r   r   pydanticr   r   r	   r   r   r$   r)   r+   r-   r8   r;   RealtimeMessageItemr@   RealtimeItemrG   r   r   r   <module>rN      s    " , , 1 1
-	 
-- - - - 
-I 
--Y - -	 -,-i -,-9 -2  	
_.B
BC	!  B-9 -> (*>>? 91y 1r   