def delete_dangling_index(
        self,
        *,
        index_uuid: str,
        accept_data_loss: bool,
        error_trace: t.Optional[bool] = None,
        filter_path: t.Optional[t.Union[str, t.Sequence[str]]] = None,
        human: t.Optional[bool] = None,
        master_timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
        pretty: t.Optional[bool] = None,
        timeout: t.Optional[t.Union[str, t.Literal[-1], t.Literal[0]]] = None,
    ) -> ObjectApiResponse[t.Any]:
        """
        .. raw:: html

          <p>Delete a dangling index.
          If Elasticsearch encounters index data that is absent from the current cluster state, those indices are considered to be dangling.
          For example, this can happen if you delete more than <code>cluster.indices.tombstones.size</code> indices while an Elasticsearch node is offline.</p>


        `<https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-dangling-indices-delete-dangling-index>`_

        :param index_uuid: The UUID of the index to delete. Use the get dangling indices
            API to find the UUID.
        :param accept_data_loss: This parameter must be set to true to acknowledge that
            it will no longer be possible to recove data from the dangling index.
        :param master_timeout: Specify timeout for connection to master
        :param timeout: Explicit operation timeout
        """
        if index_uuid in SKIP_IN_PATH:
            raise ValueError("Empty value passed for parameter 'index_uuid'")
        if accept_data_loss is None:
            raise ValueError("Empty value passed for parameter 'accept_data_loss'")
        __path_parts: t.Dict[str, str] = {"index_uuid": _quote(index_uuid)}
        __path = f'/_dangling/{__path_parts["index_uuid"]}'
        __query: t.Dict[str, t.Any] = {}
        if accept_data_loss is not None:
            __query["accept_data_loss"] = accept_data_loss
        if error_trace is not None:
            __query["error_trace"] = error_trace
        if filter_path is not None:
            __query["filter_path"] = filter_path
        if human is not None:
            __query["human"] = human
        if master_timeout is not None:
            __query["master_timeout"] = master_timeout
        if pretty is not None:
            __query["pretty"] = pretty
        if timeout is not None:
            __query["timeout"] = timeout
        __headers = {"accept": "application/json"}
        return self.perform_request(  # type: ignore[return-value]
            "DELETE",
            __path,
            params=__query,
            headers=__headers,
            endpoint_id="dangling_indices.delete_dangling_index",
            path_parts=__path_parts,
        )

        .. raw:: html

          <p>Delete a dangling index.
          If Elasticsearch encounters index data that is absent from the current cluster state, those indices are considered to be dangling.
          For example, this can happen if you delete more than <code>cluster.indices.tombstones.size</code> indices while an Elasticsearch node is offline.</p>


        `<https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-dangling-indices-delete-dangling-index>`_

        :param index_uuid: The UUID of the index to delete. Use the get dangling indices
            API to find the UUID.
        :param accept_data_loss: This parameter must be set to true to acknowledge that
            it will no longer be possible to recove data from the dangling index.
        :param master_timeout: Specify timeout for connection to master
        :param timeout: Explicit operation timeout
        
elasticsearch/_sync/client/dangling_indices.py