homeassistant-stubs 2024.6.4__py3-none-any.whl → 2024.7.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.
- homeassistant-stubs/auth/__init__.pyi +2 -0
- homeassistant-stubs/auth/auth_store.pyi +1 -0
- homeassistant-stubs/auth/providers/homeassistant.pyi +10 -2
- homeassistant-stubs/block_async_io.pyi +23 -0
- homeassistant-stubs/bootstrap.pyi +4 -3
- homeassistant-stubs/components/accuweather/sensor.pyi +5 -9
- homeassistant-stubs/components/accuweather/weather.pyi +1 -1
- homeassistant-stubs/components/acer_projector/switch.pyi +2 -1
- homeassistant-stubs/components/air_quality/__init__.pyi +4 -3
- homeassistant-stubs/components/airgradient/__init__.pyi +8 -0
- homeassistant-stubs/components/airgradient/button.pyi +28 -0
- homeassistant-stubs/components/airgradient/const.pyi +2 -0
- homeassistant-stubs/components/airgradient/coordinator.pyi +2 -2
- homeassistant-stubs/components/airgradient/number.pyi +32 -0
- homeassistant-stubs/components/airgradient/select.pyi +14 -12
- homeassistant-stubs/components/airgradient/sensor.pyi +28 -10
- homeassistant-stubs/components/airgradient/switch.pyi +33 -0
- homeassistant-stubs/components/airnow/const.pyi +1 -0
- homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
- homeassistant-stubs/components/airnow/sensor.pyi +1 -2
- homeassistant-stubs/components/airzone/__init__.pyi +4 -4
- homeassistant-stubs/components/airzone/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/airzone/climate.pyi +3 -2
- homeassistant-stubs/components/airzone/diagnostics.pyi +2 -4
- homeassistant-stubs/components/airzone/entity.pyi +2 -1
- homeassistant-stubs/components/airzone/select.pyi +2 -2
- homeassistant-stubs/components/airzone/sensor.pyi +3 -2
- homeassistant-stubs/components/airzone/water_heater.pyi +3 -2
- homeassistant-stubs/components/airzone_cloud/__init__.pyi +3 -3
- homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +2 -3
- homeassistant-stubs/components/airzone_cloud/climate.pyi +8 -10
- homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +2 -4
- homeassistant-stubs/components/airzone_cloud/select.pyi +2 -3
- homeassistant-stubs/components/airzone_cloud/sensor.pyi +2 -3
- homeassistant-stubs/components/airzone_cloud/water_heater.pyi +2 -3
- homeassistant-stubs/components/aladdin_connect/__init__.pyi +4 -13
- homeassistant-stubs/components/aladdin_connect/config_flow.pyi +3 -16
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +3 -3
- homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
- homeassistant-stubs/components/alexa/entities.pyi +25 -24
- homeassistant-stubs/components/alpha_vantage/sensor.pyi +2 -1
- homeassistant-stubs/components/ambient_network/coordinator.pyi +2 -0
- homeassistant-stubs/components/ambient_network/sensor.pyi +1 -0
- homeassistant-stubs/components/androidtv/entity.pyi +1 -0
- homeassistant-stubs/components/androidtv/remote.pyi +21 -0
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +11 -1
- homeassistant-stubs/components/androidtv_remote/const.pyi +3 -0
- homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -1
- homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -1
- homeassistant-stubs/components/androidtv_remote/remote.pyi +3 -0
- homeassistant-stubs/components/anel_pwrctrl/switch.pyi +2 -1
- homeassistant-stubs/components/apprise/notify.pyi +2 -1
- homeassistant-stubs/components/apsystems/__init__.pyi +9 -2
- homeassistant-stubs/components/apsystems/entity.pyi +10 -0
- homeassistant-stubs/components/apsystems/number.pyi +25 -0
- homeassistant-stubs/components/apsystems/sensor.pyi +6 -7
- homeassistant-stubs/components/aqualogic/sensor.pyi +2 -1
- homeassistant-stubs/components/aqualogic/switch.pyi +2 -1
- homeassistant-stubs/components/aquostv/media_player.pyi +2 -1
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +8 -7
- homeassistant-stubs/components/assist_pipeline/select.pyi +1 -1
- homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -0
- homeassistant-stubs/components/automation/__init__.pyi +10 -5
- homeassistant-stubs/components/automation/config.pyi +11 -1
- homeassistant-stubs/components/automation/trace.pyi +2 -2
- homeassistant-stubs/components/axis/config_flow.pyi +1 -0
- homeassistant-stubs/components/baf/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/baf/entity.pyi +6 -1
- homeassistant-stubs/components/baf/number.pyi +2 -4
- homeassistant-stubs/components/baf/sensor.pyi +2 -4
- homeassistant-stubs/components/baf/switch.pyi +2 -4
- homeassistant-stubs/components/bang_olufsen/const.pyi +2 -0
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +3 -2
- homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/binary_sensor/__init__.pyi +3 -2
- homeassistant-stubs/components/bitcoin/sensor.pyi +2 -1
- homeassistant-stubs/components/blockchain/sensor.pyi +2 -1
- homeassistant-stubs/components/blueprint/errors.pyi +1 -1
- homeassistant-stubs/components/blueprint/websocket_api.pyi +6 -3
- homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +3 -3
- homeassistant-stubs/components/bmw_connected_drive/const.pyi +0 -1
- homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -1
- homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -1
- homeassistant-stubs/components/brother/config_flow.pyi +9 -1
- homeassistant-stubs/components/button/__init__.pyi +4 -3
- homeassistant-stubs/components/calendar/__init__.pyi +2 -4
- homeassistant-stubs/components/camera/__init__.pyi +8 -7
- homeassistant-stubs/components/cert_expiry/sensor.pyi +2 -1
- homeassistant-stubs/components/clickatell/notify.pyi +2 -1
- homeassistant-stubs/components/clicksend/notify.pyi +2 -1
- homeassistant-stubs/components/climate/__init__.pyi +5 -4
- homeassistant-stubs/components/cloud/__init__.pyi +1 -1
- homeassistant-stubs/components/cloud/account_link.pyi +1 -1
- homeassistant-stubs/components/cloud/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/cloud/const.pyi +6 -1
- homeassistant-stubs/components/cloud/http_api.pyi +1 -1
- homeassistant-stubs/components/cloud/repairs.pyi +1 -3
- homeassistant-stubs/components/cloud/stt.pyi +1 -1
- homeassistant-stubs/components/cloud/system_health.pyi +1 -3
- homeassistant-stubs/components/cloud/tts.pyi +1 -1
- homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +1 -0
- homeassistant-stubs/components/config/scene.pyi +3 -1
- homeassistant-stubs/components/counter/__init__.pyi +2 -2
- homeassistant-stubs/components/cover/__init__.pyi +3 -2
- homeassistant-stubs/components/demo/tts.pyi +2 -1
- homeassistant-stubs/components/derivative/__init__.pyi +2 -1
- homeassistant-stubs/components/derivative/config_flow.pyi +11 -4
- homeassistant-stubs/components/derivative/sensor.pyi +3 -1
- homeassistant-stubs/components/device_automation/__init__.pyi +2 -2
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
- homeassistant-stubs/components/dnsip/__init__.pyi +4 -2
- homeassistant-stubs/components/dnsip/config_flow.pyi +4 -3
- homeassistant-stubs/components/dnsip/const.pyi +2 -0
- homeassistant-stubs/components/dnsip/sensor.pyi +4 -3
- homeassistant-stubs/components/ecovacs/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/ecovacs/button.pyi +5 -5
- homeassistant-stubs/components/ecovacs/config_flow.pyi +1 -0
- homeassistant-stubs/components/ecovacs/controller.pyi +4 -4
- homeassistant-stubs/components/ecovacs/entity.pyi +8 -10
- homeassistant-stubs/components/ecovacs/event.pyi +3 -3
- homeassistant-stubs/components/ecovacs/image.pyi +2 -2
- homeassistant-stubs/components/ecovacs/lawn_mower.pyi +3 -3
- homeassistant-stubs/components/ecovacs/number.pyi +3 -3
- homeassistant-stubs/components/ecovacs/select.pyi +3 -3
- homeassistant-stubs/components/ecovacs/sensor.pyi +6 -6
- homeassistant-stubs/components/ecovacs/switch.pyi +4 -4
- homeassistant-stubs/components/ecovacs/vacuum.pyi +9 -5
- homeassistant-stubs/components/ecowitt/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/efergy/__init__.pyi +3 -2
- homeassistant-stubs/components/efergy/sensor.pyi +3 -4
- homeassistant-stubs/components/electrasmart/__init__.pyi +12 -0
- homeassistant-stubs/components/electrasmart/climate.pyi +64 -0
- homeassistant-stubs/components/electrasmart/config_flow.pyi +24 -0
- homeassistant-stubs/components/electrasmart/const.pyi +10 -0
- homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
- homeassistant-stubs/components/elkm1/const.pyi +2 -1
- homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
- homeassistant-stubs/components/energy/websocket_api.pyi +5 -5
- homeassistant-stubs/components/enigma2/__init__.pyi +3 -2
- homeassistant-stubs/components/enigma2/config_flow.pyi +10 -1
- homeassistant-stubs/components/enigma2/media_player.pyi +3 -2
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +8 -2
- homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -1
- homeassistant-stubs/components/esphome/__init__.pyi +5 -5
- homeassistant-stubs/components/esphome/alarm_control_panel.pyi +3 -5
- homeassistant-stubs/components/esphome/binary_sensor.pyi +2 -3
- homeassistant-stubs/components/esphome/button.pyi +3 -5
- homeassistant-stubs/components/esphome/camera.pyi +3 -5
- homeassistant-stubs/components/esphome/climate.pyi +3 -6
- homeassistant-stubs/components/esphome/cover.pyi +3 -5
- homeassistant-stubs/components/esphome/date.pyi +3 -5
- homeassistant-stubs/components/esphome/datetime.pyi +3 -5
- homeassistant-stubs/components/esphome/diagnostics.pyi +3 -3
- homeassistant-stubs/components/esphome/domain_data.pyi +4 -8
- homeassistant-stubs/components/esphome/entity.pyi +2 -4
- homeassistant-stubs/components/esphome/entry_data.pyi +4 -3
- homeassistant-stubs/components/esphome/event.pyi +3 -5
- homeassistant-stubs/components/esphome/fan.pyi +3 -6
- homeassistant-stubs/components/esphome/light.pyi +3 -6
- homeassistant-stubs/components/esphome/lock.pyi +3 -5
- homeassistant-stubs/components/esphome/manager.pyi +4 -5
- homeassistant-stubs/components/esphome/media_player.pyi +3 -5
- homeassistant-stubs/components/esphome/number.pyi +3 -5
- homeassistant-stubs/components/esphome/select.pyi +2 -4
- homeassistant-stubs/components/esphome/switch.pyi +3 -5
- homeassistant-stubs/components/esphome/text.pyi +3 -5
- homeassistant-stubs/components/esphome/time.pyi +3 -5
- homeassistant-stubs/components/esphome/update.pyi +23 -2
- homeassistant-stubs/components/esphome/valve.pyi +3 -5
- homeassistant-stubs/components/event/__init__.pyi +3 -1
- homeassistant-stubs/components/evohome/__init__.pyi +8 -49
- homeassistant-stubs/components/evohome/climate.pyi +2 -2
- homeassistant-stubs/components/evohome/const.pyi +39 -16
- homeassistant-stubs/components/evohome/coordinator.pyi +33 -0
- homeassistant-stubs/components/evohome/helpers.pyi +13 -0
- homeassistant-stubs/components/fan/__init__.pyi +3 -2
- homeassistant-stubs/components/fastdotcom/__init__.pyi +2 -7
- homeassistant-stubs/components/fastdotcom/config_flow.pyi +0 -2
- homeassistant-stubs/components/feedreader/__init__.pyi +10 -5
- homeassistant-stubs/components/feedreader/config_flow.pyi +30 -0
- homeassistant-stubs/components/feedreader/const.pyi +5 -0
- homeassistant-stubs/components/feedreader/coordinator.pyi +4 -4
- homeassistant-stubs/components/filter/sensor.pyi +2 -1
- homeassistant-stubs/components/flux_led/light.pyi +4 -3
- homeassistant-stubs/components/fritz/switch.pyi +1 -1
- homeassistant-stubs/components/fritzbox/climate.pyi +14 -9
- homeassistant-stubs/components/fritzbox/switch.pyi +3 -0
- homeassistant-stubs/components/fronius/config_flow.pyi +3 -2
- homeassistant-stubs/components/frontend/__init__.pyi +9 -4
- homeassistant-stubs/components/fully_kiosk/camera.pyi +21 -0
- homeassistant-stubs/components/fully_kiosk/image.pyi +30 -0
- homeassistant-stubs/components/fully_kiosk/media_player.pyi +2 -0
- homeassistant-stubs/components/fully_kiosk/notify.pyi +25 -0
- homeassistant-stubs/components/generic_hygrostat/__init__.pyi +4 -0
- homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +19 -0
- homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +7 -2
- homeassistant-stubs/components/generic_thermostat/__init__.pyi +6 -0
- homeassistant-stubs/components/generic_thermostat/climate.pyi +7 -1
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +19 -0
- homeassistant-stubs/components/geo_location/__init__.pyi +4 -3
- homeassistant-stubs/components/glances/__init__.pyi +3 -2
- homeassistant-stubs/components/glances/sensor.pyi +2 -3
- homeassistant-stubs/components/goalzero/__init__.pyi +3 -5
- homeassistant-stubs/components/goalzero/binary_sensor.pyi +2 -3
- homeassistant-stubs/components/goalzero/coordinator.pyi +3 -1
- homeassistant-stubs/components/goalzero/sensor.pyi +2 -3
- homeassistant-stubs/components/goalzero/switch.pyi +2 -3
- homeassistant-stubs/components/google_assistant_sdk/__init__.pyi +2 -2
- homeassistant-stubs/components/google_assistant_sdk/diagnostics.pyi +9 -0
- homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +1 -0
- homeassistant-stubs/components/google_sheets/__init__.pyi +4 -3
- homeassistant-stubs/components/google_sheets/config_flow.pyi +3 -2
- homeassistant-stubs/components/gpsd/sensor.pyi +2 -1
- homeassistant-stubs/components/group/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/group/cover.pyi +2 -1
- homeassistant-stubs/components/group/entity.pyi +2 -2
- homeassistant-stubs/components/group/event.pyi +2 -1
- homeassistant-stubs/components/group/fan.pyi +2 -1
- homeassistant-stubs/components/group/light.pyi +2 -1
- homeassistant-stubs/components/group/lock.pyi +2 -1
- homeassistant-stubs/components/group/media_player.pyi +2 -1
- homeassistant-stubs/components/group/notify.pyi +2 -1
- homeassistant-stubs/components/group/registry.pyi +8 -2
- homeassistant-stubs/components/group/switch.pyi +2 -1
- homeassistant-stubs/components/history_stats/sensor.pyi +4 -1
- homeassistant-stubs/components/homeassistant/const.pyi +3 -1
- homeassistant-stubs/components/homekit/aidmanager.pyi +2 -2
- homeassistant-stubs/components/homekit_controller/config_flow.pyi +1 -0
- homeassistant-stubs/components/homeworks/__init__.pyi +2 -5
- homeassistant-stubs/components/homeworks/config_flow.pyi +1 -6
- homeassistant-stubs/components/http/__init__.pyi +20 -3
- homeassistant-stubs/components/http/cors.pyi +1 -1
- homeassistant-stubs/components/http/data_validator.pyi +2 -1
- homeassistant-stubs/components/humidifier/__init__.pyi +3 -2
- homeassistant-stubs/components/humidifier/device_action.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +3 -3
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +2 -3
- homeassistant-stubs/components/husqvarna_automower/button.pyi +22 -0
- homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +2 -3
- homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +7 -1
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +14 -5
- homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -5
- homeassistant-stubs/components/husqvarna_automower/select.pyi +2 -3
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +10 -5
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +4 -8
- homeassistant-stubs/components/hydrawise/coordinator.pyi +3 -3
- homeassistant-stubs/components/hydrawise/sensor.pyi +3 -0
- homeassistant-stubs/components/ibeacon/config_flow.pyi +1 -0
- homeassistant-stubs/components/idasen_desk/coordinator.pyi +2 -5
- homeassistant-stubs/components/idasen_desk/sensor.pyi +3 -0
- homeassistant-stubs/components/image/__init__.pyi +3 -2
- homeassistant-stubs/components/image_upload/__init__.pyi +7 -3
- homeassistant-stubs/components/imap/__init__.pyi +5 -4
- homeassistant-stubs/components/imap/diagnostics.pyi +3 -5
- homeassistant-stubs/components/imap/sensor.pyi +5 -5
- homeassistant-stubs/components/input_button/__init__.pyi +3 -4
- homeassistant-stubs/components/input_select/__init__.pyi +2 -2
- homeassistant-stubs/components/input_text/__init__.pyi +3 -4
- homeassistant-stubs/components/integration/__init__.pyi +2 -0
- homeassistant-stubs/components/integration/config_flow.pyi +1 -1
- homeassistant-stubs/components/integration/const.pyi +1 -0
- homeassistant-stubs/components/integration/sensor.pyi +33 -12
- homeassistant-stubs/components/intent/timers.pyi +7 -3
- homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +4 -3
- homeassistant-stubs/components/islamic_prayer_times/sensor.pyi +3 -3
- homeassistant-stubs/components/isy994/services.pyi +3 -2
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +6 -12
- homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -0
- homeassistant-stubs/components/jewish_calendar/sensor.pyi +8 -13
- homeassistant-stubs/components/knocki/__init__.pyi +12 -0
- homeassistant-stubs/components/knocki/config_flow.pyi +12 -0
- homeassistant-stubs/components/knocki/const.pyi +4 -0
- homeassistant-stubs/components/knocki/coordinator.pyi +13 -0
- homeassistant-stubs/components/knocki/event.pyi +26 -0
- homeassistant-stubs/components/knx/config_flow.pyi +1 -1
- homeassistant-stubs/components/knx/device_trigger.pyi +1 -1
- homeassistant-stubs/components/knx/trigger.pyi +2 -3
- homeassistant-stubs/components/knx/websocket.pyi +1 -0
- homeassistant-stubs/components/lacrosse/sensor.pyi +2 -1
- homeassistant-stubs/components/lamarzocco/__init__.pyi +8 -3
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +4 -5
- homeassistant-stubs/components/lamarzocco/button.pyi +4 -5
- homeassistant-stubs/components/lamarzocco/calendar.pyi +9 -3
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +7 -3
- homeassistant-stubs/components/lamarzocco/const.pyi +1 -2
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +13 -11
- homeassistant-stubs/components/lamarzocco/diagnostics.pyi +10 -5
- homeassistant-stubs/components/lamarzocco/entity.pyi +3 -3
- homeassistant-stubs/components/lamarzocco/number.pyi +9 -13
- homeassistant-stubs/components/lamarzocco/select.pyi +13 -7
- homeassistant-stubs/components/lamarzocco/sensor.pyi +4 -5
- homeassistant-stubs/components/lamarzocco/switch.pyi +21 -6
- homeassistant-stubs/components/lamarzocco/update.pyi +5 -10
- homeassistant-stubs/components/lawn_mower/__init__.pyi +3 -2
- homeassistant-stubs/components/lidarr/__init__.pyi +12 -2
- homeassistant-stubs/components/lidarr/config_flow.pyi +2 -1
- homeassistant-stubs/components/lidarr/coordinator.pyi +0 -1
- homeassistant-stubs/components/lidarr/sensor.pyi +3 -4
- homeassistant-stubs/components/lifx/light.pyi +3 -2
- homeassistant-stubs/components/light/__init__.pyi +8 -6
- homeassistant-stubs/components/light/device_action.pyi +1 -1
- homeassistant-stubs/components/litterrobot/__init__.pyi +4 -3
- homeassistant-stubs/components/litterrobot/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/litterrobot/button.pyi +2 -4
- homeassistant-stubs/components/litterrobot/select.pyi +2 -3
- homeassistant-stubs/components/litterrobot/sensor.pyi +2 -4
- homeassistant-stubs/components/litterrobot/switch.pyi +2 -4
- homeassistant-stubs/components/litterrobot/time.pyi +2 -4
- homeassistant-stubs/components/litterrobot/update.pyi +3 -4
- homeassistant-stubs/components/litterrobot/vacuum.pyi +2 -4
- homeassistant-stubs/components/lock/__init__.pyi +4 -3
- homeassistant-stubs/components/logbook/processor.pyi +4 -3
- homeassistant-stubs/components/london_underground/sensor.pyi +2 -1
- homeassistant-stubs/components/mastodon/notify.pyi +2 -1
- homeassistant-stubs/components/matrix/notify.pyi +2 -1
- homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/matter/discovery.pyi +3 -3
- homeassistant-stubs/components/matter/entity.pyi +8 -1
- homeassistant-stubs/components/matter/event.pyi +0 -2
- homeassistant-stubs/components/matter/fan.pyi +2 -2
- homeassistant-stubs/components/matter/lock.pyi +1 -0
- homeassistant-stubs/components/matter/models.pyi +1 -2
- homeassistant-stubs/components/matter/number.pyi +24 -0
- homeassistant-stubs/components/matter/sensor.pyi +1 -1
- homeassistant-stubs/components/media_player/__init__.pyi +3 -2
- homeassistant-stubs/components/media_player/intent.pyi +2 -1
- homeassistant-stubs/components/mikrotik/__init__.pyi +2 -1
- homeassistant-stubs/components/mikrotik/device_tracker.pyi +2 -3
- homeassistant-stubs/components/min_max/sensor.pyi +2 -1
- homeassistant-stubs/components/modbus/sensor.pyi +2 -2
- homeassistant-stubs/components/monzo/config_flow.pyi +5 -1
- homeassistant-stubs/components/monzo/coordinator.pyi +1 -0
- homeassistant-stubs/components/motionmount/select.pyi +5 -2
- homeassistant-stubs/components/mqtt/async_client.pyi +22 -0
- homeassistant-stubs/components/mqtt/client.pyi +13 -28
- homeassistant-stubs/components/mqtt/climate.pyi +2 -3
- homeassistant-stubs/components/mqtt/cover.pyi +2 -3
- homeassistant-stubs/components/mqtt/device_tracker.pyi +2 -3
- homeassistant-stubs/components/mqtt/event.pyi +2 -3
- homeassistant-stubs/components/mqtt/fan.pyi +2 -3
- homeassistant-stubs/components/mqtt/humidifier.pyi +2 -3
- homeassistant-stubs/components/mqtt/image.pyi +2 -3
- homeassistant-stubs/components/mqtt/lawn_mower.pyi +2 -3
- homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +2 -3
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +2 -3
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +2 -3
- homeassistant-stubs/components/mqtt/mixins.pyi +4 -4
- homeassistant-stubs/components/mqtt/models.pyi +2 -3
- homeassistant-stubs/components/mqtt/number.pyi +2 -3
- homeassistant-stubs/components/mqtt/select.pyi +2 -3
- homeassistant-stubs/components/mqtt/sensor.pyi +2 -3
- homeassistant-stubs/components/mqtt/siren.pyi +2 -3
- homeassistant-stubs/components/mqtt/text.pyi +2 -3
- homeassistant-stubs/components/mqtt/update.pyi +2 -3
- homeassistant-stubs/components/mqtt/util.pyi +23 -2
- homeassistant-stubs/components/mqtt/vacuum.pyi +2 -3
- homeassistant-stubs/components/mqtt/valve.pyi +2 -3
- homeassistant-stubs/components/mqtt/water_heater.pyi +2 -3
- homeassistant-stubs/components/mysensors/config_flow.pyi +1 -0
- homeassistant-stubs/components/mysensors/sensor.pyi +1 -1
- homeassistant-stubs/components/myuplink/__init__.pyi +4 -1
- homeassistant-stubs/components/myuplink/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/myuplink/diagnostics.pyi +2 -4
- homeassistant-stubs/components/myuplink/number.pyi +2 -4
- homeassistant-stubs/components/myuplink/sensor.pyi +3 -5
- homeassistant-stubs/components/myuplink/switch.pyi +2 -4
- homeassistant-stubs/components/myuplink/update.pyi +2 -4
- homeassistant-stubs/components/nam/const.pyi +1 -0
- homeassistant-stubs/components/nam/sensor.pyi +1 -1
- homeassistant-stubs/components/nanoleaf/__init__.pyi +6 -14
- homeassistant-stubs/components/nanoleaf/button.pyi +4 -7
- homeassistant-stubs/components/nanoleaf/coordinator.pyi +12 -0
- homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -0
- homeassistant-stubs/components/nanoleaf/diagnostics.pyi +2 -4
- homeassistant-stubs/components/nanoleaf/entity.pyi +4 -4
- homeassistant-stubs/components/nanoleaf/event.pyi +18 -0
- homeassistant-stubs/components/nanoleaf/light.pyi +4 -7
- homeassistant-stubs/components/number/__init__.pyi +3 -1
- homeassistant-stubs/components/number/const.pyi +2 -1
- homeassistant-stubs/components/overkiz/water_heater.pyi +2 -1
- homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +2 -0
- homeassistant-stubs/components/overkiz/water_heater_entities/atlantic_domestic_hot_water_production_mlb_component.pyi +32 -0
- homeassistant-stubs/components/ping/binary_sensor.pyi +2 -8
- homeassistant-stubs/components/ping/config_flow.pyi +2 -4
- homeassistant-stubs/components/ping/device_tracker.pyi +4 -14
- homeassistant-stubs/components/plugwise/button.pyi +20 -0
- homeassistant-stubs/components/plugwise/const.pyi +3 -0
- homeassistant-stubs/components/plugwise/coordinator.pyi +5 -3
- homeassistant-stubs/components/plugwise/number.pyi +2 -4
- homeassistant-stubs/components/plugwise/select.pyi +3 -5
- homeassistant-stubs/components/prometheus/__init__.pyi +1 -1
- homeassistant-stubs/components/proximity/config_flow.pyi +2 -1
- homeassistant-stubs/components/radarr/__init__.pyi +14 -2
- homeassistant-stubs/components/radarr/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/radarr/calendar.pyi +2 -4
- homeassistant-stubs/components/radarr/config_flow.pyi +3 -4
- homeassistant-stubs/components/radarr/coordinator.pyi +2 -2
- homeassistant-stubs/components/radarr/sensor.pyi +2 -4
- homeassistant-stubs/components/rainmachine/switch.pyi +1 -0
- homeassistant-stubs/components/recorder/const.pyi +3 -1
- homeassistant-stubs/components/recorder/core.pyi +2 -2
- homeassistant-stubs/components/recorder/db_schema.pyi +3 -1
- homeassistant-stubs/components/recorder/purge.pyi +1 -1
- homeassistant-stubs/components/recorder/statistics.pyi +7 -4
- homeassistant-stubs/components/recorder/table_managers/event_data.pyi +3 -3
- homeassistant-stubs/components/recorder/table_managers/event_types.pyi +1 -1
- homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +3 -3
- homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +1 -1
- homeassistant-stubs/components/recorder/util.pyi +4 -3
- homeassistant-stubs/components/remote/__init__.pyi +5 -4
- homeassistant-stubs/components/rest/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/rest/notify.pyi +2 -1
- homeassistant-stubs/components/rest/sensor.pyi +2 -1
- homeassistant-stubs/components/rest/switch.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/config_flow.pyi +1 -0
- homeassistant-stubs/components/roborock/__init__.pyi +30 -0
- homeassistant-stubs/components/roborock/binary_sensor.pyi +29 -0
- homeassistant-stubs/components/roborock/button.pyi +28 -0
- homeassistant-stubs/components/roborock/config_flow.pyi +30 -0
- homeassistant-stubs/components/roborock/const.pyi +13 -0
- homeassistant-stubs/components/roborock/coordinator.pyi +47 -0
- homeassistant-stubs/components/roborock/device.pyi +53 -0
- homeassistant-stubs/components/roborock/diagnostics.pyi +13 -0
- homeassistant-stubs/components/roborock/image.pyi +37 -0
- homeassistant-stubs/components/roborock/models.pyi +27 -0
- homeassistant-stubs/components/roborock/number.pyi +35 -0
- homeassistant-stubs/components/roborock/select.pyi +37 -0
- homeassistant-stubs/components/roborock/sensor.pyi +47 -0
- homeassistant-stubs/components/roborock/switch.pyi +37 -0
- homeassistant-stubs/components/roborock/time.pyi +38 -0
- homeassistant-stubs/components/roborock/vacuum.pyi +39 -0
- homeassistant-stubs/components/roku/media_player.pyi +2 -1
- homeassistant-stubs/components/schedule/__init__.pyi +5 -5
- homeassistant-stubs/components/select/__init__.pyi +3 -1
- homeassistant-stubs/components/sensor/__init__.pyi +3 -1
- homeassistant-stubs/components/sensor/const.pyi +3 -2
- homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
- homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
- homeassistant-stubs/components/shelly/__init__.pyi +1 -2
- homeassistant-stubs/components/shelly/climate.pyi +3 -0
- homeassistant-stubs/components/shelly/const.pyi +0 -1
- homeassistant-stubs/components/shelly/coordinator.pyi +3 -2
- homeassistant-stubs/components/shelly/switch.pyi +2 -18
- homeassistant-stubs/components/shelly/valve.pyi +1 -1
- homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +4 -5
- homeassistant-stubs/components/siren/__init__.pyi +4 -3
- homeassistant-stubs/components/sql/sensor.pyi +2 -1
- homeassistant-stubs/components/starlink/const.pyi +1 -0
- homeassistant-stubs/components/starlink/device_tracker.pyi +6 -2
- homeassistant-stubs/components/statistics/__init__.pyi +8 -1
- homeassistant-stubs/components/statistics/config_flow.pyi +23 -0
- homeassistant-stubs/components/statistics/sensor.pyi +7 -2
- homeassistant-stubs/components/stream/fmp4utils.pyi +2 -2
- homeassistant-stubs/components/stream/worker.pyi +3 -2
- homeassistant-stubs/components/streamlabswater/__init__.pyi +1 -6
- homeassistant-stubs/components/streamlabswater/config_flow.pyi +0 -1
- homeassistant-stubs/components/suez_water/config_flow.pyi +0 -1
- homeassistant-stubs/components/suez_water/sensor.pyi +3 -8
- homeassistant-stubs/components/switch/__init__.pyi +4 -3
- homeassistant-stubs/components/switch/light.pyi +2 -1
- homeassistant-stubs/components/switcher_kis/__init__.pyi +3 -0
- homeassistant-stubs/components/switcher_kis/switch.pyi +3 -2
- homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
- homeassistant-stubs/components/systemmonitor/config_flow.pyi +0 -2
- homeassistant-stubs/components/systemmonitor/sensor.pyi +4 -7
- homeassistant-stubs/components/tag/__init__.pyi +4 -5
- homeassistant-stubs/components/tami4/__init__.pyi +1 -1
- homeassistant-stubs/components/tami4/coordinator.pyi +3 -5
- homeassistant-stubs/components/tami4/sensor.pyi +3 -3
- homeassistant-stubs/components/tautulli/__init__.pyi +3 -2
- homeassistant-stubs/components/tautulli/coordinator.pyi +2 -2
- homeassistant-stubs/components/tautulli/sensor.pyi +3 -3
- homeassistant-stubs/components/threshold/__init__.pyi +2 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +11 -3
- homeassistant-stubs/components/threshold/config_flow.pyi +8 -0
- homeassistant-stubs/components/tibber/__init__.pyi +1 -0
- homeassistant-stubs/components/tibber/sensor.pyi +12 -6
- homeassistant-stubs/components/tibber/services.pyi +15 -0
- homeassistant-stubs/components/time_date/sensor.pyi +3 -3
- homeassistant-stubs/components/timer/__init__.pyi +2 -2
- homeassistant-stubs/components/todo/__init__.pyi +3 -2
- homeassistant-stubs/components/tplink/__init__.pyi +14 -8
- homeassistant-stubs/components/tplink/binary_sensor.pyi +22 -0
- homeassistant-stubs/components/tplink/button.pyi +22 -0
- homeassistant-stubs/components/tplink/climate.pyi +42 -0
- homeassistant-stubs/components/tplink/config_flow.pyi +5 -5
- homeassistant-stubs/components/tplink/const.pyi +5 -1
- homeassistant-stubs/components/tplink/coordinator.pyi +2 -2
- homeassistant-stubs/components/tplink/diagnostics.pyi +2 -4
- homeassistant-stubs/components/tplink/entity.pyi +49 -7
- homeassistant-stubs/components/tplink/fan.pyi +31 -0
- homeassistant-stubs/components/tplink/light.pyi +20 -19
- homeassistant-stubs/components/tplink/number.pyi +27 -0
- homeassistant-stubs/components/tplink/select.pyi +26 -0
- homeassistant-stubs/components/tplink/sensor.pyi +12 -23
- homeassistant-stubs/components/tplink/switch.pyi +12 -35
- homeassistant-stubs/components/tplink_omada/controller.pyi +4 -15
- homeassistant-stubs/components/tplink_omada/coordinator.pyi +20 -1
- homeassistant-stubs/components/tplink_omada/device_tracker.pyi +36 -0
- homeassistant-stubs/components/transmission/__init__.pyi +9 -3
- homeassistant-stubs/components/transmission/sensor.pyi +2 -2
- homeassistant-stubs/components/transmission/switch.pyi +2 -4
- homeassistant-stubs/components/trend/__init__.pyi +2 -1
- homeassistant-stubs/components/trend/binary_sensor.pyi +6 -2
- homeassistant-stubs/components/tts/notify.pyi +2 -1
- homeassistant-stubs/components/unifi/config_flow.pyi +1 -1
- homeassistant-stubs/components/unifi/sensor.pyi +2 -1
- homeassistant-stubs/components/unifi/services.pyi +1 -0
- homeassistant-stubs/components/unifiprotect/__init__.pyi +8 -9
- homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +29 -21
- homeassistant-stubs/components/unifiprotect/button.pyi +8 -9
- homeassistant-stubs/components/unifiprotect/camera.pyi +10 -10
- homeassistant-stubs/components/unifiprotect/const.pyi +0 -1
- homeassistant-stubs/components/unifiprotect/data.pyi +27 -14
- homeassistant-stubs/components/unifiprotect/diagnostics.pyi +2 -4
- homeassistant-stubs/components/unifiprotect/entity.pyi +27 -17
- homeassistant-stubs/components/unifiprotect/light.pyi +3 -6
- homeassistant-stubs/components/unifiprotect/lock.pyi +3 -8
- homeassistant-stubs/components/unifiprotect/media_player.pyi +4 -8
- homeassistant-stubs/components/unifiprotect/media_source.pyi +2 -3
- homeassistant-stubs/components/unifiprotect/migrate.pyi +5 -5
- homeassistant-stubs/components/unifiprotect/models.pyi +16 -17
- homeassistant-stubs/components/unifiprotect/number.pyi +8 -12
- homeassistant-stubs/components/unifiprotect/repairs.pyi +5 -3
- homeassistant-stubs/components/unifiprotect/select.pyi +9 -11
- homeassistant-stubs/components/unifiprotect/sensor.pyi +25 -23
- homeassistant-stubs/components/unifiprotect/services.pyi +0 -4
- homeassistant-stubs/components/unifiprotect/switch.pyi +15 -24
- homeassistant-stubs/components/unifiprotect/text.pyi +8 -11
- homeassistant-stubs/components/unifiprotect/utils.pyi +6 -11
- homeassistant-stubs/components/unifiprotect/views.pyi +2 -4
- homeassistant-stubs/components/update/__init__.pyi +3 -1
- homeassistant-stubs/components/vacuum/__init__.pyi +2 -1
- homeassistant-stubs/components/vallox/sensor.pyi +5 -1
- homeassistant-stubs/components/valve/__init__.pyi +3 -2
- homeassistant-stubs/components/water_heater/__init__.pyi +4 -3
- homeassistant-stubs/components/weather/__init__.pyi +4 -5
- homeassistant-stubs/components/webhook/__init__.pyi +1 -1
- homeassistant-stubs/components/webostv/__init__.pyi +7 -0
- homeassistant-stubs/components/websocket_api/__init__.pyi +3 -4
- homeassistant-stubs/components/websocket_api/decorators.pyi +2 -1
- homeassistant-stubs/components/wemo/entity.pyi +2 -2
- homeassistant-stubs/components/wemo/fan.pyi +2 -1
- homeassistant-stubs/components/withings/coordinator.pyi +3 -3
- homeassistant-stubs/components/withings/sensor.pyi +6 -2
- homeassistant-stubs/components/worldclock/sensor.pyi +2 -1
- homeassistant-stubs/components/xiaomi_ble/sensor.pyi +1 -1
- homeassistant-stubs/components/zone/__init__.pyi +3 -3
- homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
- homeassistant-stubs/components/zwave_js/api.pyi +1 -5
- homeassistant-stubs/components/zwave_js/config_flow.pyi +8 -1
- homeassistant-stubs/components/zwave_js/const.pyi +5 -0
- homeassistant-stubs/components/zwave_js/discovery.pyi +4 -4
- homeassistant-stubs/components/zwave_js/helpers.pyi +2 -2
- homeassistant-stubs/components/zwave_js/sensor.pyi +2 -0
- homeassistant-stubs/components/zwave_js/services.pyi +3 -2
- homeassistant-stubs/config.pyi +4 -5
- homeassistant-stubs/config_entries.pyi +6 -3
- homeassistant-stubs/const.pyi +9 -3
- homeassistant-stubs/core.pyi +15 -10
- homeassistant-stubs/data_entry_flow.pyi +12 -2
- homeassistant-stubs/exceptions.pyi +6 -5
- homeassistant-stubs/helpers/__init__.pyi +0 -5
- homeassistant-stubs/helpers/collection.pyi +14 -11
- homeassistant-stubs/helpers/condition.pyi +3 -2
- homeassistant-stubs/helpers/config_validation.pyi +5 -4
- homeassistant-stubs/helpers/deprecation.pyi +10 -0
- homeassistant-stubs/helpers/device.pyi +8 -0
- homeassistant-stubs/helpers/device_registry.pyi +14 -2
- homeassistant-stubs/helpers/entity.pyi +3 -2
- homeassistant-stubs/helpers/entity_component.pyi +3 -4
- homeassistant-stubs/helpers/entity_platform.pyi +2 -3
- homeassistant-stubs/helpers/event.pyi +10 -4
- homeassistant-stubs/helpers/frame.pyi +1 -0
- homeassistant-stubs/helpers/http.pyi +1 -1
- homeassistant-stubs/helpers/intent.pyi +6 -4
- homeassistant-stubs/helpers/llm.pyi +17 -3
- homeassistant-stubs/helpers/schema_config_entry_flow.pyi +2 -2
- homeassistant-stubs/helpers/script.pyi +3 -2
- homeassistant-stubs/helpers/selector.pyi +10 -8
- homeassistant-stubs/helpers/service.pyi +6 -3
- homeassistant-stubs/helpers/template.pyi +8 -6
- homeassistant-stubs/helpers/trace.pyi +3 -2
- homeassistant-stubs/helpers/typing.pyi +6 -1
- homeassistant-stubs/helpers/update_coordinator.pyi +3 -3
- homeassistant-stubs/loader.pyi +1 -2
- homeassistant-stubs/requirements.pyi +0 -3
- homeassistant-stubs/setup.pyi +4 -3
- homeassistant-stubs/util/loop.pyi +5 -1
- homeassistant-stubs/util/unit_conversion.pyi +7 -1
- {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/RECORD +597 -560
- homeassistant-stubs/auth/providers/legacy_api_password.pyi +0 -30
- homeassistant-stubs/components/air_quality/group.pyi +0 -5
- homeassistant-stubs/components/aladdin_connect/api.pyi +0 -12
- homeassistant-stubs/components/aladdin_connect/application_credentials.pyi +0 -5
- homeassistant-stubs/components/aladdin_connect/const.pyi +0 -3
- homeassistant-stubs/components/aladdin_connect/coordinator.pyi +0 -15
- homeassistant-stubs/components/aladdin_connect/cover.pyi +0 -25
- homeassistant-stubs/components/aladdin_connect/entity.pyi +0 -12
- homeassistant-stubs/components/aladdin_connect/sensor.pyi +0 -27
- homeassistant-stubs/components/alarm_control_panel/group.pyi +0 -6
- homeassistant-stubs/components/climate/group.pyi +0 -6
- homeassistant-stubs/components/cover/group.pyi +0 -6
- homeassistant-stubs/components/device_tracker/group.pyi +0 -6
- homeassistant-stubs/components/fastdotcom/services.pyi +0 -7
- homeassistant-stubs/components/lock/group.pyi +0 -6
- homeassistant-stubs/components/media_player/group.pyi +0 -6
- homeassistant-stubs/components/sensor/group.pyi +0 -5
- homeassistant-stubs/components/vacuum/group.pyi +0 -6
- homeassistant-stubs/components/water_heater/group.pyi +0 -6
- homeassistant-stubs/components/weather/group.pyi +0 -5
- homeassistant-stubs/components/wled/binary_sensor.pyi +0 -20
- {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/LICENSE +0 -0
- {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/WHEEL +0 -0
@@ -3,6 +3,7 @@ from .const import ACCESS_TOKEN_EXPIRATION as ACCESS_TOKEN_EXPIRATION, GROUP_ID_
|
|
3
3
|
from .mfa_modules import MultiFactorAuthModule as MultiFactorAuthModule, auth_mfa_module_from_config as auth_mfa_module_from_config
|
4
4
|
from .models import AuthFlowResult as AuthFlowResult
|
5
5
|
from .providers import AuthProvider as AuthProvider, LoginFlow as LoginFlow, auth_provider_from_config as auth_provider_from_config
|
6
|
+
from .providers.homeassistant import HassAuthProvider as HassAuthProvider
|
6
7
|
from _typeshed import Incomplete
|
7
8
|
from datetime import datetime, timedelta
|
8
9
|
from homeassistant import data_entry_flow as data_entry_flow
|
@@ -58,6 +59,7 @@ class AuthManager:
|
|
58
59
|
async def async_link_user(self, user: models.User, credentials: models.Credentials) -> None: ...
|
59
60
|
async def async_remove_user(self, user: models.User) -> None: ...
|
60
61
|
async def async_update_user(self, user: models.User, name: str | None = None, is_active: bool | None = None, group_ids: list[str] | None = None, local_only: bool | None = None) -> None: ...
|
62
|
+
def async_update_user_credentials_data(self, credentials: models.Credentials, data: dict[str, Any]) -> None: ...
|
61
63
|
async def async_activate_user(self, user: models.User) -> None: ...
|
62
64
|
async def async_deactivate_user(self, user: models.User) -> None: ...
|
63
65
|
async def async_remove_credentials(self, credentials: models.Credentials) -> None: ...
|
@@ -44,6 +44,7 @@ class AuthStore:
|
|
44
44
|
def async_get_refresh_tokens(self) -> list[models.RefreshToken]: ...
|
45
45
|
def async_log_refresh_token_usage(self, refresh_token: models.RefreshToken, remote_ip: str | None = None) -> None: ...
|
46
46
|
def async_set_expiry(self, refresh_token: models.RefreshToken, *, enable_expiry: bool) -> None: ...
|
47
|
+
def async_update_user_credentials_data(self, credentials: models.Credentials, data: dict[str, Any]) -> None: ...
|
47
48
|
async def async_load(self) -> None: ...
|
48
49
|
def _build_token_id_to_user_id(self) -> None: ...
|
49
50
|
def _async_schedule_save(self, delay: float = ...) -> None: ...
|
@@ -18,7 +18,11 @@ CONFIG_SCHEMA: Incomplete
|
|
18
18
|
def async_get_provider(hass: HomeAssistant) -> HassAuthProvider: ...
|
19
19
|
|
20
20
|
class InvalidAuth(HomeAssistantError): ...
|
21
|
-
|
21
|
+
|
22
|
+
class InvalidUser(HomeAssistantError):
|
23
|
+
def __init__(self, *args: object, translation_key: str | None = None, translation_placeholders: dict[str, str] | None = None) -> None: ...
|
24
|
+
|
25
|
+
class InvalidUsername(InvalidUser): ...
|
22
26
|
|
23
27
|
class Data:
|
24
28
|
hass: Incomplete
|
@@ -26,8 +30,9 @@ class Data:
|
|
26
30
|
_data: Incomplete
|
27
31
|
is_legacy: bool
|
28
32
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
29
|
-
def normalize_username(self, username: str) -> str: ...
|
33
|
+
def normalize_username(self, username: str, *, force_normalize: bool = False) -> str: ...
|
30
34
|
async def async_load(self) -> None: ...
|
35
|
+
def _async_check_for_not_normalized_usernames(self, data: dict[str, list[dict[str, str]]]) -> None: ...
|
31
36
|
@property
|
32
37
|
def users(self) -> list[dict[str, str]]: ...
|
33
38
|
def validate_login(self, username: str, password: str) -> None: ...
|
@@ -35,6 +40,8 @@ class Data:
|
|
35
40
|
def add_auth(self, username: str, password: str) -> None: ...
|
36
41
|
def async_remove_auth(self, username: str) -> None: ...
|
37
42
|
def change_password(self, username: str, new_password: str) -> None: ...
|
43
|
+
def _validate_new_username(self, new_username: str) -> None: ...
|
44
|
+
def change_username(self, username: str, new_username: str) -> None: ...
|
38
45
|
async def async_save(self) -> None: ...
|
39
46
|
|
40
47
|
class HassAuthProvider(AuthProvider):
|
@@ -48,6 +55,7 @@ class HassAuthProvider(AuthProvider):
|
|
48
55
|
async def async_add_auth(self, username: str, password: str) -> None: ...
|
49
56
|
async def async_remove_auth(self, username: str) -> None: ...
|
50
57
|
async def async_change_password(self, username: str, new_password: str) -> None: ...
|
58
|
+
async def async_change_username(self, credential: Credentials, new_username: str) -> None: ...
|
51
59
|
async def async_get_or_create_credentials(self, flow_result: Mapping[str, str]) -> Credentials: ...
|
52
60
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
53
61
|
async def async_will_remove_credentials(self, credentials: Credentials) -> None: ...
|
@@ -1,6 +1,8 @@
|
|
1
1
|
from .helpers.frame import get_current_frame as get_current_frame
|
2
2
|
from .util.loop import protect_loop as protect_loop
|
3
3
|
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
4
6
|
from typing import Any
|
5
7
|
|
6
8
|
_IN_TESTS: Incomplete
|
@@ -9,4 +11,25 @@ ALLOWED_FILE_PREFIXES: Incomplete
|
|
9
11
|
def _check_import_call_allowed(mapped_args: dict[str, Any]) -> bool: ...
|
10
12
|
def _check_file_allowed(mapped_args: dict[str, Any]) -> bool: ...
|
11
13
|
def _check_sleep_call_allowed(mapped_args: dict[str, Any]) -> bool: ...
|
14
|
+
|
15
|
+
@dataclass(slots=True, frozen=True)
|
16
|
+
class BlockingCall:
|
17
|
+
original_func: Callable
|
18
|
+
object: object
|
19
|
+
function: str
|
20
|
+
check_allowed: Callable[[dict[str, Any]], bool] | None
|
21
|
+
strict: bool
|
22
|
+
strict_core: bool
|
23
|
+
skip_for_tests: bool
|
24
|
+
def __init__(self, original_func, object, function, check_allowed, strict, strict_core, skip_for_tests) -> None: ...
|
25
|
+
|
26
|
+
_BLOCKING_CALLS: tuple[BlockingCall, ...]
|
27
|
+
|
28
|
+
@dataclass(slots=True)
|
29
|
+
class BlockedCalls:
|
30
|
+
calls: set[BlockingCall]
|
31
|
+
def __init__(self, calls) -> None: ...
|
32
|
+
|
33
|
+
_BLOCKED_CALLS: Incomplete
|
34
|
+
|
12
35
|
def enable() -> None: ...
|
@@ -1,5 +1,4 @@
|
|
1
1
|
import logging
|
2
|
-
import logging.handlers
|
3
2
|
from . import block_async_io as block_async_io, config_entries as config_entries, core as core, loader as loader, requirements as requirements
|
4
3
|
from .components import http as http
|
5
4
|
from .const import BASE_PLATFORMS as BASE_PLATFORMS, FORMAT_DATETIME as FORMAT_DATETIME, REQUIRED_NEXT_PYTHON_HA_RELEASE as REQUIRED_NEXT_PYTHON_HA_RELEASE, REQUIRED_NEXT_PYTHON_VER as REQUIRED_NEXT_PYTHON_VER, SIGNAL_BOOTSTRAP_INTEGRATIONS as SIGNAL_BOOTSTRAP_INTEGRATIONS
|
@@ -17,6 +16,7 @@ from .util.logging import async_activate_log_queue_handler as async_activate_log
|
|
17
16
|
from .util.package import async_get_user_site as async_get_user_site, is_virtual_env as is_virtual_env
|
18
17
|
from _typeshed import Incomplete
|
19
18
|
from anyio._backends import _asyncio as _asyncio
|
19
|
+
from logging.handlers import RotatingFileHandler, TimedRotatingFileHandler
|
20
20
|
from typing import Any
|
21
21
|
|
22
22
|
_LOGGER: Incomplete
|
@@ -48,9 +48,10 @@ def open_hass_ui(hass: core.HomeAssistant) -> None: ...
|
|
48
48
|
def _init_blocking_io_modules_in_executor() -> None: ...
|
49
49
|
async def async_load_base_functionality(hass: core.HomeAssistant) -> None: ...
|
50
50
|
async def async_from_config_dict(config: ConfigType, hass: core.HomeAssistant) -> core.HomeAssistant | None: ...
|
51
|
-
def async_enable_logging(hass: core.HomeAssistant, verbose: bool = False, log_rotate_days: int | None = None, log_file: str | None = None, log_no_color: bool = False) -> None: ...
|
51
|
+
async def async_enable_logging(hass: core.HomeAssistant, verbose: bool = False, log_rotate_days: int | None = None, log_file: str | None = None, log_no_color: bool = False) -> None: ...
|
52
|
+
def _create_log_file(err_log_path: str, log_rotate_days: int | None) -> RotatingFileHandler | TimedRotatingFileHandler: ...
|
52
53
|
|
53
|
-
class _RotatingFileHandlerWithoutShouldRollOver(
|
54
|
+
class _RotatingFileHandlerWithoutShouldRollOver(RotatingFileHandler):
|
54
55
|
def shouldRollover(self, record: logging.LogRecord) -> bool: ...
|
55
56
|
|
56
57
|
async def async_mount_local_lib_path(config_dir: str) -> str: ...
|
@@ -19,12 +19,7 @@ class AccuWeatherSensorDescription(SensorEntityDescription):
|
|
19
19
|
attr_fn: Callable[[dict[str, Any]], dict[str, Any]] = ...
|
20
20
|
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn, attr_fn) -> None: ...
|
21
21
|
|
22
|
-
|
23
|
-
class AccuWeatherForecastSensorDescription(AccuWeatherSensorDescription):
|
24
|
-
day: int
|
25
|
-
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn, attr_fn, day) -> None: ...
|
26
|
-
|
27
|
-
FORECAST_SENSOR_TYPES: tuple[AccuWeatherForecastSensorDescription, ...]
|
22
|
+
FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...]
|
28
23
|
SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...]
|
29
24
|
|
30
25
|
async def async_setup_entry(hass: HomeAssistant, entry: AccuWeatherConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -48,12 +43,13 @@ class AccuWeatherSensor(CoordinatorEntity[AccuWeatherObservationDataUpdateCoordi
|
|
48
43
|
class AccuWeatherForecastSensor(CoordinatorEntity[AccuWeatherDailyForecastDataUpdateCoordinator], SensorEntity):
|
49
44
|
_attr_attribution = ATTRIBUTION
|
50
45
|
_attr_has_entity_name: bool
|
51
|
-
entity_description:
|
52
|
-
forecast_day: Incomplete
|
46
|
+
entity_description: AccuWeatherSensorDescription
|
53
47
|
_sensor_data: Incomplete
|
54
48
|
_attr_unique_id: Incomplete
|
55
49
|
_attr_device_info: Incomplete
|
56
|
-
|
50
|
+
_attr_translation_placeholders: Incomplete
|
51
|
+
forecast_day: Incomplete
|
52
|
+
def __init__(self, coordinator: AccuWeatherDailyForecastDataUpdateCoordinator, description: AccuWeatherSensorDescription, forecast_day: int) -> None: ...
|
57
53
|
@property
|
58
54
|
def native_value(self) -> str | int | float | None: ...
|
59
55
|
@property
|
@@ -2,7 +2,7 @@ from . import AccuWeatherConfigEntry as AccuWeatherConfigEntry, AccuWeatherData
|
|
2
2
|
from .const import API_METRIC as API_METRIC, ATTRIBUTION as ATTRIBUTION, ATTR_DIRECTION as ATTR_DIRECTION, ATTR_SPEED as ATTR_SPEED, ATTR_VALUE as ATTR_VALUE, CONDITION_MAP as CONDITION_MAP
|
3
3
|
from .coordinator import AccuWeatherDailyForecastDataUpdateCoordinator as AccuWeatherDailyForecastDataUpdateCoordinator, AccuWeatherObservationDataUpdateCoordinator as AccuWeatherObservationDataUpdateCoordinator
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from homeassistant.components.weather import ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_NATIVE_APPARENT_TEMP as ATTR_FORECAST_NATIVE_APPARENT_TEMP, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, 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_PRECIPITATION_PROBABILITY as ATTR_FORECAST_PRECIPITATION_PROBABILITY, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_UV_INDEX as ATTR_FORECAST_UV_INDEX, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, CoordinatorWeatherEntity as CoordinatorWeatherEntity, Forecast as Forecast, WeatherEntityFeature as WeatherEntityFeature
|
5
|
+
from homeassistant.components.weather import 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_APPARENT_TEMP as ATTR_FORECAST_NATIVE_APPARENT_TEMP, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, 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_PRECIPITATION_PROBABILITY as ATTR_FORECAST_PRECIPITATION_PROBABILITY, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_UV_INDEX as ATTR_FORECAST_UV_INDEX, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, CoordinatorWeatherEntity as CoordinatorWeatherEntity, Forecast as Forecast, WeatherEntityFeature as WeatherEntityFeature
|
6
6
|
from homeassistant.const import UnitOfLength as UnitOfLength, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
8
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from .const import CMD_DICT as CMD_DICT, CONF_WRITE_TIMEOUT as CONF_WRITE_TIMEOUT, DEFAULT_NAME as DEFAULT_NAME, DEFAULT_TIMEOUT as DEFAULT_TIMEOUT, DEFAULT_WRITE_TIMEOUT as DEFAULT_WRITE_TIMEOUT, ECO_MODE as ECO_MODE, ICON as ICON, INPUT_SOURCE as INPUT_SOURCE, LAMP as LAMP, LAMP_HOURS as LAMP_HOURS
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components.switch import
|
3
|
+
from homeassistant.components.switch import SwitchEntity as SwitchEntity
|
4
4
|
from homeassistant.const import CONF_FILENAME as CONF_FILENAME, CONF_NAME as CONF_NAME, CONF_TIMEOUT as CONF_TIMEOUT, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, STATE_UNKNOWN as STATE_UNKNOWN
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
6
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -8,6 +8,7 @@ from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfo
|
|
8
8
|
from typing import Any
|
9
9
|
|
10
10
|
_LOGGER: Incomplete
|
11
|
+
PLATFORM_SCHEMA: Incomplete
|
11
12
|
|
12
13
|
def setup_platform(hass: HomeAssistant, config: ConfigType, add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
|
13
14
|
|
@@ -3,13 +3,16 @@ from _typeshed import Incomplete
|
|
3
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
4
|
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
|
-
from homeassistant.helpers.config_validation import PLATFORM_SCHEMA as PLATFORM_SCHEMA, PLATFORM_SCHEMA_BASE as PLATFORM_SCHEMA_BASE
|
7
6
|
from homeassistant.helpers.entity import Entity as Entity
|
8
7
|
from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
|
9
8
|
from homeassistant.helpers.typing import ConfigType as ConfigType, StateType as StateType
|
10
9
|
from typing import Final
|
11
10
|
|
12
11
|
_LOGGER: Final[Incomplete]
|
12
|
+
ENTITY_ID_FORMAT: Final[Incomplete]
|
13
|
+
PLATFORM_SCHEMA: Incomplete
|
14
|
+
PLATFORM_SCHEMA_BASE: Incomplete
|
15
|
+
SCAN_INTERVAL: Final[Incomplete]
|
13
16
|
ATTR_AQI: Final[str]
|
14
17
|
ATTR_CO2: Final[str]
|
15
18
|
ATTR_CO: Final[str]
|
@@ -21,8 +24,6 @@ ATTR_PM_0_1: Final[str]
|
|
21
24
|
ATTR_PM_10: Final[str]
|
22
25
|
ATTR_PM_2_5: Final[str]
|
23
26
|
ATTR_SO2: Final[str]
|
24
|
-
ENTITY_ID_FORMAT: Final[Incomplete]
|
25
|
-
SCAN_INTERVAL: Final[Incomplete]
|
26
27
|
PROP_TO_ATTR: Final[dict[str, str]]
|
27
28
|
|
28
29
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator, AirGradientMeasurementCoordinator as AirGradientMeasurementCoordinator
|
3
|
+
from dataclasses import dataclass
|
3
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
5
|
from homeassistant.const import CONF_HOST as CONF_HOST, Platform as Platform
|
5
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
@@ -7,5 +8,12 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession as asyn
|
|
7
8
|
|
8
9
|
PLATFORMS: list[Platform]
|
9
10
|
|
11
|
+
@dataclass
|
12
|
+
class AirGradientData:
|
13
|
+
measurement: AirGradientMeasurementCoordinator
|
14
|
+
config: AirGradientConfigCoordinator
|
15
|
+
def __init__(self, measurement, config) -> None: ...
|
16
|
+
AirGradientConfigEntry = ConfigEntry[AirGradientData]
|
17
|
+
|
10
18
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
11
19
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -0,0 +1,28 @@
|
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry, DOMAIN as DOMAIN
|
2
|
+
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator
|
3
|
+
from .entity import AirGradientEntity as AirGradientEntity
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from airgradient import AirGradientClient as AirGradientClient
|
6
|
+
from collections.abc import Awaitable, Callable as Callable
|
7
|
+
from dataclasses import dataclass
|
8
|
+
from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
|
9
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
10
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
11
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
|
+
|
13
|
+
@dataclass(frozen=True, kw_only=True)
|
14
|
+
class AirGradientButtonEntityDescription(ButtonEntityDescription):
|
15
|
+
press_fn: Callable[[AirGradientClient], Awaitable[None]]
|
16
|
+
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, press_fn) -> None: ...
|
17
|
+
|
18
|
+
CO2_CALIBRATION: Incomplete
|
19
|
+
LED_BAR_TEST: Incomplete
|
20
|
+
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirGradientConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
|
+
|
23
|
+
class AirGradientButton(AirGradientEntity, ButtonEntity):
|
24
|
+
entity_description: AirGradientButtonEntityDescription
|
25
|
+
coordinator: AirGradientConfigCoordinator
|
26
|
+
_attr_unique_id: Incomplete
|
27
|
+
def __init__(self, coordinator: AirGradientConfigCoordinator, description: AirGradientButtonEntityDescription) -> None: ...
|
28
|
+
async def async_press(self) -> None: ...
|
@@ -1,14 +1,14 @@
|
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry
|
1
2
|
from .const import LOGGER as LOGGER
|
2
3
|
from _typeshed import Incomplete
|
3
4
|
from airgradient import AirGradientClient as AirGradientClient, Config, Measures
|
4
5
|
from datetime import timedelta
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
8
8
|
|
9
9
|
class AirGradientCoordinator(DataUpdateCoordinator[_DataT]):
|
10
10
|
_update_interval: timedelta
|
11
|
-
config_entry:
|
11
|
+
config_entry: AirGradientConfigEntry
|
12
12
|
client: Incomplete
|
13
13
|
serial_number: Incomplete
|
14
14
|
def __init__(self, hass: HomeAssistant, client: AirGradientClient) -> None: ...
|
@@ -0,0 +1,32 @@
|
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator
|
4
|
+
from .entity import AirGradientEntity as AirGradientEntity
|
5
|
+
from _typeshed import Incomplete
|
6
|
+
from airgradient import AirGradientClient as AirGradientClient, Config as Config
|
7
|
+
from collections.abc import Awaitable, Callable as Callable
|
8
|
+
from dataclasses import dataclass
|
9
|
+
from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
|
10
|
+
from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
13
|
+
|
14
|
+
@dataclass(frozen=True, kw_only=True)
|
15
|
+
class AirGradientNumberEntityDescription(NumberEntityDescription):
|
16
|
+
value_fn: Callable[[Config], int]
|
17
|
+
set_value_fn: Callable[[AirGradientClient, int], Awaitable[None]]
|
18
|
+
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, max_value, min_value, mode, native_max_value, native_min_value, native_step, native_unit_of_measurement, step, value_fn, set_value_fn) -> None: ...
|
19
|
+
|
20
|
+
DISPLAY_BRIGHTNESS: Incomplete
|
21
|
+
LED_BAR_BRIGHTNESS: Incomplete
|
22
|
+
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirGradientConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
|
+
|
25
|
+
class AirGradientNumber(AirGradientEntity, NumberEntity):
|
26
|
+
entity_description: AirGradientNumberEntityDescription
|
27
|
+
coordinator: AirGradientConfigCoordinator
|
28
|
+
_attr_unique_id: Incomplete
|
29
|
+
def __init__(self, coordinator: AirGradientConfigCoordinator, description: AirGradientNumberEntityDescription) -> None: ...
|
30
|
+
@property
|
31
|
+
def native_value(self) -> int | None: ...
|
32
|
+
async def async_set_native_value(self, value: float) -> None: ...
|
@@ -1,28 +1,33 @@
|
|
1
|
-
from .
|
2
|
-
from .
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry
|
2
|
+
from .const import DOMAIN as DOMAIN, PM_STANDARD as PM_STANDARD, PM_STANDARD_REVERSE as PM_STANDARD_REVERSE
|
3
|
+
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator
|
3
4
|
from .entity import AirGradientEntity as AirGradientEntity
|
4
5
|
from _typeshed import Incomplete
|
5
6
|
from airgradient import AirGradientClient as AirGradientClient, Config as Config
|
6
7
|
from collections.abc import Awaitable, Callable as Callable
|
7
8
|
from dataclasses import dataclass
|
8
9
|
from homeassistant.components.select import SelectEntity as SelectEntity, SelectEntityDescription as SelectEntityDescription
|
9
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
10
10
|
from homeassistant.const import EntityCategory as EntityCategory
|
11
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
12
|
-
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
13
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
14
13
|
|
15
14
|
@dataclass(frozen=True, kw_only=True)
|
16
15
|
class AirGradientSelectEntityDescription(SelectEntityDescription):
|
17
16
|
value_fn: Callable[[Config], str | None]
|
18
17
|
set_value_fn: Callable[[AirGradientClient, str], Awaitable[None]]
|
19
|
-
|
20
|
-
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, options, value_fn, set_value_fn, requires_display) -> None: ...
|
18
|
+
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, options, value_fn, set_value_fn) -> None: ...
|
21
19
|
|
22
20
|
CONFIG_CONTROL_ENTITY: Incomplete
|
23
|
-
|
21
|
+
DISPLAY_SELECT_TYPES: tuple[AirGradientSelectEntityDescription, ...]
|
22
|
+
LED_BAR_ENTITIES: tuple[AirGradientSelectEntityDescription, ...]
|
23
|
+
LEARNING_TIME_OFFSET_OPTIONS: Incomplete
|
24
|
+
ABC_DAYS: Incomplete
|
24
25
|
|
25
|
-
|
26
|
+
def _get_value(value: int, values: list[str]) -> str | None: ...
|
27
|
+
|
28
|
+
CONTROL_ENTITIES: tuple[AirGradientSelectEntityDescription, ...]
|
29
|
+
|
30
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirGradientConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
26
31
|
|
27
32
|
class AirGradientSelect(AirGradientEntity, SelectEntity):
|
28
33
|
entity_description: AirGradientSelectEntityDescription
|
@@ -32,6 +37,3 @@ class AirGradientSelect(AirGradientEntity, SelectEntity):
|
|
32
37
|
@property
|
33
38
|
def current_option(self) -> str | None: ...
|
34
39
|
async def async_select_option(self, option: str) -> None: ...
|
35
|
-
|
36
|
-
class AirGradientProtectedSelect(AirGradientSelect):
|
37
|
-
async def async_select_option(self, option: str) -> None: ...
|
@@ -1,30 +1,48 @@
|
|
1
|
-
from .
|
2
|
-
from .
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry
|
2
|
+
from .const import PM_STANDARD as PM_STANDARD, PM_STANDARD_REVERSE as PM_STANDARD_REVERSE
|
3
|
+
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator, AirGradientMeasurementCoordinator as AirGradientMeasurementCoordinator
|
3
4
|
from .entity import AirGradientEntity as AirGradientEntity
|
4
5
|
from _typeshed import Incomplete
|
6
|
+
from airgradient import Config as Config
|
5
7
|
from airgradient.models import Measures as Measures
|
6
8
|
from collections.abc import Callable as Callable
|
7
9
|
from dataclasses import dataclass
|
8
10
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
9
|
-
from homeassistant.
|
10
|
-
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfTemperature as UnitOfTemperature
|
11
|
+
from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime
|
11
12
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
13
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
13
14
|
from homeassistant.helpers.typing import StateType as StateType
|
14
15
|
|
15
16
|
@dataclass(frozen=True, kw_only=True)
|
16
|
-
class
|
17
|
+
class AirGradientMeasurementSensorEntityDescription(SensorEntityDescription):
|
17
18
|
value_fn: Callable[[Measures], StateType]
|
18
19
|
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn) -> None: ...
|
19
20
|
|
20
|
-
|
21
|
+
@dataclass(frozen=True, kw_only=True)
|
22
|
+
class AirGradientConfigSensorEntityDescription(SensorEntityDescription):
|
23
|
+
value_fn: Callable[[Config], StateType]
|
24
|
+
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn) -> None: ...
|
21
25
|
|
22
|
-
|
26
|
+
MEASUREMENT_SENSOR_TYPES: tuple[AirGradientMeasurementSensorEntityDescription, ...]
|
27
|
+
CONFIG_SENSOR_TYPES: tuple[AirGradientConfigSensorEntityDescription, ...]
|
28
|
+
CONFIG_LED_BAR_SENSOR_TYPES: tuple[AirGradientConfigSensorEntityDescription, ...]
|
29
|
+
CONFIG_DISPLAY_SENSOR_TYPES: tuple[AirGradientConfigSensorEntityDescription, ...]
|
23
30
|
|
24
|
-
|
25
|
-
|
31
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirGradientConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
32
|
+
|
33
|
+
class AirGradientMeasurementSensor(AirGradientEntity, SensorEntity):
|
34
|
+
entity_description: AirGradientMeasurementSensorEntityDescription
|
26
35
|
coordinator: AirGradientMeasurementCoordinator
|
27
36
|
_attr_unique_id: Incomplete
|
28
|
-
def __init__(self, coordinator: AirGradientMeasurementCoordinator, description:
|
37
|
+
def __init__(self, coordinator: AirGradientMeasurementCoordinator, description: AirGradientMeasurementSensorEntityDescription) -> None: ...
|
38
|
+
@property
|
39
|
+
def native_value(self) -> StateType: ...
|
40
|
+
|
41
|
+
class AirGradientConfigSensor(AirGradientEntity, SensorEntity):
|
42
|
+
entity_description: AirGradientConfigSensorEntityDescription
|
43
|
+
coordinator: AirGradientConfigCoordinator
|
44
|
+
_attr_unique_id: Incomplete
|
45
|
+
_attr_entity_registry_enabled_default: Incomplete
|
46
|
+
def __init__(self, coordinator: AirGradientConfigCoordinator, description: AirGradientConfigSensorEntityDescription) -> None: ...
|
29
47
|
@property
|
30
48
|
def native_value(self) -> StateType: ...
|
@@ -0,0 +1,33 @@
|
|
1
|
+
from . import AirGradientConfigEntry as AirGradientConfigEntry
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from .coordinator import AirGradientConfigCoordinator as AirGradientConfigCoordinator
|
4
|
+
from .entity import AirGradientEntity as AirGradientEntity
|
5
|
+
from _typeshed import Incomplete
|
6
|
+
from airgradient import AirGradientClient as AirGradientClient, Config as Config
|
7
|
+
from collections.abc import Awaitable, Callable as Callable
|
8
|
+
from dataclasses import dataclass
|
9
|
+
from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
|
10
|
+
from homeassistant.const import EntityCategory as EntityCategory
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
13
|
+
from typing import Any
|
14
|
+
|
15
|
+
@dataclass(frozen=True, kw_only=True)
|
16
|
+
class AirGradientSwitchEntityDescription(SwitchEntityDescription):
|
17
|
+
value_fn: Callable[[Config], bool]
|
18
|
+
set_value_fn: Callable[[AirGradientClient, bool], Awaitable[None]]
|
19
|
+
def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, value_fn, set_value_fn) -> None: ...
|
20
|
+
|
21
|
+
POST_DATA_TO_AIRGRADIENT: Incomplete
|
22
|
+
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirGradientConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
|
+
|
25
|
+
class AirGradientSwitch(AirGradientEntity, SwitchEntity):
|
26
|
+
entity_description: AirGradientSwitchEntityDescription
|
27
|
+
coordinator: AirGradientConfigCoordinator
|
28
|
+
_attr_unique_id: Incomplete
|
29
|
+
def __init__(self, coordinator: AirGradientConfigCoordinator, description: AirGradientSwitchEntityDescription) -> None: ...
|
30
|
+
@property
|
31
|
+
def is_on(self) -> bool: ...
|
32
|
+
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
33
|
+
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from .const import ATTR_API_AQI as ATTR_API_AQI, ATTR_API_AQI_DESCRIPTION as ATTR_API_AQI_DESCRIPTION, ATTR_API_AQI_LEVEL as ATTR_API_AQI_LEVEL, ATTR_API_AQI_PARAM as ATTR_API_AQI_PARAM, ATTR_API_CATEGORY as ATTR_API_CATEGORY, ATTR_API_CAT_DESCRIPTION as ATTR_API_CAT_DESCRIPTION, ATTR_API_CAT_LEVEL as ATTR_API_CAT_LEVEL, ATTR_API_PM25 as ATTR_API_PM25, ATTR_API_POLLUTANT as ATTR_API_POLLUTANT, ATTR_API_REPORT_DATE as ATTR_API_REPORT_DATE, ATTR_API_REPORT_HOUR as ATTR_API_REPORT_HOUR, ATTR_API_REPORT_TZ as ATTR_API_REPORT_TZ, ATTR_API_STATE as ATTR_API_STATE, ATTR_API_STATION as ATTR_API_STATION, ATTR_API_STATION_LATITUDE as ATTR_API_STATION_LATITUDE, ATTR_API_STATION_LONGITUDE as ATTR_API_STATION_LONGITUDE, DOMAIN as DOMAIN
|
1
|
+
from .const import ATTR_API_AQI as ATTR_API_AQI, ATTR_API_AQI_DESCRIPTION as ATTR_API_AQI_DESCRIPTION, ATTR_API_AQI_LEVEL as ATTR_API_AQI_LEVEL, ATTR_API_AQI_PARAM as ATTR_API_AQI_PARAM, ATTR_API_CATEGORY as ATTR_API_CATEGORY, ATTR_API_CAT_DESCRIPTION as ATTR_API_CAT_DESCRIPTION, ATTR_API_CAT_LEVEL as ATTR_API_CAT_LEVEL, ATTR_API_PM25 as ATTR_API_PM25, ATTR_API_POLLUTANT as ATTR_API_POLLUTANT, ATTR_API_REPORT_DATE as ATTR_API_REPORT_DATE, ATTR_API_REPORT_HOUR as ATTR_API_REPORT_HOUR, ATTR_API_REPORT_TZ as ATTR_API_REPORT_TZ, ATTR_API_REPORT_TZINFO as ATTR_API_REPORT_TZINFO, ATTR_API_STATE as ATTR_API_STATE, ATTR_API_STATION as ATTR_API_STATION, ATTR_API_STATION_LATITUDE as ATTR_API_STATION_LATITUDE, ATTR_API_STATION_LONGITUDE as ATTR_API_STATION_LONGITUDE, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from aiohttp import ClientSession as ClientSession
|
4
4
|
from datetime import timedelta
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from . import AirNowConfigEntry as AirNowConfigEntry, AirNowDataUpdateCoordinator as AirNowDataUpdateCoordinator
|
2
|
-
from .const import ATTR_API_AQI as ATTR_API_AQI, ATTR_API_AQI_DESCRIPTION as ATTR_API_AQI_DESCRIPTION, ATTR_API_AQI_LEVEL as ATTR_API_AQI_LEVEL, ATTR_API_O3 as ATTR_API_O3, ATTR_API_PM10 as ATTR_API_PM10, ATTR_API_PM25 as ATTR_API_PM25, ATTR_API_REPORT_DATE as ATTR_API_REPORT_DATE, ATTR_API_REPORT_HOUR as ATTR_API_REPORT_HOUR,
|
2
|
+
from .const import ATTR_API_AQI as ATTR_API_AQI, ATTR_API_AQI_DESCRIPTION as ATTR_API_AQI_DESCRIPTION, ATTR_API_AQI_LEVEL as ATTR_API_AQI_LEVEL, ATTR_API_O3 as ATTR_API_O3, ATTR_API_PM10 as ATTR_API_PM10, ATTR_API_PM25 as ATTR_API_PM25, ATTR_API_REPORT_DATE as ATTR_API_REPORT_DATE, ATTR_API_REPORT_HOUR as ATTR_API_REPORT_HOUR, ATTR_API_REPORT_TZINFO as ATTR_API_REPORT_TZINFO, ATTR_API_STATION as ATTR_API_STATION, ATTR_API_STATION_LATITUDE as ATTR_API_STATION_LATITUDE, ATTR_API_STATION_LONGITUDE as ATTR_API_STATION_LONGITUDE, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import Callable as Callable
|
5
5
|
from dataclasses import dataclass
|
@@ -10,7 +10,6 @@ from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntry
|
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
11
|
from homeassistant.helpers.typing import StateType as StateType
|
12
12
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
13
|
-
from homeassistant.util.dt import get_time_zone as get_time_zone
|
14
13
|
from typing import Any
|
15
14
|
|
16
15
|
ATTRIBUTION: str
|
@@ -1,4 +1,3 @@
|
|
1
|
-
from .const import DOMAIN as DOMAIN
|
2
1
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
2
|
from _typeshed import Incomplete
|
4
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -8,7 +7,8 @@ from homeassistant.helpers import aiohttp_client as aiohttp_client
|
|
8
7
|
|
9
8
|
PLATFORMS: list[Platform]
|
10
9
|
_LOGGER: Incomplete
|
10
|
+
AirzoneConfigEntry = ConfigEntry[AirzoneUpdateCoordinator]
|
11
11
|
|
12
|
-
async def _async_migrate_unique_ids(hass: HomeAssistant, entry:
|
13
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
14
|
-
async def async_unload_entry(hass: HomeAssistant, entry:
|
12
|
+
async def _async_migrate_unique_ids(hass: HomeAssistant, entry: AirzoneConfigEntry, coordinator: AirzoneUpdateCoordinator) -> None: ...
|
13
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirzoneConfigEntry) -> bool: ...
|
14
|
+
async def async_unload_entry(hass: HomeAssistant, entry: AirzoneConfigEntry) -> bool: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from .
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
2
2
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
3
|
from .entity import AirzoneEntity as AirzoneEntity, AirzoneSystemEntity as AirzoneSystemEntity, AirzoneZoneEntity as AirzoneZoneEntity
|
4
4
|
from _typeshed import Incomplete
|
@@ -18,7 +18,7 @@ class AirzoneBinarySensorEntityDescription(BinarySensorEntityDescription):
|
|
18
18
|
SYSTEM_BINARY_SENSOR_TYPES: Final[tuple[AirzoneBinarySensorEntityDescription, ...]]
|
19
19
|
ZONE_BINARY_SENSOR_TYPES: Final[tuple[AirzoneBinarySensorEntityDescription, ...]]
|
20
20
|
|
21
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirzoneConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
22
|
|
23
23
|
class AirzoneBinarySensor(AirzoneEntity, BinarySensorEntity):
|
24
24
|
entity_description: AirzoneBinarySensorEntityDescription
|
@@ -1,4 +1,5 @@
|
|
1
|
-
from .
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
2
|
+
from .const import API_TEMPERATURE_STEP as API_TEMPERATURE_STEP, TEMP_UNIT_LIB_TO_HASS as TEMP_UNIT_LIB_TO_HASS
|
2
3
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
4
|
from .entity import AirzoneZoneEntity as AirzoneZoneEntity
|
4
5
|
from _typeshed import Incomplete
|
@@ -17,7 +18,7 @@ HVAC_ACTION_LIB_TO_HASS: Final[dict[OperationAction, HVACAction]]
|
|
17
18
|
HVAC_MODE_LIB_TO_HASS: Final[dict[OperationMode, HVACMode]]
|
18
19
|
HVAC_MODE_HASS_TO_LIB: Final[dict[HVACMode, OperationMode]]
|
19
20
|
|
20
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
21
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirzoneConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
21
22
|
|
22
23
|
class AirzoneClimate(AirzoneZoneEntity, ClimateEntity):
|
23
24
|
_attr_name: Incomplete
|
@@ -1,8 +1,6 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
3
2
|
from _typeshed import Incomplete
|
4
3
|
from homeassistant.components.diagnostics.util import async_redact_data as async_redact_data
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
4
|
from homeassistant.const import CONF_UNIQUE_ID as CONF_UNIQUE_ID
|
7
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
6
|
from typing import Any
|
@@ -11,4 +9,4 @@ TO_REDACT_API: Incomplete
|
|
11
9
|
TO_REDACT_CONFIG: Incomplete
|
12
10
|
TO_REDACT_COORD: Incomplete
|
13
11
|
|
14
|
-
async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry:
|
12
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: AirzoneConfigEntry) -> dict[str, Any]: ...
|
@@ -1,3 +1,4 @@
|
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
1
2
|
from .const import DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
|
2
3
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
4
|
from _typeshed import Incomplete
|
@@ -17,7 +18,7 @@ class AirzoneSystemEntity(AirzoneEntity):
|
|
17
18
|
system_id: Incomplete
|
18
19
|
_attr_device_info: Incomplete
|
19
20
|
_attr_unique_id: Incomplete
|
20
|
-
def __init__(self, coordinator: AirzoneUpdateCoordinator, entry:
|
21
|
+
def __init__(self, coordinator: AirzoneUpdateCoordinator, entry: AirzoneConfigEntry, system_data: dict[str, Any]) -> None: ...
|
21
22
|
@property
|
22
23
|
def available(self) -> bool: ...
|
23
24
|
def get_airzone_value(self, key: str) -> Any: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from .
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
2
2
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
3
|
from .entity import AirzoneEntity as AirzoneEntity, AirzoneZoneEntity as AirzoneZoneEntity
|
4
4
|
from _typeshed import Incomplete
|
@@ -20,7 +20,7 @@ GRILLE_ANGLE_DICT: Final[dict[str, int]]
|
|
20
20
|
SLEEP_DICT: Final[dict[str, int]]
|
21
21
|
ZONE_SELECT_TYPES: Final[tuple[AirzoneSelectDescription, ...]]
|
22
22
|
|
23
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirzoneConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
24
|
|
25
25
|
class AirzoneBaseSelect(AirzoneEntity, SelectEntity):
|
26
26
|
entity_description: AirzoneSelectDescription
|
@@ -1,4 +1,5 @@
|
|
1
|
-
from .
|
1
|
+
from . import AirzoneConfigEntry as AirzoneConfigEntry
|
2
|
+
from .const import TEMP_UNIT_LIB_TO_HASS as TEMP_UNIT_LIB_TO_HASS
|
2
3
|
from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
|
3
4
|
from .entity import AirzoneEntity as AirzoneEntity, AirzoneHotWaterEntity as AirzoneHotWaterEntity, AirzoneWebServerEntity as AirzoneWebServerEntity, AirzoneZoneEntity as AirzoneZoneEntity
|
4
5
|
from _typeshed import Incomplete
|
@@ -13,7 +14,7 @@ HOT_WATER_SENSOR_TYPES: Final[tuple[SensorEntityDescription, ...]]
|
|
13
14
|
WEBSERVER_SENSOR_TYPES: Final[tuple[SensorEntityDescription, ...]]
|
14
15
|
ZONE_SENSOR_TYPES: Final[tuple[SensorEntityDescription, ...]]
|
15
16
|
|
16
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
17
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AirzoneConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
17
18
|
|
18
19
|
class AirzoneSensor(AirzoneEntity, SensorEntity):
|
19
20
|
def _handle_coordinator_update(self) -> None: ...
|