o
    ;7hW                     @   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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    
