§
    !¾<i¶  ã                   óJ   — d Z ddlmZ ddlmZ ddlmZ  G d„ de¦  «        ZdS )	z{authlib.oauth2.rfc6750.validator.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Validate Bearer Token for in request, scope and token.
é   )ÚTokenValidatoré   )ÚInsufficientScopeError)ÚInvalidTokenErrorc                   ó   — e Zd ZdZd„ Zd„ ZdS )ÚBearerTokenValidatorÚbearerc                 ó   — t          ¦   «         ‚)a_  A method to query token from database with the given token string.
        Developers MUST re-implement this method. For instance::

            def authenticate_token(self, token_string):
                return get_token_from_database(token_string)

        :param token_string: A string to represent the access_token.
        :return: token
        )ÚNotImplementedError)ÚselfÚtoken_strings     ú›/Users/kimhansen/Desktop/03 Workspace/ceo-agents/chl-effectiveness/mcp-servers/whoop/.venv/lib/python3.11/site-packages/authlib/oauth2/rfc6750/validator.pyÚauthenticate_tokenz'BearerTokenValidator.authenticate_token   s   € õ "Ñ#Ô#Ð#ó    c                 óh  — |st          | j        | j        ¬¦  «        ‚|                     ¦   «         rt          | j        | j        ¬¦  «        ‚|                     ¦   «         rt          | j        | j        ¬¦  «        ‚|                      |                     ¦   «         |¦  «        rt          ¦   «         ‚dS )z:Check if token is active and matches the requested scopes.)ÚrealmÚextra_attributesN)r   r   r   Ú
is_expiredÚ
is_revokedÚscope_insufficientÚ	get_scoper   )r   ÚtokenÚscopesÚrequests       r   Úvalidate_tokenz#BearerTokenValidator.validate_token   sÓ   € àð 	Ý#Ø”j°4Ô3Hðñ ô ð ð ×ÒÑÔð 	Ý#Ø”j°4Ô3Hðñ ô ð ð ×ÒÑÔð 	Ý#Ø”j°4Ô3Hðñ ô ð ð ×"Ò" 5§?¢?Ñ#4Ô#4°fÑ=Ô=ð 	+Ý(Ñ*Ô*Ð*ð	+ð 	+r   N)Ú__name__Ú
__module__Ú__qualname__Ú
TOKEN_TYPEr   r   © r   r   r   r      s7   € € € € € Ø€Jð
$ð 
$ð 
$ð+ð +ð +ð +ð +r   r   N)Ú__doc__Úrfc6749r   Úerrorsr   r   r   r    r   r   ú<module>r$      s{   ððð ð %Ð $Ð $Ð $Ð $Ð $Ø *Ð *Ð *Ð *Ð *Ð *Ø %Ð %Ð %Ð %Ð %Ð %ð+ð +ð +ð +ð +˜>ñ +ô +ð +ð +ð +r   