+
    P(iu                     `    ^ RI Ht ^RIHt ^RIHt ^RIHt  ! R R4      t ! R R]4      tR	# )
    )add_params_to_qs)client_secret_jwt_sign)private_key_jwt_sign)ASSERTION_TYPEc                   B   a  ] tR t^t o RtRtRtR	R ltR tR t	Rt
V tR# )
ClientSecretJWTa8  Authentication method for OAuth 2.0 Client. This authentication
method is called ``client_secret_jwt``, which is using ``client_id``
and ``client_secret`` constructed with JWT to identify a client.

Here is an example of use ``client_secret_jwt`` with Requests Session::

    from authlib.integrations.requests_client import OAuth2Session

    token_endpoint = "https://example.com/oauth/token"
    session = OAuth2Session(
        "your-client-id",
        "your-client-secret",
        token_endpoint_auth_method="client_secret_jwt",
    )
    session.register_client_auth_method(ClientSecretJWT(token_endpoint))
    session.fetch_token(token_endpoint)

:param token_endpoint: A string URL of the token endpoint
:param claims: Extra JWT claims
:param headers: Extra JWT headers
:param alg: ``alg`` value, default is HS256
client_secret_jwtHS256Nc                B    Wn         W n        W0n        Ve	   W@n        R # R # )N)token_endpointclaimsheadersalg)selfr   r   r   r   s   &&&&&a/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/authlib/oauth2/rfc7523/auth.py__init__ClientSecretJWT.__init__#   s!    ,?H     c           	         \        VP                  VP                  VV P                  V P                  V P
                  R 7      # )	client_idr   r   headerr   )r   client_secretr   r   r   r   r   authr   s   &&&r   signClientSecretJWT.sign*   s7    %nn);;<<
 	
r   c                    V P                   pV'       g   TpV P                  W4      p\        T;'       g    R R\        3RV3.4      pW4V3# ) client_assertion_typeclient_assertion)r   r   r   r   )r   r   methodurir   bodyr   r!   s   &&&&&&  r   __call__ClientSecretJWT.__call__4   sZ    ,, N99T:JJB(.9#%56
 T!!r   )r   r   r   r   )NNNN)__name__
__module____qualname____firstlineno____doc__namer   r   r   r%   __static_attributes____classdictcell____classdict__s   @r   r   r      s*     . D
C
" "r   r   c                   2   a  ] tR t^Dt o RtRtRtR tRtV t	R# )PrivateKeyJWTa3  Authentication method for OAuth 2.0 Client. This authentication
method is called ``private_key_jwt``, which is using ``client_id``
and ``private_key`` constructed with JWT to identify a client.

Here is an example of use ``private_key_jwt`` with Requests Session::

    from authlib.integrations.requests_client import OAuth2Session

    token_endpoint = "https://example.com/oauth/token"
    session = OAuth2Session(
        "your-client-id",
        "your-client-private-key",
        token_endpoint_auth_method="private_key_jwt",
    )
    session.register_client_auth_method(PrivateKeyJWT(token_endpoint))
    session.fetch_token(token_endpoint)

:param token_endpoint: A string URL of the token endpoint
:param claims: Extra JWT claims
:param headers: Extra JWT headers
:param alg: ``alg`` value, default is RS256
private_key_jwtRS256c           	         \        VP                  VP                  VV P                  V P                  V P
                  R 7      # r   )r   r   r   r   r   r   r   s   &&&r   r   PrivateKeyJWT.sign_   s7    #nn);;<<
 	
r    N)
r'   r(   r)   r*   r+   r,   r   r   r-   r.   r/   s   @r   r2   r2   D   s      . D
C
 
r   r2   N)	authlib.common.urlsr   	assertionr   r   clientr   r   r2   r7   r   r   <module>r;      s(    0 - + "9" 9"x#
O #
r   