o
    ¦iÿ	  ã                   @   st   d Z ddlZddlmZmZmZmZmZmZm	Z	m
Z
 ddlmZ ddlmZmZmZ ddlmZ G dd	„ d	e
ƒZdS )
zACode generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.é    Né   )ÚSDKInitHookÚBeforeRequestContextÚBeforeRequestHookÚAfterSuccessContextÚAfterSuccessHookÚAfterErrorContextÚAfterErrorHookÚHooks)Ú
init_hooks)ÚListÚOptionalÚTuple)Ú
HttpClientc                   @   sæ   e Zd Zddd„Zdeddfdd„Zdeddfdd	„Zdeddfd
d„Z	de
ddfdd„Zdededeeef fdd„Zdedejdejfdd„Zdedejdejfdd„Zdedeej dee deeej ee f fdd„ZdS )ÚSDKHooksÚreturnNc                 C   s$   g | _ g | _g | _g | _t| ƒ d S ©N)Úsdk_init_hooksÚbefore_request_hooksÚafter_success_hooksÚafter_error_hooksr   )Úself© r   ú_/var/www/html/karishye-ai-python/venv/lib/python3.10/site-packages/mistralai/_hooks/sdkhooks.pyÚ__init__   s
   zSDKHooks.__init__Úhookc                 C   ó   | j  |¡ d S r   )r   Úappend©r   r   r   r   r   Úregister_sdk_init_hook   ó   zSDKHooks.register_sdk_init_hookc                 C   r   r   )r   r   r   r   r   r   Úregister_before_request_hook   r    z%SDKHooks.register_before_request_hookc                 C   r   r   )r   r   r   r   r   r   Úregister_after_success_hook!   r    z$SDKHooks.register_after_success_hookc                 C   r   r   )r   r   r   r   r   r   Úregister_after_error_hook$   r    z"SDKHooks.register_after_error_hookÚbase_urlÚclientc                 C   s$   | j D ]
}| ||¡\}}q||fS r   )r   Úsdk_init)r   r$   r%   r   r   r   r   r&   '   s   
zSDKHooks.sdk_initÚhook_ctxÚrequestc                 C   ó.   | j D ]}| ||¡}t|tƒr|‚|}q|S r   )r   Úbefore_requestÚ
isinstanceÚ	Exception)r   r'   r(   r   Úoutr   r   r   r*   ,   s   

zSDKHooks.before_requestÚresponsec                 C   r)   r   )r   Úafter_successr+   r,   )r   r'   r.   r   r-   r   r   r   r/   7   s   

zSDKHooks.after_successÚerrorc                 C   s8   | j D ]}| |||¡}t|tƒr|‚|\}}q||fS r   )r   Úafter_errorr+   r,   )r   r'   r.   r0   r   Úresultr   r   r   r1   A   s   


zSDKHooks.after_error)r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r!   r   r"   r	   r#   Ústrr   r   r&   r   ÚhttpxÚRequestr*   r   ÚResponser/   r   r   r,   r1   r   r   r   r   r      s<    
ÿÿ
þÿÿ
þ
þýüûr   )Ú__doc__r7   Útypesr   r   r   r   r   r   r	   r
   Úregistrationr   Útypingr   r   r   Úmistralai.httpclientr   r   r   r   r   r   Ú<module>   s    (
