ó
    °"³jÃ  ã                  ó¢   • S SK Jr  S SKrS SKJr  S SKJr  SSKJr  / SQr	\ " S S	\5      5       r
\ " S
 S\5      5       rSS jrSS jrSS jrg)é    )ÚannotationsN)ÚProtocol)Úruntime_checkableé   )Úunwrap_partial)Úclose_credentialsÚasync_close_credentialsÚhas_async_closec                  ó   • \ rS rSrSS jrSrg)ÚSupportsCloseé   c                ó   • g ©N© ©Úselfs    Ú]/home/mande/repo/quber/.venv/lib/python3.13/site-packages/anthropic/lib/credentials/_close.pyÚcloseÚSupportsClose.close   s   € ˜só    r   N©ÚreturnÚobject)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   Ú__static_attributes__r   r   r   r   r      s   † ç"r   r   c                  ó   • \ rS rSrSS jrSrg)ÚSupportsAsyncCloseé   c                ó   • g r   r   r   s    r   ÚacloseÚSupportsAsyncClose.aclose   s   €  r   r   Nr   )r   r   r   r   r#   r   r   r   r   r    r       s   † ç#r   r    c                ó†   • [        U 5      n[        U[        5      =(       a     [        R                  " UR
                  5      $ )zWTrue if the provider's `close()` is `async def`, which only `AsyncAnthropic` can await.)r   Ú
isinstancer   ÚinspectÚiscoroutinefunctionr   ©ÚcredentialsÚproviders     r   r
   r
      s-   € ä˜kÓ*€HÜ�h¤Ó.×^´7×3NÒ3NÈxÏ~É~Ó3^Ð^r   c                óf   • [        U 5      n[        U[        5      (       a  UR                  5         gg)zNRelease any resources owned by a credential provider, if it exposes `close()`.N)r   r&   r   r   r)   s     r   r   r   !   s(   € ä˜kÓ*€HÜ�(œM×*Ñ*Ø�‰Õð +r   c              ƒ  ó  #   • [        U 5      n[        U[        5      (       a  UR                  5       nO'[        U[        5      (       a  UR                  5       nOg[        R                  " U5      (       a  UI Sh  v•N   gg N7f)z`Async `close_credentials`: awaits the provider's `aclose()` if it has one, else calls `close()`.N)r   r&   r    r#   r   r   r'   Úisawaitable)r*   r+   Úclosings      r   r	   r	   (   sg   é € ä˜kÓ*€HÜ�(Ô.×/Ñ/Ø—/‘/Ó#‰Ü	�Hœm×	,Ñ	,Ø—.‘.Ó"‰àô ×Ò˜7×#Ñ#Ø�‰ð $Ùùs   ‚A9BÁ;BÁ<B)r*   r   r   Úbool)r*   r   r   ÚNone)Ú
__future__r   r'   Útypingr   Útyping_extensionsr   Ú_typesr   Ú__all__r   r    r
   r   r	   r   r   r   Ú<module>r7      s_   ðÝ "ã Ý Ý /å "â
M€ð ô#�Hó #ó ð#ð ô$˜ó $ó ð$ô_ôõr   