o
    i                     @   sR  d dl mZ d dlmZmZmZ d dlmZ d dlmZm	Z	m
Z
 G dd deeZG dd deeZG d	d
 d
eZG dd de
eeee f  ZG dd deeZG dd deeZG dd deZG dd deZG dd deeZG dd deZG dd deeZG dd deZG dd deeZG dd  d eZG d!d" d"eZd#S )$    )Enum)OptionalListUnion)datetime)	BaseModelField	RootModelc                   @   s,   e Zd ZdZdZdZdZdZdZdZ	dZ
d	S )
RunwayAspectRatioEnumz1280:720z720:1280z1104:832z832:1104z960:960z1584:672z1280:768z768:1280N)__name__
__module____qualname__field_1280_720field_720_1280field_1104_832field_832_1104field_960_960field_1584_672field_1280_768field_768_1280 r   r   9/mnt/c/Users/fbmor/ComfyUI/comfy_api_nodes/apis/runway.pyr
      s    r
   c                   @      e Zd ZdZdZdS )PositionfirstlastN)r   r   r   r   r   r   r   r   r   r          r   c                   @   s6   e Zd ZU edddZeed< edddZeed< dS )RunwayPromptImageDetailedObject.zbThe position of the image in the output video. 'last' is currently supported for gen3a_turbo only.descriptionpositionz4A HTTPS URL or data URI containing an encoded image.uriN)	r   r   r   r   r    r   __annotations__r!   strr   r   r   r   r      s   
 r   c                   @   s.   e Zd ZU edddZeeee f e	d< dS )RunwayPromptImageObject.zjImage(s) to use for the video generation. Can be a single URI or an array of image objects with positions.r   rootN)
r   r   r   r   r%   r   r#   r   r   r"   r   r   r   r   r$   "   s
   
 r$   c                   @   r   )RunwayModelEnum
gen4_turbogen3a_turboN)r   r   r   r'   r(   r   r   r   r   r&   +   r   r&   c                   @   r   )RunwayDurationEnum   
   N)r   r   r   	integer_5
integer_10r   r   r   r   r)   0   r   r)   c                   @   s`   e Zd ZU eed< eed< eed< eddddZe	e
 ed< eed	< ed
ddddZeed< dS )RunwayImageToVideoRequestdurationmodelpromptImageNzText prompt for the generation  r   
max_length
promptTextratio.zRandom seed for generationr   l    r   geleseed)r   r   r   r)   r"   r&   r$   r   r5   r   r#   r
   r:   intr   r   r   r   r.   5   s   
 r.   c                   @   &   e Zd ZU edddZee ed< dS )RunwayImageToVideoResponseNTask IDr   idr   r   r   r   r?   r   r#   r"   r   r   r   r   r=   B      
 r=   c                   @   s$   e Zd ZdZdZdZdZdZdZdS )RunwayTaskStatusEnum	SUCCEEDEDRUNNINGFAILEDPENDING	CANCELLED	THROTTLEDN)	r   r   r   rC   rD   rE   rF   rG   rH   r   r   r   r   rB   F   s    rB   c                   @   sv   e Zd ZU edddZeed< edddZeed< edddZ	e
ee  ed	< edd
dddZe
e ed< eed< dS )RunwayTaskStatusResponse.zTask creation timestampr   	createdAtr>   r?   NzArray of output video URLsoutputzgFloat value between 0 and 1 representing the progress of the task. Only available if status is RUNNING.g        g      ?r7   progressstatus)r   r   r   r   rJ   r   r"   r?   r#   rK   r   r   rL   floatrB   r   r   r   r   rI   O   s   
 rI   c                   @   s   e Zd ZdZdS )Model4
gen4_imageN)r   r   r   rP   r   r   r   r   rO   \   s    rO   c                   @   r<   )ReferenceImageNz3A HTTPS URL or data URI containing an encoded imager   r!   )r   r   r   r   r!   r   r#   r"   r   r   r   r   rQ   `   s   
 rQ   c                   @   s4   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdS ) RunwayTextToImageAspectRatioEnumz	1920:1080z	1080:1920z	1024:1024z1360:768z	1080:1080z1168:880z	1440:1080z	1080:1440z1808:768z2112:912N)r   r   r   field_1920_1080field_1080_1920field_1024_1024field_1360_768field_1080_1080field_1168_880field_1440_1080field_1080_1440field_1808_768field_2112_912r   r   r   r   rR   f   s    rR   c                   @   s\   e Zd ZU edddZeed< eddddZeed< e	ed	< ed
ddZ
eee  ed< d
S )RunwayTextToImageRequest.zModel to use for generationr   r0   z$Text prompt for the image generationr2   r3   r5   r6   Nz1Array of reference images to guide the generationreferenceImages)r   r   r   r   r0   rO   r"   r5   r#   rR   r^   r   r   rQ   r   r   r   r   r]   s   s   
 r]   c                   @   r<   )RunwayTextToImageResponseNr>   r   r?   r@   r   r   r   r   r_   ~   rA   r_   N)enumr   typingr   r   r   r   pydanticr   r   r	   r#   r
   r   r   r$   r&   r;   r)   r.   r=   rB   rI   rO   rQ   rR   r]   r_   r   r   r   r   <module>   s*    

		