o
    i                     @   s   d dl mZ d dlmZmZ G dd deZG dd deZG dd deZG d	d
 d
eZG dd deZ	G dd deZ
G dd deZG dd deZG dd deZG dd deZdS )    )Optional)	BaseModelFieldc                   @   sJ   e Zd ZU edZedB ed< edZedB ed< edZedB ed< dS )VeoRequestInstanceImageNbytesBase64EncodedgcsUrimimeType)	__name__
__module____qualname__r   r   str__annotations__r   r    r   r   6/mnt/c/Users/fbmor/ComfyUI/comfy_api_nodes/apis/veo.pyr         
 r   c                   @   sJ   e Zd ZU edZedB ed< edZedB ed< edddZe	ed< dS )VeoRequestInstanceNimage	lastFrame.zText description of the videodescriptionprompt)
r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r      r   r   c                   @   s   e Zd ZU eddgdZee ed< dZee	 ed< dZ
ee ed< edddZee ed	< dZee ed
< edddZedB ed< dZee	 ed< dZee	 ed< edddZee ed< edZedB ed< dS )VeoRequestParametersNz16:9)examplesaspectRatiodurationSecondsenhancePromptz=Generate audio for the video. Only supported by veo 3 models.r   generateAudionegativePromptzALLOW or BLOCKpersonGenerationsampleCountseedz.Optional Cloud Storage URI to upload the video
storageUri
resolution)r	   r
   r   r   r   r   r   r   r   intr   boolr   r   r   r   r    r!   r"   r   r   r   r   r      s    
 r   c                   @   s:   e Zd ZU edZee dB ed< edZe	dB ed< dS )VeoGenVidRequestN	instances
parameters)
r	   r
   r   r   r&   listr   r   r'   r   r   r   r   r   r%   $   s   
 r%   c                   @   &   e Zd ZU edddgdZeed< dS )VeoGenVidResponse.zOperation resource namez{projects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/a1b07c8e-7b5a-4aba-bb34-3e1ccb8afcc8r   r   nameN)r	   r
   r   r   r,   r   r   r   r   r   r   r*   )      
 r*   c                   @   r)   )VeoGenVidPollRequest.z+Full operation name (from predict response)zcprojects/PROJECT_ID/locations/us-central1/publishers/google/models/MODEL_ID/operations/OPERATION_IDr+   operationNameN)r	   r
   r   r   r/   r   r   r   r   r   r   r.   3   r-   r.   c                   @   sV   e Zd ZU edddZee ed< edddZee ed< edddZ	ee ed< dS )	VideoNzBase64-encoded video contentr   r   zCloud Storage URI of the videor   zVideo MIME typer   )
r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r0   =   s   
 r0   c                   @   s>   e Zd ZU edddZee ed< edddZee	 ed< dS )Error1Nz
Error coder   codezError messagemessage)
r	   r
   r   r   r2   r   r#   r   r3   r   r   r   r   r   r1   E   s   
 r1   c                   @   sv   e Zd ZU edddgdZee ed< edddZee	 ed< edd	dZ
eee  ed
< edZeee  ed< dS )	Response1Nz@typezFtype.googleapis.com/cloud.ai.large_models.vision.GenerateVideoResponse)aliasr   
field_typez2Count of media filtered by responsible AI policiesr   raiMediaFilteredCountz9Reasons why media was filtered by responsible AI policiesraiMediaFilteredReasonsvideos)r	   r
   r   r   r6   r   r   r   r7   r#   r8   r(   r9   r0   r   r   r   r   r4   J   s   
 r4   c                   @   s^   e Zd ZU dZee ed< edddZee	 ed< dZ
ee ed< edddZee ed< dS )	VeoGenVidPollResponseNdonez!Error details if operation failedr   errorr,   z.The actual prediction response if done is trueresponse)r	   r
   r   r;   r   r$   r   r   r<   r1   r,   r   r=   r4   r   r   r   r   r:   [   s   
 r:   N)typingr   pydanticr   r   r   r   r   r%   r*   r.   r0   r1   r4   r:   r   r   r   r   <module>   s    

