docs: def available_modes_with_ids(self):
          """Return list of objects containing available mode name and id."""
          if not self._available_mode_ids:
              all_modes = FIXED_MODES.copy()
              self._available_mode_ids = all_modes
              modes = self.get_available_modes()
              try:
                  if modes:
                      # pylint: disable=consider-using-dict-comprehension
                      simple_modes = dict(
                          [(m.get("type", m.get("name")), m.get("id"))
                           for m in modes]
                      )
                      all_modes.update(simple_modes)
                      self._available_mode_ids = all_modes
              except TypeError:
                  _LOGGER.debug("Did not receive a valid response. Passing..")
          return self._available_mode_ids