o
    iI                     @   s   U d Z ddlZddlmZ ddlmZmZmZmZm	Z	m
Z
 eg dZee ed< G dd deZG d	d
 d
eZG dd deZeeejddfZeeejddfZG dd deZG dd deZdS )z0Models for WebSocket protocol versions 13 and 8.    N)IntEnum)AnyCallableFinal
NamedTupleOptionalcast)r   r      r	   WS_DEFLATE_TRAILINGc                   @   s@   e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZdZdZdS )WSCloseCodei  i  i  i  i  i  i  i  i  i  i  i  i  N)__name__
__module____qualname__OK
GOING_AWAYPROTOCOL_ERRORUNSUPPORTED_DATAABNORMAL_CLOSUREINVALID_TEXTPOLICY_VIOLATIONMESSAGE_TOO_BIGMANDATORY_EXTENSIONINTERNAL_ERRORSERVICE_RESTARTTRY_AGAIN_LATERBAD_GATEWAY r   r   V/home/ubuntu/veenaModal/venv/lib/python3.10/site-packages/aiohttp/_websocket/models.pyr   
   s    r   c                   @   sP   e Zd ZdZdZdZdZdZdZdZ	dZ
d	ZeZeZeZeZeZe	Ze
ZeZd
S )	WSMsgTyper         	   
         i  i  N)r   r   r   CONTINUATIONTEXTBINARYPINGPONGCLOSECLOSINGCLOSEDERRORtextbinarypingpongcloseclosingclosederrorr   r   r   r   r      s$    r   c                   @   sN   e Zd ZU eed< eed< ee ed< ej	dde
egef defddZd	S )
	WSMessagetypedataextra)loadsr:   returnc                C   s
   || j S )zAReturn parsed JSON data.

        .. versionadded:: 0.22
        )r8   )selfr:   r   r   r   json8   s   
zWSMessage.jsonN)r   r   r   r   __annotations__r   r   strr=   r:   r   r   r   r   r   r6   2   s
   
 (r6   c                       s<   e Zd ZdZdededdf fddZdefdd	Z  ZS )
WebSocketErrorz WebSocket protocol parser error.codemessager;   Nc                    s   || _ t || d S )N)rA   super__init__)r<   rA   rB   	__class__r   r   rD   K   s   zWebSocketError.__init__c                 C   s   t t| jd S )Nr   )r   r?   args)r<   r   r   r   __str__O   s   zWebSocketError.__str__)	r   r   r   __doc__intr?   rD   rH   __classcell__r   r   rE   r   r@   H   s    r@   c                   @   s   e Zd ZdZdS )WSHandshakeErrorz#WebSocket protocol handshake error.N)r   r   r   rI   r   r   r   r   rL   S   s    rL   )rI   r=   enumr   typingr   r   r   r   r   r   bytesr
   r>   r   r   r6   tuple__new__r,   WS_CLOSED_MESSAGEr+   WS_CLOSING_MESSAGE	Exceptionr@   rL   r   r   r   r   <module>   s     