homeassistant-stubs 2025.10.3__py3-none-any.whl → 2025.11.0b0__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/auth/mfa_modules/totp.pyi +2 -0
- homeassistant-stubs/components/acaia/coordinator.pyi +2 -0
- homeassistant-stubs/components/airly/config_flow.pyi +3 -0
- homeassistant-stubs/components/airnow/config_flow.pyi +1 -0
- homeassistant-stubs/components/airos/__init__.pyi +4 -2
- homeassistant-stubs/components/airos/config_flow.pyi +10 -1
- homeassistant-stubs/components/airos/coordinator.pyi +1 -1
- homeassistant-stubs/components/airthings/config_flow.pyi +1 -0
- homeassistant-stubs/components/airthings_ble/config_flow.pyi +4 -2
- homeassistant-stubs/components/airthings_ble/sensor.pyi +2 -1
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +0 -10
- homeassistant-stubs/components/alexa_devices/const.pyi +2 -0
- homeassistant-stubs/components/alexa_devices/sensor.pyi +12 -2
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -0
- homeassistant-stubs/components/apple_tv/__init__.pyi +3 -3
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +3 -3
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
- homeassistant-stubs/components/asuswrt/bridge.pyi +9 -9
- homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -1
- homeassistant-stubs/components/asuswrt/device_tracker.pyi +0 -3
- homeassistant-stubs/components/asuswrt/helpers.pyi +2 -3
- homeassistant-stubs/components/asuswrt/router.pyi +1 -1
- homeassistant-stubs/components/backup/http.pyi +1 -0
- homeassistant-stubs/components/backup/manager.pyi +2 -1
- homeassistant-stubs/components/backup/util.pyi +2 -32
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +5 -5
- homeassistant-stubs/components/bluetooth/__init__.pyi +2 -5
- homeassistant-stubs/components/bluetooth/api.pyi +2 -0
- homeassistant-stubs/components/bluetooth/manager.pyi +2 -0
- homeassistant-stubs/components/bryant_evolution/climate.pyi +2 -2
- homeassistant-stubs/components/calendar/trigger.pyi +1 -1
- homeassistant-stubs/components/camera/__init__.pyi +1 -9
- homeassistant-stubs/components/cert_expiry/config_flow.pyi +1 -1
- homeassistant-stubs/components/cert_expiry/errors.pyi +1 -0
- homeassistant-stubs/components/cert_expiry/helper.pyi +1 -1
- homeassistant-stubs/components/cloud/__init__.pyi +2 -1
- homeassistant-stubs/components/cloud/client.pyi +1 -1
- homeassistant-stubs/components/cloud/const.pyi +1 -1
- homeassistant-stubs/components/comelit/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/comelit/cover.pyi +2 -2
- homeassistant-stubs/components/comelit/light.pyi +1 -1
- homeassistant-stubs/components/comelit/sensor.pyi +1 -0
- homeassistant-stubs/components/comelit/switch.pyi +1 -1
- homeassistant-stubs/components/comelit/utils.pyi +5 -1
- homeassistant-stubs/components/config/config_entries.pyi +5 -1
- homeassistant-stubs/components/cover/__init__.pyi +1 -11
- homeassistant-stubs/components/demo/valve.pyi +14 -5
- homeassistant-stubs/components/derivative/__init__.pyi +0 -1
- homeassistant-stubs/components/derivative/config_flow.pyi +1 -0
- homeassistant-stubs/components/derivative/sensor.pyi +2 -1
- homeassistant-stubs/components/device_automation/condition.pyi +7 -6
- homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/entity.pyi +1 -2
- homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/subscriber.pyi +0 -1
- homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
- homeassistant-stubs/components/dnsip/sensor.pyi +3 -3
- homeassistant-stubs/components/ecovacs/button.pyi +1 -1
- homeassistant-stubs/components/ecovacs/select.pyi +14 -2
- homeassistant-stubs/components/eheimdigital/sensor.pyi +1 -2
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +4 -22
- homeassistant-stubs/components/eq3btsmart/sensor.pyi +1 -2
- homeassistant-stubs/components/esphome/__init__.pyi +1 -1
- homeassistant-stubs/components/esphome/assist_satellite.pyi +12 -2
- homeassistant-stubs/components/esphome/climate.pyi +1 -0
- homeassistant-stubs/components/esphome/config_flow.pyi +7 -4
- homeassistant-stubs/components/esphome/const.pyi +2 -0
- homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
- homeassistant-stubs/components/esphome/manager.pyi +8 -3
- homeassistant-stubs/components/esphome/select.pyi +1 -1
- homeassistant-stubs/components/evohome/climate.pyi +1 -1
- homeassistant-stubs/components/fastdotcom/coordinator.pyi +2 -2
- homeassistant-stubs/components/fastdotcom/sensor.pyi +1 -1
- homeassistant-stubs/components/filter/__init__.pyi +0 -1
- homeassistant-stubs/components/filter/config_flow.pyi +1 -0
- homeassistant-stubs/components/firefly_iii/__init__.pyi +8 -0
- homeassistant-stubs/components/firefly_iii/config_flow.pyi +24 -0
- homeassistant-stubs/components/firefly_iii/const.pyi +3 -0
- homeassistant-stubs/components/firefly_iii/coordinator.pyi +30 -0
- homeassistant-stubs/components/firefly_iii/diagnostics.pyi +11 -0
- homeassistant-stubs/components/firefly_iii/entity.pyi +30 -0
- homeassistant-stubs/components/firefly_iii/sensor.pyi +66 -0
- homeassistant-stubs/components/fritz/coordinator.pyi +3 -0
- homeassistant-stubs/components/fritz/models.pyi +2 -2
- homeassistant-stubs/components/fritz/services.pyi +3 -0
- homeassistant-stubs/components/fritzbox/climate.pyi +2 -5
- homeassistant-stubs/components/generic_hygrostat/__init__.pyi +0 -1
- homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/generic_thermostat/__init__.pyi +0 -1
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/github/__init__.pyi +12 -0
- homeassistant-stubs/components/github/config_flow.pyi +28 -0
- homeassistant-stubs/components/github/const.pyi +10 -0
- homeassistant-stubs/components/github/coordinator.pyi +26 -0
- homeassistant-stubs/components/github/diagnostics.pyi +7 -0
- homeassistant-stubs/components/github/sensor.pyi +37 -0
- homeassistant-stubs/components/go2rtc/__init__.pyi +1 -2
- homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +2 -1
- homeassistant-stubs/components/google_drive/api.pyi +1 -0
- homeassistant-stubs/components/google_sheets/services.pyi +9 -2
- homeassistant-stubs/components/group/__init__.pyi +0 -1
- homeassistant-stubs/components/group/config_flow.pyi +2 -0
- homeassistant-stubs/components/group/entity.pyi +3 -0
- homeassistant-stubs/components/group/light.pyi +1 -1
- homeassistant-stubs/components/group/util.pyi +1 -0
- homeassistant-stubs/components/group/valve.pyi +47 -0
- homeassistant-stubs/components/habitica/__init__.pyi +1 -0
- homeassistant-stubs/components/habitica/config_flow.pyi +11 -3
- homeassistant-stubs/components/habitica/const.pyi +1 -0
- homeassistant-stubs/components/habitica/coordinator.pyi +9 -3
- homeassistant-stubs/components/habitica/entity.pyi +15 -2
- homeassistant-stubs/components/habitica/image.pyi +6 -2
- homeassistant-stubs/components/habitica/notify.pyi +42 -0
- homeassistant-stubs/components/habitica/sensor.pyi +9 -4
- homeassistant-stubs/components/hardkernel/hardware.pyi +1 -1
- homeassistant-stubs/components/hardware/__init__.pyi +2 -10
- homeassistant-stubs/components/history_stats/__init__.pyi +0 -1
- homeassistant-stubs/components/history_stats/config_flow.pyi +1 -0
- homeassistant-stubs/components/home_connect/application_credentials.pyi +1 -0
- homeassistant-stubs/components/home_connect/const.pyi +1 -0
- homeassistant-stubs/components/home_connect/select.pyi +1 -1
- homeassistant-stubs/components/homeassistant_green/config_flow.pyi +4 -2
- homeassistant-stubs/components/homeassistant_green/hardware.pyi +1 -1
- homeassistant-stubs/components/homeassistant_hardware/const.pyi +1 -0
- homeassistant-stubs/components/homeassistant_hardware/helpers.pyi +12 -2
- homeassistant-stubs/components/homeassistant_hardware/switch.pyi +23 -0
- homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +13 -4
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +4 -0
- homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -1
- homeassistant-stubs/components/homeassistant_sky_connect/switch.pyi +17 -0
- homeassistant-stubs/components/homeassistant_sky_connect/update.pyi +5 -7
- homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +12 -4
- homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +1 -1
- homeassistant-stubs/components/homeassistant_yellow/hardware.pyi +1 -1
- homeassistant-stubs/components/homeassistant_yellow/switch.pyi +17 -0
- homeassistant-stubs/components/homeassistant_yellow/update.pyi +5 -7
- homeassistant-stubs/components/homee/__init__.pyi +1 -0
- homeassistant-stubs/components/homewizard/__init__.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +8 -4
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +5 -0
- homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -0
- homeassistant-stubs/components/imap/__init__.pyi +3 -1
- homeassistant-stubs/components/imap/coordinator.pyi +4 -1
- homeassistant-stubs/components/inels/__init__.pyi +18 -0
- homeassistant-stubs/components/inels/config_flow.pyi +13 -0
- homeassistant-stubs/components/inels/const.pyi +7 -0
- homeassistant-stubs/components/inels/entity.pyi +20 -0
- homeassistant-stubs/components/inels/switch.pyi +34 -0
- homeassistant-stubs/components/knx/climate.pyi +23 -11
- homeassistant-stubs/components/knx/const.pyi +14 -0
- homeassistant-stubs/components/knx/schema.pyi +1 -13
- homeassistant-stubs/components/knx/sensor.pyi +8 -9
- homeassistant-stubs/components/knx/storage/const.pyi +20 -0
- homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +13 -2
- homeassistant-stubs/components/lametric/config_flow.pyi +2 -0
- homeassistant-stubs/components/lcn/sensor.pyi +1 -1
- homeassistant-stubs/components/libre_hardware_monitor/__init__.pyi +3 -0
- homeassistant-stubs/components/libre_hardware_monitor/sensor.pyi +2 -3
- homeassistant-stubs/components/litterrobot/update.pyi +2 -0
- homeassistant-stubs/components/lock/__init__.pyi +1 -6
- homeassistant-stubs/components/london_underground/__init__.pyi +9 -0
- homeassistant-stubs/components/london_underground/config_flow.pyi +22 -0
- homeassistant-stubs/components/london_underground/const.pyi +1 -0
- homeassistant-stubs/components/london_underground/coordinator.pyi +3 -1
- homeassistant-stubs/components/london_underground/sensor.pyi +10 -5
- homeassistant-stubs/components/lunatone/__init__.pyi +12 -0
- homeassistant-stubs/components/lunatone/config_flow.pyi +16 -0
- homeassistant-stubs/components/lunatone/const.pyi +3 -0
- homeassistant-stubs/components/lunatone/coordinator.pyi +29 -0
- homeassistant-stubs/components/lunatone/light.pyi +43 -0
- homeassistant-stubs/components/matrix/__init__.pyi +10 -2
- homeassistant-stubs/components/matrix/const.pyi +5 -0
- homeassistant-stubs/components/matrix/services.pyi +3 -1
- homeassistant-stubs/components/matter/__init__.pyi +5 -0
- homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/matter/button.pyi +1 -1
- homeassistant-stubs/components/matter/climate.pyi +7 -1
- homeassistant-stubs/components/matter/cover.pyi +6 -2
- homeassistant-stubs/components/matter/entity.pyi +4 -2
- homeassistant-stubs/components/matter/event.pyi +5 -1
- homeassistant-stubs/components/matter/fan.pyi +5 -1
- homeassistant-stubs/components/matter/light.pyi +6 -2
- homeassistant-stubs/components/matter/lock.pyi +5 -1
- homeassistant-stubs/components/matter/models.pyi +3 -3
- homeassistant-stubs/components/matter/number.pyi +1 -1
- homeassistant-stubs/components/matter/select.pyi +1 -1
- homeassistant-stubs/components/matter/sensor.pyi +4 -1
- homeassistant-stubs/components/matter/services.pyi +11 -0
- homeassistant-stubs/components/matter/switch.pyi +5 -2
- homeassistant-stubs/components/matter/update.pyi +4 -1
- homeassistant-stubs/components/matter/vacuum.pyi +6 -2
- homeassistant-stubs/components/matter/valve.pyi +6 -2
- homeassistant-stubs/components/matter/water_heater.pyi +8 -1
- homeassistant-stubs/components/mcp/__init__.pyi +1 -6
- homeassistant-stubs/components/mcp/config_flow.pyi +12 -2
- homeassistant-stubs/components/mcp/const.pyi +1 -0
- homeassistant-stubs/components/mcp/coordinator.pyi +1 -1
- homeassistant-stubs/components/mcp_server/__init__.pyi +1 -8
- homeassistant-stubs/components/mcp_server/http.pyi +23 -1
- homeassistant-stubs/components/mealie/config_flow.pyi +8 -1
- homeassistant-stubs/components/media_player/__init__.pyi +1 -9
- homeassistant-stubs/components/media_player/const.pyi +10 -69
- homeassistant-stubs/components/media_player/intent.pyi +7 -9
- homeassistant-stubs/components/metoffice/__init__.pyi +1 -0
- homeassistant-stubs/components/metoffice/helpers.pyi +2 -2
- homeassistant-stubs/components/metoffice/weather.pyi +11 -11
- homeassistant-stubs/components/min_max/__init__.pyi +0 -1
- homeassistant-stubs/components/min_max/config_flow.pyi +1 -0
- homeassistant-stubs/components/mold_indicator/__init__.pyi +0 -1
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +1 -0
- homeassistant-stubs/components/mqtt/__init__.pyi +1 -4
- homeassistant-stubs/components/mqtt/config_flow.pyi +23 -4
- homeassistant-stubs/components/mqtt/const.pyi +7 -1
- homeassistant-stubs/components/mqtt/number.pyi +1 -5
- homeassistant-stubs/components/mqtt/siren.pyi +1 -9
- homeassistant-stubs/components/music_assistant/const.pyi +4 -0
- homeassistant-stubs/components/music_assistant/media_player.pyi +1 -1
- homeassistant-stubs/components/music_assistant/schemas.pyi +2 -2
- homeassistant-stubs/components/nasweb/sensor.pyi +0 -5
- homeassistant-stubs/components/nasweb/switch.pyi +1 -0
- homeassistant-stubs/components/nextdns/config_flow.pyi +6 -1
- homeassistant-stubs/components/number/const.pyi +2 -1
- homeassistant-stubs/components/onedrive/backup.pyi +2 -1
- homeassistant-stubs/components/onewire/binary_sensor.pyi +5 -12
- homeassistant-stubs/components/onewire/const.pyi +0 -2
- homeassistant-stubs/components/onewire/diagnostics.pyi +2 -0
- homeassistant-stubs/components/onewire/entity.pyi +6 -14
- homeassistant-stubs/components/onewire/onewirehub.pyi +5 -5
- homeassistant-stubs/components/onewire/select.pyi +3 -10
- homeassistant-stubs/components/onewire/sensor.pyi +5 -7
- homeassistant-stubs/components/onewire/switch.pyi +7 -14
- homeassistant-stubs/components/onkyo/receiver.pyi +1 -1
- homeassistant-stubs/components/open_router/entity.pyi +4 -1
- homeassistant-stubs/components/openai_conversation/ai_task.pyi +1 -1
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +1 -1
- homeassistant-stubs/components/openai_conversation/const.pyi +2 -0
- homeassistant-stubs/components/openai_conversation/entity.pyi +1 -1
- homeassistant-stubs/components/opower/coordinator.pyi +1 -0
- homeassistant-stubs/components/ping/__init__.pyi +1 -0
- homeassistant-stubs/components/ping/config_flow.pyi +1 -0
- homeassistant-stubs/components/ping/device_tracker.pyi +3 -2
- homeassistant-stubs/components/ping/entity.pyi +1 -0
- homeassistant-stubs/components/portainer/button.pyi +29 -0
- homeassistant-stubs/components/portainer/config_flow.pyi +4 -0
- homeassistant-stubs/components/portainer/const.pyi +1 -0
- homeassistant-stubs/components/portainer/coordinator.pyi +11 -2
- homeassistant-stubs/components/portainer/diagnostics.pyi +12 -0
- homeassistant-stubs/components/portainer/entity.pyi +2 -0
- homeassistant-stubs/components/portainer/sensor.pyi +41 -0
- homeassistant-stubs/components/portainer/switch.pyi +35 -0
- homeassistant-stubs/components/qbus/entity.pyi +1 -3
- homeassistant-stubs/components/raspberry_pi/hardware.pyi +1 -1
- homeassistant-stubs/components/recorder/const.pyi +1 -1
- homeassistant-stubs/components/recorder/core.pyi +3 -3
- homeassistant-stubs/components/recorder/db_schema.pyi +3 -10
- homeassistant-stubs/components/recorder/entity_registry.pyi +1 -0
- homeassistant-stubs/components/recorder/history/__init__.pyi +2 -2
- homeassistant-stubs/components/recorder/migration.pyi +4 -1
- homeassistant-stubs/components/recorder/models/statistics.pyi +1 -0
- homeassistant-stubs/components/recorder/statistics.pyi +17 -12
- homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +0 -1
- homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +4 -2
- homeassistant-stubs/components/recorder/tasks.pyi +1 -0
- homeassistant-stubs/components/recorder/util.pyi +1 -1
- homeassistant-stubs/components/recorder/websocket_api.pyi +6 -4
- homeassistant-stubs/components/renault/sensor.pyi +1 -1
- homeassistant-stubs/components/reolink/__init__.pyi +1 -1
- homeassistant-stubs/components/reolink/binary_sensor.pyi +15 -0
- homeassistant-stubs/components/reolink/siren.pyi +2 -0
- homeassistant-stubs/components/reolink/switch.pyi +25 -7
- homeassistant-stubs/components/roborock/__init__.pyi +1 -1
- homeassistant-stubs/components/roborock/config_flow.pyi +1 -1
- homeassistant-stubs/components/roborock/coordinator.pyi +2 -1
- homeassistant-stubs/components/roborock/entity.pyi +1 -1
- homeassistant-stubs/components/roborock/models.pyi +1 -1
- homeassistant-stubs/components/scrape/coordinator.pyi +1 -2
- homeassistant-stubs/components/sensibo/__init__.pyi +6 -0
- homeassistant-stubs/components/sensibo/climate.pyi +3 -26
- homeassistant-stubs/components/sensibo/services.pyi +31 -0
- 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/sensor/recorder.pyi +6 -3
- homeassistant-stubs/components/sfr_box/__init__.pyi +4 -6
- homeassistant-stubs/components/sfr_box/binary_sensor.pyi +5 -14
- homeassistant-stubs/components/sfr_box/button.pyi +4 -9
- homeassistant-stubs/components/sfr_box/config_flow.pyi +2 -1
- homeassistant-stubs/components/sfr_box/coordinator.pyi +13 -2
- homeassistant-stubs/components/sfr_box/diagnostics.pyi +2 -4
- homeassistant-stubs/components/sfr_box/entity.pyi +18 -0
- homeassistant-stubs/components/sfr_box/sensor.pyi +4 -13
- homeassistant-stubs/components/shelly/__init__.pyi +2 -2
- homeassistant-stubs/components/shelly/binary_sensor.pyi +6 -2
- homeassistant-stubs/components/shelly/button.pyi +26 -16
- homeassistant-stubs/components/shelly/climate.pyi +61 -7
- homeassistant-stubs/components/shelly/const.pyi +15 -3
- homeassistant-stubs/components/shelly/cover.pyi +31 -10
- homeassistant-stubs/components/shelly/entity.pyi +5 -4
- homeassistant-stubs/components/shelly/event.pyi +4 -0
- homeassistant-stubs/components/shelly/light.pyi +23 -7
- homeassistant-stubs/components/shelly/number.pyi +11 -2
- homeassistant-stubs/components/shelly/repairs.pyi +2 -2
- homeassistant-stubs/components/shelly/select.pyi +4 -1
- homeassistant-stubs/components/shelly/sensor.pyi +8 -7
- homeassistant-stubs/components/shelly/switch.pyi +7 -4
- homeassistant-stubs/components/shelly/text.pyi +4 -1
- homeassistant-stubs/components/shelly/update.pyi +4 -0
- homeassistant-stubs/components/shelly/utils.pyi +10 -5
- homeassistant-stubs/components/shelly/valve.pyi +34 -5
- homeassistant-stubs/components/simplisafe/config_flow.pyi +2 -0
- homeassistant-stubs/components/sleep_as_android/event.pyi +1 -0
- homeassistant-stubs/components/sma/__init__.pyi +15 -0
- homeassistant-stubs/components/sma/config_flow.pyi +27 -0
- homeassistant-stubs/components/sma/const.pyi +11 -0
- homeassistant-stubs/components/sma/coordinator.pyi +28 -0
- homeassistant-stubs/components/sma/diagnostics.pyi +10 -0
- homeassistant-stubs/components/sma/sensor.pyi +33 -0
- homeassistant-stubs/components/sql/__init__.pyi +2 -4
- homeassistant-stubs/components/sql/sensor.pyi +6 -13
- homeassistant-stubs/components/sql/services.pyi +17 -0
- homeassistant-stubs/components/sql/util.pyi +16 -3
- homeassistant-stubs/components/squeezebox/__init__.pyi +4 -1
- homeassistant-stubs/components/squeezebox/browse_media.pyi +4 -3
- homeassistant-stubs/components/squeezebox/button.pyi +1 -0
- homeassistant-stubs/components/squeezebox/const.pyi +0 -1
- homeassistant-stubs/components/squeezebox/media_player.pyi +7 -2
- homeassistant-stubs/components/squeezebox/switch.pyi +1 -0
- homeassistant-stubs/components/squeezebox/util.pyi +6 -0
- homeassistant-stubs/components/suez_water/coordinator.pyi +2 -1
- homeassistant-stubs/components/sun/condition.pyi +10 -5
- homeassistant-stubs/components/switch_as_x/__init__.pyi +0 -1
- homeassistant-stubs/components/switch_as_x/config_flow.pyi +1 -0
- homeassistant-stubs/components/switchbot_cloud/climate.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/lock.pyi +7 -2
- homeassistant-stubs/components/switchbot_cloud/sensor.pyi +25 -2
- homeassistant-stubs/components/switchbot_cloud/switch.pyi +13 -1
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +4 -4
- homeassistant-stubs/components/switcher_kis/button.pyi +5 -6
- homeassistant-stubs/components/switcher_kis/climate.pyi +3 -3
- homeassistant-stubs/components/switcher_kis/const.pyi +1 -0
- homeassistant-stubs/components/switcher_kis/cover.pyi +4 -3
- homeassistant-stubs/components/switcher_kis/light.pyi +3 -2
- homeassistant-stubs/components/switcher_kis/sensor.pyi +4 -2
- homeassistant-stubs/components/switcher_kis/switch.pyi +3 -5
- homeassistant-stubs/components/systemmonitor/__init__.pyi +0 -1
- homeassistant-stubs/components/systemmonitor/config_flow.pyi +1 -0
- homeassistant-stubs/components/systemmonitor/coordinator.pyi +1 -0
- homeassistant-stubs/components/systemmonitor/sensor.pyi +3 -1
- homeassistant-stubs/components/telegram_bot/__init__.pyi +2 -1
- homeassistant-stubs/components/telegram_bot/bot.pyi +10 -5
- homeassistant-stubs/components/telegram_bot/const.pyi +9 -0
- homeassistant-stubs/components/telegram_bot/diagnostics.pyi +11 -0
- homeassistant-stubs/components/telegram_bot/entity.pyi +16 -0
- homeassistant-stubs/components/telegram_bot/event.pyi +18 -0
- homeassistant-stubs/components/telegram_bot/notify.pyi +6 -10
- homeassistant-stubs/components/tibber/coordinator.pyi +1 -0
- homeassistant-stubs/components/tod/__init__.pyi +0 -1
- homeassistant-stubs/components/tod/config_flow.pyi +1 -0
- homeassistant-stubs/components/tolo/__init__.pyi +3 -5
- homeassistant-stubs/components/tolo/binary_sensor.pyi +4 -6
- homeassistant-stubs/components/tolo/button.pyi +3 -5
- homeassistant-stubs/components/tolo/climate.pyi +3 -5
- homeassistant-stubs/components/tolo/coordinator.pyi +3 -2
- homeassistant-stubs/components/tolo/entity.pyi +2 -3
- homeassistant-stubs/components/tolo/fan.pyi +3 -5
- homeassistant-stubs/components/tolo/light.pyi +3 -5
- homeassistant-stubs/components/tolo/number.pyi +3 -5
- homeassistant-stubs/components/tolo/select.pyi +4 -5
- homeassistant-stubs/components/tolo/sensor.pyi +3 -5
- homeassistant-stubs/components/tolo/switch.pyi +3 -5
- homeassistant-stubs/components/trend/__init__.pyi +0 -1
- homeassistant-stubs/components/trend/config_flow.pyi +1 -0
- homeassistant-stubs/components/tts/__init__.pyi +2 -3
- homeassistant-stubs/components/unifi/light.pyi +44 -0
- homeassistant-stubs/components/uptimerobot/binary_sensor.pyi +2 -0
- homeassistant-stubs/components/uptimerobot/sensor.pyi +2 -0
- homeassistant-stubs/components/uptimerobot/switch.pyi +2 -0
- homeassistant-stubs/components/uptimerobot/utils.pyi +5 -0
- homeassistant-stubs/components/usb/__init__.pyi +2 -0
- homeassistant-stubs/components/usb/utils.pyi +7 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +0 -15
- homeassistant-stubs/components/vivotek/__init__.pyi +0 -0
- homeassistant-stubs/components/vivotek/camera.pyi +35 -0
- homeassistant-stubs/components/vodafone_station/__init__.pyi +3 -1
- homeassistant-stubs/components/vodafone_station/config_flow.pyi +3 -2
- homeassistant-stubs/components/vodafone_station/const.pyi +3 -0
- homeassistant-stubs/components/vodafone_station/coordinator.pyi +4 -4
- homeassistant-stubs/components/volvo/__init__.pyi +2 -0
- homeassistant-stubs/components/volvo/binary_sensor.pyi +1 -3
- homeassistant-stubs/components/volvo/button.pyi +27 -0
- homeassistant-stubs/components/volvo/coordinator.pyi +12 -14
- homeassistant-stubs/components/volvo/device_tracker.pyi +23 -0
- homeassistant-stubs/components/volvo/diagnostics.pyi +12 -0
- homeassistant-stubs/components/volvo/entity.pyi +9 -5
- homeassistant-stubs/components/volvo/sensor.pyi +9 -8
- homeassistant-stubs/components/waqi/__init__.pyi +8 -0
- homeassistant-stubs/components/waqi/config_flow.pyi +14 -9
- homeassistant-stubs/components/waqi/const.pyi +1 -1
- homeassistant-stubs/components/waqi/coordinator.pyi +5 -4
- homeassistant-stubs/components/webostv/media_player.pyi +3 -0
- homeassistant-stubs/components/websocket_api/commands.pyi +2 -0
- homeassistant-stubs/components/wled/select.pyi +6 -3
- homeassistant-stubs/components/worldclock/__init__.pyi +0 -1
- homeassistant-stubs/components/worldclock/config_flow.pyi +1 -0
- homeassistant-stubs/components/zeroconf/__init__.pyi +3 -1
- homeassistant-stubs/components/zeroconf/discovery.pyi +8 -1
- homeassistant-stubs/components/zeroconf/repairs.pyi +13 -0
- homeassistant-stubs/components/zone/condition.pyi +10 -4
- homeassistant-stubs/components/zwave_js/config_flow.pyi +1 -0
- homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -1
- homeassistant-stubs/components/zwave_js/triggers/event.pyi +6 -8
- homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +6 -6
- homeassistant-stubs/config_entries.pyi +9 -0
- homeassistant-stubs/const.pyi +4 -21
- homeassistant-stubs/core.pyi +1 -7
- homeassistant-stubs/data_entry_flow.pyi +2 -0
- homeassistant-stubs/helpers/automation.pyi +6 -0
- homeassistant-stubs/helpers/condition.pyi +15 -5
- homeassistant-stubs/helpers/debounce.pyi +6 -1
- homeassistant-stubs/helpers/entity_platform.pyi +1 -1
- homeassistant-stubs/helpers/event.pyi +1 -1
- homeassistant-stubs/helpers/instance_id.pyi +1 -0
- homeassistant-stubs/helpers/llm.pyi +6 -1
- homeassistant-stubs/helpers/selector.pyi +5 -4
- homeassistant-stubs/helpers/service.pyi +4 -4
- homeassistant-stubs/helpers/template/__init__.pyi +0 -5
- homeassistant-stubs/helpers/trigger.pyi +18 -5
- homeassistant-stubs/helpers/update_coordinator.pyi +1 -0
- homeassistant-stubs/runner.pyi +1 -1
- homeassistant-stubs/util/async_iterator.pyi +33 -0
- homeassistant-stubs/util/unit_conversion.pyi +15 -0
- {homeassistant_stubs-2025.10.3.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.10.3.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/RECORD +438 -402
- homeassistant-stubs/components/elevenlabs/__init__.pyi +0 -22
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +0 -33
- homeassistant-stubs/components/elevenlabs/const.pyi +0 -14
- homeassistant-stubs/components/elevenlabs/tts.pyi +0 -36
- homeassistant-stubs/components/neato/__init__.pyi +0 -15
- homeassistant-stubs/components/neato/api.pyi +0 -17
- homeassistant-stubs/components/neato/application_credentials.pyi +0 -6
- homeassistant-stubs/components/neato/button.pyi +0 -18
- homeassistant-stubs/components/neato/camera.pyi +0 -34
- homeassistant-stubs/components/neato/config_flow.pyi +0 -15
- homeassistant-stubs/components/neato/const.pyi +0 -13
- homeassistant-stubs/components/neato/entity.pyi +0 -11
- homeassistant-stubs/components/neato/hub.pyi +0 -17
- homeassistant-stubs/components/neato/sensor.pyi +0 -30
- homeassistant-stubs/components/neato/switch.pyi +0 -34
- homeassistant-stubs/components/neato/vacuum.pyi +0 -70
- homeassistant-stubs/components/recorder/history/legacy.pyi +0 -48
- homeassistant-stubs/components/recorder/history/modern.pyi +0 -39
- homeassistant-stubs/components/recorder/models/legacy.pyi +0 -45
- homeassistant-stubs/components/sfr_box/models.pyi +0 -12
- {homeassistant_stubs-2025.10.3.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.10.3.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
|
2
|
-
from homeassistant.components.hardware
|
|
2
|
+
from homeassistant.components.hardware import BoardInfo as BoardInfo, HardwareInfo as HardwareInfo
|
|
3
3
|
from homeassistant.components.hassio import get_os_info as get_os_info
|
|
4
4
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
5
5
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
from . import HomeAssistantYellowConfigEntry as HomeAssistantYellowConfigEntry
|
|
2
|
+
from .const import DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER, MODEL as MODEL
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
from homeassistant.components.homeassistant_hardware.coordinator import FirmwareUpdateCoordinator as FirmwareUpdateCoordinator
|
|
5
|
+
from homeassistant.components.homeassistant_hardware.switch import BaseBetaFirmwareSwitch as BaseBetaFirmwareSwitch
|
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
7
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
8
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
9
|
+
|
|
10
|
+
_LOGGER: Incomplete
|
|
11
|
+
|
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: HomeAssistantYellowConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
13
|
+
|
|
14
|
+
class BetaFirmwareSwitch(BaseBetaFirmwareSwitch):
|
|
15
|
+
_attr_unique_id: str
|
|
16
|
+
_attr_device_info: Incomplete
|
|
17
|
+
def __init__(self, coordinator: FirmwareUpdateCoordinator, config_entry: HomeAssistantYellowConfigEntry) -> None: ...
|
|
@@ -1,29 +1,27 @@
|
|
|
1
|
-
import
|
|
2
|
-
from .const import DOMAIN as DOMAIN, FIRMWARE as FIRMWARE, FIRMWARE_VERSION as FIRMWARE_VERSION, MANUFACTURER as MANUFACTURER, MODEL as MODEL,
|
|
1
|
+
from . import HomeAssistantYellowConfigEntry as HomeAssistantYellowConfigEntry
|
|
2
|
+
from .const import DOMAIN as DOMAIN, FIRMWARE as FIRMWARE, FIRMWARE_VERSION as FIRMWARE_VERSION, MANUFACTURER as MANUFACTURER, MODEL as MODEL, RADIO_DEVICE as RADIO_DEVICE
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
4
|
from homeassistant.components.homeassistant_hardware.coordinator import FirmwareUpdateCoordinator as FirmwareUpdateCoordinator
|
|
5
5
|
from homeassistant.components.homeassistant_hardware.update import BaseFirmwareUpdateEntity as BaseFirmwareUpdateEntity, FirmwareUpdateEntityDescription as FirmwareUpdateEntityDescription
|
|
6
6
|
from homeassistant.components.homeassistant_hardware.util import ApplicationType as ApplicationType, FirmwareInfo as FirmwareInfo, ResetTarget as ResetTarget
|
|
7
7
|
from homeassistant.components.update import UpdateDeviceClass as UpdateDeviceClass
|
|
8
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
9
8
|
from homeassistant.const import EntityCategory as EntityCategory
|
|
10
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
11
|
-
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
12
10
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
13
11
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
14
12
|
|
|
15
13
|
_LOGGER: Incomplete
|
|
16
14
|
FIRMWARE_ENTITY_DESCRIPTIONS: dict[ApplicationType | None, FirmwareUpdateEntityDescription]
|
|
17
15
|
|
|
18
|
-
def _async_create_update_entity(hass: HomeAssistant, config_entry:
|
|
19
|
-
async def async_setup_entry(hass: HomeAssistant, config_entry:
|
|
16
|
+
def _async_create_update_entity(hass: HomeAssistant, config_entry: HomeAssistantYellowConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> FirmwareUpdateEntity: ...
|
|
17
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: HomeAssistantYellowConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
20
18
|
|
|
21
19
|
class FirmwareUpdateEntity(BaseFirmwareUpdateEntity):
|
|
22
20
|
bootloader_reset_methods: Incomplete
|
|
23
21
|
_attr_unique_id: Incomplete
|
|
24
22
|
_attr_device_info: Incomplete
|
|
25
23
|
_current_firmware_info: Incomplete
|
|
26
|
-
def __init__(self, device: str, config_entry:
|
|
24
|
+
def __init__(self, device: str, config_entry: HomeAssistantYellowConfigEntry, update_coordinator: FirmwareUpdateCoordinator, entity_description: FirmwareUpdateEntityDescription) -> None: ...
|
|
27
25
|
def _update_attributes(self) -> None: ...
|
|
28
26
|
@callback
|
|
29
27
|
def _firmware_info_callback(self, firmware_info: FirmwareInfo) -> None: ...
|
|
@@ -5,6 +5,7 @@ from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PA
|
|
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
6
6
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
|
7
7
|
from pyHomee import Homee
|
|
8
|
+
from pyHomee.model import HomeeNode as HomeeNode
|
|
8
9
|
|
|
9
10
|
_LOGGER: Incomplete
|
|
10
11
|
PLATFORMS: Incomplete
|
|
@@ -4,10 +4,12 @@ from homeassistant.config_entries import SOURCE_REAUTH as SOURCE_REAUTH
|
|
|
4
4
|
from homeassistant.const import CONF_IP_ADDRESS as CONF_IP_ADDRESS, CONF_TOKEN as CONF_TOKEN
|
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
6
6
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
|
7
|
+
from homeassistant.helpers import device_registry as dr
|
|
7
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
|
8
9
|
from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
|
|
9
10
|
from homewizard_energy import HomeWizardEnergy as HomeWizardEnergy
|
|
10
11
|
|
|
11
12
|
async def async_setup_entry(hass: HomeAssistant, entry: HomeWizardConfigEntry) -> bool: ...
|
|
12
13
|
async def async_unload_entry(hass: HomeAssistant, entry: HomeWizardConfigEntry) -> bool: ...
|
|
14
|
+
def get_main_device(hass: HomeAssistant, entry: HomeWizardConfigEntry) -> dr.DeviceEntry | None: ...
|
|
13
15
|
async def async_check_v2_support_and_create_issue(hass: HomeAssistant, entry: HomeWizardConfigEntry) -> None: ...
|
|
@@ -34,4 +34,5 @@ class AutomowerButtonEntity(AutomowerControlEntity, ButtonEntity):
|
|
|
34
34
|
def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator, description: AutomowerButtonEntityDescription) -> None: ...
|
|
35
35
|
@property
|
|
36
36
|
def available(self) -> bool: ...
|
|
37
|
+
@handle_sending_exception
|
|
37
38
|
async def async_press(self) -> None: ...
|
|
@@ -2,21 +2,25 @@ from . import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
|
|
|
2
2
|
from .const import DOMAIN as DOMAIN, EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
|
|
3
3
|
from _typeshed import Incomplete
|
|
4
4
|
from aioautomower.model import MowerAttributes as MowerAttributes, WorkArea as WorkArea
|
|
5
|
-
from collections.abc import Callable, Coroutine
|
|
5
|
+
from collections.abc import Callable as Callable, Coroutine
|
|
6
6
|
from homeassistant.core import callback as callback
|
|
7
7
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
8
8
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
9
9
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
|
10
|
-
from typing import Any, Concatenate
|
|
10
|
+
from typing import Any, Concatenate, ParamSpec, TypeVar, overload
|
|
11
11
|
|
|
12
12
|
_LOGGER: Incomplete
|
|
13
13
|
ERROR_ACTIVITIES: Incomplete
|
|
14
14
|
ERROR_STATES: Incomplete
|
|
15
|
+
_Entity = TypeVar('_Entity', bound='AutomowerBaseEntity')
|
|
16
|
+
_P = ParamSpec('_P')
|
|
15
17
|
|
|
18
|
+
@overload
|
|
19
|
+
def handle_sending_exception(_func: Callable[Concatenate[_Entity, _P], Coroutine[Any, Any, Any]]) -> Callable[Concatenate[_Entity, _P], Coroutine[Any, Any, None]]: ...
|
|
20
|
+
@overload
|
|
21
|
+
def handle_sending_exception(*, poll_after_sending: bool = False) -> Callable[[Callable[Concatenate[_Entity, _P], Coroutine[Any, Any, Any]]], Callable[Concatenate[_Entity, _P], Coroutine[Any, Any, None]]]: ...
|
|
16
22
|
@callback
|
|
17
23
|
def _work_area_translation_key(work_area_id: int, key: str) -> str: ...
|
|
18
|
-
type _FuncType[_T, **_P, _R] = Callable[Concatenate[_T, _P], Coroutine[Any, Any, _R]]
|
|
19
|
-
def handle_sending_exception[_Entity: AutomowerBaseEntity, **_P](poll_after_sending: bool = False) -> Callable[[_FuncType[_Entity, _P, Any]], _FuncType[_Entity, _P, None]]: ...
|
|
20
24
|
|
|
21
25
|
class AutomowerBaseEntity(CoordinatorEntity[AutomowerDataUpdateCoordinator]):
|
|
22
26
|
_attr_has_entity_name: bool
|
|
@@ -34,8 +34,13 @@ class AutomowerLawnMowerEntity(AutomowerBaseEntity, LawnMowerEntity):
|
|
|
34
34
|
def available(self) -> bool: ...
|
|
35
35
|
@property
|
|
36
36
|
def work_areas(self) -> dict[int, WorkArea] | None: ...
|
|
37
|
+
@handle_sending_exception
|
|
37
38
|
async def async_start_mowing(self) -> None: ...
|
|
39
|
+
@handle_sending_exception
|
|
38
40
|
async def async_pause(self) -> None: ...
|
|
41
|
+
@handle_sending_exception
|
|
39
42
|
async def async_dock(self) -> None: ...
|
|
43
|
+
@handle_sending_exception
|
|
40
44
|
async def async_override_schedule(self, override_mode: str, duration: timedelta) -> None: ...
|
|
45
|
+
@handle_sending_exception
|
|
41
46
|
async def async_override_schedule_work_area(self, work_area_id: int, duration: timedelta) -> None: ...
|
|
@@ -21,4 +21,5 @@ class AutomowerSelectEntity(AutomowerControlEntity, SelectEntity):
|
|
|
21
21
|
def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
|
|
22
22
|
@property
|
|
23
23
|
def current_option(self) -> str: ...
|
|
24
|
+
@handle_sending_exception
|
|
24
25
|
async def async_select_option(self, option: str) -> None: ...
|
|
@@ -29,6 +29,8 @@ def _get_work_area_names(data: MowerAttributes) -> list[str]: ...
|
|
|
29
29
|
@callback
|
|
30
30
|
def _get_current_work_area_name(data: MowerAttributes) -> str: ...
|
|
31
31
|
@callback
|
|
32
|
+
def _get_remaining_charging_time(data: MowerAttributes) -> int | None: ...
|
|
33
|
+
@callback
|
|
32
34
|
def _get_current_work_area_dict(data: MowerAttributes) -> Mapping[str, Any]: ...
|
|
33
35
|
@callback
|
|
34
36
|
def _get_error_string(data: MowerAttributes) -> str: ...
|
|
@@ -19,7 +19,9 @@ class AutomowerScheduleSwitchEntity(AutomowerControlEntity, SwitchEntity):
|
|
|
19
19
|
def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
|
|
20
20
|
@property
|
|
21
21
|
def is_on(self) -> bool: ...
|
|
22
|
+
@handle_sending_exception
|
|
22
23
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
|
24
|
+
@handle_sending_exception
|
|
23
25
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
|
24
26
|
|
|
25
27
|
class StayOutZoneSwitchEntity(AutomowerControlEntity, SwitchEntity):
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
from .const import CONF_ENABLE_PUSH as CONF_ENABLE_PUSH, DOMAIN as DOMAIN
|
|
2
|
-
from .coordinator import ImapDataUpdateCoordinator as ImapDataUpdateCoordinator, ImapMessage as ImapMessage, ImapPollingDataUpdateCoordinator as ImapPollingDataUpdateCoordinator, ImapPushDataUpdateCoordinator as ImapPushDataUpdateCoordinator, connect_to_server as connect_to_server
|
|
2
|
+
from .coordinator import ImapDataUpdateCoordinator as ImapDataUpdateCoordinator, ImapMessage as ImapMessage, ImapPollingDataUpdateCoordinator as ImapPollingDataUpdateCoordinator, ImapPushDataUpdateCoordinator as ImapPushDataUpdateCoordinator, connect_to_server as connect_to_server, get_parts as get_parts
|
|
3
3
|
from .errors import InvalidAuth as InvalidAuth, InvalidFolder as InvalidFolder
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from aioimaplib import IMAP4_SSL as IMAP4_SSL, Response as Response
|
|
@@ -12,6 +12,7 @@ from homeassistant.helpers.typing import ConfigType as ConfigType
|
|
|
12
12
|
PLATFORMS: list[Platform]
|
|
13
13
|
CONF_ENTRY: str
|
|
14
14
|
CONF_SEEN: str
|
|
15
|
+
CONF_PART: str
|
|
15
16
|
CONF_UID: str
|
|
16
17
|
CONF_TARGET_FOLDER: str
|
|
17
18
|
_LOGGER: Incomplete
|
|
@@ -21,6 +22,7 @@ SERVICE_SEEN_SCHEMA = _SERVICE_UID_SCHEMA
|
|
|
21
22
|
SERVICE_MOVE_SCHEMA: Incomplete
|
|
22
23
|
SERVICE_DELETE_SCHEMA = _SERVICE_UID_SCHEMA
|
|
23
24
|
SERVICE_FETCH_TEXT_SCHEMA = _SERVICE_UID_SCHEMA
|
|
25
|
+
SERVICE_FETCH_PART_SCHEMA: Incomplete
|
|
24
26
|
type ImapConfigEntry = ConfigEntry[ImapDataUpdateCoordinator]
|
|
25
27
|
|
|
26
28
|
async def async_get_imap_client(hass: HomeAssistant, entry_id: str) -> IMAP4_SSL: ...
|
|
@@ -8,7 +8,7 @@ from collections.abc import Mapping
|
|
|
8
8
|
from datetime import datetime, timedelta
|
|
9
9
|
from email.message import Message
|
|
10
10
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, CONTENT_TYPE_TEXT_PLAIN as CONTENT_TYPE_TEXT_PLAIN
|
|
11
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
12
12
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, TemplateError as TemplateError
|
|
13
13
|
from homeassistant.helpers.json import json_bytes as json_bytes
|
|
14
14
|
from homeassistant.helpers.template import Template as Template
|
|
@@ -43,6 +43,9 @@ class ImapMessage:
|
|
|
43
43
|
@property
|
|
44
44
|
def text(self) -> str: ...
|
|
45
45
|
|
|
46
|
+
@callback
|
|
47
|
+
def get_parts(message: Message, prefix: str | None = None) -> dict[str, Any]: ...
|
|
48
|
+
|
|
46
49
|
class ImapDataUpdateCoordinator(DataUpdateCoordinator[int | None]):
|
|
47
50
|
config_entry: ImapConfigEntry
|
|
48
51
|
custom_event_template: Template | None
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
from .const import LOGGER as LOGGER, PLATFORMS as PLATFORMS
|
|
2
|
+
from collections.abc import Callable as Callable
|
|
3
|
+
from dataclasses import dataclass
|
|
4
|
+
from homeassistant.components.mqtt import ReceiveMessage as ReceiveMessage, async_prepare_subscribe_topics as async_prepare_subscribe_topics, async_subscribe_topics as async_subscribe_topics, async_unsubscribe_topics as async_unsubscribe_topics
|
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
7
|
+
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
|
8
|
+
from inelsmqtt import InelsMqtt
|
|
9
|
+
from inelsmqtt.devices import Device as Device
|
|
10
|
+
|
|
11
|
+
type InelsConfigEntry = ConfigEntry[InelsData]
|
|
12
|
+
@dataclass
|
|
13
|
+
class InelsData:
|
|
14
|
+
mqtt: InelsMqtt
|
|
15
|
+
devices: list[Device]
|
|
16
|
+
|
|
17
|
+
async def async_setup_entry(hass: HomeAssistant, entry: InelsConfigEntry) -> bool: ...
|
|
18
|
+
async def async_unload_entry(hass: HomeAssistant, entry: InelsConfigEntry) -> bool: ...
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN, TITLE as TITLE
|
|
2
|
+
from homeassistant.components import mqtt as mqtt
|
|
3
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
|
4
|
+
from homeassistant.helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
|
|
5
|
+
from typing import Any
|
|
6
|
+
|
|
7
|
+
class INelsConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
8
|
+
VERSION: int
|
|
9
|
+
async def async_step_mqtt(self, discovery_info: MqttServiceInfo) -> ConfigFlowResult: ...
|
|
10
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
11
|
+
async def step_confirm(self, step_id: str, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
12
|
+
async def async_step_confirm_from_mqtt(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
13
|
+
async def async_step_confirm_from_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
|
2
|
+
from _typeshed import Incomplete
|
|
3
|
+
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
|
4
|
+
from homeassistant.helpers.entity import Entity as Entity
|
|
5
|
+
from inelsmqtt.devices import Device as Device
|
|
6
|
+
|
|
7
|
+
class InelsBaseEntity(Entity):
|
|
8
|
+
_attr_should_poll: bool
|
|
9
|
+
_attr_has_entity_name: bool
|
|
10
|
+
_device: Incomplete
|
|
11
|
+
_device_id: Incomplete
|
|
12
|
+
_attr_unique_id: Incomplete
|
|
13
|
+
_key: Incomplete
|
|
14
|
+
_index: Incomplete
|
|
15
|
+
_attr_device_info: Incomplete
|
|
16
|
+
def __init__(self, device: Device, key: str, index: int) -> None: ...
|
|
17
|
+
async def async_added_to_hass(self) -> None: ...
|
|
18
|
+
def _callback(self) -> None: ...
|
|
19
|
+
@property
|
|
20
|
+
def available(self) -> bool: ...
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
from . import InelsConfigEntry as InelsConfigEntry
|
|
2
|
+
from .entity import InelsBaseEntity as InelsBaseEntity
|
|
3
|
+
from _typeshed import Incomplete
|
|
4
|
+
from collections.abc import Callable as Callable
|
|
5
|
+
from dataclasses import dataclass
|
|
6
|
+
from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
|
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
8
|
+
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
|
9
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
10
|
+
from inelsmqtt.devices import Device as Device
|
|
11
|
+
from inelsmqtt.utils.common import Bit as Bit, Relay as Relay, SimpleRelay as SimpleRelay
|
|
12
|
+
from typing import Any
|
|
13
|
+
|
|
14
|
+
@dataclass(frozen=True, kw_only=True)
|
|
15
|
+
class InelsSwitchEntityDescription(SwitchEntityDescription):
|
|
16
|
+
get_state_fn: Callable[[Device, int], Bit | SimpleRelay | Relay]
|
|
17
|
+
alerts: list[str] | None = ...
|
|
18
|
+
placeholder_fn: Callable[[Device, int, bool], dict[str, str]]
|
|
19
|
+
|
|
20
|
+
SWITCH_TYPES: Incomplete
|
|
21
|
+
|
|
22
|
+
async def async_setup_entry(hass: HomeAssistant, entry: InelsConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
23
|
+
|
|
24
|
+
class InelsSwitch(InelsBaseEntity, SwitchEntity):
|
|
25
|
+
entity_description: InelsSwitchEntityDescription
|
|
26
|
+
_switch_count: Incomplete
|
|
27
|
+
_attr_unique_id: Incomplete
|
|
28
|
+
_attr_translation_placeholders: Incomplete
|
|
29
|
+
def __init__(self, device: Device, description: InelsSwitchEntityDescription, index: int = 0, switch_count: int = 1) -> None: ...
|
|
30
|
+
def _check_alerts(self, current_state: Bit | SimpleRelay | Relay) -> None: ...
|
|
31
|
+
@property
|
|
32
|
+
def is_on(self) -> bool | None: ...
|
|
33
|
+
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
|
34
|
+
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
from .const import CONTROLLER_MODES as CONTROLLER_MODES, CURRENT_HVAC_ACTIONS as CURRENT_HVAC_ACTIONS, KNX_MODULE_KEY as KNX_MODULE_KEY
|
|
2
|
-
from .entity import KnxYamlEntity as KnxYamlEntity
|
|
1
|
+
from .const import CONF_SYNC_STATE as CONF_SYNC_STATE, CONTROLLER_MODES as CONTROLLER_MODES, CURRENT_HVAC_ACTIONS as CURRENT_HVAC_ACTIONS, ClimateConf as ClimateConf, DOMAIN as DOMAIN, KNX_MODULE_KEY as KNX_MODULE_KEY
|
|
2
|
+
from .entity import KnxUiEntity as KnxUiEntity, KnxUiEntityPlatformController as KnxUiEntityPlatformController, KnxYamlEntity as KnxYamlEntity, _KnxEntityBase as _KnxEntityBase
|
|
3
3
|
from .knx_module import KNXModule as KNXModule
|
|
4
4
|
from .schema import ClimateSchema as ClimateSchema
|
|
5
|
+
from .storage.const import CONF_ENTITY as CONF_ENTITY, CONF_GA_ACTIVE as CONF_GA_ACTIVE, CONF_GA_CONTROLLER_MODE as CONF_GA_CONTROLLER_MODE, CONF_GA_CONTROLLER_STATUS as CONF_GA_CONTROLLER_STATUS, CONF_GA_FAN_SPEED as CONF_GA_FAN_SPEED, CONF_GA_FAN_SWING as CONF_GA_FAN_SWING, CONF_GA_FAN_SWING_HORIZONTAL as CONF_GA_FAN_SWING_HORIZONTAL, CONF_GA_HEAT_COOL as CONF_GA_HEAT_COOL, CONF_GA_HUMIDITY_CURRENT as CONF_GA_HUMIDITY_CURRENT, CONF_GA_ON_OFF as CONF_GA_ON_OFF, CONF_GA_OPERATION_MODE as CONF_GA_OPERATION_MODE, CONF_GA_OP_MODE_COMFORT as CONF_GA_OP_MODE_COMFORT, CONF_GA_OP_MODE_ECO as CONF_GA_OP_MODE_ECO, CONF_GA_OP_MODE_PROTECTION as CONF_GA_OP_MODE_PROTECTION, CONF_GA_OP_MODE_STANDBY as CONF_GA_OP_MODE_STANDBY, CONF_GA_SETPOINT_SHIFT as CONF_GA_SETPOINT_SHIFT, CONF_GA_TEMPERATURE_CURRENT as CONF_GA_TEMPERATURE_CURRENT, CONF_GA_TEMPERATURE_TARGET as CONF_GA_TEMPERATURE_TARGET, CONF_GA_VALVE as CONF_GA_VALVE, CONF_IGNORE_AUTO_MODE as CONF_IGNORE_AUTO_MODE, CONF_TARGET_TEMPERATURE as CONF_TARGET_TEMPERATURE
|
|
6
|
+
from .storage.entity_store_schema import ConfClimateFanSpeedMode as ConfClimateFanSpeedMode, ConfSetpointShiftMode as ConfSetpointShiftMode
|
|
7
|
+
from .storage.util import ConfigExtractor as ConfigExtractor
|
|
5
8
|
from _typeshed import Incomplete
|
|
6
9
|
from homeassistant import config_entries as config_entries
|
|
7
10
|
from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, FAN_HIGH as FAN_HIGH, FAN_LOW as FAN_LOW, FAN_MEDIUM as FAN_MEDIUM, FAN_ON as FAN_ON, HVACAction as HVACAction, HVACMode as HVACMode, SWING_OFF as SWING_OFF, SWING_ON as SWING_ON
|
|
8
11
|
from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_NAME as CONF_NAME, Platform as Platform, UnitOfTemperature as UnitOfTemperature
|
|
9
12
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
10
|
-
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
13
|
+
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback, async_get_current_platform as async_get_current_platform
|
|
11
14
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
|
12
15
|
from typing import Any
|
|
13
16
|
from xknx import XKNX as XKNX
|
|
@@ -18,24 +21,23 @@ CONTROLLER_MODES_INV: Incomplete
|
|
|
18
21
|
|
|
19
22
|
async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
20
23
|
def _create_climate(xknx: XKNX, config: ConfigType) -> XknxClimate: ...
|
|
24
|
+
def _create_climate_ui(xknx: XKNX, conf: ConfigExtractor, name: str) -> XknxClimate: ...
|
|
21
25
|
|
|
22
|
-
class
|
|
26
|
+
class _KnxClimate(ClimateEntity, _KnxEntityBase):
|
|
23
27
|
_device: XknxClimate
|
|
24
28
|
_attr_temperature_unit: Incomplete
|
|
25
29
|
_attr_translation_key: str
|
|
26
|
-
|
|
30
|
+
default_hvac_mode: HVACMode
|
|
31
|
+
_last_hvac_mode: HVACMode
|
|
32
|
+
fan_zero_mode: str
|
|
33
|
+
_fan_modes_percentages: list[int]
|
|
27
34
|
_attr_supported_features: Incomplete
|
|
28
35
|
_attr_preset_modes: Incomplete
|
|
29
|
-
_fan_modes_percentages: Incomplete
|
|
30
|
-
fan_zero_mode: str
|
|
31
36
|
_attr_fan_modes: Incomplete
|
|
32
37
|
_attr_swing_modes: Incomplete
|
|
33
38
|
_attr_swing_horizontal_modes: Incomplete
|
|
34
39
|
_attr_target_temperature_step: Incomplete
|
|
35
|
-
|
|
36
|
-
default_hvac_mode: HVACMode
|
|
37
|
-
_last_hvac_mode: HVACMode
|
|
38
|
-
def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
|
|
40
|
+
def _init_from_device_config(self, device: XknxClimate, default_hvac_mode: HVACMode, fan_max_step: int, fan_zero_mode: str) -> None: ...
|
|
39
41
|
@property
|
|
40
42
|
def current_temperature(self) -> float | None: ...
|
|
41
43
|
@property
|
|
@@ -73,3 +75,13 @@ class KNXClimate(KnxYamlEntity, ClimateEntity):
|
|
|
73
75
|
async def async_added_to_hass(self) -> None: ...
|
|
74
76
|
async def async_will_remove_from_hass(self) -> None: ...
|
|
75
77
|
def after_update_callback(self, device: XknxDevice) -> None: ...
|
|
78
|
+
|
|
79
|
+
class KnxYamlClimate(_KnxClimate, KnxYamlEntity):
|
|
80
|
+
_device: XknxClimate
|
|
81
|
+
_attr_entity_category: Incomplete
|
|
82
|
+
_attr_unique_id: Incomplete
|
|
83
|
+
def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
|
|
84
|
+
|
|
85
|
+
class KnxUiClimate(_KnxClimate, KnxUiEntity):
|
|
86
|
+
_device: XknxClimate
|
|
87
|
+
def __init__(self, knx_module: KNXModule, unique_id: str, config: ConfigType) -> None: ...
|
|
@@ -104,3 +104,17 @@ class CoverConf:
|
|
|
104
104
|
INVERT_UPDOWN: Final[str]
|
|
105
105
|
INVERT_POSITION: Final[str]
|
|
106
106
|
INVERT_ANGLE: Final[str]
|
|
107
|
+
|
|
108
|
+
class ClimateConf:
|
|
109
|
+
MIN_TEMP: Final[str]
|
|
110
|
+
MAX_TEMP: Final[str]
|
|
111
|
+
TEMPERATURE_STEP: Final[str]
|
|
112
|
+
SETPOINT_SHIFT_MAX: Final[str]
|
|
113
|
+
SETPOINT_SHIFT_MIN: Final[str]
|
|
114
|
+
ON_OFF_INVERT: Final[str]
|
|
115
|
+
OPERATION_MODES: Final[str]
|
|
116
|
+
CONTROLLER_MODES: Final[str]
|
|
117
|
+
DEFAULT_CONTROLLER_MODE: Final[str]
|
|
118
|
+
FAN_MAX_STEP: Final[str]
|
|
119
|
+
FAN_SPEED_MODE: Final[str]
|
|
120
|
+
FAN_ZERO_MODE: Final[str]
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import voluptuous as vol
|
|
2
|
-
from .const import CONF_CONTEXT_TIMEOUT as CONF_CONTEXT_TIMEOUT, CONF_IGNORE_INTERNAL_STATE as CONF_IGNORE_INTERNAL_STATE, CONF_INVERT as CONF_INVERT, CONF_KNX_EXPOSE as CONF_KNX_EXPOSE, CONF_PAYLOAD_LENGTH as CONF_PAYLOAD_LENGTH, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, ColorTempModes as ColorTempModes, CoverConf as CoverConf, FanZeroMode as FanZeroMode, KNX_ADDRESS as KNX_ADDRESS
|
|
2
|
+
from .const import CONF_CONTEXT_TIMEOUT as CONF_CONTEXT_TIMEOUT, CONF_IGNORE_INTERNAL_STATE as CONF_IGNORE_INTERNAL_STATE, CONF_INVERT as CONF_INVERT, CONF_KNX_EXPOSE as CONF_KNX_EXPOSE, CONF_PAYLOAD_LENGTH as CONF_PAYLOAD_LENGTH, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, ClimateConf as ClimateConf, ColorTempModes as ColorTempModes, CoverConf as CoverConf, FanZeroMode as FanZeroMode, KNX_ADDRESS as KNX_ADDRESS
|
|
3
3
|
from .validation import backwards_compatible_xknx_climate_enum_member as backwards_compatible_xknx_climate_enum_member, dpt_base_type_validator as dpt_base_type_validator, ga_list_validator as ga_list_validator, ga_validator as ga_validator, numeric_type_validator as numeric_type_validator, sensor_type_validator as sensor_type_validator, string_type_validator as string_type_validator, sync_state_validator as sync_state_validator
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from abc import ABC
|
|
@@ -46,10 +46,7 @@ class ClimateSchema(KNXPlatformSchema):
|
|
|
46
46
|
CONF_SETPOINT_SHIFT_ADDRESS: str
|
|
47
47
|
CONF_SETPOINT_SHIFT_STATE_ADDRESS: str
|
|
48
48
|
CONF_SETPOINT_SHIFT_MODE: str
|
|
49
|
-
CONF_SETPOINT_SHIFT_MAX: str
|
|
50
|
-
CONF_SETPOINT_SHIFT_MIN: str
|
|
51
49
|
CONF_TEMPERATURE_ADDRESS: str
|
|
52
|
-
CONF_TEMPERATURE_STEP: str
|
|
53
50
|
CONF_TARGET_TEMPERATURE_ADDRESS: str
|
|
54
51
|
CONF_TARGET_TEMPERATURE_STATE_ADDRESS: str
|
|
55
52
|
CONF_OPERATION_MODE_ADDRESS: str
|
|
@@ -65,19 +62,10 @@ class ClimateSchema(KNXPlatformSchema):
|
|
|
65
62
|
CONF_OPERATION_MODE_NIGHT_ADDRESS: str
|
|
66
63
|
CONF_OPERATION_MODE_COMFORT_ADDRESS: str
|
|
67
64
|
CONF_OPERATION_MODE_STANDBY_ADDRESS: str
|
|
68
|
-
CONF_OPERATION_MODES: str
|
|
69
|
-
CONF_CONTROLLER_MODES: str
|
|
70
|
-
CONF_DEFAULT_CONTROLLER_MODE: str
|
|
71
65
|
CONF_ON_OFF_ADDRESS: str
|
|
72
66
|
CONF_ON_OFF_STATE_ADDRESS: str
|
|
73
|
-
CONF_ON_OFF_INVERT: str
|
|
74
|
-
CONF_MIN_TEMP: str
|
|
75
|
-
CONF_MAX_TEMP: str
|
|
76
67
|
CONF_FAN_SPEED_ADDRESS: str
|
|
77
68
|
CONF_FAN_SPEED_STATE_ADDRESS: str
|
|
78
|
-
CONF_FAN_MAX_STEP: str
|
|
79
|
-
CONF_FAN_SPEED_MODE: str
|
|
80
|
-
CONF_FAN_ZERO_MODE: str
|
|
81
69
|
CONF_HUMIDITY_STATE_ADDRESS: str
|
|
82
70
|
CONF_SWING_ADDRESS: str
|
|
83
71
|
CONF_SWING_STATE_ADDRESS: str
|
|
@@ -7,16 +7,15 @@ from collections.abc import Callable as Callable
|
|
|
7
7
|
from dataclasses import dataclass
|
|
8
8
|
from datetime import datetime
|
|
9
9
|
from homeassistant import config_entries as config_entries
|
|
10
|
-
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
|
11
|
-
from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_NAME as CONF_NAME, CONF_TYPE as CONF_TYPE, EntityCategory as EntityCategory, Platform as Platform
|
|
10
|
+
from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, RestoreSensor as RestoreSensor, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
|
11
|
+
from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_NAME as CONF_NAME, CONF_TYPE as CONF_TYPE, EntityCategory as EntityCategory, Platform as Platform, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
|
|
12
12
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
13
13
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
14
14
|
from homeassistant.helpers.typing import ConfigType as ConfigType, StateType as StateType
|
|
15
15
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
|
16
|
-
from typing import Any
|
|
17
16
|
from xknx import XKNX as XKNX
|
|
18
17
|
from xknx.core.connection_state import XknxConnectionState
|
|
19
|
-
from xknx.devices import Sensor as XknxSensor
|
|
18
|
+
from xknx.devices import Device as XknxDevice, Sensor as XknxSensor
|
|
20
19
|
|
|
21
20
|
SCAN_INTERVAL: Incomplete
|
|
22
21
|
|
|
@@ -33,7 +32,7 @@ SYSTEM_ENTITY_DESCRIPTIONS: Incomplete
|
|
|
33
32
|
async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
34
33
|
def _create_sensor(xknx: XKNX, config: ConfigType) -> XknxSensor: ...
|
|
35
34
|
|
|
36
|
-
class KNXSensor(KnxYamlEntity,
|
|
35
|
+
class KNXSensor(KnxYamlEntity, RestoreSensor):
|
|
37
36
|
_device: XknxSensor
|
|
38
37
|
_attr_device_class: Incomplete
|
|
39
38
|
_attr_force_update: Incomplete
|
|
@@ -41,11 +40,11 @@ class KNXSensor(KnxYamlEntity, SensorEntity):
|
|
|
41
40
|
_attr_unique_id: Incomplete
|
|
42
41
|
_attr_native_unit_of_measurement: Incomplete
|
|
43
42
|
_attr_state_class: Incomplete
|
|
43
|
+
_attr_extra_state_attributes: Incomplete
|
|
44
44
|
def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
|
|
45
|
-
|
|
46
|
-
def
|
|
47
|
-
|
|
48
|
-
def extra_state_attributes(self) -> dict[str, Any] | None: ...
|
|
45
|
+
_attr_native_value: Incomplete
|
|
46
|
+
async def async_added_to_hass(self) -> None: ...
|
|
47
|
+
def after_update_callback(self, device: XknxDevice) -> None: ...
|
|
49
48
|
|
|
50
49
|
class KNXSystemSensor(SensorEntity):
|
|
51
50
|
_attr_has_entity_name: bool
|
|
@@ -9,6 +9,26 @@ CONF_GA_PASSIVE: Final[str]
|
|
|
9
9
|
CONF_DPT: Final[str]
|
|
10
10
|
CONF_GA_SENSOR: Final[str]
|
|
11
11
|
CONF_GA_SWITCH: Final[str]
|
|
12
|
+
CONF_GA_TEMPERATURE_CURRENT: Final[str]
|
|
13
|
+
CONF_GA_HUMIDITY_CURRENT: Final[str]
|
|
14
|
+
CONF_TARGET_TEMPERATURE: Final[str]
|
|
15
|
+
CONF_GA_TEMPERATURE_TARGET: Final[str]
|
|
16
|
+
CONF_GA_SETPOINT_SHIFT: Final[str]
|
|
17
|
+
CONF_GA_ACTIVE: Final[str]
|
|
18
|
+
CONF_GA_VALVE: Final[str]
|
|
19
|
+
CONF_GA_OPERATION_MODE: Final[str]
|
|
20
|
+
CONF_IGNORE_AUTO_MODE: Final[str]
|
|
21
|
+
CONF_GA_OP_MODE_COMFORT: Final[str]
|
|
22
|
+
CONF_GA_OP_MODE_ECO: Final[str]
|
|
23
|
+
CONF_GA_OP_MODE_STANDBY: Final[str]
|
|
24
|
+
CONF_GA_OP_MODE_PROTECTION: Final[str]
|
|
25
|
+
CONF_GA_HEAT_COOL: Final[str]
|
|
26
|
+
CONF_GA_ON_OFF: Final[str]
|
|
27
|
+
CONF_GA_CONTROLLER_MODE: Final[str]
|
|
28
|
+
CONF_GA_CONTROLLER_STATUS: Final[str]
|
|
29
|
+
CONF_GA_FAN_SPEED: Final[str]
|
|
30
|
+
CONF_GA_FAN_SWING: Final[str]
|
|
31
|
+
CONF_GA_FAN_SWING_HORIZONTAL: Final[str]
|
|
12
32
|
CONF_GA_UP_DOWN: Final[str]
|
|
13
33
|
CONF_GA_STOP: Final[str]
|
|
14
34
|
CONF_GA_STEP: Final[str]
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
from ..const import CONF_CONTEXT_TIMEOUT as CONF_CONTEXT_TIMEOUT, CONF_IGNORE_INTERNAL_STATE as CONF_IGNORE_INTERNAL_STATE, CONF_INVERT as CONF_INVERT, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_SYNC_STATE as CONF_SYNC_STATE, ColorTempModes as ColorTempModes, CoverConf as CoverConf, DOMAIN as DOMAIN, SUPPORTED_PLATFORMS_UI as SUPPORTED_PLATFORMS_UI
|
|
2
|
-
from .const import CONF_COLOR as CONF_COLOR, CONF_COLOR_TEMP_MAX as CONF_COLOR_TEMP_MAX, CONF_COLOR_TEMP_MIN as CONF_COLOR_TEMP_MIN, CONF_DATA as CONF_DATA, CONF_DEVICE_INFO as CONF_DEVICE_INFO, CONF_ENTITY as CONF_ENTITY, CONF_GA_ANGLE as CONF_GA_ANGLE, CONF_GA_BLUE_BRIGHTNESS as CONF_GA_BLUE_BRIGHTNESS, CONF_GA_BLUE_SWITCH as CONF_GA_BLUE_SWITCH, CONF_GA_BRIGHTNESS as CONF_GA_BRIGHTNESS, CONF_GA_COLOR as CONF_GA_COLOR, CONF_GA_COLOR_TEMP as CONF_GA_COLOR_TEMP, CONF_GA_GREEN_BRIGHTNESS as CONF_GA_GREEN_BRIGHTNESS, CONF_GA_GREEN_SWITCH as CONF_GA_GREEN_SWITCH, CONF_GA_HUE as CONF_GA_HUE, CONF_GA_POSITION_SET as CONF_GA_POSITION_SET, CONF_GA_POSITION_STATE as CONF_GA_POSITION_STATE, CONF_GA_RED_BRIGHTNESS as CONF_GA_RED_BRIGHTNESS, CONF_GA_RED_SWITCH as CONF_GA_RED_SWITCH, CONF_GA_SATURATION as CONF_GA_SATURATION, CONF_GA_SENSOR as CONF_GA_SENSOR, CONF_GA_STEP as CONF_GA_STEP, CONF_GA_STOP as CONF_GA_STOP, CONF_GA_SWITCH as CONF_GA_SWITCH, CONF_GA_UP_DOWN as CONF_GA_UP_DOWN, CONF_GA_WHITE_BRIGHTNESS as CONF_GA_WHITE_BRIGHTNESS, CONF_GA_WHITE_SWITCH as CONF_GA_WHITE_SWITCH
|
|
1
|
+
from ..const import CONF_CONTEXT_TIMEOUT as CONF_CONTEXT_TIMEOUT, CONF_IGNORE_INTERNAL_STATE as CONF_IGNORE_INTERNAL_STATE, CONF_INVERT as CONF_INVERT, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_SYNC_STATE as CONF_SYNC_STATE, ClimateConf as ClimateConf, ColorTempModes as ColorTempModes, CoverConf as CoverConf, DOMAIN as DOMAIN, FanZeroMode as FanZeroMode, SUPPORTED_PLATFORMS_UI as SUPPORTED_PLATFORMS_UI
|
|
2
|
+
from .const import CONF_COLOR as CONF_COLOR, CONF_COLOR_TEMP_MAX as CONF_COLOR_TEMP_MAX, CONF_COLOR_TEMP_MIN as CONF_COLOR_TEMP_MIN, CONF_DATA as CONF_DATA, CONF_DEVICE_INFO as CONF_DEVICE_INFO, CONF_ENTITY as CONF_ENTITY, CONF_GA_ACTIVE as CONF_GA_ACTIVE, CONF_GA_ANGLE as CONF_GA_ANGLE, CONF_GA_BLUE_BRIGHTNESS as CONF_GA_BLUE_BRIGHTNESS, CONF_GA_BLUE_SWITCH as CONF_GA_BLUE_SWITCH, CONF_GA_BRIGHTNESS as CONF_GA_BRIGHTNESS, CONF_GA_COLOR as CONF_GA_COLOR, CONF_GA_COLOR_TEMP as CONF_GA_COLOR_TEMP, CONF_GA_CONTROLLER_MODE as CONF_GA_CONTROLLER_MODE, CONF_GA_CONTROLLER_STATUS as CONF_GA_CONTROLLER_STATUS, CONF_GA_FAN_SPEED as CONF_GA_FAN_SPEED, CONF_GA_FAN_SWING as CONF_GA_FAN_SWING, CONF_GA_FAN_SWING_HORIZONTAL as CONF_GA_FAN_SWING_HORIZONTAL, CONF_GA_GREEN_BRIGHTNESS as CONF_GA_GREEN_BRIGHTNESS, CONF_GA_GREEN_SWITCH as CONF_GA_GREEN_SWITCH, CONF_GA_HEAT_COOL as CONF_GA_HEAT_COOL, CONF_GA_HUE as CONF_GA_HUE, CONF_GA_HUMIDITY_CURRENT as CONF_GA_HUMIDITY_CURRENT, CONF_GA_ON_OFF as CONF_GA_ON_OFF, CONF_GA_OPERATION_MODE as CONF_GA_OPERATION_MODE, CONF_GA_OP_MODE_COMFORT as CONF_GA_OP_MODE_COMFORT, CONF_GA_OP_MODE_ECO as CONF_GA_OP_MODE_ECO, CONF_GA_OP_MODE_PROTECTION as CONF_GA_OP_MODE_PROTECTION, CONF_GA_OP_MODE_STANDBY as CONF_GA_OP_MODE_STANDBY, CONF_GA_POSITION_SET as CONF_GA_POSITION_SET, CONF_GA_POSITION_STATE as CONF_GA_POSITION_STATE, CONF_GA_RED_BRIGHTNESS as CONF_GA_RED_BRIGHTNESS, CONF_GA_RED_SWITCH as CONF_GA_RED_SWITCH, CONF_GA_SATURATION as CONF_GA_SATURATION, CONF_GA_SENSOR as CONF_GA_SENSOR, CONF_GA_SETPOINT_SHIFT as CONF_GA_SETPOINT_SHIFT, CONF_GA_STEP as CONF_GA_STEP, CONF_GA_STOP as CONF_GA_STOP, CONF_GA_SWITCH as CONF_GA_SWITCH, CONF_GA_TEMPERATURE_CURRENT as CONF_GA_TEMPERATURE_CURRENT, CONF_GA_TEMPERATURE_TARGET as CONF_GA_TEMPERATURE_TARGET, CONF_GA_UP_DOWN as CONF_GA_UP_DOWN, CONF_GA_VALVE as CONF_GA_VALVE, CONF_GA_WHITE_BRIGHTNESS as CONF_GA_WHITE_BRIGHTNESS, CONF_GA_WHITE_SWITCH as CONF_GA_WHITE_SWITCH, CONF_IGNORE_AUTO_MODE as CONF_IGNORE_AUTO_MODE, CONF_TARGET_TEMPERATURE as CONF_TARGET_TEMPERATURE
|
|
3
3
|
from .knx_selector import AllSerializeFirst as AllSerializeFirst, GASelector as GASelector, GroupSelect as GroupSelect, GroupSelectOption as GroupSelectOption, KNXSectionFlat as KNXSectionFlat, SyncStateSelector as SyncStateSelector
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from enum import StrEnum
|
|
6
|
+
from homeassistant.components.climate import HVACMode as HVACMode
|
|
6
7
|
from homeassistant.const import CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM, Platform as Platform
|
|
7
8
|
from homeassistant.helpers import selector as selector
|
|
8
9
|
from homeassistant.helpers.entity import ENTITY_CATEGORIES_SCHEMA as ENTITY_CATEGORIES_SCHEMA
|
|
@@ -20,6 +21,16 @@ class LightColorMode(StrEnum):
|
|
|
20
21
|
_hs_color_inclusion_msg: str
|
|
21
22
|
LIGHT_KNX_SCHEMA: Incomplete
|
|
22
23
|
SWITCH_KNX_SCHEMA: Incomplete
|
|
24
|
+
|
|
25
|
+
class ConfSetpointShiftMode(StrEnum):
|
|
26
|
+
COUNT = '6.010'
|
|
27
|
+
FLOAT = '9.002'
|
|
28
|
+
|
|
29
|
+
class ConfClimateFanSpeedMode(StrEnum):
|
|
30
|
+
PERCENTAGE = '5.001'
|
|
31
|
+
STEPS = '5.010'
|
|
32
|
+
|
|
33
|
+
CLIMATE_KNX_SCHEMA: Incomplete
|
|
23
34
|
KNX_SCHEMA_FOR_PLATFORM: Incomplete
|
|
24
35
|
ENTITY_STORE_DATA_SCHEMA: VolSchemaType
|
|
25
36
|
CREATE_ENTITY_BASE_SCHEMA: VolDictType
|
|
@@ -14,6 +14,8 @@ from homeassistant.helpers.service_info.ssdp import ATTR_UPNP_FRIENDLY_NAME as A
|
|
|
14
14
|
from homeassistant.util.network import is_link_local as is_link_local
|
|
15
15
|
from typing import Any
|
|
16
16
|
|
|
17
|
+
DEVICES_URL: str
|
|
18
|
+
|
|
17
19
|
class LaMetricFlowHandler(AbstractOAuth2FlowHandler, domain=DOMAIN):
|
|
18
20
|
DOMAIN = DOMAIN
|
|
19
21
|
VERSION: int
|
|
@@ -4,7 +4,7 @@ from .helpers import InputType as InputType, LcnConfigEntry as LcnConfigEntry
|
|
|
4
4
|
from _typeshed import Incomplete
|
|
5
5
|
from collections.abc import Iterable
|
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity
|
|
7
|
-
from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, CONF_DOMAIN as CONF_DOMAIN, CONF_ENTITIES as CONF_ENTITIES, CONF_SOURCE as CONF_SOURCE, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, LIGHT_LUX as LIGHT_LUX, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
|
|
7
|
+
from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, CONF_DOMAIN as CONF_DOMAIN, CONF_ENTITIES as CONF_ENTITIES, CONF_SOURCE as CONF_SOURCE, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
9
9
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
|
10
10
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
|
1
2
|
from .coordinator import LibreHardwareMonitorConfigEntry as LibreHardwareMonitorConfigEntry, LibreHardwareMonitorCoordinator as LibreHardwareMonitorCoordinator
|
|
2
3
|
from _typeshed import Incomplete
|
|
3
4
|
from homeassistant.const import Platform as Platform
|
|
4
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
|
5
6
|
|
|
6
7
|
PLATFORMS: Incomplete
|
|
8
|
+
_LOGGER: Incomplete
|
|
7
9
|
|
|
10
|
+
async def async_migrate_entry(hass: HomeAssistant, config_entry: LibreHardwareMonitorConfigEntry) -> bool: ...
|
|
8
11
|
async def async_setup_entry(hass: HomeAssistant, config_entry: LibreHardwareMonitorConfigEntry) -> bool: ...
|
|
9
12
|
async def async_unload_entry(hass: HomeAssistant, config_entry: LibreHardwareMonitorConfigEntry) -> bool: ...
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
from . import LibreHardwareMonitorCoordinator as LibreHardwareMonitorCoordinator
|
|
1
|
+
from . import LibreHardwareMonitorConfigEntry as LibreHardwareMonitorConfigEntry, LibreHardwareMonitorCoordinator as LibreHardwareMonitorCoordinator
|
|
2
2
|
from .const import DOMAIN as DOMAIN
|
|
3
|
-
from .coordinator import LibreHardwareMonitorConfigEntry as LibreHardwareMonitorConfigEntry
|
|
4
3
|
from _typeshed import Incomplete
|
|
5
4
|
from homeassistant.components.sensor import SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
|
|
6
5
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
|
@@ -25,7 +24,7 @@ class LibreHardwareMonitorSensor(CoordinatorEntity[LibreHardwareMonitorCoordinat
|
|
|
25
24
|
_attr_unique_id: str
|
|
26
25
|
_sensor_id: str
|
|
27
26
|
_attr_device_info: Incomplete
|
|
28
|
-
def __init__(self, coordinator: LibreHardwareMonitorCoordinator, sensor_data: LibreHardwareMonitorSensorData) -> None: ...
|
|
27
|
+
def __init__(self, coordinator: LibreHardwareMonitorCoordinator, entry_id: str, sensor_data: LibreHardwareMonitorSensorData) -> None: ...
|
|
29
28
|
@callback
|
|
30
29
|
def _handle_coordinator_update(self) -> None: ...
|
|
31
30
|
@property
|
|
@@ -10,10 +10,12 @@ from typing import Any
|
|
|
10
10
|
|
|
11
11
|
SCAN_INTERVAL: Incomplete
|
|
12
12
|
FIRMWARE_UPDATE_ENTITY: Incomplete
|
|
13
|
+
RELEASE_URL: str
|
|
13
14
|
|
|
14
15
|
async def async_setup_entry(hass: HomeAssistant, entry: LitterRobotConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
|
|
15
16
|
|
|
16
17
|
class RobotUpdateEntity(LitterRobotEntity[LitterRobot4], UpdateEntity):
|
|
18
|
+
_attr_release_url = RELEASE_URL
|
|
17
19
|
_attr_supported_features: Incomplete
|
|
18
20
|
@property
|
|
19
21
|
def installed_version(self) -> str: ...
|