+
    P(i0                     2    ^ RI Ht ^ RIHt  ! R R4      tR# )    )	to_native)OAuth2Errorc                      a  ] tR t^t o RtRt/ tRt]t	RR lt
]R 4       t]P                  R 4       tR tR tR tR	 tR
tV tR# )AssertionClientzConstructs a new Assertion Framework for OAuth 2.0 Authorization Grants
per RFC7521_.

.. _RFC7521: https://tools.ietf.org/html/rfc7521
Nc                    Wn         Vf   TpW n        Vf   V P                  pW`n        W0n        W@n        WPn        Wpn        Wn        V P                  e   V P                  R W4      V n
        Wn        Wn        R # N)sessiontoken_endpointDEFAULT_GRANT_TYPE
grant_typeissuersubjectaudienceclaimsscopetoken_auth_class
token_auth_kwargsleeway)selfr	   r
   r   r   r   r   r   token_placementr   r   kwargss   &&&&&&&&&&&,c/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/authlib/oauth2/rfc7521/client.py__init__AssertionClient.__init__   su     %H,00J$  
  ,"33D/PDO    c                .    V P                   P                  # r   )r   tokenr   s   &r   r   AssertionClient.token6   s    $$$r   c                <    V P                   P                  V4       R # r   )r   	set_token)r   r   s   &&r   r   r    :   s    !!%(r   c                V   V P                   V P                  ,          pV! RRV P                  RV P                  RV P                  RV P
                  /V P                  B pR\        V4      RV P                  /pV P                  '       d   V P                  VR&   V P                  V4      # )	zUsing Assertions as Authorization Grants to refresh token as
described in `Section 4.1`_.

.. _`Section 4.1`: https://tools.ietf.org/html/rfc7521#section-4.1
r   r   r   r   	assertionr   r    )
ASSERTION_METHODSr   r   r   r   r   r   r   r   _refresh_token)r   generate_assertionr$   datas   &   r   refresh_tokenAssertionClient.refresh_token>   s     "33DOOD& 
;;
LL
 ]]
 ;;	

 ll
	 9-$//
 ::: JJDM""4((r   c                    VP                   R 8  d   VP                  4        VP                  4       pRV9   d*   V P                  VR,          VP	                  R4      R7      hW n        V P
                  # )i  errorerror_description)r-   description)status_coderaise_for_statusjsonoauth_error_classgetr   )r   respr   s   && r   parse_response_token$AssertionClient.parse_response_tokenU   sk    s"!!#		e((Gn%))<O2P )   
zzr   c                v    V P                   P                  R V P                  VRR7      pV P                  V4      # )POSTT)r)   withhold_token)r	   requestr
   r6   )r   r)   r5   s   && r   r'   AssertionClient._refresh_tokenb   s=    ||##D''d4 $ 
 ((..r   c                2    V P                   '       d   V = R # R # r   )r	   r   s   &r   __del__AssertionClient.__del__i   s    <<< r   )r   r   r   r   r   r   r   r	   r   r   r   r
   )NNNheaderN<   )__name__
__module____qualname____firstlineno____doc__r   r&   r   r   r3   r   propertyr   setterr*   r6   r'   r>   __static_attributes____classdictcell__)__classdict__s   @r   r   r      so      ##J % % \\) ))./ r   r   N)authlib.common.encodingr   authlib.oauth2.baser   r   r%   r   r   <module>rN      s    - +f fr   