§
    ¾<i$  ã                   ó®   — d dl Z d dlmZmZ d dlmZmZmZmZm	Z	  e j
        e¦  «        Z G d„ d¦  «        Z G d„ dee¦  «        Z G d„ d	e¦  «        ZdS )
é    N)ÚABCÚabstractmethod)ÚAnyÚCallableÚOptionalÚTupleÚUnionc                   ó‚   — e Zd ZdZdeee         eeef         f         fd„Zdeee         eeef         f         fd„ZdS )ÚCredentialProviderz
    Credentials Provider.
    Úreturnc                 ó    — t          d¦  «        ‚)Nz#get_credentials must be implemented)ÚNotImplementedError©Úselfs    úŒ/Users/kimhansen/Desktop/03 Workspace/ceo-agents/chl-effectiveness/mcp-servers/whoop/.venv/lib/python3.11/site-packages/redis/credentials.pyÚget_credentialsz"CredentialProvider.get_credentials   s   € Ý!Ð"GÑHÔHÐHó    c              ƒ   ób   K  — t                                d¦  «         |                      ¦   «         S )Nz[This method is added for backward compatability. Please override it in your implementation.)ÚloggerÚwarningr   r   s    r   Úget_credentials_asyncz(CredentialProvider.get_credentials_async   s5   è è € ÝŠð9ñ	
ô 	
ð 	
ð ×#Ò#Ñ%Ô%Ð%r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__r	   r   Ústrr   r   © r   r   r   r      s…   € € € € € ðð ðI  u¨S¤z°5¸¸c¸´?Ð'BÔ!Cð Ið Ið Ið Ið&¨U°5¸´:¸uÀSÈ#ÀX¼Ð3NÔ-Oð &ð &ð &ð &ð &ð &r   r   c                   óŠ   — e Zd ZdZedeegdf         fd„¦   «         Zedeegdf         fd„¦   «         Z	ede
fd„¦   «         ZdS )ÚStreamingCredentialProviderzI
    Credential provider that streams credentials in the background.
    ÚcallbackNc                 ó   — dS )z­
        Specifies the callback that should be invoked
        when the next credentials will be retrieved.

        :param callback: Callback with
        :return:
        Nr   ©r   r    s     r   Úon_nextz#StreamingCredentialProvider.on_next   s	   € ð 	ˆr   c                 ó   — d S ©Nr   r"   s     r   Úon_errorz$StreamingCredentialProvider.on_error(   ó   € àˆr   r   c                 ó   — d S r%   r   r   s    r   Úis_streamingz(StreamingCredentialProvider.is_streaming,   r'   r   )r   r   r   r   r   r   r   r#   Ú	Exceptionr&   Úboolr)   r   r   r   r   r      sª   € € € € € ðð ð ð ¨#¨°¨Ô 5ð ð ð ñ „^ðð ð ¨9¨+°tÐ*;Ô!<ð ð ð ñ „^ðð ð˜dð ð ð ñ „^ðð ð r   r   c                   óz   — e Zd ZdZd	dee         dee         fd„Zd„ Zdee	e         e	eef         f         fd„Z
dS )
Ú"UsernamePasswordCredentialProviderzg
    Simple implementation of CredentialProvider that just wraps static
    username and password.
    NÚusernameÚpasswordc                 ó*   — |pd| _         |pd| _        d S )NÚ ©r.   r/   )r   r.   r/   s      r   Ú__init__z+UsernamePasswordCredentialProvider.__init__7   s   € Ø ˜ BˆŒØ ˜ BˆŒˆˆr   c                 ó<   — | j         r| j         | j        fS | j        fS r%   r2   r   s    r   r   z2UsernamePasswordCredentialProvider.get_credentials;   s&   € ØŒ=ð 	0Ø”= $¤-Ð/Ð/Ø”ÐÐr   r   c              ƒ   ó.   K  — |                       ¦   «         S r%   )r   r   s    r   r   z8UsernamePasswordCredentialProvider.get_credentials_async@   s   è è € Ø×#Ò#Ñ%Ô%Ð%r   )NN)r   r   r   r   r   r   r3   r   r	   r   r   r   r   r   r-   r-   1   s   € € € € € ðð ð
'ð ' ¨#¤ð 'ÀÈ#Äð 'ð 'ð 'ð 'ð ð  ð  ð
&¨U°5¸´:¸uÀSÈ#ÀX¼Ð3NÔ-Oð &ð &ð &ð &ð &ð &r   r-   )ÚloggingÚabcr   r   Útypingr   r   r   r   r	   Ú	getLoggerr   r   r   r   r-   r   r   r   ú<module>r:      sì   ðØ €€€Ø #Ð #Ð #Ð #Ð #Ð #Ð #Ð #Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8à	ˆÔ	˜8Ñ	$Ô	$€ð&ð &ð &ð &ð &ñ &ô &ð &ð ð ð ð ð Ð"4°cñ ô ð ð2&ð &ð &ð &ð &Ð);ñ &ô &ð &ð &ð &r   