U
    ,nd2                     @   s   d dl Z d dlmZ d dlmZ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dS )    N)datetime)ListOptional)	BaseModelFieldc                   @   s^   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d< edd	dZ
eed
< dS )	VideoBase.zTitle of the videodescriptiontitlez Duration of the video in secondsdurationz&Source of the video (file_path or URL)sourcezResults of object detectionresultsN)__name__
__module____qualname__r   r
   str__annotations__r   intr   r   dict r   r   +/var/www/html/BCA_API/app/schemas/videos.pyr      s   
r   c                   @   s   e Zd ZdS )VideoCreateNr   r   r   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )VideoUpdateNr   r   r   r   r   r      s   r   c                   @   sz   e Zd ZU eee ddZeed< edddZ	e
ed< eejddZeed	< ed
ddZee ed< G dd dZd
S )VideoBaseSchemazUUID of the video)default_factoryr	   id.zPublish status of the videor   	publishedzCreation timestamp	createdAtNzUpdate timestamp)defaultr	   	updatedAtc                   @   s   e Zd ZdZdS )zVideoBaseSchema.ConfigTN)r   r   r   orm_moder   r   r   r   Config   s   r"   )r   r   r   r   r   uuiduuid4r   r   r   boolr   nowr   r    r   r"   r   r   r   r   r      s
   
r   c                   @   s   e Zd ZU ee ed< dS )	VideoListZvideosN)r   r   r   r   r   r   r   r   r   r   r'       s   
r'   c                   @   s   e Zd ZU eed< dS )VideoListResponsedataN)r   r   r   r'   r   r   r   r   r   r(   $   s   
r(   )r#   r   typingr   r   pydanticr   r   r   r   r   r   r'   r(   r   r   r   r   <module>   s   
