in elasticsearch_serverless/_sync/client/utils.py [0:0]
def host_to_node_config(host: _TYPE_HOST) -> NodeConfig:
"""Transforms the many formats of 'host' into NodeConfig"""
if isinstance(host, NodeConfig):
return host
elif isinstance(host, str):
return url_to_node_config(host, use_default_ports_for_scheme=True)
elif isinstance(host, Mapping):
return host_mapping_to_node_config(host)
else:
raise ValueError("'host' must be a URL, NodeConfig, or dictionary")