ó
    æk7ib  ã                   ó>   • S SK Jr  S SKJr  S SKJr   " S S\5      rg)é   )ÚTokenValidator)ÚInsufficientScopeError)ÚInvalidTokenErrorc                   ó*   • \ rS rSrSrS rS rS rSrg)ÚIntrospectTokenValidatoré   Úbearerc                 ó   • [        5       e)a3  Request introspection token endpoint with the given token string,
authorization server will return token information in JSON format.
Developers MUST implement this method before using it::

    def introspect_token(self, token_string):
        # for example, introspection token endpoint has limited
        # internal IPs to access, so there is no need to add
        # authentication.
        url = "https://example.com/oauth/introspect"
        resp = requests.post(url, data={"token": token_string})
        resp.raise_for_status()
        return resp.json()
)ÚNotImplementedError©ÚselfÚtoken_strings     Ú`/home/james-whalen/.local/lib/python3.13/site-packages/authlib/oauth2/rfc7662/token_validator.pyÚintrospect_tokenÚ)IntrospectTokenValidator.introspect_token	   s   € ô "Ó#Ð#ó    c                 ó$   • U R                  U5      $ )N)r   r   s     r   Úauthenticate_tokenÚ+IntrospectTokenValidator.authenticate_token   s   € Ø×$Ñ$ \Ó2Ð2r   c                 óÂ   • U(       a
  US   (       d  [        U R                  U R                  S9eU R                  UR	                  S5      U5      (       a
  [        5       eg )NÚactive)ÚrealmÚextra_attributesÚscope)r   r   r   Úscope_insufficientÚgetr   )r   ÚtokenÚscopesÚrequests       r   Úvalidate_tokenÚ'IntrospectTokenValidator.validate_token   sS   € Þ˜E (ŸOÜ#Ø—j‘j°4×3HÑ3Hñð ð ×"Ñ" 5§9¡9¨WÓ#5°v×>Ñ>Ü(Ó*Ð*ð ?r   © N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú
TOKEN_TYPEr   r   r    Ú__static_attributes__r"   r   r   r   r      s   † Ø€Jò$ò 3õ+r   r   N)Úrfc6749r   Úrfc6750r   r   r   r"   r   r   Ú<module>r+      s   ðÝ $Ý ,Ý 'ô+˜~õ +r   