o
    0i                     @   s   d dl mZmZ d dlmZmZmZmZmZ d dl	m	Z	 d dl
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 )    )	BaseModelField)OptionalDictAnyLiteralList)datetime)ObjectIdc                   @   s&   e Zd ZU eed< eed< eed< dS )GeofenceCondition	parameteroperatorvalueN)__name__
__module____qualname__str__annotations__r    r   r   @/var/www/html/moveengine/app/v1/models/platform/geofencerules.pyr      s   
 r   c                   @   sn   e Zd ZU eed< dZee ed< eed< ee ed< eed< dZ	ee ed< dZ
ee ed< ed	 ed
< dS )GeofenceRuleBase
account_idNuser_id	rule_name
conditionsactionaction_messagealert_messageenterexitdwell	forbiddenallowedtrigger_events)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   
 r   c                   @   s   e Zd ZdS )GeofenceRuleCreateN)r   r   r   r   r   r   r   r%      s    r%   c                   @   sz   e Zd ZU dZee ed< dZeeee	f  ed< dZ
ee ed< dZee ed< dZee ed< dZeed  ed< dS )	GeofenceRuleUpdateNr   r   r   r   r   r   r$   )r   r   r   r   r   r   r   r   r   r   r   r   r   r$   r   r   r   r   r   r&      s   
 r&   c                   @   s@   e Zd ZU dZee ed< eej	dZ
eed< G dd dZdS )GeofenceRuleNid)default_factorycreated_datec                   @   s   e Zd ZeeiZdS )zGeofenceRule.ConfigN)r   r   r   r
   r   json_encodersr   r   r   r   Config$   s    r,   )r   r   r   r(   r   r   r   r   r	   utcnowr*   r,   r   r   r   r   r'       s   
 r'   c                   @   s"   e Zd ZU eed< ee ed< dS )GeofenceRulesListtotal_countusersN)r   r   r   intr   r   r'   r   r   r   r   r.   '   s   
 r.   N)pydanticr   r   typingr   r   r   r   r   r	   bsonr
   r   r   r%   r&   r'   r.   r   r   r   r   <module>   s    
