
    RMih                        d dl mZmZ d dl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 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 G d# d$e      Z G d% d&e      Z G d' d(e      Zy))*    )	BaseModelEmailStr)datetimec                   "    e Zd ZU eed<   eed<   y)	UserLoginemailpasswordN__name__
__module____qualname__r   __annotations__str     )/var/www/notifications/app/api/schemas.pyr   r      s    OMr   r   c                   6    e Zd ZU eed<   eed<   eed<   eed<   y)UserRegisterr   r	   tenant_nameindustryNr
   r   r   r   r   r      s    OMMr   r   c                   &    e Zd ZU eed<   dZeed<   y)Tokenaccess_tokenbearer
token_typeN)r   r   r   r   r   r   r   r   r   r   r      s    Jr   r   c                   0    e Zd ZU eed<   dZeed<   eed<   y)TokenWithUserr   r   r   userN)r   r   r   r   r   r   dictr   r   r   r   r      s    J
Jr   r   c                       e Zd ZU eed<   y)TenantCreatenameN)r   r   r   r   r   r   r   r   r!   r!      s    
Ir   r!   c                   J    e Zd ZU eed<   eed<   eed<   eed<    G d d      Zy)	TenantOutidr"   status
created_atc                       e Zd ZdZy)TenantOut.ConfigTNr   r   r   from_attributesr   r   r   Configr)   (       r   r,   Nr   r   r   intr   r   r   r,   r   r   r   r$   r$   "   s!    G
IK r   r$   c                       e Zd ZU dZedz  ed<   dZedz  ed<   dZedz  ed<   dZ	edz  ed<   g Z
ee   ed<   i Zeed<   y)CustomerCreateNphoner   
tg_chat_id
vk_user_idtagsmeta)r   r   r   r2   r   r   r   r   r3   r4   r5   listr6   r   r   r   r   r1   r1   -   sQ    E3:!E8d?!!Jd
!!Jd
!D$s)D$Or   r1   c                       e Zd ZU eed<   eed<   edz  ed<   edz  ed<   edz  ed<   edz  ed<   ee   ed<   eed	<   eed
<    G d d      Z	y)CustomerOutr%   	tenant_idNr2   r   r3   r4   r5   r6   r'   c                       e Zd ZdZy)CustomerOut.ConfigTNr*   r   r   r   r,   r<   A   r-   r   r,   )
r   r   r   r/   r   r   r7   r   r   r,   r   r   r   r9   r9   6   sR    GN::d
d

s)O
J r   r9   c                   `    e Zd ZU eed<   dZedz  ed<   dgddZeed<   eed<   g Ze	e   ed	<   y)
TemplateCreater"   Nslugr   F)primaryfailoverchannel_strategycontent	variables)
r   r   r   r   r   r?   rB   r   rD   r7   r   r   r   r>   r>   F   s<    
ID#**1FdF LItCyr   r>   c                       e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   ee   ed<   eed<   eed	<    G d
 d      Z	y)TemplateOutr%   r:   r"   r?   rB   rC   rD   r'   
updated_atc                       e Zd ZdZy)TemplateOut.ConfigTNr*   r   r   r   r,   rI   ]   r-   r   r,   N)
r   r   r   r/   r   r   r   r7   r   r,   r   r   r   rF   rF   P   sC    GN
I
I LCy r   rF   c                   v    e Zd ZU eed<   dZedz  ed<   dZedz  ed<   i Zeed<   dZ	e
dz  ed<   dZedz  ed<   y)NotificationSendtemplate_idNcustomer_id
segment_idpayloadscheduled_atidempotency_key)r   r   r   r/   r   rM   rN   rO   r   rP   r   rQ   r   r   r   r   rK   rK   b   sJ    "Kt"!Jd
!GT$(L(T/("&OS4Z&r   rK   c                   T    e Zd ZU eed<   eed<   eed<   eed<   eed<    G d d      Zy)	NotificationOutr%   r:   rL   r&   r'   c                       e Zd ZdZy)NotificationOut.ConfigTNr*   r   r   r   r,   rU   r   r-   r   r,   Nr.   r   r   r   rS   rS   k   s'    GNK r   rS   c                   T    e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   eed<   y)	AnalyticsOverview
total_senttotal_deliveredtotal_openedtotal_clickeddelivery_rate	open_rate
click_rateN)r   r   r   r/   r   floatr   r   r   rW   rW   w   s+    Or   rW   c                   ^    e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   eed<   eed<   y	)
ChannelStatschannelsent	deliveredopenedclickedr\   r]   r^   N)r   r   r   r   r   r/   r_   r   r   r   ra   ra      s-    L
INKLr   ra   c                   h    e Zd ZU eed<   eed<   eed<   eed<   eed<   eed<   eed<   eed<   eed	<   y
)TemplateStatsr%   r"   rc   rd   re   rf   r\   r]   r^   N)r   r   r   r/   r   r   r_   r   r   r   rh   rh      s2    G
I
INKLr   rh   c                   @    e Zd ZU eed<   eed<   eed<   eed<   eed<   y)TimelineStatsperiodrc   rd   re   rf   N)r   r   r   r   r   r/   r   r   r   rj   rj      s    K
INKLr   rj   c                   H    e Zd ZU eed<   ee   ed<   ee   ed<   ee   ed<   y)AnalyticsResponseoverview
by_channelby_templatetimelineN)	r   r   r   rW   r   r7   ra   rh   rj   r   r   r   rm   rm      s)    \""m$$=!!r   rm   c                       e Zd ZU eed<   y)TrackingPixeldelivery_idN)r   r   r   r/   r   r   r   r   rs   rs      s    r   rs   c                   ,    e Zd ZU eed<   dZedz  ed<   y)TrackingClickrt   Nurl)r   r   r   r/   r   rw   r   r   r   r   rv   rv      s    Ctr   rv   N)pydanticr   r   r   r   r   r   r   r!   r$   r1   r9   r>   rF   rK   rS   rW   ra   rh   rj   rm   rs   rv   r   r   r   <module>ry      s    ( 	 
9 I 
I 9 	 Y )  Y ) $'y 'i 	 9 	I 	I "	 "I I r   