o
    0_Wc	                     @   sn   d dl Z d dlZd dlZd dlZd dlmZ ejr-d dlmZmZm	Z	m
Z
mZ d dlmZ G dd deZdS )    N)Enum)DictListOptionalUnionAny)datetimec                   @   sD   e Zd ZdZdZdZdZdd Zdd Zd	d
 Z	dd Z
dd ZdS )DialogStateuV  
    Enumeration indicating the status of the multi-turn dialog. This property is included if the skill meets the requirements to use the Dialog directives. Note that COMPLETED is only possible when you use the Dialog.Delegate directive. If you use intent confirmation, dialogState is considered COMPLETED if the user denies the entire intent (for instance, by answering “no” when asked the confirmation prompt). Be sure to also check the confirmationStatus property on the Intent object before fulfilling the user’s request.



    Allowed enum values: [STARTED, IN_PROGRESS, COMPLETED]
    STARTEDIN_PROGRESS	COMPLETEDc                 C   s   | j | ji}|S )z&Returns the model properties as a dict)namevalue)selfresult r   <D:\Flask\env\Lib\site-packages\ask_sdk_model/dialog_state.pyto_dict(   s   zDialogState.to_dictc                 C   s   t | jS )z.Returns the string representation of the model)pprintpformatr   r   r   r   r   to_str.   s   zDialogState.to_strc                 C   s   |   S )zFor `print` and `pprint`)r   r   r   r   r   __repr__3   s   zDialogState.__repr__c                 C   s   t |tsdS | j|jkS )z&Returns true if both objects are equalF)
isinstancer	   __dict__r   otherr   r   r   __eq__8   s   
zDialogState.__eq__c                 C   s
   | |k S )z*Returns true if both objects are not equalr   r   r   r   r   __ne__@   s   
zDialogState.__ne__N)__name__
__module____qualname____doc__r
   r   r   r   r   r   r   r   r   r   r   r   r	      s    r	   )r   resixtypingenumr   TYPE_CHECKINGr   r   r   r   r   r   r	   r   r   r   r   <module>   s   