homeassistant-stubs 2025.4.4__py3-none-any.whl → 2025.5.0b1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/components/adax/__init__.pyi +5 -4
- homeassistant-stubs/components/adax/climate.pyi +25 -17
- homeassistant-stubs/components/adax/const.pyi +2 -0
- homeassistant-stubs/components/adax/coordinator.pyi +21 -0
- homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -1
- homeassistant-stubs/components/apcupsd/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/apcupsd/coordinator.pyi +2 -0
- homeassistant-stubs/components/apcupsd/sensor.pyi +1 -1
- homeassistant-stubs/components/apsystems/coordinator.pyi +1 -0
- homeassistant-stubs/components/apsystems/switch.pyi +1 -1
- homeassistant-stubs/components/asuswrt/router.pyi +2 -3
- homeassistant-stubs/components/automation/__init__.pyi +2 -2
- homeassistant-stubs/components/automation/config.pyi +2 -2
- homeassistant-stubs/components/automation/const.pyi +0 -4
- homeassistant-stubs/components/axis/hub/api.pyi +2 -2
- homeassistant-stubs/components/backup/config.pyi +10 -2
- homeassistant-stubs/components/backup/onboarding.pyi +30 -0
- homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +3 -0
- homeassistant-stubs/components/bluetooth/storage.pyi +1 -1
- homeassistant-stubs/components/bond/config_flow.pyi +3 -0
- homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
- homeassistant-stubs/components/bosch_alarm/alarm_control_panel.pyi +2 -11
- homeassistant-stubs/components/bosch_alarm/config_flow.pyi +5 -1
- homeassistant-stubs/components/bosch_alarm/diagnostics.pyi +11 -0
- homeassistant-stubs/components/bosch_alarm/entity.pyi +29 -0
- homeassistant-stubs/components/bosch_alarm/sensor.pyi +30 -0
- homeassistant-stubs/components/cambridge_audio/media_player.pyi +2 -0
- homeassistant-stubs/components/canary/__init__.pyi +1 -5
- homeassistant-stubs/components/canary/config_flow.pyi +0 -1
- homeassistant-stubs/components/cloud/const.pyi +1 -0
- homeassistant-stubs/components/cloud/http_api.pyi +1 -1
- homeassistant-stubs/components/cloud/onboarding.pyi +35 -0
- homeassistant-stubs/components/cloud/tts.pyi +4 -1
- homeassistant-stubs/components/comelit/__init__.pyi +1 -0
- homeassistant-stubs/components/comelit/alarm_control_panel.pyi +0 -1
- homeassistant-stubs/components/comelit/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/comelit/climate.pyi +2 -7
- homeassistant-stubs/components/comelit/config_flow.pyi +1 -0
- homeassistant-stubs/components/comelit/coordinator.pyi +3 -2
- homeassistant-stubs/components/comelit/cover.pyi +2 -7
- homeassistant-stubs/components/comelit/entity.pyi +11 -0
- homeassistant-stubs/components/comelit/humidifier.pyi +2 -6
- homeassistant-stubs/components/comelit/light.pyi +2 -9
- homeassistant-stubs/components/comelit/sensor.pyi +2 -7
- homeassistant-stubs/components/comelit/switch.pyi +2 -6
- homeassistant-stubs/components/comelit/utils.pyi +5 -0
- homeassistant-stubs/components/command_line/__init__.pyi +1 -1
- homeassistant-stubs/components/command_line/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/command_line/cover.pyi +2 -2
- homeassistant-stubs/components/command_line/sensor.pyi +2 -2
- homeassistant-stubs/components/command_line/switch.pyi +2 -2
- homeassistant-stubs/components/config/config_entries.pyi +3 -1
- homeassistant-stubs/components/demo/light.pyi +3 -2
- homeassistant-stubs/components/demo/media_player.pyi +4 -0
- homeassistant-stubs/components/device_tracker/config_entry.pyi +2 -2
- homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +1 -2
- homeassistant-stubs/components/dhcp/__init__.pyi +6 -13
- homeassistant-stubs/components/dhcp/const.pyi +5 -0
- homeassistant-stubs/components/dhcp/helpers.pyi +8 -0
- homeassistant-stubs/components/dhcp/models.pyi +25 -0
- homeassistant-stubs/components/dhcp/websocket_api.pyi +13 -0
- homeassistant-stubs/components/ecovacs/image.pyi +1 -0
- homeassistant-stubs/components/eheimdigital/number.pyi +38 -0
- homeassistant-stubs/components/eheimdigital/sensor.pyi +32 -0
- homeassistant-stubs/components/eheimdigital/switch.pyi +26 -0
- homeassistant-stubs/components/eheimdigital/time.pyi +37 -0
- homeassistant-stubs/components/elevenlabs/tts.pyi +2 -2
- homeassistant-stubs/components/energy/sensor.pyi +5 -0
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +12 -1
- homeassistant-stubs/components/esphome/__init__.pyi +5 -4
- homeassistant-stubs/components/esphome/alarm_control_panel.pyi +1 -0
- homeassistant-stubs/components/esphome/assist_satellite.pyi +7 -6
- homeassistant-stubs/components/esphome/binary_sensor.pyi +5 -13
- homeassistant-stubs/components/esphome/button.pyi +2 -0
- homeassistant-stubs/components/esphome/camera.pyi +2 -0
- homeassistant-stubs/components/esphome/climate.pyi +1 -0
- homeassistant-stubs/components/esphome/config_flow.pyi +26 -5
- homeassistant-stubs/components/esphome/const.pyi +2 -1
- homeassistant-stubs/components/esphome/coordinator.pyi +4 -3
- homeassistant-stubs/components/esphome/cover.pyi +2 -0
- homeassistant-stubs/components/esphome/dashboard.pyi +1 -1
- homeassistant-stubs/components/esphome/date.pyi +2 -0
- homeassistant-stubs/components/esphome/datetime.pyi +2 -0
- homeassistant-stubs/components/esphome/diagnostics.pyi +2 -0
- homeassistant-stubs/components/esphome/entity.pyi +12 -9
- homeassistant-stubs/components/esphome/event.pyi +2 -0
- homeassistant-stubs/components/esphome/fan.pyi +4 -3
- homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +10 -2
- homeassistant-stubs/components/esphome/light.pyi +8 -7
- homeassistant-stubs/components/esphome/lock.pyi +6 -4
- homeassistant-stubs/components/esphome/manager.pyi +7 -3
- homeassistant-stubs/components/esphome/media_player.pyi +2 -1
- homeassistant-stubs/components/esphome/number.pyi +1 -0
- homeassistant-stubs/components/esphome/repairs.pyi +21 -2
- homeassistant-stubs/components/esphome/select.pyi +3 -2
- homeassistant-stubs/components/esphome/sensor.pyi +4 -2
- homeassistant-stubs/components/esphome/switch.pyi +3 -1
- homeassistant-stubs/components/esphome/text.pyi +1 -0
- homeassistant-stubs/components/esphome/time.pyi +2 -0
- homeassistant-stubs/components/esphome/update.pyi +8 -9
- homeassistant-stubs/components/esphome/valve.pyi +3 -1
- homeassistant-stubs/components/fritz/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/fritz/button.pyi +1 -0
- homeassistant-stubs/components/fritz/coordinator.pyi +3 -4
- homeassistant-stubs/components/fritz/device_tracker.pyi +1 -0
- homeassistant-stubs/components/fritz/image.pyi +1 -0
- homeassistant-stubs/components/fritz/sensor.pyi +1 -0
- homeassistant-stubs/components/fritz/switch.pyi +1 -0
- homeassistant-stubs/components/fritz/update.pyi +1 -0
- homeassistant-stubs/components/fritzbox/binary_sensor.pyi +2 -5
- homeassistant-stubs/components/fritzbox/climate.pyi +3 -3
- homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -1
- homeassistant-stubs/components/fritzbox/sensor.pyi +3 -6
- homeassistant-stubs/components/heos/const.pyi +4 -0
- homeassistant-stubs/components/heos/media_player.pyi +5 -4
- homeassistant-stubs/components/heos/services.pyi +22 -2
- homeassistant-stubs/components/history/websocket_api.pyi +1 -1
- homeassistant-stubs/components/history_stats/data.pyi +2 -1
- homeassistant-stubs/components/home_connect/__init__.pyi +0 -1
- homeassistant-stubs/components/home_connect/binary_sensor.pyi +2 -13
- homeassistant-stubs/components/home_connect/coordinator.pyi +5 -0
- homeassistant-stubs/components/home_connect/repairs.pyi +10 -0
- homeassistant-stubs/components/home_connect/select.pyi +6 -2
- homeassistant-stubs/components/home_connect/sensor.pyi +5 -3
- homeassistant-stubs/components/homee/climate.pyi +47 -0
- homeassistant-stubs/components/homee/const.pyi +1 -0
- homeassistant-stubs/components/homee/number.pyi +12 -4
- homeassistant-stubs/components/homekit/__init__.pyi +5 -3
- homeassistant-stubs/components/homekit/accessories.pyi +2 -1
- homeassistant-stubs/components/homekit/const.pyi +13 -0
- homeassistant-stubs/components/homekit/type_air_purifiers.pyi +69 -0
- homeassistant-stubs/components/homekit/type_fans.pyi +7 -4
- homeassistant-stubs/components/homekit/type_media_players.pyi +2 -1
- homeassistant-stubs/components/homekit/type_switches.pyi +1 -1
- homeassistant-stubs/components/homekit/type_triggers.pyi +1 -1
- homeassistant-stubs/components/homekit/util.pyi +2 -1
- homeassistant-stubs/components/http/headers.pyi +6 -0
- homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +3 -1
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/entity.pyi +0 -3
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +2 -1
- homeassistant-stubs/components/hyperion/__init__.pyi +12 -5
- homeassistant-stubs/components/hyperion/camera.pyi +3 -4
- homeassistant-stubs/components/hyperion/const.pyi +0 -3
- homeassistant-stubs/components/hyperion/light.pyi +4 -6
- homeassistant-stubs/components/hyperion/sensor.pyi +3 -4
- homeassistant-stubs/components/hyperion/switch.pyi +3 -4
- homeassistant-stubs/components/incomfort/climate.pyi +1 -2
- homeassistant-stubs/components/iron_os/__init__.pyi +1 -3
- homeassistant-stubs/components/iron_os/config_flow.pyi +3 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +4 -2
- homeassistant-stubs/components/iron_os/entity.pyi +2 -0
- homeassistant-stubs/components/iron_os/update.pyi +4 -2
- homeassistant-stubs/components/isy994/entity.pyi +1 -0
- homeassistant-stubs/components/isy994/services.pyi +1 -0
- homeassistant-stubs/components/isy994/switch.pyi +1 -1
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -2
- homeassistant-stubs/components/jewish_calendar/const.pyi +1 -0
- homeassistant-stubs/components/jewish_calendar/entity.pyi +0 -1
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +1 -0
- homeassistant-stubs/components/jewish_calendar/service.pyi +4 -3
- homeassistant-stubs/components/kulersky/__init__.pyi +14 -0
- homeassistant-stubs/components/kulersky/config_flow.pyi +17 -0
- homeassistant-stubs/components/kulersky/const.pyi +4 -0
- homeassistant-stubs/components/kulersky/light.pyi +34 -0
- homeassistant-stubs/components/lamarzocco/__init__.pyi +4 -2
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +3 -7
- homeassistant-stubs/components/lamarzocco/calendar.pyi +3 -4
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +4 -3
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +13 -16
- homeassistant-stubs/components/lamarzocco/diagnostics.pyi +3 -8
- homeassistant-stubs/components/lamarzocco/entity.pyi +1 -5
- homeassistant-stubs/components/lamarzocco/number.pyi +4 -29
- homeassistant-stubs/components/lamarzocco/select.pyi +3 -8
- homeassistant-stubs/components/lamarzocco/sensor.pyi +11 -24
- homeassistant-stubs/components/lamarzocco/switch.pyi +6 -5
- homeassistant-stubs/components/lamarzocco/update.pyi +4 -1
- homeassistant-stubs/components/lcn/__init__.pyi +4 -3
- homeassistant-stubs/components/lcn/entity.pyi +3 -3
- homeassistant-stubs/components/lcn/helpers.pyi +2 -2
- homeassistant-stubs/components/lcn/websocket.pyi +1 -1
- homeassistant-stubs/components/linkplay/__init__.pyi +1 -1
- homeassistant-stubs/components/linkplay/const.pyi +8 -2
- homeassistant-stubs/components/linkplay/media_player.pyi +6 -4
- homeassistant-stubs/components/logbook/websocket_api.pyi +1 -1
- homeassistant-stubs/components/logger/__init__.pyi +1 -1
- homeassistant-stubs/components/logger/helpers.pyi +4 -2
- homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
- homeassistant-stubs/components/matter/entity.pyi +1 -0
- homeassistant-stubs/components/matter/select.pyi +1 -1
- homeassistant-stubs/components/matter/sensor.pyi +3 -1
- homeassistant-stubs/components/matter/switch.pyi +20 -0
- homeassistant-stubs/components/matter/water_heater.pyi +39 -0
- homeassistant-stubs/components/mcp/application_credentials.pyi +12 -0
- homeassistant-stubs/components/mcp/config_flow.pyi +27 -6
- homeassistant-stubs/components/mcp/const.pyi +3 -0
- homeassistant-stubs/components/mcp/coordinator.pyi +8 -5
- homeassistant-stubs/components/media_player/__init__.pyi +7 -3
- homeassistant-stubs/components/media_player/browse_media.pyi +16 -1
- homeassistant-stubs/components/media_player/const.pyi +4 -0
- homeassistant-stubs/components/media_player/errors.pyi +1 -0
- homeassistant-stubs/components/media_source/error.pyi +1 -0
- homeassistant-stubs/components/met_eireann/__init__.pyi +2 -2
- homeassistant-stubs/components/met_eireann/weather.pyi +3 -3
- homeassistant-stubs/components/mjpeg/config_flow.pyi +2 -2
- homeassistant-stubs/components/motionmount/select.pyi +1 -1
- homeassistant-stubs/components/mqtt/config_flow.pyi +18 -4
- homeassistant-stubs/components/mqtt/const.pyi +3 -0
- homeassistant-stubs/components/mqtt/device_tracker.pyi +11 -14
- homeassistant-stubs/components/mqtt/entity.pyi +3 -0
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -2
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +3 -2
- homeassistant-stubs/components/music_assistant/media_browser.pyi +17 -2
- homeassistant-stubs/components/music_assistant/media_player.pyi +3 -2
- homeassistant-stubs/components/network/__init__.pyi +2 -0
- homeassistant-stubs/components/ntfy/__init__.pyi +16 -0
- homeassistant-stubs/components/ntfy/config_flow.pyi +29 -0
- homeassistant-stubs/components/ntfy/const.pyi +6 -0
- homeassistant-stubs/components/ntfy/diagnostics.pyi +7 -0
- homeassistant-stubs/components/ntfy/notify.pyi +25 -0
- homeassistant-stubs/components/nut/__init__.pyi +7 -3
- homeassistant-stubs/components/nut/config_flow.pyi +11 -14
- homeassistant-stubs/components/nut/const.pyi +0 -1
- homeassistant-stubs/components/nut/device_action.pyi +5 -1
- homeassistant-stubs/components/nut/sensor.pyi +6 -3
- homeassistant-stubs/components/ohme/__init__.pyi +15 -0
- homeassistant-stubs/components/ohme/button.pyi +26 -0
- homeassistant-stubs/components/ohme/config_flow.pyi +17 -0
- homeassistant-stubs/components/ohme/const.pyi +5 -0
- homeassistant-stubs/components/ohme/coordinator.pyi +44 -0
- homeassistant-stubs/components/ohme/diagnostics.pyi +5 -0
- homeassistant-stubs/components/ohme/entity.pyi +23 -0
- homeassistant-stubs/components/ohme/number.pyi +30 -0
- homeassistant-stubs/components/ohme/select.pyi +33 -0
- homeassistant-stubs/components/ohme/sensor.pyi +26 -0
- homeassistant-stubs/components/ohme/services.pyi +19 -0
- homeassistant-stubs/components/ohme/switch.pyi +45 -0
- homeassistant-stubs/components/ohme/time.pyi +30 -0
- homeassistant-stubs/components/onboarding/__init__.pyi +1 -0
- homeassistant-stubs/components/onboarding/views.pyi +29 -43
- homeassistant-stubs/components/oncue/__init__.pyi +5 -11
- homeassistant-stubs/components/oncue/config_flow.pyi +2 -13
- homeassistant-stubs/components/onewire/sensor.pyi +1 -2
- homeassistant-stubs/components/onkyo/config_flow.pyi +2 -3
- homeassistant-stubs/components/onkyo/const.pyi +0 -2
- homeassistant-stubs/components/onkyo/media_player.pyi +3 -14
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +3 -3
- homeassistant-stubs/components/openai_conversation/const.pyi +1 -0
- homeassistant-stubs/components/openai_conversation/conversation.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +4 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_electrical_towel_dryer.pyi +2 -1
- homeassistant-stubs/components/overkiz/config_flow.pyi +1 -7
- homeassistant-stubs/components/overkiz/entity.pyi +2 -1
- homeassistant-stubs/components/overkiz/number.pyi +1 -1
- homeassistant-stubs/components/overkiz/sensor.pyi +1 -1
- homeassistant-stubs/components/pegel_online/__init__.pyi +13 -0
- homeassistant-stubs/components/pegel_online/config_flow.pyi +15 -0
- homeassistant-stubs/components/pegel_online/const.pyi +6 -0
- homeassistant-stubs/components/pegel_online/coordinator.pyi +16 -0
- homeassistant-stubs/components/pegel_online/diagnostics.pyi +5 -0
- homeassistant-stubs/components/pegel_online/entity.pyi +12 -0
- homeassistant-stubs/components/pegel_online/sensor.pyi +28 -0
- homeassistant-stubs/components/powerwall/sensor.pyi +0 -1
- homeassistant-stubs/components/recorder/core.pyi +2 -0
- homeassistant-stubs/components/recorder/entity_registry.pyi +2 -1
- homeassistant-stubs/components/recorder/tasks.pyi +2 -1
- homeassistant-stubs/components/renault/binary_sensor.pyi +8 -2
- homeassistant-stubs/components/renault/config_flow.pyi +2 -1
- homeassistant-stubs/components/renault/const.pyi +2 -1
- homeassistant-stubs/components/renault/coordinator.pyi +4 -1
- homeassistant-stubs/components/renault/entity.pyi +2 -0
- homeassistant-stubs/components/renault/renault_hub.pyi +5 -2
- homeassistant-stubs/components/renault/renault_vehicle.pyi +5 -2
- homeassistant-stubs/components/renault/services.pyi +5 -0
- homeassistant-stubs/components/rest/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/rest/schema.pyi +1 -1
- homeassistant-stubs/components/rest/sensor.pyi +2 -2
- homeassistant-stubs/components/rest/switch.pyi +4 -3
- homeassistant-stubs/components/roborock/__init__.pyi +1 -0
- homeassistant-stubs/components/roborock/config_flow.pyi +1 -0
- homeassistant-stubs/components/samsungtv/__init__.pyi +6 -7
- homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -1
- homeassistant-stubs/components/samsungtv/entity.pyi +3 -2
- homeassistant-stubs/components/samsungtv/media_player.pyi +1 -2
- homeassistant-stubs/components/samsungtv/remote.pyi +2 -2
- homeassistant-stubs/components/scrape/__init__.pyi +1 -1
- homeassistant-stubs/components/scrape/sensor.pyi +4 -5
- homeassistant-stubs/components/shelly/__init__.pyi +1 -0
- homeassistant-stubs/components/shelly/climate.pyi +2 -1
- homeassistant-stubs/components/shelly/const.pyi +2 -0
- homeassistant-stubs/components/shelly/coordinator.pyi +1 -0
- homeassistant-stubs/components/shelly/entity.pyi +5 -2
- homeassistant-stubs/components/shelly/number.pyi +4 -3
- homeassistant-stubs/components/shelly/repairs.pyi +19 -0
- homeassistant-stubs/components/shelly/select.pyi +3 -1
- homeassistant-stubs/components/shelly/text.pyi +4 -1
- homeassistant-stubs/components/shelly/utils.pyi +2 -3
- homeassistant-stubs/components/smlight/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/smlight/button.pyi +1 -0
- homeassistant-stubs/components/smlight/sensor.pyi +2 -0
- homeassistant-stubs/components/smlight/switch.pyi +1 -0
- homeassistant-stubs/components/smlight/update.pyi +3 -1
- homeassistant-stubs/components/smtp/__init__.pyi +0 -0
- homeassistant-stubs/components/smtp/const.pyi +17 -0
- homeassistant-stubs/components/smtp/notify.pyi +47 -0
- homeassistant-stubs/components/sql/__init__.pyi +1 -1
- homeassistant-stubs/components/sql/sensor.pyi +4 -4
- homeassistant-stubs/components/ssdp/__init__.pyi +6 -96
- homeassistant-stubs/components/ssdp/common.pyi +5 -0
- homeassistant-stubs/components/ssdp/const.pyi +3 -0
- homeassistant-stubs/components/ssdp/scanner.pyi +75 -0
- homeassistant-stubs/components/ssdp/server.pyi +30 -0
- homeassistant-stubs/components/ssdp/websocket_api.pyi +16 -0
- homeassistant-stubs/components/switcher_kis/button.pyi +2 -1
- homeassistant-stubs/components/switcher_kis/climate.pyi +2 -4
- homeassistant-stubs/components/switcher_kis/config_flow.pyi +3 -2
- homeassistant-stubs/components/switcher_kis/cover.pyi +0 -2
- homeassistant-stubs/components/switcher_kis/entity.pyi +4 -0
- homeassistant-stubs/components/switcher_kis/light.pyi +3 -8
- homeassistant-stubs/components/switcher_kis/sensor.pyi +13 -6
- homeassistant-stubs/components/switcher_kis/switch.pyi +9 -15
- homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/common.pyi +3 -0
- homeassistant-stubs/components/synology_dsm/sensor.pyi +9 -1
- homeassistant-stubs/components/todo/__init__.pyi +1 -0
- homeassistant-stubs/components/tplink_omada/config_flow.pyi +1 -2
- homeassistant-stubs/components/tractive/__init__.pyi +1 -1
- homeassistant-stubs/components/tractive/binary_sensor.pyi +9 -3
- homeassistant-stubs/components/tractive/const.pyi +1 -0
- homeassistant-stubs/components/tractive/device_tracker.pyi +1 -1
- homeassistant-stubs/components/tts/__init__.pyi +22 -13
- homeassistant-stubs/components/tts/legacy.pyi +1 -0
- homeassistant-stubs/components/tts/media_source.pyi +5 -2
- homeassistant-stubs/components/unifi/hub/api.pyi +2 -2
- homeassistant-stubs/components/uptimerobot/__init__.pyi +4 -5
- homeassistant-stubs/components/uptimerobot/binary_sensor.pyi +4 -4
- homeassistant-stubs/components/uptimerobot/coordinator.pyi +3 -2
- homeassistant-stubs/components/uptimerobot/diagnostics.pyi +2 -4
- homeassistant-stubs/components/uptimerobot/entity.pyi +0 -2
- homeassistant-stubs/components/uptimerobot/sensor.pyi +3 -4
- homeassistant-stubs/components/uptimerobot/switch.pyi +5 -4
- homeassistant-stubs/components/vodafone_station/__init__.pyi +1 -0
- homeassistant-stubs/components/vodafone_station/config_flow.pyi +1 -0
- homeassistant-stubs/components/vodafone_station/coordinator.pyi +2 -1
- homeassistant-stubs/components/vodafone_station/utils.pyi +5 -0
- homeassistant-stubs/components/websocket_api/commands.pyi +3 -1
- homeassistant-stubs/components/websocket_api/http.pyi +4 -1
- homeassistant-stubs/components/wemo/__init__.pyi +1 -1
- homeassistant-stubs/components/wemo/coordinator.pyi +1 -1
- homeassistant-stubs/components/wemo/models.pyi +3 -4
- homeassistant-stubs/components/workday/config_flow.pyi +1 -1
- homeassistant-stubs/components/xiaomi_ble/const.pyi +2 -0
- homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
- homeassistant-stubs/components/xiaomi_ble/sensor.pyi +2 -2
- homeassistant-stubs/components/zeroconf/__init__.pyi +6 -49
- homeassistant-stubs/components/zeroconf/const.pyi +3 -0
- homeassistant-stubs/components/zeroconf/discovery.pyi +63 -0
- homeassistant-stubs/components/zeroconf/websocket_api.pyi +40 -0
- homeassistant-stubs/components/zone/__init__.pyi +4 -1
- homeassistant-stubs/components/zwave_js/__init__.pyi +2 -2
- homeassistant-stubs/components/zwave_js/api.pyi +8 -3
- homeassistant-stubs/components/zwave_js/config_flow.pyi +41 -59
- homeassistant-stubs/components/zwave_js/helpers.pyi +2 -1
- homeassistant-stubs/config_entries.pyi +13 -9
- homeassistant-stubs/const.pyi +5 -0
- homeassistant-stubs/core.pyi +1 -3
- homeassistant-stubs/core_config.pyi +1 -1
- homeassistant-stubs/data_entry_flow.pyi +5 -1
- homeassistant-stubs/helpers/area_registry.pyi +5 -1
- homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +1 -1
- homeassistant-stubs/helpers/config_validation.pyi +1 -0
- homeassistant-stubs/helpers/device_registry.pyi +1 -3
- homeassistant-stubs/helpers/entity.pyi +1 -1
- homeassistant-stubs/helpers/entity_platform.pyi +3 -3
- homeassistant-stubs/helpers/entity_registry.pyi +6 -6
- homeassistant-stubs/helpers/event.pyi +2 -0
- homeassistant-stubs/helpers/floor_registry.pyi +12 -3
- homeassistant-stubs/helpers/llm.pyi +24 -1
- homeassistant-stubs/helpers/network.pyi +1 -1
- homeassistant-stubs/helpers/script.pyi +2 -1
- homeassistant-stubs/helpers/template.pyi +1 -0
- homeassistant-stubs/helpers/trigger_template_entity.pyi +17 -2
- homeassistant-stubs/loader.pyi +2 -11
- homeassistant-stubs/setup.pyi +7 -6
- homeassistant-stubs/util/ssl.pyi +2 -0
- {homeassistant_stubs-2025.4.4.dist-info → homeassistant_stubs-2025.5.0b1.dist-info}/METADATA +3 -3
- {homeassistant_stubs-2025.4.4.dist-info → homeassistant_stubs-2025.5.0b1.dist-info}/RECORD +392 -335
- homeassistant-stubs/components/oncue/binary_sensor.pyi +0 -16
- homeassistant-stubs/components/oncue/const.pyi +0 -6
- homeassistant-stubs/components/oncue/entity.pyi +0 -20
- homeassistant-stubs/components/oncue/sensor.pyi +0 -21
- homeassistant-stubs/components/oncue/types.pyi +0 -5
- {homeassistant_stubs-2025.4.4.dist-info → homeassistant_stubs-2025.5.0b1.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.4.4.dist-info → homeassistant_stubs-2025.5.0b1.dist-info}/licenses/LICENSE +0 -0
@@ -0,0 +1,38 @@
|
|
1
|
+
from .coordinator import EheimDigitalConfigEntry as EheimDigitalConfigEntry, EheimDigitalUpdateCoordinator as EheimDigitalUpdateCoordinator
|
2
|
+
from .entity import EheimDigitalEntity as EheimDigitalEntity
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Awaitable, Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from eheimdigital.classic_vario import EheimDigitalClassicVario
|
7
|
+
from eheimdigital.device import EheimDigitalDevice
|
8
|
+
from eheimdigital.heater import EheimDigitalHeater
|
9
|
+
from homeassistant.components.number import NumberDeviceClass as NumberDeviceClass, NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
|
10
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, PRECISION_HALVES as PRECISION_HALVES, PRECISION_TENTHS as PRECISION_TENTHS, PRECISION_WHOLE as PRECISION_WHOLE, UnitOfTemperature as UnitOfTemperature
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
12
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
13
|
+
from typing import Generic, TypeVar, override
|
14
|
+
|
15
|
+
PARALLEL_UPDATES: int
|
16
|
+
_DeviceT_co = TypeVar('_DeviceT_co', bound=EheimDigitalDevice, covariant=True)
|
17
|
+
|
18
|
+
@dataclass(frozen=True, kw_only=True)
|
19
|
+
class EheimDigitalNumberDescription(NumberEntityDescription, Generic[_DeviceT_co]):
|
20
|
+
value_fn: Callable[[_DeviceT_co], float | None]
|
21
|
+
set_value_fn: Callable[[_DeviceT_co, float], Awaitable[None]]
|
22
|
+
uom_fn: Callable[[_DeviceT_co], str] | None = ...
|
23
|
+
|
24
|
+
CLASSICVARIO_DESCRIPTIONS: tuple[EheimDigitalNumberDescription[EheimDigitalClassicVario], ...]
|
25
|
+
HEATER_DESCRIPTIONS: tuple[EheimDigitalNumberDescription[EheimDigitalHeater], ...]
|
26
|
+
|
27
|
+
async def async_setup_entry(hass: HomeAssistant, entry: EheimDigitalConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
28
|
+
|
29
|
+
class EheimDigitalNumber(EheimDigitalEntity[_DeviceT_co], NumberEntity, Generic[_DeviceT_co]):
|
30
|
+
entity_description: EheimDigitalNumberDescription[_DeviceT_co]
|
31
|
+
_attr_unique_id: Incomplete
|
32
|
+
def __init__(self, coordinator: EheimDigitalUpdateCoordinator, device: _DeviceT_co, description: EheimDigitalNumberDescription[_DeviceT_co]) -> None: ...
|
33
|
+
@override
|
34
|
+
async def async_set_native_value(self, value: float) -> None: ...
|
35
|
+
_attr_native_value: Incomplete
|
36
|
+
_attr_native_unit_of_measurement: Incomplete
|
37
|
+
@override
|
38
|
+
def _async_update_attrs(self) -> None: ...
|
@@ -0,0 +1,32 @@
|
|
1
|
+
from .coordinator import EheimDigitalConfigEntry as EheimDigitalConfigEntry, EheimDigitalUpdateCoordinator as EheimDigitalUpdateCoordinator
|
2
|
+
from .entity import EheimDigitalEntity as EheimDigitalEntity
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from eheimdigital.classic_vario import EheimDigitalClassicVario
|
7
|
+
from eheimdigital.device import EheimDigitalDevice
|
8
|
+
from homeassistant.components.sensor import SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
9
|
+
from homeassistant.components.sensor.const import SensorDeviceClass as SensorDeviceClass
|
10
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
12
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
13
|
+
from typing import Generic, TypeVar, override
|
14
|
+
|
15
|
+
PARALLEL_UPDATES: int
|
16
|
+
_DeviceT_co = TypeVar('_DeviceT_co', bound=EheimDigitalDevice, covariant=True)
|
17
|
+
|
18
|
+
@dataclass(frozen=True, kw_only=True)
|
19
|
+
class EheimDigitalSensorDescription(SensorEntityDescription, Generic[_DeviceT_co]):
|
20
|
+
value_fn: Callable[[_DeviceT_co], float | str | None]
|
21
|
+
|
22
|
+
CLASSICVARIO_DESCRIPTIONS: tuple[EheimDigitalSensorDescription[EheimDigitalClassicVario], ...]
|
23
|
+
|
24
|
+
async def async_setup_entry(hass: HomeAssistant, entry: EheimDigitalConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
25
|
+
|
26
|
+
class EheimDigitalSensor(EheimDigitalEntity[_DeviceT_co], SensorEntity, Generic[_DeviceT_co]):
|
27
|
+
entity_description: EheimDigitalSensorDescription[_DeviceT_co]
|
28
|
+
_attr_unique_id: Incomplete
|
29
|
+
def __init__(self, coordinator: EheimDigitalUpdateCoordinator, device: _DeviceT_co, description: EheimDigitalSensorDescription[_DeviceT_co]) -> None: ...
|
30
|
+
_attr_native_value: Incomplete
|
31
|
+
@override
|
32
|
+
def _async_update_attrs(self) -> None: ...
|
@@ -0,0 +1,26 @@
|
|
1
|
+
from .coordinator import EheimDigitalConfigEntry as EheimDigitalConfigEntry, EheimDigitalUpdateCoordinator as EheimDigitalUpdateCoordinator
|
2
|
+
from .entity import EheimDigitalEntity as EheimDigitalEntity
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from eheimdigital.classic_vario import EheimDigitalClassicVario
|
5
|
+
from eheimdigital.device import EheimDigitalDevice as EheimDigitalDevice
|
6
|
+
from homeassistant.components.switch import SwitchEntity as SwitchEntity
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
9
|
+
from typing import Any, override
|
10
|
+
|
11
|
+
PARALLEL_UPDATES: int
|
12
|
+
|
13
|
+
async def async_setup_entry(hass: HomeAssistant, entry: EheimDigitalConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
14
|
+
|
15
|
+
class EheimDigitalClassicVarioSwitch(EheimDigitalEntity[EheimDigitalClassicVario], SwitchEntity):
|
16
|
+
_attr_translation_key: str
|
17
|
+
_attr_name: Incomplete
|
18
|
+
_attr_unique_id: Incomplete
|
19
|
+
def __init__(self, coordinator: EheimDigitalUpdateCoordinator, device: EheimDigitalClassicVario) -> None: ...
|
20
|
+
@override
|
21
|
+
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
22
|
+
@override
|
23
|
+
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
24
|
+
_attr_is_on: Incomplete
|
25
|
+
@override
|
26
|
+
def _async_update_attrs(self) -> None: ...
|
@@ -0,0 +1,37 @@
|
|
1
|
+
from .coordinator import EheimDigitalConfigEntry as EheimDigitalConfigEntry, EheimDigitalUpdateCoordinator as EheimDigitalUpdateCoordinator
|
2
|
+
from .entity import EheimDigitalEntity as EheimDigitalEntity
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Awaitable, Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from datetime import time
|
7
|
+
from eheimdigital.classic_vario import EheimDigitalClassicVario
|
8
|
+
from eheimdigital.device import EheimDigitalDevice
|
9
|
+
from eheimdigital.heater import EheimDigitalHeater
|
10
|
+
from homeassistant.components.time import TimeEntity as TimeEntity, TimeEntityDescription as TimeEntityDescription
|
11
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
12
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
13
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
14
|
+
from typing import Generic, TypeVar, override
|
15
|
+
|
16
|
+
PARALLEL_UPDATES: int
|
17
|
+
_DeviceT_co = TypeVar('_DeviceT_co', bound=EheimDigitalDevice, covariant=True)
|
18
|
+
|
19
|
+
@dataclass(frozen=True, kw_only=True)
|
20
|
+
class EheimDigitalTimeDescription(TimeEntityDescription, Generic[_DeviceT_co]):
|
21
|
+
value_fn: Callable[[_DeviceT_co], time | None]
|
22
|
+
set_value_fn: Callable[[_DeviceT_co, time], Awaitable[None]]
|
23
|
+
|
24
|
+
CLASSICVARIO_DESCRIPTIONS: tuple[EheimDigitalTimeDescription[EheimDigitalClassicVario], ...]
|
25
|
+
HEATER_DESCRIPTIONS: tuple[EheimDigitalTimeDescription[EheimDigitalHeater], ...]
|
26
|
+
|
27
|
+
async def async_setup_entry(hass: HomeAssistant, entry: EheimDigitalConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
28
|
+
|
29
|
+
class EheimDigitalTime(EheimDigitalEntity[_DeviceT_co], TimeEntity, Generic[_DeviceT_co]):
|
30
|
+
entity_description: EheimDigitalTimeDescription[_DeviceT_co]
|
31
|
+
_attr_unique_id: Incomplete
|
32
|
+
def __init__(self, coordinator: EheimDigitalUpdateCoordinator, device: _DeviceT_co, description: EheimDigitalTimeDescription[_DeviceT_co]) -> None: ...
|
33
|
+
@override
|
34
|
+
async def async_set_value(self, value: time) -> None: ...
|
35
|
+
_attr_native_value: Incomplete
|
36
|
+
@override
|
37
|
+
def _async_update_attrs(self) -> None: ...
|
@@ -1,6 +1,7 @@
|
|
1
1
|
from . import ElevenLabsConfigEntry as ElevenLabsConfigEntry
|
2
2
|
from .const import ATTR_MODEL as ATTR_MODEL, CONF_OPTIMIZE_LATENCY as CONF_OPTIMIZE_LATENCY, CONF_SIMILARITY as CONF_SIMILARITY, CONF_STABILITY as CONF_STABILITY, CONF_STYLE as CONF_STYLE, CONF_USE_SPEAKER_BOOST as CONF_USE_SPEAKER_BOOST, CONF_VOICE as CONF_VOICE, DEFAULT_OPTIMIZE_LATENCY as DEFAULT_OPTIMIZE_LATENCY, DEFAULT_SIMILARITY as DEFAULT_SIMILARITY, DEFAULT_STABILITY as DEFAULT_STABILITY, DEFAULT_STYLE as DEFAULT_STYLE, DEFAULT_USE_SPEAKER_BOOST as DEFAULT_USE_SPEAKER_BOOST, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Mapping
|
4
5
|
from elevenlabs import AsyncElevenLabs as AsyncElevenLabs
|
5
6
|
from elevenlabs.types import Model as Model, Voice as ElevenLabsVoice, VoiceSettings
|
6
7
|
from homeassistant.components.tts import ATTR_VOICE as ATTR_VOICE, TextToSpeechEntity as TextToSpeechEntity, TtsAudioType as TtsAudioType, Voice as Voice
|
@@ -9,13 +10,12 @@ from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
10
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
11
|
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
11
12
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
12
|
-
from types import MappingProxyType
|
13
13
|
from typing import Any
|
14
14
|
|
15
15
|
_LOGGER: Incomplete
|
16
16
|
PARALLEL_UPDATES: int
|
17
17
|
|
18
|
-
def to_voice_settings(options:
|
18
|
+
def to_voice_settings(options: Mapping[str, Any]) -> VoiceSettings: ...
|
19
19
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ElevenLabsConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
20
20
|
|
21
21
|
class ElevenLabsTTSEntity(TextToSpeechEntity):
|
@@ -8,6 +8,7 @@ from homeassistant.components.sensor import ATTR_LAST_RESET as ATTR_LAST_RESET,
|
|
8
8
|
from homeassistant.components.sensor.recorder import reset_detected as reset_detected
|
9
9
|
from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT as ATTR_UNIT_OF_MEASUREMENT, UnitOfEnergy as UnitOfEnergy, UnitOfVolume as UnitOfVolume
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id, valid_entity_id as valid_entity_id
|
11
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
11
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
13
|
from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
|
13
14
|
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
@@ -34,6 +35,8 @@ class SourceAdapter:
|
|
34
35
|
|
35
36
|
SOURCE_ADAPTERS: Final[Incomplete]
|
36
37
|
|
38
|
+
class EntityNotFoundError(HomeAssistantError): ...
|
39
|
+
|
37
40
|
class SensorManager:
|
38
41
|
manager: Incomplete
|
39
42
|
async_add_entities: Incomplete
|
@@ -64,6 +67,8 @@ class EnergyCostSensor(SensorEntity):
|
|
64
67
|
def _reset(self, energy_state: State) -> None: ...
|
65
68
|
@callback
|
66
69
|
def _update_cost(self) -> None: ...
|
70
|
+
def _get_energy_price(self, valid_units: set[str], default_unit: str | None) -> tuple[float, str | None]: ...
|
71
|
+
def _convert_energy_price(self, energy_price: float, energy_price_unit: str | None, energy_unit: str) -> float: ...
|
67
72
|
_attr_name: Incomplete
|
68
73
|
async def async_added_to_hass(self) -> None: ...
|
69
74
|
@callback
|
@@ -4,7 +4,7 @@ from .coordinator import EnphaseConfigEntry as EnphaseConfigEntry
|
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from collections.abc import Mapping
|
6
6
|
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
|
7
|
-
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
7
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.helpers.httpx_client import get_async_client as get_async_client
|
10
10
|
from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
|
@@ -16,7 +16,9 @@ _LOGGER: Incomplete
|
|
16
16
|
ENVOY: str
|
17
17
|
CONF_SERIAL: str
|
18
18
|
INSTALLER_AUTH_USERNAME: str
|
19
|
+
AVOID_REFLECT_KEYS: Incomplete
|
19
20
|
|
21
|
+
def without_avoid_reflect_keys(dictionary: Mapping[str, Any]) -> dict[str, Any]: ...
|
20
22
|
async def validate_input(hass: HomeAssistant, host: str, username: str, password: str, errors: dict[str, str], description_placeholders: dict[str, str]) -> Envoy: ...
|
21
23
|
|
22
24
|
class EnphaseConfigFlow(ConfigFlow, domain=DOMAIN):
|
@@ -1,13 +1,15 @@
|
|
1
1
|
import datetime
|
2
2
|
from .const import DOMAIN as DOMAIN, INVALID_AUTH_ERRORS as INVALID_AUTH_ERRORS
|
3
3
|
from _typeshed import Incomplete
|
4
|
+
from datetime import timedelta
|
4
5
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
6
|
from homeassistant.const import CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
|
6
7
|
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant, callback as callback
|
7
8
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
|
8
|
-
from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
|
9
|
+
from homeassistant.helpers.event import async_call_later as async_call_later, async_track_time_interval as async_track_time_interval
|
9
10
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
10
11
|
from pyenphase import Envoy as Envoy
|
12
|
+
from pyenphase.models.home import EnvoyInterfaceInformation as EnvoyInterfaceInformation
|
11
13
|
from typing import Any
|
12
14
|
|
13
15
|
SCAN_INTERVAL: Incomplete
|
@@ -15,6 +17,7 @@ TOKEN_REFRESH_CHECK_INTERVAL: Incomplete
|
|
15
17
|
STALE_TOKEN_THRESHOLD: Incomplete
|
16
18
|
NOTIFICATION_ID: str
|
17
19
|
FIRMWARE_REFRESH_INTERVAL: Incomplete
|
20
|
+
MAC_VERIFICATION_DELAY: Incomplete
|
18
21
|
_LOGGER: Incomplete
|
19
22
|
type EnphaseConfigEntry = ConfigEntry[EnphaseUpdateCoordinator]
|
20
23
|
|
@@ -22,12 +25,14 @@ class EnphaseUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
|
|
22
25
|
envoy_serial_number: str
|
23
26
|
envoy_firmware: str
|
24
27
|
config_entry: EnphaseConfigEntry
|
28
|
+
interface: EnvoyInterfaceInformation | None
|
25
29
|
envoy: Incomplete
|
26
30
|
username: Incomplete
|
27
31
|
password: Incomplete
|
28
32
|
_setup_complete: bool
|
29
33
|
_cancel_token_refresh: CALLBACK_TYPE | None
|
30
34
|
_cancel_firmware_refresh: CALLBACK_TYPE | None
|
35
|
+
_cancel_mac_verification: CALLBACK_TYPE | None
|
31
36
|
def __init__(self, hass: HomeAssistant, envoy: Envoy, entry: EnphaseConfigEntry) -> None: ...
|
32
37
|
@callback
|
33
38
|
def _async_refresh_token_if_needed(self, now: datetime.datetime) -> None: ...
|
@@ -35,6 +40,10 @@ class EnphaseUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
|
|
35
40
|
@callback
|
36
41
|
def _async_refresh_firmware(self, now: datetime.datetime) -> None: ...
|
37
42
|
async def _async_try_refresh_firmware(self) -> None: ...
|
43
|
+
def _schedule_mac_verification(self, delay: timedelta = ...) -> None: ...
|
44
|
+
@callback
|
45
|
+
def _async_verify_mac(self, now: datetime.datetime) -> None: ...
|
46
|
+
async def _async_fetch_and_compare_mac(self) -> None: ...
|
38
47
|
@callback
|
39
48
|
def _async_mark_setup_complete(self) -> None: ...
|
40
49
|
async def _async_setup_and_authenticate(self) -> None: ...
|
@@ -44,3 +53,5 @@ class EnphaseUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
|
|
44
53
|
def async_cancel_token_refresh(self) -> None: ...
|
45
54
|
@callback
|
46
55
|
def async_cancel_firmware_refresh(self) -> None: ...
|
56
|
+
@callback
|
57
|
+
def async_cancel_mac_verification(self) -> None: ...
|
@@ -1,13 +1,14 @@
|
|
1
|
-
from .
|
1
|
+
from . import dashboard as dashboard, ffmpeg_proxy as ffmpeg_proxy
|
2
|
+
from .const import CONF_BLUETOOTH_MAC_ADDRESS as CONF_BLUETOOTH_MAC_ADDRESS, CONF_NOISE_PSK as CONF_NOISE_PSK, DOMAIN as DOMAIN
|
2
3
|
from .domain_data import DomainData as DomainData
|
3
4
|
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry, RuntimeEntryData as RuntimeEntryData
|
4
|
-
from .
|
5
|
-
from .manager import ESPHomeManager as ESPHomeManager, cleanup_instance as cleanup_instance
|
5
|
+
from .manager import DEVICE_CONFLICT_ISSUE_FORMAT as DEVICE_CONFLICT_ISSUE_FORMAT, ESPHomeManager as ESPHomeManager, cleanup_instance as cleanup_instance
|
6
6
|
from _typeshed import Incomplete
|
7
|
-
from homeassistant.components import
|
7
|
+
from homeassistant.components import zeroconf as zeroconf
|
8
8
|
from homeassistant.components.bluetooth import async_remove_scanner as async_remove_scanner
|
9
9
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
|
+
from homeassistant.helpers.issue_registry import async_delete_issue as async_delete_issue
|
11
12
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
12
13
|
|
13
14
|
CONFIG_SCHEMA: Incomplete
|
@@ -5,6 +5,7 @@ from aioesphomeapi import APIIntEnum, AlarmControlPanelEntityState as ESPHomeAla
|
|
5
5
|
from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity as AlarmControlPanelEntity, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState, CodeFormat as CodeFormat
|
6
6
|
from homeassistant.core import callback as callback
|
7
7
|
|
8
|
+
PARALLEL_UPDATES: int
|
8
9
|
_ESPHOME_ACP_STATE_TO_HASS_STATE: EsphomeEnumMapper[ESPHomeAlarmControlPanelState, AlarmControlPanelState]
|
9
10
|
|
10
11
|
class EspHomeACPFeatures(APIIntEnum):
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import asyncio
|
2
2
|
from .const import DOMAIN as DOMAIN
|
3
|
-
from .entity import EsphomeAssistEntity as EsphomeAssistEntity
|
4
|
-
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
|
3
|
+
from .entity import EsphomeAssistEntity as EsphomeAssistEntity, convert_api_error_ha_error as convert_api_error_ha_error
|
4
|
+
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
|
5
5
|
from .enum_mapper import EsphomeEnumMapper as EsphomeEnumMapper
|
6
6
|
from .ffmpeg_proxy import async_create_proxy_url as async_create_proxy_url
|
7
7
|
from _typeshed import Incomplete
|
@@ -11,12 +11,12 @@ from homeassistant.components import assist_satellite as assist_satellite, tts a
|
|
11
11
|
from homeassistant.components.assist_pipeline import PipelineEvent as PipelineEvent, PipelineEventType as PipelineEventType, PipelineStage as PipelineStage
|
12
12
|
from homeassistant.components.intent import TimerEventType as TimerEventType, TimerInfo as TimerInfo, async_register_timer_handler as async_register_timer_handler
|
13
13
|
from homeassistant.components.media_player import async_process_play_media_url as async_process_play_media_url
|
14
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
15
14
|
from homeassistant.const import Platform as Platform
|
16
15
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
17
16
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
18
17
|
from typing import Any
|
19
18
|
|
19
|
+
PARALLEL_UPDATES: int
|
20
20
|
_LOGGER: Incomplete
|
21
21
|
_VOICE_ASSISTANT_EVENT_TYPES: EsphomeEnumMapper[VoiceAssistantEventType, PipelineEventType]
|
22
22
|
_TIMER_EVENT_TYPES: EsphomeEnumMapper[VoiceAssistantTimerEventType, TimerEventType]
|
@@ -28,7 +28,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ESPHomeConfigEntry, asyn
|
|
28
28
|
class EsphomeAssistSatellite(EsphomeAssistEntity, assist_satellite.AssistSatelliteEntity):
|
29
29
|
entity_description: Incomplete
|
30
30
|
config_entry: Incomplete
|
31
|
-
entry_data: Incomplete
|
32
31
|
cli: Incomplete
|
33
32
|
_is_running: bool
|
34
33
|
_pipeline_task: asyncio.Task | None
|
@@ -36,7 +35,7 @@ class EsphomeAssistSatellite(EsphomeAssistEntity, assist_satellite.AssistSatelli
|
|
36
35
|
_tts_streaming_task: asyncio.Task | None
|
37
36
|
_udp_server: VoiceAssistantUDPServer | None
|
38
37
|
_satellite_config: Incomplete
|
39
|
-
def __init__(self,
|
38
|
+
def __init__(self, entry: ESPHomeConfigEntry) -> None: ...
|
40
39
|
@property
|
41
40
|
def pipeline_entity_id(self) -> str | None: ...
|
42
41
|
@property
|
@@ -48,7 +47,9 @@ class EsphomeAssistSatellite(EsphomeAssistEntity, assist_satellite.AssistSatelli
|
|
48
47
|
async def async_added_to_hass(self) -> None: ...
|
49
48
|
async def async_will_remove_from_hass(self) -> None: ...
|
50
49
|
def on_pipeline_event(self, event: PipelineEvent) -> None: ...
|
50
|
+
@convert_api_error_ha_error
|
51
51
|
async def async_announce(self, announcement: assist_satellite.AssistSatelliteAnnouncement) -> None: ...
|
52
|
+
@convert_api_error_ha_error
|
52
53
|
async def async_start_conversation(self, start_announcement: assist_satellite.AssistSatelliteAnnouncement) -> None: ...
|
53
54
|
async def _do_announce(self, announcement: assist_satellite.AssistSatelliteAnnouncement, run_pipeline_after: bool) -> None: ...
|
54
55
|
_attr_tts_options: Incomplete
|
@@ -61,7 +62,7 @@ class EsphomeAssistSatellite(EsphomeAssistEntity, assist_satellite.AssistSatelli
|
|
61
62
|
@callback
|
62
63
|
def async_set_wake_word(self, wake_word_id: str) -> None: ...
|
63
64
|
def _update_tts_format(self) -> None: ...
|
64
|
-
async def _stream_tts_audio(self,
|
65
|
+
async def _stream_tts_audio(self, tts_result: tts.ResultStream, sample_rate: int = 16000, sample_width: int = 2, sample_channels: int = 1, samples_per_chunk: int = 512) -> None: ...
|
65
66
|
async def _wrap_audio_stream(self) -> AsyncIterable[bytes]: ...
|
66
67
|
def _stop_pipeline(self) -> None: ...
|
67
68
|
def _abort_pipeline(self) -> None: ...
|
@@ -1,14 +1,11 @@
|
|
1
|
-
from .
|
2
|
-
from .entity import EsphomeAssistEntity as EsphomeAssistEntity, EsphomeEntity as EsphomeEntity, platform_async_setup_entry as platform_async_setup_entry
|
3
|
-
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
|
1
|
+
from .entity import EsphomeEntity as EsphomeEntity, platform_async_setup_entry as platform_async_setup_entry
|
4
2
|
from _typeshed import Incomplete
|
5
3
|
from aioesphomeapi import BinarySensorInfo, BinarySensorState, EntityInfo as EntityInfo
|
6
|
-
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity
|
7
|
-
from homeassistant.core import
|
8
|
-
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
4
|
+
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity
|
5
|
+
from homeassistant.core import callback as callback
|
9
6
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
10
7
|
|
11
|
-
|
8
|
+
PARALLEL_UPDATES: int
|
12
9
|
|
13
10
|
class EsphomeBinarySensor(EsphomeEntity[BinarySensorInfo, BinarySensorState], BinarySensorEntity):
|
14
11
|
@property
|
@@ -19,9 +16,4 @@ class EsphomeBinarySensor(EsphomeEntity[BinarySensorInfo, BinarySensorState], Bi
|
|
19
16
|
@property
|
20
17
|
def available(self) -> bool: ...
|
21
18
|
|
22
|
-
|
23
|
-
entity_description: Incomplete
|
24
|
-
async def async_added_to_hass(self) -> None: ...
|
25
|
-
async def async_will_remove_from_hass(self) -> None: ...
|
26
|
-
@property
|
27
|
-
def is_on(self) -> bool | None: ...
|
19
|
+
async_setup_entry: Incomplete
|
@@ -5,6 +5,8 @@ from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceCla
|
|
5
5
|
from homeassistant.core import callback as callback
|
6
6
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
7
7
|
|
8
|
+
PARALLEL_UPDATES: int
|
9
|
+
|
8
10
|
class EsphomeButton(EsphomeEntity[ButtonInfo, EntityState], ButtonEntity):
|
9
11
|
_attr_device_class: Incomplete
|
10
12
|
@callback
|
@@ -9,6 +9,8 @@ from homeassistant.components.camera import Camera as Camera
|
|
9
9
|
from homeassistant.core import callback as callback
|
10
10
|
from typing import Any
|
11
11
|
|
12
|
+
PARALLEL_UPDATES: int
|
13
|
+
|
12
14
|
class EsphomeCamera(Camera, EsphomeEntity[CameraInfo, CameraState]):
|
13
15
|
_loop: Incomplete
|
14
16
|
_image_futures: list[asyncio.Future[bool | None]]
|
@@ -7,6 +7,7 @@ from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, PRECISION_
|
|
7
7
|
from homeassistant.core import callback as callback
|
8
8
|
from typing import Any
|
9
9
|
|
10
|
+
PARALLEL_UPDATES: int
|
10
11
|
FAN_QUIET: str
|
11
12
|
_CLIMATE_MODES: EsphomeEnumMapper[ClimateMode, HVACMode]
|
12
13
|
_CLIMATE_ACTIONS: EsphomeEnumMapper[ClimateAction, HVACAction]
|
@@ -1,12 +1,15 @@
|
|
1
|
-
from .const import CONF_ALLOW_SERVICE_CALLS as CONF_ALLOW_SERVICE_CALLS, CONF_DEVICE_NAME as CONF_DEVICE_NAME, CONF_NOISE_PSK as CONF_NOISE_PSK, CONF_SUBSCRIBE_LOGS as CONF_SUBSCRIBE_LOGS, DEFAULT_ALLOW_SERVICE_CALLS as DEFAULT_ALLOW_SERVICE_CALLS, DEFAULT_NEW_CONFIG_ALLOW_ALLOW_SERVICE_CALLS as DEFAULT_NEW_CONFIG_ALLOW_ALLOW_SERVICE_CALLS, DOMAIN as DOMAIN
|
1
|
+
from .const import CONF_ALLOW_SERVICE_CALLS as CONF_ALLOW_SERVICE_CALLS, CONF_DEVICE_NAME as CONF_DEVICE_NAME, CONF_NOISE_PSK as CONF_NOISE_PSK, CONF_SUBSCRIBE_LOGS as CONF_SUBSCRIBE_LOGS, DEFAULT_ALLOW_SERVICE_CALLS as DEFAULT_ALLOW_SERVICE_CALLS, DEFAULT_NEW_CONFIG_ALLOW_ALLOW_SERVICE_CALLS as DEFAULT_NEW_CONFIG_ALLOW_ALLOW_SERVICE_CALLS, DEFAULT_PORT as DEFAULT_PORT, DOMAIN as DOMAIN
|
2
2
|
from .dashboard import async_get_or_create_dashboard_manager as async_get_or_create_dashboard_manager, async_set_dashboard_info as async_set_dashboard_info
|
3
|
+
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
|
4
|
+
from .manager import async_replace_device as async_replace_device
|
3
5
|
from _typeshed import Incomplete
|
4
6
|
from aioesphomeapi import DeviceInfo as DeviceInfo
|
5
7
|
from collections.abc import Mapping
|
6
8
|
from homeassistant.components import zeroconf as zeroconf
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_REAUTH as SOURCE_REAUTH
|
9
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, SOURCE_IGNORE as SOURCE_IGNORE, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
8
10
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT
|
9
11
|
from homeassistant.core import callback as callback
|
12
|
+
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
10
13
|
from homeassistant.helpers.device_registry import format_mac as format_mac
|
11
14
|
from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
12
15
|
from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
@@ -17,13 +20,14 @@ from typing import Any
|
|
17
20
|
|
18
21
|
ERROR_REQUIRES_ENCRYPTION_KEY: str
|
19
22
|
ERROR_INVALID_ENCRYPTION_KEY: str
|
20
|
-
ESPHOME_URL: str
|
21
23
|
_LOGGER: Incomplete
|
22
24
|
ZERO_NOISE_PSK: str
|
25
|
+
DEFAULT_NAME: str
|
23
26
|
|
24
27
|
class EsphomeFlowHandler(ConfigFlow, domain=DOMAIN):
|
25
28
|
VERSION: int
|
26
29
|
_reauth_entry: ConfigEntry
|
30
|
+
_reconfig_entry: ConfigEntry
|
27
31
|
_host: str | None
|
28
32
|
__name: str | None
|
29
33
|
_port: int | None
|
@@ -32,12 +36,15 @@ class EsphomeFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
32
36
|
_noise_psk: str | None
|
33
37
|
_device_info: DeviceInfo | None
|
34
38
|
_device_name: str | None
|
39
|
+
_device_mac: str | None
|
40
|
+
_entry_with_name_conflict: ConfigEntry | None
|
35
41
|
def __init__(self) -> None: ...
|
36
42
|
async def _async_step_user_base(self, user_input: dict[str, Any] | None = None, error: str | None = None) -> ConfigFlowResult: ...
|
37
43
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
38
44
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
39
45
|
async def async_step_reauth_encryption_removed_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
40
46
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
47
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
41
48
|
@property
|
42
49
|
def _name(self) -> str: ...
|
43
50
|
@_name.setter
|
@@ -46,19 +53,33 @@ class EsphomeFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
46
53
|
async def _async_authenticate_or_add(self) -> ConfigFlowResult: ...
|
47
54
|
async def async_step_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
48
55
|
async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
|
56
|
+
async def _async_validate_mac_abort_configured(self, formatted_mac: str, host: str, port: int | None) -> None: ...
|
57
|
+
@callback
|
58
|
+
def _abort_unique_id_configured_with_details(self, updates: dict[str, Any]) -> None: ...
|
49
59
|
async def async_step_mqtt(self, discovery_info: MqttServiceInfo) -> ConfigFlowResult: ...
|
50
60
|
async def async_step_dhcp(self, discovery_info: DhcpServiceInfo) -> ConfigFlowResult: ...
|
51
61
|
async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> ConfigFlowResult: ...
|
62
|
+
async def async_step_name_conflict(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
63
|
+
async def async_step_name_conflict_migrate(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
64
|
+
async def async_step_name_conflict_overwrite(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
65
|
+
@callback
|
66
|
+
def _async_create_entry(self) -> ConfigFlowResult: ...
|
52
67
|
@callback
|
53
|
-
def
|
68
|
+
def _async_make_config_data(self) -> dict[str, Any]: ...
|
69
|
+
async def _async_validated_connection(self) -> ConfigFlowResult: ...
|
70
|
+
async def _async_reauth_validated_connection(self) -> ConfigFlowResult: ...
|
71
|
+
async def _async_reconfig_validated_connection(self) -> ConfigFlowResult: ...
|
54
72
|
async def async_step_encryption_key(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
73
|
+
@callback
|
74
|
+
def _async_get_human_readable_name(self) -> str: ...
|
55
75
|
async def async_step_authenticate(self, user_input: dict[str, Any] | None = None, error: str | None = None) -> ConfigFlowResult: ...
|
76
|
+
async def _fetch_device_info(self, host: str, port: int | None, noise_psk: str | None) -> str | None: ...
|
56
77
|
async def fetch_device_info(self) -> str | None: ...
|
57
78
|
async def try_login(self) -> str | None: ...
|
58
79
|
async def _retrieve_encryption_key_from_dashboard(self) -> bool: ...
|
59
80
|
@staticmethod
|
60
81
|
@callback
|
61
|
-
def async_get_options_flow(config_entry:
|
82
|
+
def async_get_options_flow(config_entry: ESPHomeConfigEntry) -> OptionsFlowHandler: ...
|
62
83
|
|
63
84
|
class OptionsFlowHandler(OptionsFlow):
|
64
85
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
+
from typing import Final
|
2
3
|
|
3
4
|
DOMAIN: str
|
4
5
|
CONF_ALLOW_SERVICE_CALLS: str
|
@@ -8,9 +9,9 @@ CONF_NOISE_PSK: str
|
|
8
9
|
CONF_BLUETOOTH_MAC_ADDRESS: str
|
9
10
|
DEFAULT_ALLOW_SERVICE_CALLS: bool
|
10
11
|
DEFAULT_NEW_CONFIG_ALLOW_ALLOW_SERVICE_CALLS: bool
|
12
|
+
DEFAULT_PORT: Final[int]
|
11
13
|
STABLE_BLE_VERSION_STR: str
|
12
14
|
STABLE_BLE_VERSION: Incomplete
|
13
15
|
PROJECT_URLS: Incomplete
|
14
16
|
STABLE_BLE_URL_VERSION: Incomplete
|
15
17
|
DEFAULT_URL: Incomplete
|
16
|
-
DATA_FFMPEG_PROXY: Incomplete
|
@@ -1,16 +1,17 @@
|
|
1
|
-
import aiohttp
|
2
1
|
from _typeshed import Incomplete
|
3
2
|
from esphome_dashboard_api import ConfiguredDevice
|
4
3
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
4
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
5
5
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
|
6
6
|
|
7
7
|
_LOGGER: Incomplete
|
8
8
|
MIN_VERSION_SUPPORTS_UPDATE: Incomplete
|
9
|
+
REFRESH_INTERVAL: Incomplete
|
9
10
|
|
10
11
|
class ESPHomeDashboardCoordinator(DataUpdateCoordinator[dict[str, ConfiguredDevice]]):
|
11
12
|
addon_slug: Incomplete
|
12
13
|
url: Incomplete
|
13
14
|
api: Incomplete
|
14
15
|
supports_update: bool | None
|
15
|
-
def __init__(self, hass: HomeAssistant, addon_slug: str, url: str
|
16
|
-
async def _async_update_data(self) -> dict: ...
|
16
|
+
def __init__(self, hass: HomeAssistant, addon_slug: str, url: str) -> None: ...
|
17
|
+
async def _async_update_data(self) -> dict[str, ConfiguredDevice]: ...
|
@@ -6,6 +6,8 @@ from homeassistant.core import callback as callback
|
|
6
6
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
7
7
|
from typing import Any
|
8
8
|
|
9
|
+
PARALLEL_UPDATES: int
|
10
|
+
|
9
11
|
class EsphomeCover(EsphomeEntity[CoverInfo, CoverState], CoverEntity):
|
10
12
|
_attr_supported_features: Incomplete
|
11
13
|
_attr_device_class: Incomplete
|
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
|
|
4
4
|
from homeassistant.config_entries import SOURCE_REAUTH as SOURCE_REAUTH
|
5
5
|
from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
|
6
6
|
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
7
|
-
from homeassistant.helpers.
|
7
|
+
from homeassistant.helpers.hassio import is_hassio as is_hassio
|
8
8
|
from homeassistant.helpers.singleton import singleton as singleton
|
9
9
|
from homeassistant.helpers.storage import Store as Store
|
10
10
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
@@ -4,6 +4,8 @@ from aioesphomeapi import DateInfo, DateState
|
|
4
4
|
from datetime import date
|
5
5
|
from homeassistant.components.date import DateEntity as DateEntity
|
6
6
|
|
7
|
+
PARALLEL_UPDATES: int
|
8
|
+
|
7
9
|
class EsphomeDate(EsphomeEntity[DateInfo, DateState], DateEntity):
|
8
10
|
@property
|
9
11
|
@esphome_state_property
|
@@ -4,6 +4,8 @@ from aioesphomeapi import DateTimeInfo, DateTimeState
|
|
4
4
|
from datetime import datetime
|
5
5
|
from homeassistant.components.datetime import DateTimeEntity as DateTimeEntity
|
6
6
|
|
7
|
+
PARALLEL_UPDATES: int
|
8
|
+
|
7
9
|
class EsphomeDateTime(EsphomeEntity[DateTimeInfo, DateTimeState], DateTimeEntity):
|
8
10
|
@property
|
9
11
|
@esphome_state_property
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from . import CONF_NOISE_PSK as CONF_NOISE_PSK
|
2
|
+
from .const import CONF_DEVICE_NAME as CONF_DEVICE_NAME
|
2
3
|
from .dashboard import async_get_dashboard as async_get_dashboard
|
3
4
|
from .entry_data import ESPHomeConfigEntry as ESPHomeConfigEntry
|
4
5
|
from _typeshed import Incomplete
|
@@ -9,5 +10,6 @@ from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
10
|
from typing import Any
|
10
11
|
|
11
12
|
REDACT_KEYS: Incomplete
|
13
|
+
CONFIGURED_DEVICE_KEYS: Incomplete
|
12
14
|
|
13
15
|
async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: ESPHomeConfigEntry) -> dict[str, Any]: ...
|