o
    î6Wj¡  ã                   @  sZ   d dl mZ d dlmZ d dlZddlmZ erd dlZedd�ddd„ƒZddd„Z	dS )é    )Úannotations)ÚTYPE_CHECKINGNé   )Ú	lru_cachei   )ÚmaxsizeÚaws_access_keyú
str | NoneÚaws_secret_keyÚaws_session_tokenÚregionÚprofileÚreturnúboto3.Sessionc                 C  s   dd l }|j||| ||d�S )Nr   )Úprofile_nameÚregion_nameÚaws_access_key_idÚaws_secret_access_keyr
   )Úboto3ÚSession)r   r	   r
   r   r   r   © r   úf/home/esfera/Documents/content_generation/venv/lib/python3.10/site-packages/anthropic/lib/aws/_auth.pyÚ_get_session   s   	ûr   ÚmethodÚstrÚurlÚheadersúhttpx.HeadersÚdataÚservice_nameúdict[str, str]c        
         C  s    ddl m}
 ddlm} t|||||d�}dd„ t|ƒ ¡ D ƒ}||  ¡ |||d�}| ¡ }|s4t	dƒ‚|
||	|j
ƒ}| |¡ | ¡ }d	d„ t|jƒ ¡ D ƒS )
Nr   )Ú	SigV4Auth)Ú
AWSRequest)r   r   r   r	   r
   c                 S  s"   i | ]\}}|  ¡ d kr||“qS )Ú
connection)Úlower)Ú.0ÚkÚvr   r   r   Ú
<dictcomp><   s   " z$get_auth_headers.<locals>.<dictcomp>)r   r   r   r   z.Could not resolve AWS credentials from sessionc                 S  s   i | ]\}}|d ur||“qS )Nr   )r$   ÚkeyÚvaluer   r   r   r'   H   s    )Úbotocore.authr    Úbotocore.awsrequestr!   r   ÚdictÚitemsÚupperÚget_credentialsÚRuntimeErrorr   Úadd_authÚpreparer   )r   r   r   r   r	   r
   r   r   r   r   r    r!   ÚsessionÚnew_headersÚrequestÚcredentialsÚsignerÚpreppedr   r   r   Úget_auth_headers!   s$   û
r9   )r   r   r	   r   r
   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r	   r   r
   r   r   r   r   r   r   r   r   r   r   r   )
Ú
__future__r   Útypingr   ÚhttpxÚ_utilsr   r   r   r9   r   r   r   r   Ú<module>   s    