o
    h                     @   s   d dl Z d dlmZmZmZ d dlmZmZmZm	Z	m
Z
 er%ddlmZ neZedZeddd	Zed
ZG dd dee ZG dd dee Ze	ee ee eeeef  df ZG dd deeef ZG dd dee eeef ZdS )    N)IterableMappingMutableMapping)TYPE_CHECKINGProtocolTypeVarUnionoverload   )istr_V_V_coT)	covariant_Tc                   @   0   e Zd Zdee fddZdedefddZdS )SupportsKeysreturnc                 C      d S N selfr   r   b/var/www/html/construction_image-detection-poc/venv/lib/python3.10/site-packages/multidict/_abc.pykeys       zSupportsKeys.keyskeyc                C   r   r   r   r   r   r   r   r   __getitem__   r   zSupportsKeys.__getitem__N)__name__
__module____qualname__r   strr   r   r   r   r   r   r   r          r   c                   @   r   )SupportsIKeysr   c                 C   r   r   r   r   r   r   r   r      r   zSupportsIKeys.keysr   c                C   r   r   r   r   r   r   r   r      r   zSupportsIKeys.__getitem__N)r   r   r    r   r   r   r   r   r   r   r   r   r#      r"   r#   c                
   @   s   e Zd Zededee fddZededede	ee ef fddZe
jddedede	ee ef fddZededefd	d
Zededede	eef fdd
Ze
jddedede	eef fdd
ZdS )MultiMappingr   r   c                 C   r   r   r   r   r   r   r   getall      zMultiMapping.getalldefaultc                 C   r   r   r   r   r   r'   r   r   r   r%      r&   .c                 C      dS )zReturn all values for key.Nr   r(   r   r   r   r%   !   r   c                 C   r   r   r   r   r   r   r   getone%   r&   zMultiMapping.getonec                 C   r   r   r   r(   r   r   r   r*   '   r&   c                 C   r)   )zReturn first value for key.Nr   r(   r   r   r   r*   )   r   N.)r   r   r    r	   r!   listr   r%   r   r   abcabstractmethodr*   r   r   r   r   r$      s    $& &r$   c                
   @   s  e Zd ZejdededdfddZejddee deddfd	d
Z	e
dedefddZe
dededeeef fddZejddededeeef fddZe
dedee fddZe
dededeee ef fddZejddededeee ef fddZdS )MutableMultiMappingr   valuer   Nc                 C   r)   )zAdd value to list.Nr   )r   r   r0   r   r   r   add/   r   zMutableMultiMapping.addargkwargsc                K   r)   )z2Add everything from arg and kwargs to the mapping.Nr   )r   r2   r3   r   r   r   extend3   r   zMutableMultiMapping.extendc                 C   r   r   r   r   r   r   r   popone7   r&   zMutableMultiMapping.poponer'   c                 C   r   r   r   r(   r   r   r   r5   9   r&   .c                 C   r)   )z8Remove specified key and return the corresponding value.Nr   r(   r   r   r   r5   ;   r   c                 C   r   r   r   r   r   r   r   popall?   r&   zMutableMultiMapping.popallc                 C   r   r   r   r(   r   r   r   r6   A   r&   c                 C   r)   )zJRemove all occurrences of key and return the list of corresponding values.Nr   r(   r   r   r   r6   C   r   r   r+   )r   r   r    r-   r.   r!   r   r1   MDArgr4   r	   r5   r   r   r,   r6   r   r   r   r   r/   .   s"     "$*r/   )r-   collections.abcr   r   r   typingr   r   r   r   r	   _multidict_pyr   r!   r   r   r   r   r#   tupler7   r$   r/   r   r   r   r   <module>   s    $"