code: def validate_slot_mappings(domain_slots: Dict[Text, Any]) -> None:
      """Raises InvalidDomain exception if slot mappings are invalid."""
      rasa.shared.utils.io.raise_warning(
          f"Slot auto-fill has been removed in 3.0 and replaced with a "
          f"new explicit mechanism to set slots. "
          f"Please refer to {DOCS_URL_SLOTS} to learn more.",
          UserWarning,
      )
  
      for slot_name, properties in domain_slots.items():
          mappings = properties.get(SLOT_MAPPINGS)
  
          for slot_mapping in mappings:
              SlotMapping.validate(slot_mapping, slot_name)
  
file_path: rasa/rasa/shared/core/slot_mappings.py
imports: from typing import Text, Dict, Any, List, Optional, TYPE_CHECKING
  from rasa.shared.constants import DOCS_URL_SLOTS, IGNORED_INTENTS
  import rasa.shared.utils.io
  from rasa.shared.nlu.constants import ENTITY_ATTRIBUTE_TYPE, ENTITY_ATTRIBUTE_ROLE, ENTITY_ATTRIBUTE_GROUP, INTENT, NOT_INTENT, INTENT_NAME_KEY
  from rasa.shared.core.constants import SLOT_MAPPINGS, MAPPING_TYPE, SlotMappingType, MAPPING_CONDITIONS
label_desc: Use image node_id 1 for calling a global function with example usage: validate_slot_mappings(domain_slots) without return types