U
    “öhâ  ã                   @  s    d dl mZ d dlZd dlZd dlZejejeeef ejeeejee	f f ejeedef f Z
G dd„ dƒZG dd„ dƒZG dd„ dƒZG d	d
„ d
ƒZdS )é    )ÚannotationsNc                   @  sh   e Zd Zdddddœdd„Zddddd	œd
d„Zddœdd„Zddddd dœdd„Zdddœdd„ZdS )ÚNetworkStreamNÚintúfloat | NoneÚbytes©Ú	max_bytesÚtimeoutÚreturnc                 C  s
   t ƒ ‚d S ©N©ÚNotImplementedError©Úselfr   r	   © r   ú;/tmp/pip-unpacked-wheel-a8helrha/httpcore/_backends/base.pyÚread   s    zNetworkStream.readÚNone©Úbufferr	   r
   c                 C  s
   t ƒ ‚d S r   r   ©r   r   r	   r   r   r   Úwrite   s    zNetworkStream.write©r
   c                 C  s
   t ƒ ‚d S r   r   ©r   r   r   r   Úclose   s    zNetworkStream.closeússl.SSLContextú
str | None©Ússl_contextÚserver_hostnamer	   r
   c                 C  s
   t ƒ ‚d S r   r   ©r   r   r   r	   r   r   r   Ú	start_tls   s    zNetworkStream.start_tlsÚstrú
typing.Any©Úinfor
   c                 C  s   d S r   r   ©r   r%   r   r   r   Úget_extra_info    s    zNetworkStream.get_extra_info)N)N)NN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r!   r'   r   r   r   r   r      s     ür   c                   @  sL   e Zd Zddddddddœd	d
„Zddddddœdd„Zdddœdd„ZdS )ÚNetworkBackendNr"   r   r   r   ú%typing.Iterable[SOCKET_OPTION] | Noner   ©ÚhostÚportr	   Úlocal_addressÚsocket_optionsr
   c                 C  s
   t ƒ ‚d S r   r   ©r   r.   r/   r	   r0   r1   r   r   r   Úconnect_tcp%   s    zNetworkBackend.connect_tcp©Úpathr	   r1   r
   c                 C  s
   t ƒ ‚d S r   r   ©r   r5   r	   r1   r   r   r   Úconnect_unix_socket/   s    z"NetworkBackend.connect_unix_socketÚfloatr   ©Úsecondsr
   c                 C  s   t  |¡ d S r   )ÚtimeÚsleep©r   r:   r   r   r   r<   7   s    zNetworkBackend.sleep)NNN)NN©r(   r)   r*   r3   r7   r<   r   r   r   r   r+   $   s      ú  ür+   c                   @  sh   e Zd Zdddddœdd„Zddddd	œd
d„Zddœdd„Zddddd dœdd„Zdddœdd„ZdS )ÚAsyncNetworkStreamNr   r   r   r   c                 Ã  s
   t ƒ ‚d S r   r   r   r   r   r   r   <   s    zAsyncNetworkStream.readr   r   c                 Ã  s
   t ƒ ‚d S r   r   r   r   r   r   r   ?   s    zAsyncNetworkStream.writer   c                 Ã  s
   t ƒ ‚d S r   r   r   r   r   r   ÚacloseB   s    zAsyncNetworkStream.acloser   r   r   c                 Ã  s
   t ƒ ‚d S r   r   r    r   r   r   r!   E   s    zAsyncNetworkStream.start_tlsr"   r#   r$   c                 C  s   d S r   r   r&   r   r   r   r'   M   s    z!AsyncNetworkStream.get_extra_info)N)N)NN)r(   r)   r*   r   r   r@   r!   r'   r   r   r   r   r?   ;   s     ür?   c                   @  sL   e Zd Zddddddddœd	d
„Zddddddœdd„Zdddœdd„ZdS )ÚAsyncNetworkBackendNr"   r   r   r   r,   r?   r-   c                 Ã  s
   t ƒ ‚d S r   r   r2   r   r   r   r3   R   s    zAsyncNetworkBackend.connect_tcpr4   c                 Ã  s
   t ƒ ‚d S r   r   r6   r   r   r   r7   \   s    z'AsyncNetworkBackend.connect_unix_socketr8   r   r9   c                 Ã  s
   t ƒ ‚d S r   r   r=   r   r   r   r<   d   s    zAsyncNetworkBackend.sleep)NNN)NNr>   r   r   r   r   rA   Q   s      ú  ürA   )Ú
__future__r   Ússlr;   ÚtypingÚUnionÚTupler   r   Ú	bytearrayZSOCKET_OPTIONr   r+   r?   rA   r   r   r   r   Ú<module>   s   þÿ