Ë
    uPêjj  ã                   ób   — d Z ddlmZmZ ddlmZmZmZ erddlm	Z
 e
ez  Z	neZ	 G d„ de«      Zy)z²
Base Cache implementation. All cache implementations should inherit from this class.

Has 4 methods:
    - set_cache
    - get_cache
    - async_set_cache
    - async_get_cache
é    )ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚAnyÚFinal)ÚSpanc                   ól   — e Zd Zddefd„Zdedz  fd„Zd„ Zd„ Zed„ «       Z	d	„ Z
d
„ Zd„ Zd„ Zdefd„Zy)Ú	BaseCacheÚdefault_ttlc                 ó   — || _         y ©N)r   )Úselfr   s     ú_/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/caching/base_cache.pyÚ__init__zBaseCache.__init__   s
   € Ø&ˆÕó    ÚreturnNc                 óŽ   — |j                  d«      }|�	 t        |«      S | j                  S # t        $ r | j                  cY S w xY w)NÚttl)ÚgetÚintÚ
ValueErrorr   )r   ÚkwargsÚ
kwargs_ttls      r   Úget_ttlzBaseCache.get_ttl   sP   € Ø(.¯
©
°5Ó(9ˆ
ØÐ!ð(Ü˜:“Ð&ð ×ÑÐøô ò (Ø×'Ñ'Ò'ð(ús   •
, ¬AÁAc                 ó   — t         ‚r   ©ÚNotImplementedError©r   ÚkeyÚvaluer   s       r   Ú	set_cachezBaseCache.set_cache#   ó   € Ü!Ð!r   c              ‹   ó   K  — t         ‚­wr   r   r   s       r   Úasync_set_cachezBaseCache.async_set_cache&   ó   è ø€ Ü!Ð!ùó   ‚	c              ‹   ó   K  — y ­wr   © )r   Ú
cache_listr   s      r   Úasync_set_cache_pipelinez"BaseCache.async_set_cache_pipeline)   s	   è ø€ àùs   ‚c                 ó   — t         ‚r   r   ©r   r   r   s      r   Ú	get_cachezBaseCache.get_cache-   r"   r   c              ‹   ó   K  — t         ‚­wr   r   r,   s      r   Úasync_get_cachezBaseCache.async_get_cache0   r%   r&   c              ‹   ó   K  — t         ‚­wr   r   r   s       r   Úbatch_cache_writezBaseCache.batch_cache_write3   r%   r&   c              ƒ   ó   K  — t         ‚­wr   r   ©r   s    r   Ú
disconnectzBaseCache.disconnect6   r%   r&   c              ƒ   ó   K  — t         ‚­w)z™
        Test the cache connection.

        Returns:
            dict: {"status": "success" | "failed", "message": str, "error": Optional[str]}
        r   r3   s    r   Útest_connectionzBaseCache.test_connection9   s   è ø€ ô "Ð!ùr&   )é<   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r!   r$   r   r*   r-   r/   r1   r4   Údictr6   r(   r   r   r
   r
      s\   „ ñ' Có 'ð  3¨¡:ó  ò"ò"ð ñó ðò"ò"ò"ò"ð" tô "r   r
   N)Ú__doc__Úabcr   r   Útypingr   r   r   Úopentelemetry.tracer   Ú_Spanr
   r(   r   r   ú<module>rA      s5   ðñ÷ $ß ,Ñ ,áÝ1à�3‰;�Dà€Dô*"�õ *"r   