docstr: Deletes the given metadata properties from the dataset.
  
  Args:
      metadata_properties: the name/s of the metadata property/ies to delete.
  
  Returns:
      The metadata properties that were deleted.
  
  Raises:
      TypeError: if `metadata_properties` is not a string or a list of strings.
      ValueError: if the provided `metadata_properties` is/are not in the dataset.
docstr_tok: ["Deletes","the","given","metadata","properties","from","the","dataset",".","Args",":","metadata_properties",":","the","name\/s","of","the","metadata","property\/ies","to","delete",".","Returns",":","The","metadata","properties","that","were","deleted",".","Raises",":","TypeError",":","if","`","metadata_properties","`","is","not","a","string","or","a","list","of","strings",".","ValueError",":","if","the","provided","`","metadata_properties","`","is\/are","not","in","the","dataset","."]
code: def delete_metadata_properties(
      self, metadata_properties: Union[str, List[str]]
  ) -> Union[
      "AllowedMetadataPropertyTypes",
      List["AllowedMetadataPropertyTypes"],
  ]:
      """Deletes the given metadata properties from the dataset.
  
      Args:
          metadata_properties: the name/s of the metadata property/ies to delete.
  
      Returns:
          The metadata properties that were deleted.
  
      Raises:
          TypeError: if `metadata_properties` is not a string or a list of strings.
          ValueError: if the provided `metadata_properties` is/are not in the dataset.
      """
      if not isinstance(metadata_properties, list):
          metadata_properties = [metadata_properties]
  
      if not self.metadata_properties:
          raise ValueError(
              "The current `FeedbackDataset` does not contain any `metadata_properties` defined, so"
              " none can be deleted."
          )
      metadata_properties_mapping = {
          metadata_property.name: metadata_property
          for metadata_property in self.metadata_properties
      }
      if not all(
          metadata_property in metadata_properties_mapping.keys()
          for metadata_property in metadata_properties
      ):
          raise ValueError(
              f"Invalid `metadata_properties={metadata_properties}` provided. It cannot be"
              " deleted because it does not exist, make sure you delete just existing `metadata_properties`"
              " meaning that the name matches any of the existing `metadata_properties` if any. Current"
              f" `metadata_properties` are: '{', '.join(metadata_properties_mapping.keys())}'."
          )
  
      deleted_metadata_properties = []
      for metadata_property in metadata_properties:
          deleted_metadata_properties.append(
              metadata_properties_mapping.pop(metadata_property)
          )
      self._metadata_properties = list(
          metadata_properties_mapping.values()
      )
      return (
          deleted_metadata_properties
          if len(deleted_metadata_properties) > 1
          else deleted_metadata_properties[0]
      )
  
imports: import logging
  import textwrap
  import warnings
  from typing import TYPE_CHECKING, Any, Dict, Iterator, List, Optional, Tuple, Union
  from argilla.client.feedback.constants import FETCHING_BATCH_SIZE
  from argilla.client.feedback.dataset import helpers
  from argilla.client.feedback.dataset.base import FeedbackDatasetBase, R
  from argilla.client.feedback.dataset.local.mixins import ArgillaMixin, TaskTemplateMixin
  from argilla.client.feedback.dataset.mixins import MetricsMixin, UnificationMixin
  from argilla.client.feedback.integrations.huggingface.dataset import HuggingFaceDatasetMixin
  from argilla.client.feedback.schemas.enums import RecordSortField, SortOrder
  from argilla.client.feedback.schemas.records import FeedbackRecord
  from argilla.client.feedback.schemas.vector_settings import VectorSettings
  from argilla.client.feedback.training.schemas.base import TrainingTaskForChatCompletion, TrainingTaskForDPO, TrainingTaskForPPO, TrainingTaskForQuestionAnswering, TrainingTaskForRM, TrainingTaskForSentenceSimilarity, TrainingTaskForSFT, TrainingTaskForTextClassification, TrainingTaskTypes
  from argilla.client.models import Framework
label_desc: Use image node_id 19 for calling the FeedbackDataset obj's underlying member method code with example usage: obj.delete_metadata_properties(metadata_properties) and returns: unknown