homeassistant-stubs 2025.7.4__py3-none-any.whl → 2025.8.0__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.
Potentially problematic release.
This version of homeassistant-stubs might be problematic. Click here for more details.
- homeassistant-stubs/bootstrap.pyi +1 -1
- homeassistant-stubs/components/airnow/__init__.pyi +0 -1
- homeassistant-stubs/components/airnow/config_flow.pyi +2 -2
- homeassistant-stubs/components/airos/__init__.pyi +9 -0
- homeassistant-stubs/components/airos/config_flow.pyi +14 -0
- homeassistant-stubs/components/airos/const.pyi +5 -0
- homeassistant-stubs/components/airos/coordinator.pyi +16 -0
- homeassistant-stubs/components/airos/diagnostics.pyi +13 -0
- homeassistant-stubs/components/airos/entity.pyi +11 -0
- homeassistant-stubs/components/airos/sensor.pyi +29 -0
- homeassistant-stubs/components/airq/const.pyi +0 -1
- homeassistant-stubs/components/airq/sensor.pyi +2 -2
- homeassistant-stubs/components/airthings/__init__.pyi +1 -3
- homeassistant-stubs/components/airthings/coordinator.pyi +3 -1
- homeassistant-stubs/components/airthings/sensor.pyi +1 -1
- homeassistant-stubs/components/alexa_devices/__init__.pyi +6 -0
- homeassistant-stubs/components/alexa_devices/config_flow.pyi +10 -0
- homeassistant-stubs/components/alexa_devices/coordinator.pyi +4 -3
- homeassistant-stubs/components/alexa_devices/services.pyi +24 -0
- homeassistant-stubs/components/amberelectric/__init__.pyi +7 -1
- homeassistant-stubs/components/amberelectric/const.pyi +8 -1
- homeassistant-stubs/components/amberelectric/coordinator.pyi +1 -2
- homeassistant-stubs/components/amberelectric/helpers.pyi +6 -0
- homeassistant-stubs/components/amberelectric/sensor.pyi +2 -2
- homeassistant-stubs/components/amberelectric/services.pyi +15 -0
- homeassistant-stubs/components/analytics/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics/analytics.pyi +3 -0
- homeassistant-stubs/components/analytics/http.pyi +10 -0
- homeassistant-stubs/components/analytics_insights/__init__.pyi +0 -1
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +2 -2
- homeassistant-stubs/components/androidtv_remote/__init__.pyi +2 -6
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +6 -6
- homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +1 -1
- homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -2
- homeassistant-stubs/components/androidtv_remote/helpers.pyi +3 -1
- homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -4
- homeassistant-stubs/components/androidtv_remote/remote.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/const.pyi +0 -1
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -5
- homeassistant-stubs/components/asuswrt/router.pyi +3 -1
- homeassistant-stubs/components/awair/const.pyi +1 -0
- homeassistant-stubs/components/awair/sensor.pyi +1 -1
- homeassistant-stubs/components/backup/__init__.pyi +6 -2
- homeassistant-stubs/components/backup/coordinator.pyi +0 -1
- homeassistant-stubs/components/backup/manager.pyi +6 -3
- homeassistant-stubs/components/backup/onboarding.pyi +1 -1
- homeassistant-stubs/components/backup/services.pyi +7 -0
- homeassistant-stubs/components/backup/websocket.pyi +4 -1
- homeassistant-stubs/components/blue_current/__init__.pyi +5 -5
- homeassistant-stubs/components/blue_current/const.pyi +11 -0
- homeassistant-stubs/components/blue_current/switch.pyi +40 -0
- homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
- homeassistant-stubs/components/bosch_alarm/services.pyi +3 -2
- homeassistant-stubs/components/bring/__init__.pyi +5 -0
- homeassistant-stubs/components/bring/const.pyi +4 -0
- homeassistant-stubs/components/bring/services.pyi +14 -0
- homeassistant-stubs/components/cloud/backup.pyi +3 -3
- homeassistant-stubs/components/cloud/repairs.pyi +3 -3
- homeassistant-stubs/components/cloud/subscription.pyi +2 -1
- homeassistant-stubs/components/cloud/tts.pyi +2 -1
- homeassistant-stubs/components/command_line/sensor.pyi +0 -2
- homeassistant-stubs/components/demo/vacuum.pyi +0 -3
- homeassistant-stubs/components/derivative/__init__.pyi +5 -1
- homeassistant-stubs/components/derivative/config_flow.pyi +2 -0
- homeassistant-stubs/components/derivative/sensor.pyi +7 -4
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +3 -7
- homeassistant-stubs/components/devolo_home_control/entity.pyi +0 -1
- homeassistant-stubs/components/devolo_home_network/coordinator.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +1 -1
- homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
- homeassistant-stubs/components/discovergy/coordinator.pyi +1 -0
- homeassistant-stubs/components/dnsip/__init__.pyi +0 -1
- homeassistant-stubs/components/dnsip/config_flow.pyi +2 -2
- homeassistant-stubs/components/downloader/services.pyi +1 -0
- homeassistant-stubs/components/ecovacs/binary_sensor.pyi +13 -3
- homeassistant-stubs/components/ecovacs/sensor.pyi +13 -0
- homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -7
- homeassistant-stubs/components/eheimdigital/config_flow.pyi +2 -1
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +1 -1
- homeassistant-stubs/components/elevenlabs/const.pyi +0 -2
- homeassistant-stubs/components/elevenlabs/tts.pyi +2 -3
- homeassistant-stubs/components/enphase_envoy/__init__.pyi +0 -2
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
- homeassistant-stubs/components/esphome/config_flow.pyi +2 -0
- homeassistant-stubs/components/esphome/encryption_key_storage.pyi +29 -0
- homeassistant-stubs/components/esphome/entity.pyi +3 -1
- homeassistant-stubs/components/esphome/entry_data.pyi +14 -6
- homeassistant-stubs/components/esphome/manager.pyi +3 -1
- homeassistant-stubs/components/feedreader/__init__.pyi +0 -1
- homeassistant-stubs/components/feedreader/config_flow.pyi +3 -3
- homeassistant-stubs/components/forecast_solar/__init__.pyi +0 -1
- homeassistant-stubs/components/forecast_solar/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritz/__init__.pyi +0 -1
- homeassistant-stubs/components/fritz/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +0 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
- homeassistant-stubs/components/frontend/__init__.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/__init__.pyi +3 -1
- homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -3
- homeassistant-stubs/components/generic_thermostat/__init__.pyi +5 -1
- homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/geo_location/trigger.pyi +0 -1
- homeassistant-stubs/components/gios/const.pyi +2 -0
- homeassistant-stubs/components/gios/sensor.pyi +1 -1
- homeassistant-stubs/components/google_assistant_sdk/application_credentials.pyi +1 -0
- homeassistant-stubs/components/google_cloud/const.pyi +1 -0
- homeassistant-stubs/components/google_cloud/stt.pyi +3 -2
- homeassistant-stubs/components/guardian/__init__.pyi +1 -1
- homeassistant-stubs/components/guardian/services.pyi +2 -1
- homeassistant-stubs/components/habitica/button.pyi +3 -4
- homeassistant-stubs/components/habitica/coordinator.pyi +2 -3
- homeassistant-stubs/components/habitica/entity.pyi +1 -1
- homeassistant-stubs/components/habitica/sensor.pyi +3 -18
- homeassistant-stubs/components/habitica/switch.pyi +4 -3
- homeassistant-stubs/components/habitica/util.pyi +2 -1
- homeassistant-stubs/components/heos/__init__.pyi +1 -1
- homeassistant-stubs/components/heos/config_flow.pyi +3 -0
- homeassistant-stubs/components/heos/services.pyi +3 -2
- homeassistant-stubs/components/here_travel_time/__init__.pyi +3 -1
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +3 -2
- homeassistant-stubs/components/here_travel_time/const.pyi +1 -0
- homeassistant-stubs/components/here_travel_time/coordinator.pyi +1 -1
- homeassistant-stubs/components/here_travel_time/model.pyi +2 -1
- homeassistant-stubs/components/history_stats/__init__.pyi +5 -1
- homeassistant-stubs/components/history_stats/config_flow.pyi +14 -0
- homeassistant-stubs/components/history_stats/coordinator.pyi +3 -1
- homeassistant-stubs/components/history_stats/data.pyi +2 -1
- homeassistant-stubs/components/history_stats/helpers.pyi +1 -1
- homeassistant-stubs/components/history_stats/sensor.pyi +7 -4
- homeassistant-stubs/components/holiday/__init__.pyi +0 -1
- homeassistant-stubs/components/holiday/config_flow.pyi +2 -2
- homeassistant-stubs/components/home_connect/__init__.pyi +1 -1
- homeassistant-stubs/components/home_connect/services.pyi +3 -2
- homeassistant-stubs/components/homeassistant/__init__.pyi +2 -1
- homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/coordinator.pyi +2 -1
- homeassistant-stubs/components/homee/__init__.pyi +1 -1
- homeassistant-stubs/components/homee/config_flow.pyi +5 -0
- homeassistant-stubs/components/homekit/__init__.pyi +2 -1
- homeassistant-stubs/components/http/__init__.pyi +1 -2
- homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -2
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +5 -4
- homeassistant-stubs/components/huawei_lte/const.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/diagnostics.pyi +18 -0
- homeassistant-stubs/components/husqvarna_automower/button.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/calendar.pyi +3 -0
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +15 -13
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +2 -6
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +5 -0
- homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/const.pyi +1 -0
- homeassistant-stubs/components/hydrawise/coordinator.pyi +9 -2
- homeassistant-stubs/components/hydrawise/entity.pyi +1 -1
- homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
- homeassistant-stubs/components/hydrawise/valve.pyi +1 -1
- homeassistant-stubs/components/hyperion/__init__.pyi +0 -1
- homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
- homeassistant-stubs/components/imgw_pib/sensor.pyi +7 -1
- homeassistant-stubs/components/immich/__init__.pyi +6 -0
- homeassistant-stubs/components/immich/media_source.pyi +1 -0
- homeassistant-stubs/components/immich/services.pyi +18 -0
- homeassistant-stubs/components/input_text/__init__.pyi +1 -1
- homeassistant-stubs/components/integration/__init__.pyi +5 -1
- homeassistant-stubs/components/integration/config_flow.pyi +1 -0
- homeassistant-stubs/components/integration/sensor.pyi +5 -6
- homeassistant-stubs/components/iron_os/__init__.pyi +0 -3
- homeassistant-stubs/components/iron_os/const.pyi +4 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +1 -1
- homeassistant-stubs/components/iron_os/number.pyi +20 -4
- homeassistant-stubs/components/iron_os/switch.pyi +2 -0
- homeassistant-stubs/components/isy994/__init__.pyi +0 -1
- homeassistant-stubs/components/isy994/config_flow.pyi +3 -3
- homeassistant-stubs/components/jellyfin/browse_media.pyi +2 -1
- homeassistant-stubs/components/jellyfin/media_player.pyi +5 -2
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +5 -15
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +2 -2
- homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -5
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +11 -7
- homeassistant-stubs/components/knx/__init__.pyi +6 -40
- homeassistant-stubs/components/knx/binary_sensor.pyi +3 -2
- homeassistant-stubs/components/knx/button.pyi +1 -1
- homeassistant-stubs/components/knx/climate.pyi +1 -1
- homeassistant-stubs/components/knx/config_flow.pyi +14 -21
- homeassistant-stubs/components/knx/const.pyi +1 -1
- homeassistant-stubs/components/knx/cover.pyi +3 -2
- homeassistant-stubs/components/knx/date.pyi +1 -1
- homeassistant-stubs/components/knx/datetime.pyi +1 -1
- homeassistant-stubs/components/knx/entity.pyi +1 -1
- homeassistant-stubs/components/knx/fan.pyi +1 -1
- homeassistant-stubs/components/knx/knx_module.pyi +43 -0
- homeassistant-stubs/components/knx/light.pyi +3 -2
- homeassistant-stubs/components/knx/notify.pyi +1 -1
- homeassistant-stubs/components/knx/number.pyi +1 -1
- homeassistant-stubs/components/knx/scene.pyi +1 -1
- homeassistant-stubs/components/knx/select.pyi +1 -1
- homeassistant-stubs/components/knx/sensor.pyi +1 -1
- homeassistant-stubs/components/knx/services.pyi +2 -2
- homeassistant-stubs/components/knx/storage/config_store.pyi +4 -0
- homeassistant-stubs/components/knx/storage/const.pyi +8 -7
- homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +3 -10
- homeassistant-stubs/components/knx/storage/knx_selector.pyi +4 -0
- homeassistant-stubs/components/knx/storage/migration.pyi +5 -0
- homeassistant-stubs/components/knx/storage/util.pyi +16 -0
- homeassistant-stubs/components/knx/switch.pyi +3 -2
- homeassistant-stubs/components/knx/text.pyi +1 -1
- homeassistant-stubs/components/knx/time.pyi +1 -1
- homeassistant-stubs/components/knx/weather.pyi +1 -1
- homeassistant-stubs/components/knx/websocket.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
- homeassistant-stubs/components/lcn/binary_sensor.pyi +1 -20
- homeassistant-stubs/components/lcn/helpers.pyi +1 -0
- homeassistant-stubs/components/lcn/light.pyi +2 -1
- homeassistant-stubs/components/letpot/coordinator.pyi +3 -4
- homeassistant-stubs/components/letpot/switch.pyi +1 -1
- homeassistant-stubs/components/letpot/time.pyi +1 -1
- homeassistant-stubs/components/lifx/const.pyi +1 -0
- homeassistant-stubs/components/lifx/coordinator.pyi +5 -1
- homeassistant-stubs/components/lifx/manager.pyi +1 -1
- homeassistant-stubs/components/linkplay/select.pyi +35 -0
- homeassistant-stubs/components/litterrobot/sensor.pyi +3 -0
- homeassistant-stubs/components/matrix/__init__.pyi +1 -1
- homeassistant-stubs/components/matrix/services.pyi +3 -2
- homeassistant-stubs/components/matter/entity.pyi +2 -2
- homeassistant-stubs/components/matter/number.pyi +29 -1
- homeassistant-stubs/components/matter/select.pyi +2 -2
- homeassistant-stubs/components/matter/vacuum.pyi +2 -1
- homeassistant-stubs/components/mcp_server/server.pyi +1 -1
- homeassistant-stubs/components/mealie/const.pyi +2 -0
- homeassistant-stubs/components/mealie/services.pyi +4 -1
- homeassistant-stubs/components/media_player/const.pyi +2 -2
- homeassistant-stubs/components/media_source/const.pyi +3 -0
- homeassistant-stubs/components/media_source/local_source.pyi +1 -1
- homeassistant-stubs/components/media_source/models.pyi +6 -2
- homeassistant-stubs/components/met_eireann/__init__.pyi +2 -17
- homeassistant-stubs/components/met_eireann/coordinator.pyi +28 -0
- homeassistant-stubs/components/met_eireann/weather.pyi +1 -3
- homeassistant-stubs/components/miele/__init__.pyi +5 -0
- homeassistant-stubs/components/miele/coordinator.pyi +1 -1
- homeassistant-stubs/components/miele/entity.pyi +2 -0
- homeassistant-stubs/components/miele/sensor.pyi +7 -6
- homeassistant-stubs/components/miele/services.pyi +24 -0
- homeassistant-stubs/components/miele/vacuum.pyi +0 -2
- homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
- homeassistant-stubs/components/mold_indicator/__init__.pyi +8 -1
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +2 -0
- homeassistant-stubs/components/mold_indicator/sensor.pyi +2 -2
- homeassistant-stubs/components/mqtt/climate.pyi +1 -37
- homeassistant-stubs/components/mqtt/config_flow.pyi +38 -6
- homeassistant-stubs/components/mqtt/const.pyi +33 -2
- homeassistant-stubs/components/mqtt/repairs.pyi +15 -0
- homeassistant-stubs/components/mqtt/vacuum.pyi +4 -3
- homeassistant-stubs/components/nasweb/const.pyi +1 -0
- homeassistant-stubs/components/nasweb/coordinator.pyi +3 -1
- homeassistant-stubs/components/nasweb/sensor.pyi +54 -0
- homeassistant-stubs/components/netatmo/climate.pyi +1 -1
- homeassistant-stubs/components/netatmo/const.pyi +1 -0
- homeassistant-stubs/components/nextdns/__init__.pyi +2 -3
- homeassistant-stubs/components/nextdns/coordinator.pyi +10 -2
- homeassistant-stubs/components/nordpool/const.pyi +1 -0
- homeassistant-stubs/components/nordpool/services.pyi +5 -1
- homeassistant-stubs/components/number/const.pyi +2 -1
- homeassistant-stubs/components/nut/__init__.pyi +0 -1
- homeassistant-stubs/components/onewire/__init__.pyi +0 -1
- homeassistant-stubs/components/onewire/config_flow.pyi +2 -2
- homeassistant-stubs/components/onkyo/__init__.pyi +2 -3
- homeassistant-stubs/components/onkyo/config_flow.pyi +9 -6
- homeassistant-stubs/components/onkyo/const.pyi +7 -65
- homeassistant-stubs/components/onkyo/media_player.pyi +16 -44
- homeassistant-stubs/components/onkyo/receiver.pyi +24 -25
- homeassistant-stubs/components/onkyo/services.pyi +3 -3
- homeassistant-stubs/components/onkyo/util.pyi +3 -0
- homeassistant-stubs/components/open_router/__init__.pyi +15 -0
- homeassistant-stubs/components/open_router/ai_task.pyi +17 -0
- homeassistant-stubs/components/open_router/config_flow.pyi +30 -0
- homeassistant-stubs/components/open_router/const.pyi +8 -0
- homeassistant-stubs/components/open_router/conversation.pyi +20 -0
- homeassistant-stubs/components/open_router/entity.pyi +33 -0
- homeassistant-stubs/components/openai_conversation/__init__.pyi +4 -2
- homeassistant-stubs/components/openai_conversation/ai_task.pyi +16 -0
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +2 -3
- homeassistant-stubs/components/openai_conversation/const.pyi +9 -1
- homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -22
- homeassistant-stubs/components/openai_conversation/entity.pyi +36 -0
- homeassistant-stubs/components/opower/__init__.pyi +8 -0
- homeassistant-stubs/components/opower/config_flow.pyi +30 -0
- homeassistant-stubs/components/opower/const.pyi +4 -0
- homeassistant-stubs/components/opower/coordinator.pyi +24 -0
- homeassistant-stubs/components/opower/sensor.pyi +35 -0
- homeassistant-stubs/components/pegel_online/__init__.pyi +1 -1
- homeassistant-stubs/components/pegel_online/sensor.pyi +2 -0
- homeassistant-stubs/components/pi_hole/__init__.pyi +6 -2
- homeassistant-stubs/components/pi_hole/config_flow.pyi +1 -2
- homeassistant-stubs/components/pi_hole/const.pyi +1 -0
- homeassistant-stubs/components/pi_hole/sensor.pyi +5 -0
- homeassistant-stubs/components/pi_hole/update.pyi +3 -3
- homeassistant-stubs/components/ping/__init__.pyi +0 -1
- homeassistant-stubs/components/ping/config_flow.pyi +3 -3
- homeassistant-stubs/components/plugwise/select.pyi +1 -1
- homeassistant-stubs/components/proximity/__init__.pyi +0 -1
- homeassistant-stubs/components/proximity/config_flow.pyi +3 -3
- homeassistant-stubs/components/purpleair/__init__.pyi +0 -1
- homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
- homeassistant-stubs/components/pyload/config_flow.pyi +4 -0
- homeassistant-stubs/components/recorder/pool.pyi +2 -1
- homeassistant-stubs/components/renault/__init__.pyi +1 -1
- homeassistant-stubs/components/renault/services.pyi +3 -2
- homeassistant-stubs/components/reolink/__init__.pyi +0 -1
- homeassistant-stubs/components/reolink/config_flow.pyi +2 -2
- homeassistant-stubs/components/reolink/number.pyi +1 -1
- homeassistant-stubs/components/reolink/sensor.pyi +1 -1
- homeassistant-stubs/components/rest/sensor.pyi +1 -3
- homeassistant-stubs/components/roborock/__init__.pyi +0 -1
- homeassistant-stubs/components/roborock/config_flow.pyi +2 -2
- homeassistant-stubs/components/roborock/vacuum.pyi +0 -2
- homeassistant-stubs/components/roku/__init__.pyi +0 -1
- homeassistant-stubs/components/roku/config_flow.pyi +2 -2
- homeassistant-stubs/components/russound_rio/const.pyi +2 -0
- homeassistant-stubs/components/russound_rio/media_player.pyi +6 -0
- homeassistant-stubs/components/scrape/sensor.pyi +1 -2
- homeassistant-stubs/components/sensor/const.pyi +2 -1
- homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
- homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
- homeassistant-stubs/components/shelly/button.pyi +2 -2
- homeassistant-stubs/components/shelly/climate.pyi +2 -2
- homeassistant-stubs/components/shelly/coordinator.pyi +5 -1
- homeassistant-stubs/components/shelly/entity.pyi +3 -0
- homeassistant-stubs/components/shelly/event.pyi +2 -2
- homeassistant-stubs/components/shelly/sensor.pyi +2 -2
- homeassistant-stubs/components/shelly/utils.pyi +2 -2
- homeassistant-stubs/components/sleepiq/const.pyi +2 -0
- homeassistant-stubs/components/sleepiq/number.pyi +7 -3
- homeassistant-stubs/components/sleepiq/select.pyi +15 -2
- homeassistant-stubs/components/smhi/coordinator.pyi +3 -0
- homeassistant-stubs/components/smhi/entity.pyi +3 -1
- homeassistant-stubs/components/smhi/sensor.pyi +30 -0
- homeassistant-stubs/components/smhi/weather.pyi +4 -2
- homeassistant-stubs/components/sonarr/__init__.pyi +0 -1
- homeassistant-stubs/components/sonarr/config_flow.pyi +2 -2
- homeassistant-stubs/components/speedtestdotnet/__init__.pyi +0 -1
- homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +2 -2
- homeassistant-stubs/components/sql/__init__.pyi +0 -1
- homeassistant-stubs/components/sql/config_flow.pyi +2 -2
- homeassistant-stubs/components/squeezebox/__init__.pyi +3 -2
- homeassistant-stubs/components/squeezebox/browse_media.pyi +3 -1
- homeassistant-stubs/components/squeezebox/const.pyi +2 -3
- homeassistant-stubs/components/squeezebox/coordinator.pyi +2 -2
- homeassistant-stubs/components/squeezebox/media_player.pyi +3 -2
- homeassistant-stubs/components/statistics/__init__.pyi +3 -1
- homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
- homeassistant-stubs/components/statistics/sensor.pyi +5 -5
- homeassistant-stubs/components/stookwijzer/__init__.pyi +4 -0
- homeassistant-stubs/components/stookwijzer/const.pyi +2 -0
- homeassistant-stubs/components/stookwijzer/services.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/__init__.pyi +2 -2
- homeassistant-stubs/components/switch_as_x/entity.pyi +1 -3
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/const.pyi +1 -0
- homeassistant-stubs/components/switchbot_cloud/fan.pyi +26 -0
- homeassistant-stubs/components/switchbot_cloud/light.pyi +40 -0
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +17 -1
- homeassistant-stubs/components/synology_dsm/__init__.pyi +0 -1
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
- homeassistant-stubs/components/tankerkoenig/__init__.pyi +10 -0
- homeassistant-stubs/components/tankerkoenig/binary_sensor.pyi +23 -0
- homeassistant-stubs/components/tankerkoenig/config_flow.pyi +33 -0
- homeassistant-stubs/components/tankerkoenig/const.pyi +13 -0
- homeassistant-stubs/components/tankerkoenig/coordinator.pyi +22 -0
- homeassistant-stubs/components/tankerkoenig/diagnostics.pyi +10 -0
- homeassistant-stubs/components/tankerkoenig/entity.pyi +11 -0
- homeassistant-stubs/components/tankerkoenig/sensor.pyi +28 -0
- homeassistant-stubs/components/threshold/__init__.pyi +5 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
- homeassistant-stubs/components/time_date/config_flow.pyi +1 -2
- homeassistant-stubs/components/trafikverket_train/__init__.pyi +0 -1
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +2 -2
- homeassistant-stubs/components/trend/__init__.pyi +3 -1
- homeassistant-stubs/components/trend/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/trend/config_flow.pyi +1 -0
- homeassistant-stubs/components/tts/entity.pyi +0 -2
- homeassistant-stubs/components/unifi/hub/entity_loader.pyi +3 -2
- homeassistant-stubs/components/unifiprotect/__init__.pyi +5 -5
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +5 -5
- homeassistant-stubs/components/unifiprotect/repairs.pyi +0 -6
- homeassistant-stubs/components/unifiprotect/services.pyi +1 -1
- homeassistant-stubs/components/uptime_kuma/__init__.pyi +14 -0
- homeassistant-stubs/components/uptime_kuma/config_flow.pyi +26 -0
- homeassistant-stubs/components/uptime_kuma/const.pyi +7 -0
- homeassistant-stubs/components/uptime_kuma/coordinator.pyi +30 -0
- homeassistant-stubs/components/uptime_kuma/diagnostics.pyi +9 -0
- homeassistant-stubs/components/uptime_kuma/sensor.pyi +46 -0
- homeassistant-stubs/components/uptime_kuma/update.pyi +39 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +8 -0
- homeassistant-stubs/components/velbus/__init__.pyi +1 -1
- homeassistant-stubs/components/velbus/const.pyi +0 -1
- homeassistant-stubs/components/velbus/services.pyi +4 -4
- homeassistant-stubs/components/vodafone_station/__init__.pyi +0 -1
- homeassistant-stubs/components/vodafone_station/config_flow.pyi +2 -2
- homeassistant-stubs/components/volvo/__init__.pyi +15 -0
- homeassistant-stubs/components/volvo/api.pyi +14 -0
- homeassistant-stubs/components/volvo/application_credentials.pyi +9 -0
- homeassistant-stubs/components/volvo/config_flow.pyi +36 -0
- homeassistant-stubs/components/volvo/const.pyi +8 -0
- homeassistant-stubs/components/volvo/coordinator.pyi +46 -0
- homeassistant-stubs/components/volvo/entity.pyi +33 -0
- homeassistant-stubs/components/volvo/sensor.pyi +35 -0
- homeassistant-stubs/components/wallbox/__init__.pyi +4 -5
- homeassistant-stubs/components/wallbox/coordinator.pyi +8 -2
- homeassistant-stubs/components/wallbox/lock.pyi +5 -4
- homeassistant-stubs/components/wallbox/number.pyi +6 -5
- homeassistant-stubs/components/wallbox/select.pyi +4 -3
- homeassistant-stubs/components/wallbox/sensor.pyi +5 -4
- homeassistant-stubs/components/wallbox/switch.pyi +5 -4
- homeassistant-stubs/components/waqi/__init__.pyi +3 -5
- homeassistant-stubs/components/waqi/coordinator.pyi +3 -2
- homeassistant-stubs/components/waqi/sensor.pyi +2 -13
- homeassistant-stubs/components/webostv/__init__.pyi +0 -1
- homeassistant-stubs/components/webostv/config_flow.pyi +3 -3
- homeassistant-stubs/components/websocket_api/commands.pyi +4 -0
- homeassistant-stubs/components/wiz/fan.pyi +34 -0
- homeassistant-stubs/components/wled/__init__.pyi +0 -1
- homeassistant-stubs/components/wled/config_flow.pyi +2 -2
- homeassistant-stubs/components/workday/__init__.pyi +0 -1
- homeassistant-stubs/components/workday/config_flow.pyi +2 -2
- homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +0 -1
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +2 -2
- homeassistant-stubs/components/yalexs_ble/lock.pyi +14 -2
- homeassistant-stubs/components/zone/condition.pyi +22 -0
- homeassistant-stubs/components/zone/trigger.pyi +2 -1
- homeassistant-stubs/components/zwave_js/__init__.pyi +12 -10
- homeassistant-stubs/components/zwave_js/api.pyi +36 -35
- homeassistant-stubs/components/zwave_js/binary_sensor.pyi +7 -7
- homeassistant-stubs/components/zwave_js/button.pyi +5 -5
- homeassistant-stubs/components/zwave_js/climate.pyi +5 -5
- homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
- homeassistant-stubs/components/zwave_js/const.pyi +0 -3
- homeassistant-stubs/components/zwave_js/cover.pyi +7 -7
- homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -1
- homeassistant-stubs/components/zwave_js/diagnostics.pyi +5 -5
- homeassistant-stubs/components/zwave_js/event.pyi +4 -4
- homeassistant-stubs/components/zwave_js/fan.pyi +6 -6
- homeassistant-stubs/components/zwave_js/helpers.pyi +10 -6
- homeassistant-stubs/components/zwave_js/humidifier.pyi +4 -4
- homeassistant-stubs/components/zwave_js/light.pyi +15 -5
- homeassistant-stubs/components/zwave_js/lock.pyi +3 -3
- homeassistant-stubs/components/zwave_js/models.pyi +12 -0
- homeassistant-stubs/components/zwave_js/number.pyi +6 -6
- homeassistant-stubs/components/zwave_js/select.pyi +8 -8
- homeassistant-stubs/components/zwave_js/sensor.pyi +10 -10
- homeassistant-stubs/components/zwave_js/siren.pyi +4 -4
- homeassistant-stubs/components/zwave_js/switch.pyi +7 -7
- homeassistant-stubs/components/zwave_js/triggers/event.pyi +1 -2
- homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +1 -1
- homeassistant-stubs/components/zwave_js/update.pyi +28 -18
- homeassistant-stubs/config.pyi +0 -2
- homeassistant-stubs/config_entries.pyi +3 -0
- homeassistant-stubs/const.pyi +2 -0
- homeassistant-stubs/core.pyi +12 -8
- homeassistant-stubs/helpers/condition.pyi +25 -6
- homeassistant-stubs/helpers/config_validation.pyi +0 -2
- homeassistant-stubs/helpers/device.pyi +2 -0
- homeassistant-stubs/helpers/device_registry.pyi +16 -8
- homeassistant-stubs/helpers/entity.pyi +3 -1
- homeassistant-stubs/helpers/entity_platform.pyi +30 -9
- homeassistant-stubs/helpers/frame.pyi +1 -1
- homeassistant-stubs/helpers/helper_integration.pyi +2 -1
- homeassistant-stubs/helpers/llm.pyi +5 -1
- homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -0
- homeassistant-stubs/helpers/selector.pyi +42 -37
- homeassistant-stubs/helpers/service.pyi +9 -26
- homeassistant-stubs/helpers/target.pyi +59 -0
- homeassistant-stubs/helpers/trigger.pyi +3 -1
- homeassistant-stubs/helpers/trigger_template_entity.pyi +5 -1
- homeassistant-stubs/loader.pyi +2 -9
- homeassistant-stubs/runner.pyi +1 -0
- homeassistant-stubs/util/resource.pyi +7 -0
- homeassistant-stubs/util/unit_conversion.pyi +1 -1
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/RECORD +488 -419
- homeassistant-stubs/components/backup/basic_websocket.pyi +0 -12
- homeassistant-stubs/helpers/backup.pyi +0 -24
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -26,7 +26,6 @@ CONFIG_SCHEMA: Incomplete
|
|
|
26
26
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
|
27
27
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> bool: ...
|
|
28
28
|
async def register_callbacks(host: ReolinkHost, device_coordinator: DataUpdateCoordinator[None], hass: HomeAssistant) -> None: ...
|
|
29
|
-
async def entry_update_listener(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> None: ...
|
|
30
29
|
async def async_unload_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> bool: ...
|
|
31
30
|
async def async_remove_entry(hass: HomeAssistant, config_entry: ReolinkConfigEntry) -> None: ...
|
|
32
31
|
async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ReolinkConfigEntry, device: dr.DeviceEntry) -> bool: ...
|
|
@@ -4,7 +4,7 @@ from .host import ReolinkHost as ReolinkHost
|
|
|
4
4
|
from .util import ReolinkConfigEntry as ReolinkConfigEntry, is_connected as is_connected
|
|
5
5
|
from _typeshed import Incomplete
|
|
6
6
|
from collections.abc import Mapping
|
|
7
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
7
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
|
8
8
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME
|
|
9
9
|
from homeassistant.core import callback as callback
|
|
10
10
|
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
|
@@ -18,7 +18,7 @@ DEFAULT_PROTOCOL: str
|
|
|
18
18
|
DEFAULT_OPTIONS: Incomplete
|
|
19
19
|
API_STARTUP_TIME: int
|
|
20
20
|
|
|
21
|
-
class ReolinkOptionsFlowHandler(
|
|
21
|
+
class ReolinkOptionsFlowHandler(OptionsFlowWithReload):
|
|
22
22
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
23
23
|
|
|
24
24
|
class ReolinkFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
|
|
|
4
4
|
from collections.abc import Callable as Callable
|
|
5
5
|
from dataclasses import dataclass
|
|
6
6
|
from homeassistant.components.number import NumberDeviceClass as NumberDeviceClass, NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription, NumberMode as NumberMode
|
|
7
|
-
from homeassistant.const import EntityCategory as EntityCategory, UnitOfTime as UnitOfTime
|
|
7
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
9
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
10
10
|
from reolink_aio.api import Chime as Chime, Host as Host
|
|
@@ -6,7 +6,7 @@ from dataclasses import dataclass
|
|
|
6
6
|
from datetime import date, datetime
|
|
7
7
|
from decimal import Decimal
|
|
8
8
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
|
9
|
-
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfTemperature as UnitOfTemperature
|
|
9
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfTemperature as UnitOfTemperature
|
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
11
11
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
12
12
|
from homeassistant.helpers.typing import StateType as StateType
|
|
@@ -5,8 +5,7 @@ from .entity import RestEntity as RestEntity
|
|
|
5
5
|
from .schema import RESOURCE_SCHEMA as RESOURCE_SCHEMA, SENSOR_SCHEMA as SENSOR_SCHEMA
|
|
6
6
|
from .util import parse_json_attributes as parse_json_attributes
|
|
7
7
|
from _typeshed import Incomplete
|
|
8
|
-
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS
|
|
9
|
-
from homeassistant.components.sensor.helpers import async_parse_date_datetime as async_parse_date_datetime
|
|
8
|
+
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS
|
|
10
9
|
from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_FORCE_UPDATE as CONF_FORCE_UPDATE, CONF_ICON as CONF_ICON, CONF_NAME as CONF_NAME, CONF_RESOURCE as CONF_RESOURCE, CONF_RESOURCE_TEMPLATE as CONF_RESOURCE_TEMPLATE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
|
11
10
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
12
11
|
from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
|
|
@@ -33,5 +32,4 @@ class RestSensor(ManualTriggerSensorEntity, RestEntity):
|
|
|
33
32
|
def available(self) -> bool: ...
|
|
34
33
|
@property
|
|
35
34
|
def extra_state_attributes(self) -> dict[str, Any]: ...
|
|
36
|
-
_attr_native_value: Incomplete
|
|
37
35
|
def _update_from_rest_data(self) -> None: ...
|
|
@@ -22,5 +22,4 @@ async def setup_device(hass: HomeAssistant, entry: RoborockConfigEntry, user_dat
|
|
|
22
22
|
async def setup_device_v1(hass: HomeAssistant, entry: RoborockConfigEntry, user_data: UserData, device: HomeDataDevice, product_info: HomeDataProduct, home_data_rooms: list[HomeDataRoom], api_client: RoborockApiClient) -> RoborockDataUpdateCoordinator | None: ...
|
|
23
23
|
async def setup_device_a01(hass: HomeAssistant, entry: RoborockConfigEntry, user_data: UserData, device: HomeDataDevice, product_info: HomeDataProduct) -> RoborockDataUpdateCoordinatorA01 | None: ...
|
|
24
24
|
async def async_unload_entry(hass: HomeAssistant, entry: RoborockConfigEntry) -> bool: ...
|
|
25
|
-
async def update_listener(hass: HomeAssistant, entry: RoborockConfigEntry) -> None: ...
|
|
26
25
|
async def async_remove_entry(hass: HomeAssistant, entry: RoborockConfigEntry) -> None: ...
|
|
@@ -2,7 +2,7 @@ from . import RoborockConfigEntry as RoborockConfigEntry
|
|
|
2
2
|
from .const import CONF_BASE_URL as CONF_BASE_URL, CONF_ENTRY_CODE as CONF_ENTRY_CODE, CONF_USER_DATA as CONF_USER_DATA, DEFAULT_DRAWABLES as DEFAULT_DRAWABLES, DOMAIN as DOMAIN, DRAWABLES as DRAWABLES
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
4
|
from collections.abc import Mapping
|
|
5
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
5
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload, SOURCE_REAUTH as SOURCE_REAUTH
|
|
6
6
|
from homeassistant.const import CONF_USERNAME as CONF_USERNAME
|
|
7
7
|
from homeassistant.core import callback as callback
|
|
8
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
@@ -30,7 +30,7 @@ class RoborockFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
30
30
|
@callback
|
|
31
31
|
def async_get_options_flow(config_entry: RoborockConfigEntry) -> RoborockOptionsFlowHandler: ...
|
|
32
32
|
|
|
33
|
-
class RoborockOptionsFlowHandler(
|
|
33
|
+
class RoborockOptionsFlowHandler(OptionsFlowWithReload):
|
|
34
34
|
options: Incomplete
|
|
35
35
|
def __init__(self, config_entry: RoborockConfigEntry) -> None: ...
|
|
36
36
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -24,8 +24,6 @@ class RoborockVacuum(RoborockCoordinatedEntityV1, StateVacuumEntity):
|
|
|
24
24
|
@property
|
|
25
25
|
def activity(self) -> VacuumActivity | None: ...
|
|
26
26
|
@property
|
|
27
|
-
def battery_level(self) -> int | None: ...
|
|
28
|
-
@property
|
|
29
27
|
def fan_speed(self) -> str | None: ...
|
|
30
28
|
async def async_start(self) -> None: ...
|
|
31
29
|
async def async_pause(self) -> None: ...
|
|
@@ -7,4 +7,3 @@ PLATFORMS: Incomplete
|
|
|
7
7
|
|
|
8
8
|
async def async_setup_entry(hass: HomeAssistant, entry: RokuConfigEntry) -> bool: ...
|
|
9
9
|
async def async_unload_entry(hass: HomeAssistant, entry: RokuConfigEntry) -> bool: ...
|
|
10
|
-
async def async_reload_entry(hass: HomeAssistant, entry: RokuConfigEntry) -> None: ...
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from .const import CONF_PLAY_MEDIA_APP_ID as CONF_PLAY_MEDIA_APP_ID, DEFAULT_PLAY_MEDIA_APP_ID as DEFAULT_PLAY_MEDIA_APP_ID, DOMAIN as DOMAIN
|
|
2
2
|
from .coordinator import RokuConfigEntry as RokuConfigEntry
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
4
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
|
5
5
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME
|
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
7
7
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
@@ -31,5 +31,5 @@ class RokuConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
31
31
|
@callback
|
|
32
32
|
def async_get_options_flow(config_entry: RokuConfigEntry) -> RokuOptionsFlowHandler: ...
|
|
33
33
|
|
|
34
|
-
class RokuOptionsFlowHandler(
|
|
34
|
+
class RokuOptionsFlowHandler(OptionsFlowWithReload):
|
|
35
35
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import datetime as dt
|
|
2
2
|
from . import RussoundConfigEntry as RussoundConfigEntry
|
|
3
|
+
from .const import DOMAIN as DOMAIN, RUSSOUND_MEDIA_TYPE_PRESET as RUSSOUND_MEDIA_TYPE_PRESET, SELECT_SOURCE_DELAY as SELECT_SOURCE_DELAY
|
|
3
4
|
from .entity import RussoundBaseEntity as RussoundBaseEntity, command as command
|
|
4
5
|
from _typeshed import Incomplete
|
|
5
6
|
from aiorussound import Controller as Controller
|
|
6
7
|
from aiorussound.models import Source as Source
|
|
7
8
|
from homeassistant.components.media_player import MediaPlayerDeviceClass as MediaPlayerDeviceClass, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerEntityFeature as MediaPlayerEntityFeature, MediaPlayerState as MediaPlayerState, MediaType as MediaType
|
|
8
9
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
|
|
9
11
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
12
|
+
from typing import Any
|
|
10
13
|
|
|
11
14
|
_LOGGER: Incomplete
|
|
12
15
|
PARALLEL_UPDATES: int
|
|
13
16
|
|
|
14
17
|
async def async_setup_entry(hass: HomeAssistant, entry: RussoundConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
18
|
+
def _parse_preset_source_id(media_id: str) -> tuple[int | None, int]: ...
|
|
15
19
|
|
|
16
20
|
class RussoundZoneDevice(RussoundBaseEntity, MediaPlayerEntity):
|
|
17
21
|
_attr_device_class: Incomplete
|
|
@@ -63,3 +67,5 @@ class RussoundZoneDevice(RussoundBaseEntity, MediaPlayerEntity):
|
|
|
63
67
|
async def async_mute_volume(self, mute: bool) -> None: ...
|
|
64
68
|
@command
|
|
65
69
|
async def async_media_seek(self, position: float) -> None: ...
|
|
70
|
+
@command
|
|
71
|
+
async def async_play_media(self, media_type: MediaType | str, media_id: str, **kwargs: Any) -> None: ...
|
|
@@ -2,8 +2,7 @@ from . import ScrapeConfigEntry as ScrapeConfigEntry
|
|
|
2
2
|
from .const import CONF_INDEX as CONF_INDEX, CONF_SELECT as CONF_SELECT, DOMAIN as DOMAIN
|
|
3
3
|
from .coordinator import ScrapeCoordinator as ScrapeCoordinator
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
|
-
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS
|
|
6
|
-
from homeassistant.components.sensor.helpers import async_parse_date_datetime as async_parse_date_datetime
|
|
5
|
+
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS
|
|
7
6
|
from homeassistant.const import CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_ICON as CONF_ICON, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
|
8
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
9
8
|
from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from _typeshed import Incomplete
|
|
2
2
|
from enum import StrEnum
|
|
3
|
-
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, DEGREE as DEGREE, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfApparentPower as UnitOfApparentPower, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfFrequency as UnitOfFrequency, UnitOfInformation as UnitOfInformation, UnitOfIrradiance as UnitOfIrradiance, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfReactiveEnergy as UnitOfReactiveEnergy, UnitOfReactivePower as UnitOfReactivePower, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
|
|
3
|
+
from homeassistant.const import CONCENTRATION_GRAMS_PER_CUBIC_METER as CONCENTRATION_GRAMS_PER_CUBIC_METER, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, DEGREE as DEGREE, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfApparentPower as UnitOfApparentPower, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfFrequency as UnitOfFrequency, UnitOfInformation as UnitOfInformation, UnitOfIrradiance as UnitOfIrradiance, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfReactiveEnergy as UnitOfReactiveEnergy, UnitOfReactivePower as UnitOfReactivePower, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
|
|
4
4
|
from homeassistant.util.unit_conversion import AreaConverter as AreaConverter, BaseUnitConverter as BaseUnitConverter, BloodGlucoseConcentrationConverter as BloodGlucoseConcentrationConverter, ConductivityConverter as ConductivityConverter, DataRateConverter as DataRateConverter, DistanceConverter as DistanceConverter, DurationConverter as DurationConverter, ElectricCurrentConverter as ElectricCurrentConverter, ElectricPotentialConverter as ElectricPotentialConverter, EnergyConverter as EnergyConverter, EnergyDistanceConverter as EnergyDistanceConverter, InformationConverter as InformationConverter, MassConverter as MassConverter, MassVolumeConcentrationConverter as MassVolumeConcentrationConverter, PowerConverter as PowerConverter, PressureConverter as PressureConverter, ReactiveEnergyConverter as ReactiveEnergyConverter, SpeedConverter as SpeedConverter, TemperatureConverter as TemperatureConverter, UnitlessRatioConverter as UnitlessRatioConverter, VolumeConverter as VolumeConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
|
|
5
5
|
from typing import Final
|
|
6
6
|
|
|
@@ -14,6 +14,7 @@ class SensorDeviceClass(StrEnum):
|
|
|
14
14
|
DATE = 'date'
|
|
15
15
|
ENUM = 'enum'
|
|
16
16
|
TIMESTAMP = 'timestamp'
|
|
17
|
+
ABSOLUTE_HUMIDITY = 'absolute_humidity'
|
|
17
18
|
APPARENT_POWER = 'apparent_power'
|
|
18
19
|
AQI = 'aqi'
|
|
19
20
|
AREA = 'area'
|
|
@@ -10,6 +10,7 @@ from homeassistant.helpers.entity import get_capability as get_capability, get_d
|
|
|
10
10
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
|
11
11
|
|
|
12
12
|
DEVICE_CLASS_NONE: str
|
|
13
|
+
CONF_IS_ABSOLUTE_HUMIDITY: str
|
|
13
14
|
CONF_IS_APPARENT_POWER: str
|
|
14
15
|
CONF_IS_AQI: str
|
|
15
16
|
CONF_IS_AREA: str
|
|
@@ -10,6 +10,7 @@ from homeassistant.helpers.trigger import TriggerActionType as TriggerActionType
|
|
|
10
10
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
|
11
11
|
|
|
12
12
|
DEVICE_CLASS_NONE: str
|
|
13
|
+
CONF_ABSOLUTE_HUMIDITY: str
|
|
13
14
|
CONF_APPARENT_POWER: str
|
|
14
15
|
CONF_AQI: str
|
|
15
16
|
CONF_AREA: str
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
from .const import DOMAIN as DOMAIN, LOGGER as LOGGER, SHELLY_GAS_MODELS as SHELLY_GAS_MODELS
|
|
2
2
|
from .coordinator import ShellyBlockCoordinator as ShellyBlockCoordinator, ShellyConfigEntry as ShellyConfigEntry, ShellyRpcCoordinator as ShellyRpcCoordinator
|
|
3
|
-
from .
|
|
3
|
+
from .entity import get_entity_block_device_info as get_entity_block_device_info, get_entity_rpc_device_info as get_entity_rpc_device_info
|
|
4
|
+
from .utils import get_blu_trv_device_info as get_blu_trv_device_info, get_device_entry_gen as get_device_entry_gen, get_rpc_key_ids as get_rpc_key_ids
|
|
4
5
|
from _typeshed import Incomplete
|
|
5
6
|
from collections.abc import Callable as Callable
|
|
6
7
|
from dataclasses import dataclass
|
|
@@ -9,7 +10,6 @@ from homeassistant.const import EntityCategory as EntityCategory
|
|
|
9
10
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
10
11
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
11
12
|
from homeassistant.helpers import entity_registry as er
|
|
12
|
-
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
|
|
13
13
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
14
14
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
15
15
|
from homeassistant.util import slugify as slugify
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from .const import BLU_TRV_TEMPERATURE_SETTINGS as BLU_TRV_TEMPERATURE_SETTINGS, DOMAIN as DOMAIN, LOGGER as LOGGER, NOT_CALIBRATED_ISSUE_ID as NOT_CALIBRATED_ISSUE_ID, RPC_THERMOSTAT_SETTINGS as RPC_THERMOSTAT_SETTINGS, SHTRV_01_TEMPERATURE_SETTINGS as SHTRV_01_TEMPERATURE_SETTINGS
|
|
2
2
|
from .coordinator import ShellyBlockCoordinator as ShellyBlockCoordinator, ShellyConfigEntry as ShellyConfigEntry, ShellyRpcCoordinator as ShellyRpcCoordinator
|
|
3
|
-
from .entity import ShellyRpcEntity as ShellyRpcEntity, rpc_call as rpc_call
|
|
4
|
-
from .utils import async_remove_shelly_entity as async_remove_shelly_entity,
|
|
3
|
+
from .entity import ShellyRpcEntity as ShellyRpcEntity, get_entity_block_device_info as get_entity_block_device_info, rpc_call as rpc_call
|
|
4
|
+
from .utils import async_remove_shelly_entity as async_remove_shelly_entity, get_block_entity_name as get_block_entity_name, get_blu_trv_device_info as get_blu_trv_device_info, get_device_entry_gen as get_device_entry_gen, get_rpc_key_ids as get_rpc_key_ids, is_rpc_thermostat_internal_actuator as is_rpc_thermostat_internal_actuator
|
|
5
5
|
from _typeshed import Incomplete
|
|
6
6
|
from aioshelly.block_device import Block as Block
|
|
7
7
|
from collections.abc import Mapping
|
|
@@ -26,7 +26,7 @@ class ShellyEntryData:
|
|
|
26
26
|
rpc_poll: ShellyRpcPollingCoordinator | None = ...
|
|
27
27
|
rpc_script_events: dict[int, list[str]] | None = ...
|
|
28
28
|
rpc_supports_scripts: bool | None = ...
|
|
29
|
-
|
|
29
|
+
rpc_zigbee_firmware: bool | None = ...
|
|
30
30
|
type ShellyConfigEntry = ConfigEntry[ShellyEntryData]
|
|
31
31
|
|
|
32
32
|
class ShellyCoordinatorBase[_DeviceT: BlockDevice | RpcDevice](DataUpdateCoordinator[None]):
|
|
@@ -39,8 +39,12 @@ class ShellyCoordinatorBase[_DeviceT: BlockDevice | RpcDevice](DataUpdateCoordin
|
|
|
39
39
|
_debounced_reload: Debouncer[Coroutine[Any, Any, None]]
|
|
40
40
|
def __init__(self, hass: HomeAssistant, entry: ShellyConfigEntry, device: _DeviceT, update_interval: float) -> None: ...
|
|
41
41
|
@cached_property
|
|
42
|
+
def configuration_url(self) -> str: ...
|
|
43
|
+
@cached_property
|
|
42
44
|
def model(self) -> str: ...
|
|
43
45
|
@cached_property
|
|
46
|
+
def model_name(self) -> str | None: ...
|
|
47
|
+
@cached_property
|
|
44
48
|
def mac(self) -> str: ...
|
|
45
49
|
@property
|
|
46
50
|
def sw_version(self) -> str: ...
|
|
@@ -7,6 +7,7 @@ from collections.abc import Awaitable, Callable as Callable, Coroutine, Mapping
|
|
|
7
7
|
from dataclasses import dataclass
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback
|
|
9
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
10
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
10
11
|
from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
|
|
11
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
|
12
13
|
from homeassistant.helpers.entity_registry import RegistryEntry as RegistryEntry
|
|
@@ -161,3 +162,5 @@ class ShellySleepingRpcAttributeEntity(ShellyRpcAttributeEntity):
|
|
|
161
162
|
async def async_update(self) -> None: ...
|
|
162
163
|
|
|
163
164
|
def get_entity_class(sensor_class: Callable, description: RpcEntityDescription) -> Callable: ...
|
|
165
|
+
def get_entity_block_device_info(coordinator: ShellyBlockCoordinator, block: Block | None = None) -> DeviceInfo: ...
|
|
166
|
+
def get_entity_rpc_device_info(coordinator: ShellyRpcCoordinator, key: str | None = None, emeter_phase: str | None = None) -> DeviceInfo: ...
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from .const import BASIC_INPUTS_EVENTS_TYPES as BASIC_INPUTS_EVENTS_TYPES, RPC_INPUTS_EVENTS_TYPES as RPC_INPUTS_EVENTS_TYPES, SHIX3_1_INPUTS_EVENTS_TYPES as SHIX3_1_INPUTS_EVENTS_TYPES
|
|
2
2
|
from .coordinator import ShellyBlockCoordinator as ShellyBlockCoordinator, ShellyConfigEntry as ShellyConfigEntry, ShellyRpcCoordinator as ShellyRpcCoordinator
|
|
3
|
-
from .entity import ShellyBlockEntity as ShellyBlockEntity
|
|
4
|
-
from .utils import async_remove_orphaned_entities as async_remove_orphaned_entities, async_remove_shelly_entity as async_remove_shelly_entity, get_device_entry_gen as get_device_entry_gen,
|
|
3
|
+
from .entity import ShellyBlockEntity as ShellyBlockEntity, get_entity_rpc_device_info as get_entity_rpc_device_info
|
|
4
|
+
from .utils import async_remove_orphaned_entities as async_remove_orphaned_entities, async_remove_shelly_entity as async_remove_shelly_entity, get_device_entry_gen as get_device_entry_gen, get_rpc_entity_name as get_rpc_entity_name, get_rpc_key_instances as get_rpc_key_instances, is_block_momentary_input as is_block_momentary_input, is_rpc_momentary_input as is_rpc_momentary_input
|
|
5
5
|
from _typeshed import Incomplete
|
|
6
6
|
from aioshelly.block_device import Block as Block
|
|
7
7
|
from collections.abc import Callable as Callable
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from .const import CONF_SLEEP_PERIOD as CONF_SLEEP_PERIOD, ROLE_TO_DEVICE_CLASS_MAP as ROLE_TO_DEVICE_CLASS_MAP
|
|
2
2
|
from .coordinator import ShellyBlockCoordinator as ShellyBlockCoordinator, ShellyConfigEntry as ShellyConfigEntry, ShellyRpcCoordinator as ShellyRpcCoordinator
|
|
3
|
-
from .entity import BlockEntityDescription as BlockEntityDescription, RestEntityDescription as RestEntityDescription, RpcEntityDescription as RpcEntityDescription, ShellyBlockAttributeEntity as ShellyBlockAttributeEntity, ShellyRestAttributeEntity as ShellyRestAttributeEntity, ShellyRpcAttributeEntity as ShellyRpcAttributeEntity, ShellySleepingBlockAttributeEntity as ShellySleepingBlockAttributeEntity, ShellySleepingRpcAttributeEntity as ShellySleepingRpcAttributeEntity, async_setup_entry_attribute_entities as async_setup_entry_attribute_entities, async_setup_entry_rest as async_setup_entry_rest, async_setup_entry_rpc as async_setup_entry_rpc
|
|
4
|
-
from .utils import async_remove_orphaned_entities as async_remove_orphaned_entities, get_blu_trv_device_info as get_blu_trv_device_info, get_device_entry_gen as get_device_entry_gen, get_device_uptime as get_device_uptime,
|
|
3
|
+
from .entity import BlockEntityDescription as BlockEntityDescription, RestEntityDescription as RestEntityDescription, RpcEntityDescription as RpcEntityDescription, ShellyBlockAttributeEntity as ShellyBlockAttributeEntity, ShellyRestAttributeEntity as ShellyRestAttributeEntity, ShellyRpcAttributeEntity as ShellyRpcAttributeEntity, ShellySleepingBlockAttributeEntity as ShellySleepingBlockAttributeEntity, ShellySleepingRpcAttributeEntity as ShellySleepingRpcAttributeEntity, async_setup_entry_attribute_entities as async_setup_entry_attribute_entities, async_setup_entry_rest as async_setup_entry_rest, async_setup_entry_rpc as async_setup_entry_rpc, get_entity_rpc_device_info as get_entity_rpc_device_info
|
|
4
|
+
from .utils import async_remove_orphaned_entities as async_remove_orphaned_entities, get_blu_trv_device_info as get_blu_trv_device_info, get_device_entry_gen as get_device_entry_gen, get_device_uptime as get_device_uptime, get_shelly_air_lamp_life as get_shelly_air_lamp_life, get_virtual_component_ids as get_virtual_component_ids, is_rpc_wifi_stations_disabled as is_rpc_wifi_stations_disabled
|
|
5
5
|
from _typeshed import Incomplete
|
|
6
6
|
from aioshelly.block_device import Block as Block
|
|
7
7
|
from collections.abc import Callable as Callable
|
|
@@ -77,8 +77,8 @@ async def get_rpc_script_event_types(device: RpcDevice, id: int) -> list[str]: .
|
|
|
77
77
|
def is_rpc_exclude_from_relay(settings: dict[str, Any], status: dict[str, Any], channel: str) -> bool: ...
|
|
78
78
|
def get_shelly_air_lamp_life(lamp_seconds: int) -> float: ...
|
|
79
79
|
async def get_rpc_scripts_event_types(device: RpcDevice, ignore_scripts: list[str]) -> dict[int, list[str]]: ...
|
|
80
|
-
def get_rpc_device_info(device: RpcDevice, mac: str, key: str | None = None, emeter_phase: str | None = None, suggested_area: str | None = None) -> DeviceInfo: ...
|
|
80
|
+
def get_rpc_device_info(device: RpcDevice, mac: str, configuration_url: str, model: str, model_name: str | None = None, key: str | None = None, emeter_phase: str | None = None, suggested_area: str | None = None) -> DeviceInfo: ...
|
|
81
81
|
def get_blu_trv_device_info(config: dict[str, Any], ble_addr: str, parent_mac: str) -> DeviceInfo: ...
|
|
82
|
-
def get_block_device_info(device: BlockDevice, mac: str, block: Block | None = None, suggested_area: str | None = None) -> DeviceInfo: ...
|
|
82
|
+
def get_block_device_info(device: BlockDevice, mac: str, configuration_url: str, model: str, model_name: str | None = None, block: Block | None = None, suggested_area: str | None = None) -> DeviceInfo: ...
|
|
83
83
|
@callback
|
|
84
84
|
def remove_stale_blu_trv_devices(hass: HomeAssistant, rpc_device: RpcDevice, entry: ConfigEntry) -> None: ...
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
from .const import ACTUATOR as ACTUATOR, DOMAIN as DOMAIN, ENTITY_TYPES as ENTITY_TYPES, FIRMNESS as FIRMNESS, FOOT_WARMING_TIMER as FOOT_WARMING_TIMER, ICON_OCCUPIED as ICON_OCCUPIED
|
|
1
|
+
from .const import ACTUATOR as ACTUATOR, CORE_CLIMATE_TIMER as CORE_CLIMATE_TIMER, DOMAIN as DOMAIN, ENTITY_TYPES as ENTITY_TYPES, FIRMNESS as FIRMNESS, FOOT_WARMING_TIMER as FOOT_WARMING_TIMER, ICON_OCCUPIED as ICON_OCCUPIED
|
|
2
2
|
from .coordinator import SleepIQData as SleepIQData, SleepIQDataUpdateCoordinator as SleepIQDataUpdateCoordinator
|
|
3
3
|
from .entity import SleepIQBedEntity as SleepIQBedEntity, sleeper_for_side as sleeper_for_side
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
|
-
from asyncsleepiq import SleepIQActuator as SleepIQActuator, SleepIQBed as SleepIQBed, SleepIQFootWarmer as SleepIQFootWarmer, SleepIQSleeper as SleepIQSleeper
|
|
5
|
+
from asyncsleepiq import SleepIQActuator as SleepIQActuator, SleepIQBed as SleepIQBed, SleepIQCoreClimate, SleepIQFootWarmer as SleepIQFootWarmer, SleepIQSleeper as SleepIQSleeper
|
|
6
6
|
from collections.abc import Callable as Callable, Coroutine
|
|
7
7
|
from dataclasses import dataclass
|
|
8
|
-
from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
|
|
8
|
+
from homeassistant.components.number import NumberDeviceClass as NumberDeviceClass, NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
|
|
9
9
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
10
|
+
from homeassistant.const import UnitOfTime as UnitOfTime
|
|
10
11
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
11
12
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
12
13
|
from typing import Any
|
|
@@ -27,6 +28,9 @@ def _get_sleeper_unique_id(bed: SleepIQBed, sleeper: SleepIQSleeper) -> str: ...
|
|
|
27
28
|
async def _async_set_foot_warmer_time(foot_warmer: SleepIQFootWarmer, time: int) -> None: ...
|
|
28
29
|
def _get_foot_warming_name(bed: SleepIQBed, foot_warmer: SleepIQFootWarmer) -> str: ...
|
|
29
30
|
def _get_foot_warming_unique_id(bed: SleepIQBed, foot_warmer: SleepIQFootWarmer) -> str: ...
|
|
31
|
+
async def _async_set_core_climate_time(core_climate: SleepIQCoreClimate, time: int) -> None: ...
|
|
32
|
+
def _get_core_climate_name(bed: SleepIQBed, core_climate: SleepIQCoreClimate) -> str: ...
|
|
33
|
+
def _get_core_climate_unique_id(bed: SleepIQBed, core_climate: SleepIQCoreClimate) -> str: ...
|
|
30
34
|
|
|
31
35
|
NUMBER_DESCRIPTIONS: dict[str, SleepIQNumberEntityDescription]
|
|
32
36
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
from .const import DOMAIN as DOMAIN, FOOT_WARMER as FOOT_WARMER
|
|
1
|
+
from .const import CORE_CLIMATE as CORE_CLIMATE, DOMAIN as DOMAIN, FOOT_WARMER as FOOT_WARMER
|
|
2
2
|
from .coordinator import SleepIQData as SleepIQData, SleepIQDataUpdateCoordinator as SleepIQDataUpdateCoordinator
|
|
3
3
|
from .entity import SleepIQBedEntity as SleepIQBedEntity, SleepIQSleeperEntity as SleepIQSleeperEntity, sleeper_for_side as sleeper_for_side
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
|
-
from asyncsleepiq import SleepIQBed as SleepIQBed, SleepIQFootWarmer as SleepIQFootWarmer, SleepIQPreset as SleepIQPreset
|
|
5
|
+
from asyncsleepiq import SleepIQBed as SleepIQBed, SleepIQCoreClimate as SleepIQCoreClimate, SleepIQFootWarmer as SleepIQFootWarmer, SleepIQPreset as SleepIQPreset
|
|
6
6
|
from homeassistant.components.select import SelectEntity as SelectEntity
|
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
@@ -31,3 +31,16 @@ class SleepIQFootWarmingTempSelectEntity(SleepIQSleeperEntity[SleepIQDataUpdateC
|
|
|
31
31
|
@callback
|
|
32
32
|
def _async_update_attrs(self) -> None: ...
|
|
33
33
|
async def async_select_option(self, option: str) -> None: ...
|
|
34
|
+
|
|
35
|
+
class SleepIQCoreTempSelectEntity(SleepIQSleeperEntity[SleepIQDataUpdateCoordinator], SelectEntity):
|
|
36
|
+
SLEEPIQ_TO_HA_CORE_TEMP_MAP: Incomplete
|
|
37
|
+
HA_TO_SLEEPIQ_CORE_TEMP_MAP: Incomplete
|
|
38
|
+
_attr_icon: str
|
|
39
|
+
_attr_options: Incomplete
|
|
40
|
+
_attr_translation_key: str
|
|
41
|
+
core_climate: Incomplete
|
|
42
|
+
def __init__(self, coordinator: SleepIQDataUpdateCoordinator, bed: SleepIQBed, core_climate: SleepIQCoreClimate) -> None: ...
|
|
43
|
+
_attr_current_option: Incomplete
|
|
44
|
+
@callback
|
|
45
|
+
def _async_update_attrs(self) -> None: ...
|
|
46
|
+
async def async_select_option(self, option: str) -> None: ...
|
|
@@ -13,9 +13,12 @@ type SMHIConfigEntry = ConfigEntry[SMHIDataUpdateCoordinator]
|
|
|
13
13
|
class SMHIForecastData:
|
|
14
14
|
daily: list[SMHIForecast]
|
|
15
15
|
hourly: list[SMHIForecast]
|
|
16
|
+
twice_daily: list[SMHIForecast]
|
|
16
17
|
|
|
17
18
|
class SMHIDataUpdateCoordinator(DataUpdateCoordinator[SMHIForecastData]):
|
|
18
19
|
config_entry: SMHIConfigEntry
|
|
19
20
|
_smhi_api: Incomplete
|
|
20
21
|
def __init__(self, hass: HomeAssistant, config_entry: SMHIConfigEntry) -> None: ...
|
|
21
22
|
async def _async_update_data(self) -> SMHIForecastData: ...
|
|
23
|
+
@property
|
|
24
|
+
def current(self) -> SMHIForecast: ...
|
|
@@ -3,15 +3,17 @@ from .const import DOMAIN as DOMAIN
|
|
|
3
3
|
from .coordinator import SMHIDataUpdateCoordinator as SMHIDataUpdateCoordinator
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from abc import abstractmethod
|
|
6
|
+
from homeassistant.core import callback as callback
|
|
6
7
|
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
|
7
8
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
8
9
|
|
|
9
10
|
class SmhiWeatherBaseEntity(CoordinatorEntity[SMHIDataUpdateCoordinator], metaclass=abc.ABCMeta):
|
|
10
11
|
_attr_attribution: str
|
|
11
12
|
_attr_has_entity_name: bool
|
|
12
|
-
_attr_name: Incomplete
|
|
13
13
|
_attr_unique_id: Incomplete
|
|
14
14
|
_attr_device_info: Incomplete
|
|
15
15
|
def __init__(self, latitude: str, longitude: str, coordinator: SMHIDataUpdateCoordinator) -> None: ...
|
|
16
|
+
@callback
|
|
17
|
+
def _handle_coordinator_update(self) -> None: ...
|
|
16
18
|
@abstractmethod
|
|
17
19
|
def update_entity_data(self) -> None: ...
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from .coordinator import SMHIConfigEntry as SMHIConfigEntry, SMHIDataUpdateCoordinator as SMHIDataUpdateCoordinator
|
|
2
|
+
from .entity import SmhiWeatherBaseEntity as SmhiWeatherBaseEntity
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
from collections.abc import Callable as Callable
|
|
5
|
+
from dataclasses import dataclass
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
|
8
|
+
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, PERCENTAGE as PERCENTAGE
|
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
11
|
+
from homeassistant.helpers.typing import StateType as StateType
|
|
12
|
+
|
|
13
|
+
PARALLEL_UPDATES: int
|
|
14
|
+
|
|
15
|
+
def get_percentage_values(entity: SMHISensor, key: str) -> int | None: ...
|
|
16
|
+
|
|
17
|
+
@dataclass(frozen=True, kw_only=True)
|
|
18
|
+
class SMHISensorEntityDescription(SensorEntityDescription):
|
|
19
|
+
value_fn: Callable[[SMHISensor], StateType | datetime]
|
|
20
|
+
|
|
21
|
+
SENSOR_DESCRIPTIONS: tuple[SMHISensorEntityDescription, ...]
|
|
22
|
+
|
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, entry: SMHIConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
24
|
+
|
|
25
|
+
class SMHISensor(SmhiWeatherBaseEntity, SensorEntity):
|
|
26
|
+
entity_description: SMHISensorEntityDescription
|
|
27
|
+
_attr_unique_id: Incomplete
|
|
28
|
+
def __init__(self, latitude: str, longitude: str, coordinator: SMHIDataUpdateCoordinator, entity_description: SMHISensorEntityDescription) -> None: ...
|
|
29
|
+
_attr_native_value: Incomplete
|
|
30
|
+
def update_entity_data(self) -> None: ...
|
|
@@ -3,7 +3,7 @@ from .coordinator import SMHIConfigEntry as SMHIConfigEntry
|
|
|
3
3
|
from .entity import SmhiWeatherBaseEntity as SmhiWeatherBaseEntity
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from collections.abc import Mapping
|
|
6
|
-
from homeassistant.components.weather import ATTR_CONDITION_CLEAR_NIGHT as ATTR_CONDITION_CLEAR_NIGHT, ATTR_CONDITION_CLOUDY as ATTR_CONDITION_CLOUDY, ATTR_CONDITION_EXCEPTIONAL as ATTR_CONDITION_EXCEPTIONAL, ATTR_CONDITION_FOG as ATTR_CONDITION_FOG, ATTR_CONDITION_HAIL as ATTR_CONDITION_HAIL, ATTR_CONDITION_LIGHTNING as ATTR_CONDITION_LIGHTNING, ATTR_CONDITION_LIGHTNING_RAINY as ATTR_CONDITION_LIGHTNING_RAINY, ATTR_CONDITION_PARTLYCLOUDY as ATTR_CONDITION_PARTLYCLOUDY, ATTR_CONDITION_POURING as ATTR_CONDITION_POURING, ATTR_CONDITION_RAINY as ATTR_CONDITION_RAINY, ATTR_CONDITION_SNOWY as ATTR_CONDITION_SNOWY, ATTR_CONDITION_SNOWY_RAINY as ATTR_CONDITION_SNOWY_RAINY, ATTR_CONDITION_SUNNY as ATTR_CONDITION_SUNNY, ATTR_CONDITION_WINDY as ATTR_CONDITION_WINDY, ATTR_CONDITION_WINDY_VARIANT as ATTR_CONDITION_WINDY_VARIANT, ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_HUMIDITY as ATTR_FORECAST_HUMIDITY, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, ATTR_FORECAST_NATIVE_PRESSURE as ATTR_FORECAST_NATIVE_PRESSURE, ATTR_FORECAST_NATIVE_TEMP as ATTR_FORECAST_NATIVE_TEMP, ATTR_FORECAST_NATIVE_TEMP_LOW as ATTR_FORECAST_NATIVE_TEMP_LOW, ATTR_FORECAST_NATIVE_WIND_GUST_SPEED as ATTR_FORECAST_NATIVE_WIND_GUST_SPEED, ATTR_FORECAST_NATIVE_WIND_SPEED as ATTR_FORECAST_NATIVE_WIND_SPEED, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, Forecast as Forecast, SingleCoordinatorWeatherEntity as SingleCoordinatorWeatherEntity, WeatherEntityFeature as WeatherEntityFeature
|
|
6
|
+
from homeassistant.components.weather import ATTR_CONDITION_CLEAR_NIGHT as ATTR_CONDITION_CLEAR_NIGHT, ATTR_CONDITION_CLOUDY as ATTR_CONDITION_CLOUDY, ATTR_CONDITION_EXCEPTIONAL as ATTR_CONDITION_EXCEPTIONAL, ATTR_CONDITION_FOG as ATTR_CONDITION_FOG, ATTR_CONDITION_HAIL as ATTR_CONDITION_HAIL, ATTR_CONDITION_LIGHTNING as ATTR_CONDITION_LIGHTNING, ATTR_CONDITION_LIGHTNING_RAINY as ATTR_CONDITION_LIGHTNING_RAINY, ATTR_CONDITION_PARTLYCLOUDY as ATTR_CONDITION_PARTLYCLOUDY, ATTR_CONDITION_POURING as ATTR_CONDITION_POURING, ATTR_CONDITION_RAINY as ATTR_CONDITION_RAINY, ATTR_CONDITION_SNOWY as ATTR_CONDITION_SNOWY, ATTR_CONDITION_SNOWY_RAINY as ATTR_CONDITION_SNOWY_RAINY, ATTR_CONDITION_SUNNY as ATTR_CONDITION_SUNNY, ATTR_CONDITION_WINDY as ATTR_CONDITION_WINDY, ATTR_CONDITION_WINDY_VARIANT as ATTR_CONDITION_WINDY_VARIANT, ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_HUMIDITY as ATTR_FORECAST_HUMIDITY, ATTR_FORECAST_IS_DAYTIME as ATTR_FORECAST_IS_DAYTIME, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, ATTR_FORECAST_NATIVE_PRESSURE as ATTR_FORECAST_NATIVE_PRESSURE, ATTR_FORECAST_NATIVE_TEMP as ATTR_FORECAST_NATIVE_TEMP, ATTR_FORECAST_NATIVE_TEMP_LOW as ATTR_FORECAST_NATIVE_TEMP_LOW, ATTR_FORECAST_NATIVE_WIND_GUST_SPEED as ATTR_FORECAST_NATIVE_WIND_GUST_SPEED, ATTR_FORECAST_NATIVE_WIND_SPEED as ATTR_FORECAST_NATIVE_WIND_SPEED, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, Forecast as Forecast, SingleCoordinatorWeatherEntity as SingleCoordinatorWeatherEntity, WeatherEntityFeature as WeatherEntityFeature
|
|
7
7
|
from homeassistant.const import CONF_LATITUDE as CONF_LATITUDE, CONF_LOCATION as CONF_LOCATION, CONF_LONGITUDE as CONF_LONGITUDE, UnitOfLength as UnitOfLength, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
9
9
|
from homeassistant.helpers import sun as sun
|
|
@@ -23,6 +23,7 @@ class SmhiWeather(SmhiWeatherBaseEntity, SingleCoordinatorWeatherEntity):
|
|
|
23
23
|
_attr_native_wind_speed_unit: Incomplete
|
|
24
24
|
_attr_native_pressure_unit: Incomplete
|
|
25
25
|
_attr_supported_features: Incomplete
|
|
26
|
+
_attr_name: Incomplete
|
|
26
27
|
_attr_native_temperature: Incomplete
|
|
27
28
|
_attr_humidity: Incomplete
|
|
28
29
|
_attr_native_wind_speed: Incomplete
|
|
@@ -37,6 +38,7 @@ class SmhiWeather(SmhiWeatherBaseEntity, SingleCoordinatorWeatherEntity):
|
|
|
37
38
|
def extra_state_attributes(self) -> Mapping[str, Any] | None: ...
|
|
38
39
|
@callback
|
|
39
40
|
def _handle_coordinator_update(self) -> None: ...
|
|
40
|
-
def _get_forecast_data(self, forecast_data: list[SMHIForecast] | None) -> list[Forecast] | None: ...
|
|
41
|
+
def _get_forecast_data(self, forecast_data: list[SMHIForecast] | None, forecast_type: str) -> list[Forecast] | None: ...
|
|
41
42
|
def _async_forecast_daily(self) -> list[Forecast] | None: ...
|
|
42
43
|
def _async_forecast_hourly(self) -> list[Forecast] | None: ...
|
|
44
|
+
def _async_forecast_twice_daily(self) -> list[Forecast] | None: ...
|
|
@@ -11,4 +11,3 @@ PLATFORMS: Incomplete
|
|
|
11
11
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
|
12
12
|
async def async_migrate_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
|
13
13
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
|
14
|
-
async def _async_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
|
@@ -2,7 +2,7 @@ import voluptuous as vol
|
|
|
2
2
|
from .const import CONF_UPCOMING_DAYS as CONF_UPCOMING_DAYS, CONF_WANTED_MAX_ITEMS as CONF_WANTED_MAX_ITEMS, DEFAULT_UPCOMING_DAYS as DEFAULT_UPCOMING_DAYS, DEFAULT_VERIFY_SSL as DEFAULT_VERIFY_SSL, DEFAULT_WANTED_MAX_ITEMS as DEFAULT_WANTED_MAX_ITEMS, DOMAIN as DOMAIN
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
4
|
from collections.abc import Mapping
|
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload, SOURCE_REAUTH as SOURCE_REAUTH
|
|
6
6
|
from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_URL as CONF_URL, CONF_VERIFY_SSL as CONF_VERIFY_SSL
|
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
8
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
@@ -22,5 +22,5 @@ class SonarrConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
22
22
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
23
23
|
def _get_user_data_schema(self) -> dict[vol.Marker, type]: ...
|
|
24
24
|
|
|
25
|
-
class SonarrOptionsFlowHandler(
|
|
25
|
+
class SonarrOptionsFlowHandler(OptionsFlowWithReload):
|
|
26
26
|
async def async_step_init(self, user_input: dict[str, int] | None = None) -> ConfigFlowResult: ...
|
|
@@ -10,4 +10,3 @@ PLATFORMS: Incomplete
|
|
|
10
10
|
|
|
11
11
|
async def async_setup_entry(hass: HomeAssistant, config_entry: SpeedTestConfigEntry) -> bool: ...
|
|
12
12
|
async def async_unload_entry(hass: HomeAssistant, config_entry: SpeedTestConfigEntry) -> bool: ...
|
|
13
|
-
async def update_listener(hass: HomeAssistant, config_entry: SpeedTestConfigEntry) -> None: ...
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from .const import CONF_SERVER_ID as CONF_SERVER_ID, CONF_SERVER_NAME as CONF_SERVER_NAME, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_SERVER as DEFAULT_SERVER, DOMAIN as DOMAIN
|
|
2
2
|
from .coordinator import SpeedTestConfigEntry as SpeedTestConfigEntry
|
|
3
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
3
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload
|
|
4
4
|
from homeassistant.core import callback as callback
|
|
5
5
|
from typing import Any
|
|
6
6
|
|
|
@@ -11,7 +11,7 @@ class SpeedTestFlowHandler(ConfigFlow, domain=DOMAIN):
|
|
|
11
11
|
def async_get_options_flow(config_entry: SpeedTestConfigEntry) -> SpeedTestOptionsFlowHandler: ...
|
|
12
12
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
13
13
|
|
|
14
|
-
class SpeedTestOptionsFlowHandler(
|
|
14
|
+
class SpeedTestOptionsFlowHandler(OptionsFlowWithReload):
|
|
15
15
|
_servers: dict
|
|
16
16
|
def __init__(self) -> None: ...
|
|
17
17
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -18,7 +18,6 @@ QUERY_SCHEMA: Incomplete
|
|
|
18
18
|
CONFIG_SCHEMA: Incomplete
|
|
19
19
|
|
|
20
20
|
def remove_configured_db_url_if_not_needed(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
|
21
|
-
async def async_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
|
22
21
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
|
23
22
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
|
24
23
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
|
@@ -4,7 +4,7 @@ from .util import resolve_db_url as resolve_db_url
|
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from homeassistant.components.recorder import CONF_DB_URL as CONF_DB_URL, get_instance as get_instance
|
|
6
6
|
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, SensorDeviceClass as SensorDeviceClass, SensorStateClass as SensorStateClass
|
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult,
|
|
7
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload
|
|
8
8
|
from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_NAME as CONF_NAME, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
|
|
9
9
|
from homeassistant.core import callback as callback
|
|
10
10
|
from homeassistant.helpers import selector as selector
|
|
@@ -26,5 +26,5 @@ class SQLConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
|
26
26
|
def async_get_options_flow(config_entry: ConfigEntry) -> SQLOptionsFlowHandler: ...
|
|
27
27
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
28
28
|
|
|
29
|
-
class SQLOptionsFlowHandler(
|
|
29
|
+
class SQLOptionsFlowHandler(OptionsFlowWithReload):
|
|
30
30
|
async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
from .const import CONF_HTTPS as CONF_HTTPS, DISCOVERY_INTERVAL as DISCOVERY_INTERVAL, DISCOVERY_TASK as DISCOVERY_TASK, DOMAIN as DOMAIN,
|
|
1
|
+
from .const import CONF_HTTPS as CONF_HTTPS, DISCOVERY_INTERVAL as DISCOVERY_INTERVAL, DISCOVERY_TASK as DISCOVERY_TASK, DOMAIN as DOMAIN, SERVER_MANUFACTURER as SERVER_MANUFACTURER, SERVER_MODEL as SERVER_MODEL, SERVER_MODEL_ID as SERVER_MODEL_ID, SIGNAL_PLAYER_DISCOVERED as SIGNAL_PLAYER_DISCOVERED, SIGNAL_PLAYER_REDISCOVERED as SIGNAL_PLAYER_REDISCOVERED, STATUS_API_TIMEOUT as STATUS_API_TIMEOUT, STATUS_QUERY_LIBRARYNAME as STATUS_QUERY_LIBRARYNAME, STATUS_QUERY_MAC as STATUS_QUERY_MAC, STATUS_QUERY_UUID as STATUS_QUERY_UUID, STATUS_QUERY_VERSION as STATUS_QUERY_VERSION
|
|
2
2
|
from .coordinator import LMSStatusDataUpdateCoordinator as LMSStatusDataUpdateCoordinator, SqueezeBoxPlayerUpdateCoordinator as SqueezeBoxPlayerUpdateCoordinator
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
|
-
from dataclasses import dataclass
|
|
4
|
+
from dataclasses import dataclass, field
|
|
5
5
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
6
6
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME, Platform as Platform
|
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
@@ -19,6 +19,7 @@ PLATFORMS: Incomplete
|
|
|
19
19
|
class SqueezeboxData:
|
|
20
20
|
coordinator: LMSStatusDataUpdateCoordinator
|
|
21
21
|
server: Server
|
|
22
|
+
known_player_ids: set[str] = field(default_factory=set)
|
|
22
23
|
type SqueezeboxConfigEntry = ConfigEntry[SqueezeboxData]
|
|
23
24
|
|
|
24
25
|
async def async_setup_entry(hass: HomeAssistant, entry: SqueezeboxConfigEntry) -> bool: ...
|
|
@@ -8,6 +8,7 @@ from homeassistant.helpers.network import is_internal_request as is_internal_req
|
|
|
8
8
|
from pysqueezebox import Player as Player
|
|
9
9
|
from typing import Any
|
|
10
10
|
|
|
11
|
+
_LOGGER: Incomplete
|
|
11
12
|
LIBRARY: Incomplete
|
|
12
13
|
MEDIA_TYPE_TO_SQUEEZEBOX: dict[str | MediaType, str]
|
|
13
14
|
SQUEEZEBOX_ID_BY_TYPE: dict[str | MediaType, str]
|
|
@@ -22,8 +23,9 @@ class BrowseData:
|
|
|
22
23
|
media_type_to_squeezebox: dict[str | MediaType, str] = field(default_factory=dict)
|
|
23
24
|
known_apps_radios: set[str] = field(default_factory=set)
|
|
24
25
|
def __post_init__(self) -> None: ...
|
|
26
|
+
def add_new_command(self, cmd: str | MediaType, type: str) -> None: ...
|
|
27
|
+
async def async_init(self, player: Player, browse_limit: int) -> None: ...
|
|
25
28
|
|
|
26
|
-
def _add_new_command_to_browse_data(browse_data: BrowseData, cmd: str | MediaType, type: str) -> None: ...
|
|
27
29
|
def _build_response_apps_radios_category(browse_data: BrowseData, cmd: str | MediaType, item: dict[str, Any]) -> BrowseMedia: ...
|
|
28
30
|
def _build_response_known_app(browse_data: BrowseData, search_type: str, item: dict[str, Any]) -> BrowseMedia: ...
|
|
29
31
|
def _build_response_favorites(item: dict[str, Any]) -> BrowseMedia: ...
|