def METHOD_NAME(
    self, cluster: str, instance_type_class: Type[InstanceConfig_T]
) -> Iterable[InstanceConfig_T]:
    """Returns an iterator that yields InstanceConfig objects.
    :param cluster: The cluster name
    :param instance_type_class: a subclass of InstanceConfig
    :returns: an iterator that yields instances of MarathonServiceConfig, etc.
    :raises NotImplementedError: when it doesn't know how to create a config for instance_type_class
    """
    if (cluster, instance_type_class) not in self._framework_configs:
        self._refresh_framework_config(cluster, instance_type_class)
    for instance, config in self._framework_configs.get(
        (cluster, instance_type_class), {}
    ).items():
        try:
            yield self._create_service_config(
                cluster, instance, config, instance_type_class
            )
        except NoDeploymentsAvailable:
            pass