o
    gZhu                     @   s@   d dl Zd dlmZ ddlmZ ddlmZ G dd deZdS )    N)ObjectApiResponse   )NamespacedClient)_rewrite_parametersc                   @   s   e Zd Ze ddddddeje dejejeej	e f  deje deje de
ej f
dd	Ze ddddddeje dejejeej	e f  deje deje de
ej f
d
dZdS )FeaturesClientN)error_tracefilter_pathhumanprettyr   r   r	   r
   returnc                C   b   d}i }|dur||d< |dur||d< |dur||d< |dur$||d< ddi}| j d	|||d
S )z
        Gets a list of features which can be included in snapshots using the feature_states
        field when creating a snapshot

        `<https://www.elastic.co/guide/en/elasticsearch/reference/8.11/get-features-api.html>`_
        z
/_featuresNr   r   r	   r
   acceptapplication/jsonGETparamsheadersZperform_requestselfr   r   r	   r
   Z_FeaturesClient__pathZ_FeaturesClient__queryZ_FeaturesClient__headers r   Z/var/www/html/lang_env/lib/python3.10/site-packages/elasticsearch/_sync/client/features.pyget_features   s   zFeaturesClient.get_featuresc                C   r   )z
        Resets the internal state of features, usually by deleting system indices

        `<https://www.elastic.co/guide/en/elasticsearch/reference/8.11/modules-snapshots.html>`_
        z/_features/_resetNr   r   r	   r
   r   r   POSTr   r   r   r   r   r   reset_features9   s   zFeaturesClient.reset_features)__name__
__module____qualname__r   tOptionalboolUnionstrSequencer   Anyr   r   r   r   r   r   r      sB    r   )	typingr   Zelastic_transportr   _baser   utilsr   r   r   r   r   r   <module>   s
   