code: def get_combiner_conds() -> List[Dict[str, Any]]:
      """Returns a list of if-then JSON clauses for each combiner type in `combiner_registry` and its properties'
      constraints."""
      combiner_types = sorted(list(combiner_config_registry.keys()))
      conds = []
      for combiner_type in combiner_types:
          combiner_cls = combiner_config_registry[combiner_type]
          schema_cls = combiner_cls
          combiner_schema = (
              schema_utils.unload_jsonschema_from_marshmallow_class(
                  schema_cls
              )
          )
          combiner_props = combiner_schema["properties"]
          schema_utils.remove_duplicate_fields(combiner_props)
          combiner_cond = schema_utils.create_cond(
              {"type": combiner_type}, combiner_props
          )
          conds.append(combiner_cond)
      return conds
  
file_path: ludwig/ludwig/schema/combiners/utils.py
imports: from typing import Any, Dict, List, Type
  from ludwig.api_annotations import DeveloperAPI
  from ludwig.constants import TYPE
  from ludwig.schema import utils
  from ludwig.schema.combiners.base import BaseCombinerConfig
  from ludwig.schema.metadata import COMBINER_METADATA
  from ludwig.schema.metadata.parameter_metadata import convert_metadata_to_json, ParameterMetadata
  from ludwig.utils.registry import Registry
label_desc: Use image node_id 5 for calling a global function with example usage: get_combiner_conds() and returns: conds