homeassistant-stubs 2024.12.4__py3-none-any.whl → 2025.1.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 +1 -1
- homeassistant-stubs/auth/mfa_modules/__init__.pyi +6 -4
- homeassistant-stubs/auth/mfa_modules/notify.pyi +2 -3
- homeassistant-stubs/auth/mfa_modules/totp.pyi +2 -3
- homeassistant-stubs/auth/providers/__init__.pyi +6 -4
- homeassistant-stubs/auth/providers/command_line.pyi +2 -2
- homeassistant-stubs/auth/providers/homeassistant.pyi +2 -2
- homeassistant-stubs/auth/providers/insecure_example.pyi +2 -2
- homeassistant-stubs/auth/providers/trusted_networks.pyi +2 -2
- homeassistant-stubs/backup_restore.pyi +11 -4
- homeassistant-stubs/bootstrap.pyi +2 -1
- homeassistant-stubs/components/abode/light.pyi +4 -3
- homeassistant-stubs/components/acaia/__init__.pyi +9 -0
- homeassistant-stubs/components/acaia/binary_sensor.pyi +24 -0
- homeassistant-stubs/components/acaia/button.pyi +24 -0
- homeassistant-stubs/components/acaia/config_flow.pyi +18 -0
- homeassistant-stubs/components/acaia/const.pyi +2 -0
- homeassistant-stubs/components/acaia/coordinator.pyi +19 -0
- homeassistant-stubs/components/{stookalert → acaia}/diagnostics.pyi +2 -3
- homeassistant-stubs/components/acaia/entity.pyi +17 -0
- homeassistant-stubs/components/acaia/sensor.pyi +44 -0
- homeassistant-stubs/components/adax/climate.pyi +0 -1
- homeassistant-stubs/components/airtouch5/climate.pyi +0 -1
- homeassistant-stubs/components/airzone/climate.pyi +0 -1
- homeassistant-stubs/components/airzone_cloud/climate.pyi +3 -2
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -6
- homeassistant-stubs/components/alarm_control_panel/const.pyi +0 -14
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +3 -2
- homeassistant-stubs/components/apple_tv/config_flow.pyi +1 -1
- homeassistant-stubs/components/apsystems/number.pyi +1 -0
- homeassistant-stubs/components/autarco/__init__.pyi +1 -0
- homeassistant-stubs/components/autarco/config_flow.pyi +4 -0
- homeassistant-stubs/components/autarco/coordinator.pyi +1 -0
- homeassistant-stubs/components/automation/__init__.pyi +1 -10
- homeassistant-stubs/components/backup/__init__.pyi +4 -11
- homeassistant-stubs/components/backup/agent.pyi +35 -0
- homeassistant-stubs/components/backup/backup.pyi +29 -0
- homeassistant-stubs/components/backup/config.pyi +117 -0
- homeassistant-stubs/components/backup/const.pyi +2 -0
- homeassistant-stubs/components/backup/http.pyi +3 -2
- homeassistant-stubs/components/backup/manager.pyi +192 -51
- homeassistant-stubs/components/backup/models.pyi +38 -0
- homeassistant-stubs/components/backup/store.pyi +24 -0
- homeassistant-stubs/components/backup/util.pyi +12 -0
- homeassistant-stubs/components/backup/websocket.pyi +9 -1
- homeassistant-stubs/components/baf/climate.pyi +0 -1
- homeassistant-stubs/components/baf/fan.pyi +0 -1
- homeassistant-stubs/components/baf/light.pyi +4 -5
- homeassistant-stubs/components/bang_olufsen/const.pyi +3 -0
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +2 -2
- homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -33
- homeassistant-stubs/components/bluesound/__init__.pyi +0 -1
- homeassistant-stubs/components/bluesound/media_player.pyi +13 -8
- homeassistant-stubs/components/bluesound/utils.pyi +2 -0
- homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +4 -12
- homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/button.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +8 -4
- homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +4 -3
- homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +2 -2
- homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/lock.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/notify.pyi +2 -1
- homeassistant-stubs/components/bmw_connected_drive/number.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/switch.pyi +1 -0
- homeassistant-stubs/components/bryant_evolution/climate.pyi +0 -1
- homeassistant-stubs/components/cambridge_audio/config_flow.pyi +4 -1
- homeassistant-stubs/components/cambridge_audio/media_browser.pyi +8 -0
- homeassistant-stubs/components/cambridge_audio/media_player.pyi +4 -3
- homeassistant-stubs/components/cambridge_audio/select.pyi +2 -2
- homeassistant-stubs/components/cambridge_audio/switch.pyi +2 -2
- homeassistant-stubs/components/camera/__init__.pyi +1 -5
- homeassistant-stubs/components/camera/const.pyi +0 -8
- homeassistant-stubs/components/cert_expiry/config_flow.pyi +0 -1
- homeassistant-stubs/components/cert_expiry/sensor.pyi +2 -10
- homeassistant-stubs/components/climate/__init__.pyi +1 -12
- homeassistant-stubs/components/climate/const.pyi +0 -25
- homeassistant-stubs/components/cloud/__init__.pyi +1 -1
- homeassistant-stubs/components/cloud/backup.pyi +37 -0
- homeassistant-stubs/components/cloud/const.pyi +2 -0
- homeassistant-stubs/components/cloud/http_api.pyi +7 -2
- homeassistant-stubs/components/cookidoo/__init__.pyi +9 -0
- homeassistant-stubs/components/cookidoo/config_flow.pyi +24 -0
- homeassistant-stubs/components/cookidoo/const.pyi +1 -0
- homeassistant-stubs/components/cookidoo/coordinator.pyi +25 -0
- homeassistant-stubs/components/cookidoo/entity.pyi +10 -0
- homeassistant-stubs/components/cookidoo/todo.pyi +32 -0
- homeassistant-stubs/components/cover/__init__.pyi +0 -18
- homeassistant-stubs/components/crownstone/config_flow.pyi +1 -1
- homeassistant-stubs/components/deconz/climate.pyi +0 -1
- homeassistant-stubs/components/deconz/fan.pyi +0 -1
- homeassistant-stubs/components/deconz/light.pyi +7 -5
- homeassistant-stubs/components/demo/climate.pyi +0 -1
- homeassistant-stubs/components/demo/fan.pyi +0 -1
- homeassistant-stubs/components/demo/light.pyi +4 -2
- homeassistant-stubs/components/demo/vacuum.pyi +2 -4
- homeassistant-stubs/components/device_tracker/__init__.pyi +1 -7
- homeassistant-stubs/components/device_tracker/const.pyi +0 -8
- homeassistant-stubs/components/devolo_home_control/__init__.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +3 -2
- homeassistant-stubs/components/devolo_home_control/climate.pyi +0 -1
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +1 -2
- homeassistant-stubs/components/devolo_home_control/const.pyi +0 -2
- homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -3
- homeassistant-stubs/components/discovergy/__init__.pyi +2 -2
- homeassistant-stubs/components/duotecno/climate.pyi +0 -1
- homeassistant-stubs/components/easyenergy/__init__.pyi +4 -5
- homeassistant-stubs/components/easyenergy/coordinator.pyi +3 -2
- homeassistant-stubs/components/easyenergy/diagnostics.pyi +2 -5
- homeassistant-stubs/components/easyenergy/sensor.pyi +2 -3
- homeassistant-stubs/components/easyenergy/services.pyi +4 -4
- homeassistant-stubs/components/ecovacs/button.pyi +13 -2
- homeassistant-stubs/components/ecovacs/const.pyi +1 -0
- homeassistant-stubs/components/ecovacs/number.pyi +1 -1
- homeassistant-stubs/components/ecovacs/select.pyi +2 -2
- homeassistant-stubs/components/ecovacs/sensor.pyi +1 -1
- homeassistant-stubs/components/ecovacs/util.pyi +1 -0
- homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -3
- homeassistant-stubs/components/eheimdigital/__init__.pyi +14 -0
- homeassistant-stubs/components/eheimdigital/config_flow.pyi +18 -0
- homeassistant-stubs/components/eheimdigital/const.pyi +8 -0
- homeassistant-stubs/components/eheimdigital/coordinator.pyi +25 -0
- homeassistant-stubs/components/eheimdigital/entity.pyi +20 -0
- homeassistant-stubs/components/eheimdigital/light.pyi +36 -0
- homeassistant-stubs/components/electrasmart/climate.pyi +0 -1
- homeassistant-stubs/components/elevenlabs/__init__.pyi +6 -7
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +4 -3
- homeassistant-stubs/components/elevenlabs/tts.pyi +6 -3
- homeassistant-stubs/components/elgato/__init__.pyi +3 -5
- homeassistant-stubs/components/elgato/button.pyi +4 -3
- homeassistant-stubs/components/elgato/config_flow.pyi +1 -1
- homeassistant-stubs/components/elgato/coordinator.pyi +4 -3
- homeassistant-stubs/components/elgato/diagnostics.pyi +2 -2
- homeassistant-stubs/components/elgato/light.pyi +6 -7
- homeassistant-stubs/components/elgato/sensor.pyi +4 -3
- homeassistant-stubs/components/elgato/switch.pyi +4 -3
- homeassistant-stubs/components/elkm1/climate.pyi +0 -1
- homeassistant-stubs/components/emulated_hue/hue_api.pyi +1 -1
- homeassistant-stubs/components/energyzero/__init__.pyi +4 -5
- homeassistant-stubs/components/energyzero/coordinator.pyi +2 -1
- homeassistant-stubs/components/energyzero/diagnostics.pyi +2 -5
- homeassistant-stubs/components/energyzero/sensor.pyi +2 -3
- homeassistant-stubs/components/energyzero/services.pyi +4 -4
- homeassistant-stubs/components/enigma2/coordinator.pyi +1 -0
- homeassistant-stubs/components/enigma2/media_player.pyi +0 -1
- homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -1
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -2
- homeassistant-stubs/components/enphase_envoy/number.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/select.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +35 -1
- homeassistant-stubs/components/enphase_envoy/switch.pyi +2 -0
- homeassistant-stubs/components/esphome/climate.pyi +0 -1
- homeassistant-stubs/components/esphome/fan.pyi +0 -1
- homeassistant-stubs/components/esphome/light.pyi +0 -2
- homeassistant-stubs/components/evohome/climate.pyi +0 -1
- homeassistant-stubs/components/fan/__init__.pyi +0 -15
- homeassistant-stubs/components/feedreader/__init__.pyi +3 -8
- homeassistant-stubs/components/feedreader/config_flow.pyi +1 -6
- homeassistant-stubs/components/feedreader/coordinator.pyi +1 -0
- homeassistant-stubs/components/flexit_bacnet/climate.pyi +0 -1
- homeassistant-stubs/components/flexit_bacnet/number.pyi +3 -0
- homeassistant-stubs/components/flux_led/light.pyi +4 -5
- homeassistant-stubs/components/fritzbox/climate.pyi +0 -1
- homeassistant-stubs/components/fritzbox/coordinator.pyi +2 -1
- homeassistant-stubs/components/fritzbox/light.pyi +3 -4
- homeassistant-stubs/components/fritzbox_callmonitor/base.pyi +13 -2
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
- homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +4 -4
- homeassistant-stubs/components/fronius/__init__.pyi +1 -1
- homeassistant-stubs/components/fronius/const.pyi +3 -3
- homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
- homeassistant-stubs/components/fronius/sensor.pyi +2 -1
- homeassistant-stubs/components/fujitsu_fglair/climate.pyi +0 -1
- homeassistant-stubs/components/fyta/__init__.pyi +2 -2
- homeassistant-stubs/components/fyta/entity.pyi +2 -2
- homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -4
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -1
- homeassistant-stubs/components/generic_thermostat/const.pyi +2 -0
- homeassistant-stubs/components/google_cloud/const.pyi +3 -0
- homeassistant-stubs/components/google_cloud/helpers.pyi +1 -1
- homeassistant-stubs/components/google_cloud/tts.pyi +1 -1
- homeassistant-stubs/components/group/fan.pyi +0 -1
- homeassistant-stubs/components/group/registry.pyi +1 -1
- homeassistant-stubs/components/history/__init__.pyi +1 -1
- homeassistant-stubs/components/history/helpers.pyi +1 -2
- homeassistant-stubs/components/history/websocket_api.pyi +1 -1
- homeassistant-stubs/components/holiday/__init__.pyi +2 -1
- homeassistant-stubs/components/holiday/calendar.pyi +4 -3
- homeassistant-stubs/components/holiday/config_flow.pyi +13 -3
- homeassistant-stubs/components/holiday/const.pyi +1 -0
- homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +5 -3
- homeassistant-stubs/components/homekit/doorbell.pyi +23 -0
- homeassistant-stubs/components/homekit/type_cameras.pyi +4 -12
- homeassistant-stubs/components/homekit/type_locks.pyi +3 -2
- homeassistant-stubs/components/homekit/type_switches.pyi +1 -1
- homeassistant-stubs/components/homekit/util.pyi +1 -0
- homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
- homeassistant-stubs/components/humidifier/__init__.pyi +1 -8
- homeassistant-stubs/components/humidifier/const.pyi +0 -9
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -2
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/calendar.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +4 -4
- homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +1 -2
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +4 -3
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +1 -0
- homeassistant-stubs/components/idasen_desk/__init__.pyi +5 -16
- homeassistant-stubs/components/idasen_desk/button.pyi +7 -12
- homeassistant-stubs/components/idasen_desk/coordinator.pyi +2 -3
- homeassistant-stubs/components/idasen_desk/cover.pyi +8 -17
- homeassistant-stubs/components/idasen_desk/entity.pyi +12 -0
- homeassistant-stubs/components/idasen_desk/sensor.pyi +7 -20
- homeassistant-stubs/components/image_upload/media_source.pyi +14 -0
- homeassistant-stubs/components/imap/config_flow.pyi +3 -2
- homeassistant-stubs/components/imap/coordinator.pyi +5 -5
- homeassistant-stubs/components/imap/sensor.pyi +1 -0
- homeassistant-stubs/components/intent/__init__.pyi +2 -1
- homeassistant-stubs/components/iotty/switch.pyi +8 -6
- homeassistant-stubs/components/iron_os/__init__.pyi +21 -0
- homeassistant-stubs/components/iron_os/binary_sensor.pyi +19 -0
- homeassistant-stubs/components/iron_os/config_flow.pyi +15 -0
- homeassistant-stubs/components/iron_os/const.pyi +7 -0
- homeassistant-stubs/components/iron_os/coordinator.pyi +43 -0
- homeassistant-stubs/components/iron_os/entity.pyi +13 -0
- homeassistant-stubs/components/iron_os/number.pyi +62 -0
- homeassistant-stubs/components/iron_os/select.pyi +49 -0
- homeassistant-stubs/components/iron_os/sensor.pyi +46 -0
- homeassistant-stubs/components/iron_os/update.pyi +29 -0
- homeassistant-stubs/components/isy994/climate.pyi +0 -1
- homeassistant-stubs/components/isy994/fan.pyi +0 -1
- homeassistant-stubs/components/knx/climate.pyi +0 -1
- homeassistant-stubs/components/knx/config_flow.pyi +4 -0
- homeassistant-stubs/components/knx/fan.pyi +0 -1
- homeassistant-stubs/components/knx/services.pyi +5 -5
- homeassistant-stubs/components/lamarzocco/__init__.pyi +4 -5
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +9 -3
- homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -0
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +6 -5
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +39 -16
- homeassistant-stubs/components/lamarzocco/entity.pyi +7 -3
- homeassistant-stubs/components/lamarzocco/number.pyi +8 -4
- homeassistant-stubs/components/lamarzocco/select.pyi +8 -4
- homeassistant-stubs/components/lamarzocco/sensor.pyi +10 -3
- homeassistant-stubs/components/lamarzocco/switch.pyi +1 -1
- homeassistant-stubs/components/lametric/notify.pyi +2 -1
- homeassistant-stubs/components/lametric/number.pyi +2 -1
- homeassistant-stubs/components/lametric/services.pyi +2 -1
- homeassistant-stubs/components/lametric/switch.pyi +2 -1
- homeassistant-stubs/components/lcn/__init__.pyi +3 -1
- homeassistant-stubs/components/lcn/climate.pyi +0 -1
- homeassistant-stubs/components/lcn/const.pyi +1 -0
- homeassistant-stubs/components/lcn/helpers.pyi +1 -1
- homeassistant-stubs/components/lcn/services.pyi +7 -4
- homeassistant-stubs/components/lifx/const.pyi +1 -0
- homeassistant-stubs/components/lifx/manager.pyi +2 -2
- homeassistant-stubs/components/lifx/util.pyi +2 -2
- homeassistant-stubs/components/light/__init__.pyi +31 -55
- homeassistant-stubs/components/light/const.pyi +33 -0
- homeassistant-stubs/components/light/device_action.pyi +2 -1
- homeassistant-stubs/components/light/device_condition.pyi +1 -1
- homeassistant-stubs/components/light/device_trigger.pyi +1 -1
- homeassistant-stubs/components/light/intent.pyi +2 -1
- homeassistant-stubs/components/light/reproduce_state.pyi +2 -1
- homeassistant-stubs/components/light/significant_change.pyi +1 -1
- homeassistant-stubs/components/litterrobot/vacuum.pyi +2 -2
- homeassistant-stubs/components/lock/__init__.pyi +1 -2
- homeassistant-stubs/components/lookin/climate.pyi +0 -1
- homeassistant-stubs/components/mastodon/__init__.pyi +2 -2
- homeassistant-stubs/components/mastodon/config_flow.pyi +1 -2
- homeassistant-stubs/components/mastodon/sensor.pyi +2 -0
- homeassistant-stubs/components/matter/climate.pyi +0 -1
- homeassistant-stubs/components/matter/fan.pyi +0 -1
- homeassistant-stubs/components/matter/light.pyi +5 -5
- homeassistant-stubs/components/matter/vacuum.pyi +3 -3
- homeassistant-stubs/components/mealie/__init__.pyi +18 -0
- homeassistant-stubs/components/mealie/calendar.pyi +21 -0
- homeassistant-stubs/components/mealie/config_flow.pyi +20 -0
- homeassistant-stubs/components/mealie/const.pyi +14 -0
- homeassistant-stubs/components/mealie/coordinator.pyi +53 -0
- homeassistant-stubs/components/mealie/diagnostics.pyi +5 -0
- homeassistant-stubs/components/mealie/entity.pyi +11 -0
- homeassistant-stubs/components/mealie/sensor.pyi +29 -0
- homeassistant-stubs/components/mealie/services.pyi +21 -0
- homeassistant-stubs/components/mealie/todo.pyi +36 -0
- homeassistant-stubs/components/mealie/utils.pyi +3 -0
- homeassistant-stubs/components/media_player/__init__.pyi +0 -2
- homeassistant-stubs/components/modbus/__init__.pyi +5 -3
- homeassistant-stubs/components/modbus/climate.pyi +0 -1
- homeassistant-stubs/components/modbus/fan.pyi +0 -1
- homeassistant-stubs/components/modbus/modbus.pyi +3 -4
- homeassistant-stubs/components/mqtt/client.pyi +1 -1
- homeassistant-stubs/components/mqtt/climate.pyi +0 -1
- homeassistant-stubs/components/mqtt/config_flow.pyi +2 -1
- homeassistant-stubs/components/mqtt/fan.pyi +0 -1
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +5 -5
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +4 -4
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +4 -4
- homeassistant-stubs/components/mqtt/switch.pyi +1 -1
- homeassistant-stubs/components/mqtt/vacuum.pyi +10 -4
- homeassistant-stubs/components/music_assistant/__init__.pyi +4 -0
- homeassistant-stubs/components/music_assistant/actions.pyi +18 -0
- homeassistant-stubs/components/music_assistant/const.pyi +48 -0
- homeassistant-stubs/components/music_assistant/media_player.pyi +9 -16
- homeassistant-stubs/components/music_assistant/schemas.pyi +20 -0
- homeassistant-stubs/components/mysensors/climate.pyi +0 -1
- homeassistant-stubs/components/myuplink/__init__.pyi +5 -2
- homeassistant-stubs/components/myuplink/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/myuplink/config_flow.pyi +4 -1
- homeassistant-stubs/components/myuplink/number.pyi +2 -2
- homeassistant-stubs/components/myuplink/select.pyi +3 -2
- homeassistant-stubs/components/myuplink/switch.pyi +1 -1
- homeassistant-stubs/components/nanoleaf/light.pyi +4 -4
- homeassistant-stubs/components/neato/vacuum.pyi +3 -3
- homeassistant-stubs/components/nest/__init__.pyi +6 -6
- homeassistant-stubs/components/nest/camera.pyi +2 -4
- homeassistant-stubs/components/nest/climate.pyi +2 -5
- homeassistant-stubs/components/nest/const.pyi +0 -2
- homeassistant-stubs/components/nest/device_info.pyi +2 -1
- homeassistant-stubs/components/nest/diagnostics.pyi +4 -8
- homeassistant-stubs/components/nest/event.pyi +2 -4
- homeassistant-stubs/components/nest/sensor.pyi +2 -4
- homeassistant-stubs/components/nest/types.pyi +11 -0
- homeassistant-stubs/components/netatmo/climate.pyi +0 -1
- homeassistant-stubs/components/netatmo/fan.pyi +0 -1
- homeassistant-stubs/components/nordpool/__init__.pyi +10 -3
- homeassistant-stubs/components/nordpool/coordinator.pyi +5 -2
- homeassistant-stubs/components/nordpool/entity.pyi +1 -1
- homeassistant-stubs/components/nordpool/sensor.pyi +10 -6
- homeassistant-stubs/components/nordpool/services.pyi +19 -0
- homeassistant-stubs/components/number/const.pyi +0 -8
- homeassistant-stubs/components/onkyo/config_flow.pyi +2 -0
- homeassistant-stubs/components/onkyo/media_player.pyi +10 -7
- homeassistant-stubs/components/overkiz/__init__.pyi +4 -3
- homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +2 -4
- homeassistant-stubs/components/overkiz/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/overkiz/button.pyi +4 -5
- homeassistant-stubs/components/overkiz/climate/__init__.pyi +3 -4
- homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_electrical_towel_dryer.pyi +1 -2
- homeassistant-stubs/components/overkiz/climate/atlantic_heat_recovery_ventilation.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_heat_pump_main_component.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_heating_zone.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/hitachi_air_to_air_heat_pump_ovp.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/hitachi_air_to_water_heating_zone.pyi +34 -0
- homeassistant-stubs/components/overkiz/climate/somfy_heating_temperature_interface.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/somfy_thermostat.pyi +0 -1
- homeassistant-stubs/components/overkiz/climate/valve_heating_temperature_interface.pyi +0 -1
- homeassistant-stubs/components/overkiz/cover/__init__.pyi +2 -4
- homeassistant-stubs/components/overkiz/diagnostics.pyi +4 -5
- homeassistant-stubs/components/overkiz/light.pyi +2 -4
- homeassistant-stubs/components/overkiz/lock.pyi +2 -4
- homeassistant-stubs/components/overkiz/number.pyi +3 -4
- homeassistant-stubs/components/overkiz/scene.pyi +2 -4
- homeassistant-stubs/components/overkiz/select.pyi +3 -4
- homeassistant-stubs/components/overkiz/sensor.pyi +2 -3
- homeassistant-stubs/components/overkiz/siren.pyi +2 -4
- homeassistant-stubs/components/overkiz/switch.pyi +2 -4
- homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +2 -4
- homeassistant-stubs/components/peblar/__init__.pyi +11 -0
- homeassistant-stubs/components/peblar/binary_sensor.pyi +25 -0
- homeassistant-stubs/components/peblar/button.pyi +27 -0
- homeassistant-stubs/components/peblar/config_flow.pyi +18 -0
- homeassistant-stubs/components/peblar/const.pyi +7 -0
- homeassistant-stubs/components/peblar/coordinator.pyi +49 -0
- homeassistant-stubs/components/peblar/diagnostics.pyi +5 -0
- homeassistant-stubs/components/peblar/entity.pyi +15 -0
- homeassistant-stubs/components/peblar/helpers.pyi +7 -0
- homeassistant-stubs/components/peblar/number.pyi +33 -0
- homeassistant-stubs/components/peblar/select.pyi +30 -0
- homeassistant-stubs/components/peblar/sensor.pyi +29 -0
- homeassistant-stubs/components/peblar/switch.pyi +32 -0
- homeassistant-stubs/components/peblar/update.pyi +27 -0
- homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/plugwise/button.pyi +2 -0
- homeassistant-stubs/components/plugwise/climate.pyi +3 -4
- homeassistant-stubs/components/plugwise/config_flow.pyi +7 -1
- homeassistant-stubs/components/plugwise/entity.pyi +0 -1
- homeassistant-stubs/components/plugwise/number.pyi +2 -0
- homeassistant-stubs/components/plugwise/select.pyi +2 -0
- homeassistant-stubs/components/plugwise/sensor.pyi +2 -0
- homeassistant-stubs/components/plugwise/switch.pyi +2 -0
- homeassistant-stubs/components/plugwise/util.pyi +1 -0
- homeassistant-stubs/components/powerfox/__init__.pyi +12 -0
- homeassistant-stubs/components/powerfox/config_flow.pyi +16 -0
- homeassistant-stubs/components/{stookalert → powerfox}/const.pyi +1 -2
- homeassistant-stubs/components/powerfox/coordinator.pyi +14 -0
- homeassistant-stubs/components/powerfox/diagnostics.pyi +5 -0
- homeassistant-stubs/components/powerfox/entity.pyi +11 -0
- homeassistant-stubs/components/powerfox/sensor.pyi +28 -0
- homeassistant-stubs/components/powerwall/sensor.pyi +3 -5
- homeassistant-stubs/components/prometheus/__init__.pyi +11 -3
- homeassistant-stubs/components/rabbitair/fan.pyi +0 -1
- homeassistant-stubs/components/recorder/__init__.pyi +1 -1
- homeassistant-stubs/components/recorder/db_schema.pyi +19 -4
- homeassistant-stubs/components/recorder/history/legacy.pyi +4 -4
- homeassistant-stubs/components/recorder/history/modern.pyi +5 -5
- homeassistant-stubs/components/recorder/migration.pyi +32 -19
- homeassistant-stubs/components/recorder/models/state.pyi +3 -0
- homeassistant-stubs/components/recorder/queries.pyi +3 -4
- homeassistant-stubs/components/recorder/statistics.pyi +2 -2
- homeassistant-stubs/components/recorder/table_managers/event_types.pyi +0 -1
- homeassistant-stubs/components/recorder/table_managers/recorder_runs.pyi +1 -12
- homeassistant-stubs/components/recorder/table_managers/states.pyi +7 -0
- homeassistant-stubs/components/remote/__init__.pyi +0 -10
- homeassistant-stubs/components/renault/binary_sensor.pyi +2 -0
- homeassistant-stubs/components/renault/button.pyi +2 -0
- homeassistant-stubs/components/renault/coordinator.pyi +2 -1
- homeassistant-stubs/components/renault/device_tracker.pyi +2 -0
- homeassistant-stubs/components/renault/select.pyi +2 -0
- homeassistant-stubs/components/renault/sensor.pyi +2 -0
- homeassistant-stubs/components/reolink/__init__.pyi +1 -0
- homeassistant-stubs/components/reolink/button.pyi +1 -2
- homeassistant-stubs/components/reolink/camera.pyi +1 -2
- homeassistant-stubs/components/reolink/light.pyi +1 -2
- homeassistant-stubs/components/reolink/media_source.pyi +2 -3
- homeassistant-stubs/components/reolink/number.pyi +1 -2
- homeassistant-stubs/components/reolink/select.pyi +1 -2
- homeassistant-stubs/components/reolink/services.pyi +2 -2
- homeassistant-stubs/components/reolink/siren.pyi +1 -2
- homeassistant-stubs/components/reolink/switch.pyi +1 -2
- homeassistant-stubs/components/reolink/update.pyi +1 -0
- homeassistant-stubs/components/reolink/util.pyi +9 -0
- homeassistant-stubs/components/reolink/views.pyi +21 -0
- homeassistant-stubs/components/roborock/vacuum.pyi +2 -2
- homeassistant-stubs/components/roku/__init__.pyi +5 -4
- homeassistant-stubs/components/roku/binary_sensor.pyi +4 -3
- homeassistant-stubs/components/roku/config_flow.pyi +5 -3
- homeassistant-stubs/components/roku/diagnostics.pyi +2 -4
- homeassistant-stubs/components/roku/media_player.pyi +4 -3
- homeassistant-stubs/components/roku/remote.pyi +4 -4
- homeassistant-stubs/components/roku/select.pyi +4 -4
- homeassistant-stubs/components/roku/sensor.pyi +4 -4
- homeassistant-stubs/components/romy/vacuum.pyi +2 -2
- homeassistant-stubs/components/russound_rio/__init__.pyi +14 -0
- homeassistant-stubs/components/russound_rio/config_flow.pyi +14 -0
- homeassistant-stubs/components/russound_rio/const.pyi +6 -0
- homeassistant-stubs/components/russound_rio/diagnostics.pyi +5 -0
- homeassistant-stubs/components/russound_rio/entity.pyi +25 -0
- homeassistant-stubs/components/russound_rio/media_player.pyi +56 -0
- homeassistant-stubs/components/schlage/__init__.pyi +11 -0
- homeassistant-stubs/components/schlage/binary_sensor.pyi +26 -0
- homeassistant-stubs/components/schlage/config_flow.pyi +19 -0
- homeassistant-stubs/components/schlage/const.pyi +6 -0
- homeassistant-stubs/components/schlage/coordinator.pyi +31 -0
- homeassistant-stubs/components/schlage/diagnostics.pyi +5 -0
- homeassistant-stubs/components/schlage/entity.pyi +19 -0
- homeassistant-stubs/components/schlage/lock.pyi +21 -0
- homeassistant-stubs/components/schlage/select.pyi +20 -0
- homeassistant-stubs/components/schlage/sensor.pyi +19 -0
- homeassistant-stubs/components/schlage/switch.pyi +32 -0
- homeassistant-stubs/components/sensibo/climate.pyi +2 -3
- homeassistant-stubs/components/sensibo/coordinator.pyi +1 -1
- homeassistant-stubs/components/sensor/const.pyi +0 -7
- homeassistant-stubs/components/senz/climate.pyi +0 -1
- homeassistant-stubs/components/shelly/climate.pyi +0 -2
- homeassistant-stubs/components/siren/__init__.pyi +1 -6
- homeassistant-stubs/components/siren/const.pyi +0 -11
- homeassistant-stubs/components/snooz/fan.pyi +0 -1
- homeassistant-stubs/components/solarlog/config_flow.pyi +2 -5
- homeassistant-stubs/components/solarlog/const.pyi +0 -1
- homeassistant-stubs/components/solarlog/coordinator.pyi +0 -1
- homeassistant-stubs/components/sql/sensor.pyi +2 -0
- homeassistant-stubs/components/starlink/coordinator.pyi +4 -2
- homeassistant-stubs/components/starlink/sensor.pyi +1 -1
- homeassistant-stubs/components/statistics/sensor.pyi +43 -40
- homeassistant-stubs/components/stream/__init__.pyi +13 -0
- homeassistant-stubs/components/suez_water/__init__.pyi +3 -5
- homeassistant-stubs/components/suez_water/coordinator.pyi +7 -9
- homeassistant-stubs/components/suez_water/sensor.pyi +5 -6
- homeassistant-stubs/components/sun/__init__.pyi +2 -0
- homeassistant-stubs/components/sun/entity.pyi +1 -2
- homeassistant-stubs/components/switch/__init__.pyi +0 -7
- homeassistant-stubs/components/switch_as_x/fan.pyi +0 -1
- homeassistant-stubs/components/switchbee/climate.pyi +0 -1
- homeassistant-stubs/components/switchbot_cloud/climate.pyi +0 -1
- homeassistant-stubs/components/switchbot_cloud/sensor.pyi +12 -3
- homeassistant-stubs/components/switchbot_cloud/switch.pyi +4 -0
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +3 -3
- homeassistant-stubs/components/switcher_kis/climate.pyi +1 -2
- homeassistant-stubs/components/switcher_kis/cover.pyi +0 -4
- homeassistant-stubs/components/switcher_kis/entity.pyi +6 -0
- homeassistant-stubs/components/switcher_kis/light.pyi +0 -4
- homeassistant-stubs/components/switcher_kis/switch.pyi +0 -2
- homeassistant-stubs/components/tailwind/__init__.pyi +2 -4
- homeassistant-stubs/components/tailwind/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tailwind/button.pyi +1 -1
- homeassistant-stubs/components/tailwind/coordinator.pyi +2 -1
- homeassistant-stubs/components/tailwind/cover.pyi +1 -1
- homeassistant-stubs/components/tailwind/diagnostics.pyi +1 -1
- homeassistant-stubs/components/tailwind/number.pyi +1 -1
- homeassistant-stubs/components/tedee/__init__.pyi +2 -3
- homeassistant-stubs/components/tedee/binary_sensor.pyi +2 -0
- homeassistant-stubs/components/tedee/sensor.pyi +2 -0
- homeassistant-stubs/components/tibber/services.pyi +1 -1
- homeassistant-stubs/components/tolo/climate.pyi +0 -1
- homeassistant-stubs/components/tolo/fan.pyi +0 -1
- homeassistant-stubs/components/tplink/__init__.pyi +1 -1
- homeassistant-stubs/components/tplink/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/tplink/button.pyi +2 -2
- homeassistant-stubs/components/tplink/camera.pyi +49 -0
- homeassistant-stubs/components/tplink/climate.pyi +1 -2
- homeassistant-stubs/components/tplink/config_flow.pyi +11 -5
- homeassistant-stubs/components/tplink/const.pyi +2 -0
- homeassistant-stubs/components/tplink/entity.pyi +9 -2
- homeassistant-stubs/components/tplink/fan.pyi +1 -2
- homeassistant-stubs/components/tplink/light.pyi +2 -2
- homeassistant-stubs/components/tplink/models.pyi +4 -1
- homeassistant-stubs/components/tplink/number.pyi +2 -2
- homeassistant-stubs/components/tplink/select.pyi +2 -2
- homeassistant-stubs/components/tplink/sensor.pyi +2 -2
- homeassistant-stubs/components/tplink/siren.pyi +1 -1
- homeassistant-stubs/components/tplink/switch.pyi +2 -2
- homeassistant-stubs/components/tractive/sensor.pyi +1 -1
- homeassistant-stubs/components/tradfri/fan.pyi +0 -1
- homeassistant-stubs/components/tradfri/light.pyi +4 -4
- homeassistant-stubs/components/transmission/__init__.pyi +1 -1
- homeassistant-stubs/components/transmission/const.pyi +1 -0
- homeassistant-stubs/components/twentemilieu/__init__.pyi +3 -11
- homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -1
- homeassistant-stubs/components/twentemilieu/coordinator.pyi +14 -0
- homeassistant-stubs/components/twentemilieu/diagnostics.pyi +2 -2
- homeassistant-stubs/components/twentemilieu/entity.pyi +2 -3
- homeassistant-stubs/components/twentemilieu/sensor.pyi +3 -3
- homeassistant-stubs/components/unifi/sensor.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/const.pyi +6 -0
- homeassistant-stubs/components/unifiprotect/event.pyi +5 -3
- homeassistant-stubs/components/unifiprotect/services.pyi +16 -9
- homeassistant-stubs/components/update/__init__.pyi +0 -2
- homeassistant-stubs/components/vacuum/__init__.pyi +16 -7
- homeassistant-stubs/components/vacuum/const.pyi +18 -5
- homeassistant-stubs/components/vacuum/device_condition.pyi +1 -1
- homeassistant-stubs/components/vacuum/device_trigger.pyi +1 -1
- homeassistant-stubs/components/vacuum/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/vallox/fan.pyi +0 -1
- homeassistant-stubs/components/velbus/__init__.pyi +22 -9
- homeassistant-stubs/components/velbus/binary_sensor.pyi +4 -3
- homeassistant-stubs/components/velbus/button.pyi +4 -3
- homeassistant-stubs/components/velbus/climate.pyi +4 -3
- homeassistant-stubs/components/velbus/cover.pyi +4 -3
- homeassistant-stubs/components/velbus/diagnostics.pyi +3 -4
- homeassistant-stubs/components/velbus/light.pyi +4 -3
- homeassistant-stubs/components/velbus/select.pyi +4 -3
- homeassistant-stubs/components/velbus/sensor.pyi +4 -3
- homeassistant-stubs/components/velbus/services.pyi +7 -0
- homeassistant-stubs/components/velbus/switch.pyi +4 -3
- homeassistant-stubs/components/water_heater/__init__.pyi +7 -12
- homeassistant-stubs/components/wemo/fan.pyi +0 -1
- homeassistant-stubs/components/wemo/light.pyi +4 -2
- homeassistant-stubs/components/wiz/light.pyi +4 -5
- homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +4 -4
- homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +0 -1
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +3 -2
- homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +3 -3
- homeassistant-stubs/components/yale_smart_alarm/entity.pyi +1 -1
- homeassistant-stubs/components/yale_smart_alarm/lock.pyi +1 -1
- homeassistant-stubs/components/zwave_js/api.pyi +2 -0
- homeassistant-stubs/components/zwave_js/climate.pyi +0 -1
- homeassistant-stubs/components/zwave_js/fan.pyi +0 -1
- homeassistant-stubs/components/zwave_js/light.pyi +7 -9
- homeassistant-stubs/const.pyi +2 -151
- homeassistant-stubs/core.pyi +3 -6
- homeassistant-stubs/core_config.pyi +2 -1
- homeassistant-stubs/data_entry_flow.pyi +0 -13
- homeassistant-stubs/exceptions.pyi +6 -0
- homeassistant-stubs/helpers/device_registry.pyi +1 -9
- homeassistant-stubs/helpers/entity.pyi +1 -2
- homeassistant-stubs/helpers/event.pyi +3 -4
- homeassistant-stubs/helpers/service.pyi +1 -1
- homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -1
- homeassistant-stubs/helpers/system_info.pyi +1 -1
- homeassistant-stubs/helpers/template.pyi +1 -1
- homeassistant-stubs/util/dt.pyi +1 -0
- homeassistant-stubs/util/package.pyi +1 -0
- homeassistant-stubs/util/system_info.pyi +1 -0
- {homeassistant_stubs-2024.12.4.dist-info → homeassistant_stubs-2025.1.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.12.4.dist-info → homeassistant_stubs-2025.1.0.dist-info}/RECORD +585 -490
- homeassistant-stubs/components/bluesound/services.pyi +0 -21
- homeassistant-stubs/components/stookalert/__init__.pyi +0 -10
- homeassistant-stubs/components/stookalert/binary_sensor.pyi +0 -24
- homeassistant-stubs/components/stookalert/config_flow.pyi +0 -7
- homeassistant-stubs/components/tailwind/typing.pyi +0 -4
- {homeassistant_stubs-2024.12.4.dist-info → homeassistant_stubs-2025.1.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.12.4.dist-info → homeassistant_stubs-2025.1.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,6 +1,7 @@
|
|
1
1
|
from . import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from collections
|
3
|
+
from collections import deque
|
4
|
+
from collections.abc import Callable, Mapping
|
4
5
|
from datetime import datetime, timedelta
|
5
6
|
from homeassistant.components.recorder import get_instance as get_instance, history as history
|
6
7
|
from homeassistant.components.sensor import DEVICE_CLASS_STATE_CLASSES as DEVICE_CLASS_STATE_CLASSES, DEVICE_CLASS_UNITS as DEVICE_CLASS_UNITS, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
|
@@ -11,7 +12,7 @@ from homeassistant.helpers.device import async_device_info_to_link_from_entity a
|
|
11
12
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
13
|
from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time, async_track_state_change_event as async_track_state_change_event, async_track_state_report_event as async_track_state_report_event
|
13
14
|
from homeassistant.helpers.reload import async_setup_reload_service as async_setup_reload_service
|
14
|
-
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
15
|
+
from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
15
16
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
16
17
|
from typing import Any
|
17
18
|
|
@@ -48,6 +49,44 @@ STAT_TOTAL: str
|
|
48
49
|
STAT_VALUE_MAX: str
|
49
50
|
STAT_VALUE_MIN: str
|
50
51
|
STAT_VARIANCE: str
|
52
|
+
|
53
|
+
def _callable_characteristic_fn(characteristic: str, binary: bool) -> Callable[[deque[bool | float], deque[float], int], float | int | datetime | None]: ...
|
54
|
+
def _stat_average_linear(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
55
|
+
def _stat_average_step(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
56
|
+
def _stat_average_timeless(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
57
|
+
def _stat_change(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
58
|
+
def _stat_change_sample(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
59
|
+
def _stat_change_second(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
60
|
+
def _stat_count(states: deque[bool | float], ages: deque[float], percentile: int) -> int | None: ...
|
61
|
+
def _stat_datetime_newest(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
62
|
+
def _stat_datetime_oldest(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
63
|
+
def _stat_datetime_value_max(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
64
|
+
def _stat_datetime_value_min(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
65
|
+
def _stat_distance_95_percent_of_values(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
66
|
+
def _stat_distance_99_percent_of_values(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
67
|
+
def _stat_distance_absolute(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
68
|
+
def _stat_mean(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
69
|
+
def _stat_mean_circular(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
70
|
+
def _stat_median(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
71
|
+
def _stat_noisiness(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
72
|
+
def _stat_percentile(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
73
|
+
def _stat_standard_deviation(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
74
|
+
def _stat_sum(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
75
|
+
def _stat_sum_differences(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
76
|
+
def _stat_sum_differences_nonnegative(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
77
|
+
def _stat_total(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
78
|
+
def _stat_value_max(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
79
|
+
def _stat_value_min(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
80
|
+
def _stat_variance(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
81
|
+
def _stat_binary_average_step(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
82
|
+
def _stat_binary_average_timeless(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
83
|
+
def _stat_binary_count(states: deque[bool | float], ages: deque[float], percentile: int) -> int | None: ...
|
84
|
+
def _stat_binary_count_on(states: deque[bool | float], ages: deque[float], percentile: int) -> int | None: ...
|
85
|
+
def _stat_binary_count_off(states: deque[bool | float], ages: deque[float], percentile: int) -> int | None: ...
|
86
|
+
def _stat_binary_datetime_newest(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
87
|
+
def _stat_binary_datetime_oldest(states: deque[bool | float], ages: deque[float], percentile: int) -> datetime | None: ...
|
88
|
+
def _stat_binary_mean(states: deque[bool | float], ages: deque[float], percentile: int) -> float | None: ...
|
89
|
+
|
51
90
|
STATS_NUMERIC_SUPPORT: Incomplete
|
52
91
|
STATS_BINARY_SUPPORT: Incomplete
|
53
92
|
STATS_NOT_A_NUMBER: Incomplete
|
@@ -110,8 +149,8 @@ class StatisticsSensor(SensorEntity):
|
|
110
149
|
def _calculate_unit_of_measurement(self, new_state: State) -> str | None: ...
|
111
150
|
def _calculate_device_class(self, new_state: State, unit: str | None) -> SensorDeviceClass | None: ...
|
112
151
|
def _calculate_state_class(self, new_state: State) -> SensorStateClass | None: ...
|
113
|
-
def _purge_old_states(self, max_age:
|
114
|
-
def _async_next_to_purge_timestamp(self) ->
|
152
|
+
def _purge_old_states(self, max_age: float) -> None: ...
|
153
|
+
def _async_next_to_purge_timestamp(self) -> float | None: ...
|
115
154
|
async def async_update(self) -> None: ...
|
116
155
|
def _async_purge_update_and_schedule(self) -> None: ...
|
117
156
|
def _async_cancel_update_listener(self) -> None: ...
|
@@ -121,39 +160,3 @@ class StatisticsSensor(SensorEntity):
|
|
121
160
|
def _update_extra_state_attributes(self) -> None: ...
|
122
161
|
_attr_native_value: Incomplete
|
123
162
|
def _update_value(self) -> None: ...
|
124
|
-
def _callable_characteristic_fn(self, characteristic: str) -> Callable[[], float | int | datetime | None]: ...
|
125
|
-
def _stat_average_linear(self) -> StateType: ...
|
126
|
-
def _stat_average_step(self) -> StateType: ...
|
127
|
-
def _stat_average_timeless(self) -> StateType: ...
|
128
|
-
def _stat_change(self) -> StateType: ...
|
129
|
-
def _stat_change_sample(self) -> StateType: ...
|
130
|
-
def _stat_change_second(self) -> StateType: ...
|
131
|
-
def _stat_count(self) -> StateType: ...
|
132
|
-
def _stat_datetime_newest(self) -> datetime | None: ...
|
133
|
-
def _stat_datetime_oldest(self) -> datetime | None: ...
|
134
|
-
def _stat_datetime_value_max(self) -> datetime | None: ...
|
135
|
-
def _stat_datetime_value_min(self) -> datetime | None: ...
|
136
|
-
def _stat_distance_95_percent_of_values(self) -> StateType: ...
|
137
|
-
def _stat_distance_99_percent_of_values(self) -> StateType: ...
|
138
|
-
def _stat_distance_absolute(self) -> StateType: ...
|
139
|
-
def _stat_mean(self) -> StateType: ...
|
140
|
-
def _stat_mean_circular(self) -> StateType: ...
|
141
|
-
def _stat_median(self) -> StateType: ...
|
142
|
-
def _stat_noisiness(self) -> StateType: ...
|
143
|
-
def _stat_percentile(self) -> StateType: ...
|
144
|
-
def _stat_standard_deviation(self) -> StateType: ...
|
145
|
-
def _stat_sum(self) -> StateType: ...
|
146
|
-
def _stat_sum_differences(self) -> StateType: ...
|
147
|
-
def _stat_sum_differences_nonnegative(self) -> StateType: ...
|
148
|
-
def _stat_total(self) -> StateType: ...
|
149
|
-
def _stat_value_max(self) -> StateType: ...
|
150
|
-
def _stat_value_min(self) -> StateType: ...
|
151
|
-
def _stat_variance(self) -> StateType: ...
|
152
|
-
def _stat_binary_average_step(self) -> StateType: ...
|
153
|
-
def _stat_binary_average_timeless(self) -> StateType: ...
|
154
|
-
def _stat_binary_count(self) -> StateType: ...
|
155
|
-
def _stat_binary_count_on(self) -> StateType: ...
|
156
|
-
def _stat_binary_count_off(self) -> StateType: ...
|
157
|
-
def _stat_binary_datetime_newest(self) -> datetime | None: ...
|
158
|
-
def _stat_binary_datetime_oldest(self) -> datetime | None: ...
|
159
|
-
def _stat_binary_mean(self) -> StateType: ...
|
@@ -2,12 +2,25 @@ from .const import ATTR_SETTINGS as ATTR_SETTINGS, CONF_EXTRA_PART_WAIT_TIME as
|
|
2
2
|
from .core import Orientation as Orientation, StreamOutput, StreamSettings
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import Callable, Mapping
|
5
|
+
from enum import IntEnum
|
5
6
|
from homeassistant.components.camera import DynamicStreamSettings
|
6
7
|
from homeassistant.core import HomeAssistant
|
8
|
+
from homeassistant.exceptions import HomeAssistantError
|
7
9
|
from typing import Any
|
8
10
|
|
9
11
|
__all__ = ['ATTR_SETTINGS', 'CONF_EXTRA_PART_WAIT_TIME', 'CONF_RTSP_TRANSPORT', 'CONF_USE_WALLCLOCK_AS_TIMESTAMPS', 'DOMAIN', 'FORMAT_CONTENT_TYPE', 'HLS_PROVIDER', 'OUTPUT_FORMATS', 'RTSP_TRANSPORTS', 'SOURCE_TIMEOUT', 'Stream', 'create_stream', 'Orientation']
|
10
12
|
|
13
|
+
class StreamClientError(IntEnum):
|
14
|
+
BadRequest = 400
|
15
|
+
Unauthorized = 401
|
16
|
+
Forbidden = 403
|
17
|
+
NotFound = 404
|
18
|
+
Other = 4
|
19
|
+
|
20
|
+
class StreamOpenClientError(HomeAssistantError):
|
21
|
+
stream_client_error: Incomplete
|
22
|
+
def __init__(self, *args: Any, stream_client_error: StreamClientError, **kwargs: Any) -> None: ...
|
23
|
+
|
11
24
|
def create_stream(hass: HomeAssistant, stream_source: str, options: Mapping[str, str | bool | float], dynamic_stream_settings: DynamicStreamSettings, stream_label: str | None = None) -> Stream: ...
|
12
25
|
|
13
26
|
class Stream:
|
@@ -1,10 +1,8 @@
|
|
1
|
-
from .
|
2
|
-
from .coordinator import SuezWaterCoordinator as SuezWaterCoordinator
|
3
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
1
|
+
from .coordinator import SuezWaterConfigEntry as SuezWaterConfigEntry, SuezWaterCoordinator as SuezWaterCoordinator
|
4
2
|
from homeassistant.const import Platform as Platform
|
5
3
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
4
|
|
7
5
|
PLATFORMS: list[Platform]
|
8
6
|
|
9
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
10
|
-
async def async_unload_entry(hass: HomeAssistant, entry:
|
7
|
+
async def async_setup_entry(hass: HomeAssistant, entry: SuezWaterConfigEntry) -> bool: ...
|
8
|
+
async def async_unload_entry(hass: HomeAssistant, entry: SuezWaterConfigEntry) -> bool: ...
|
@@ -1,35 +1,33 @@
|
|
1
1
|
from .const import CONF_COUNTER_ID as CONF_COUNTER_ID, DATA_REFRESH_INTERVAL as DATA_REFRESH_INTERVAL, DOMAIN as DOMAIN
|
2
|
-
from collections.abc import Mapping
|
3
2
|
from dataclasses import dataclass
|
4
|
-
from datetime import date
|
5
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
4
|
from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
7
5
|
from homeassistant.core import HomeAssistant as HomeAssistant, _LOGGER as _LOGGER
|
8
6
|
from homeassistant.exceptions import ConfigEntryError as ConfigEntryError
|
9
7
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
10
8
|
from pysuez import SuezClient
|
11
|
-
from typing import Any
|
12
9
|
|
13
10
|
@dataclass
|
14
11
|
class SuezWaterAggregatedAttributes:
|
15
|
-
this_month_consumption: dict[
|
16
|
-
previous_month_consumption: dict[
|
12
|
+
this_month_consumption: dict[str, float]
|
13
|
+
previous_month_consumption: dict[str, float]
|
17
14
|
last_year_overall: dict[str, float]
|
18
15
|
this_year_overall: dict[str, float]
|
19
|
-
history: dict[
|
16
|
+
history: dict[str, float]
|
20
17
|
highest_monthly_consumption: float
|
21
18
|
def __init__(self, this_month_consumption, previous_month_consumption, last_year_overall, this_year_overall, history, highest_monthly_consumption) -> None: ...
|
22
19
|
|
23
20
|
@dataclass
|
24
21
|
class SuezWaterData:
|
25
22
|
aggregated_value: float
|
26
|
-
aggregated_attr:
|
23
|
+
aggregated_attr: SuezWaterAggregatedAttributes
|
27
24
|
price: float
|
28
25
|
def __init__(self, aggregated_value, aggregated_attr, price) -> None: ...
|
26
|
+
type SuezWaterConfigEntry = ConfigEntry[SuezWaterCoordinator]
|
29
27
|
|
30
28
|
class SuezWaterCoordinator(DataUpdateCoordinator[SuezWaterData]):
|
31
29
|
_suez_client: SuezClient
|
32
|
-
config_entry:
|
33
|
-
def __init__(self, hass: HomeAssistant, config_entry:
|
30
|
+
config_entry: SuezWaterConfigEntry
|
31
|
+
def __init__(self, hass: HomeAssistant, config_entry: SuezWaterConfigEntry) -> None: ...
|
34
32
|
async def _async_setup(self) -> None: ...
|
35
33
|
async def _async_update_data(self) -> SuezWaterData: ...
|
@@ -1,10 +1,9 @@
|
|
1
1
|
from .const import CONF_COUNTER_ID as CONF_COUNTER_ID, DOMAIN as DOMAIN
|
2
|
-
from .coordinator import SuezWaterCoordinator as SuezWaterCoordinator, SuezWaterData as SuezWaterData
|
2
|
+
from .coordinator import SuezWaterConfigEntry as SuezWaterConfigEntry, SuezWaterCoordinator as SuezWaterCoordinator, SuezWaterData as SuezWaterData
|
3
3
|
from _typeshed import Incomplete
|
4
|
-
from collections.abc import Callable as Callable
|
4
|
+
from collections.abc import Callable as Callable
|
5
5
|
from dataclasses import dataclass
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.const import CURRENCY_EURO as CURRENCY_EURO, UnitOfVolume as UnitOfVolume
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
9
|
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
@@ -16,12 +15,12 @@ from typing import Any
|
|
16
15
|
@dataclass(frozen=True, kw_only=True)
|
17
16
|
class SuezWaterSensorEntityDescription(SensorEntityDescription):
|
18
17
|
value_fn: Callable[[SuezWaterData], float | str | None]
|
19
|
-
attr_fn: Callable[[SuezWaterData],
|
18
|
+
attr_fn: Callable[[SuezWaterData], dict[str, Any] | None] = ...
|
20
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, attr_fn=...) -> None: ...
|
21
20
|
|
22
21
|
SENSORS: tuple[SuezWaterSensorEntityDescription, ...]
|
23
22
|
|
24
|
-
async def async_setup_entry(hass: HomeAssistant, entry:
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, entry: SuezWaterConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
25
24
|
|
26
25
|
class SuezWaterSensor(CoordinatorEntity[SuezWaterCoordinator], SensorEntity):
|
27
26
|
_attr_has_entity_name: bool
|
@@ -33,4 +32,4 @@ class SuezWaterSensor(CoordinatorEntity[SuezWaterCoordinator], SensorEntity):
|
|
33
32
|
@property
|
34
33
|
def native_value(self) -> float | str | None: ...
|
35
34
|
@property
|
36
|
-
def extra_state_attributes(self) ->
|
35
|
+
def extra_state_attributes(self) -> dict[str, Any] | None: ...
|
@@ -4,9 +4,11 @@ from _typeshed import Incomplete
|
|
4
4
|
from homeassistant.config_entries import SOURCE_IMPORT as SOURCE_IMPORT
|
5
5
|
from homeassistant.const import Platform as Platform
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
|
7
8
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
8
9
|
|
9
10
|
CONFIG_SCHEMA: Incomplete
|
11
|
+
_LOGGER: Incomplete
|
10
12
|
|
11
13
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
12
14
|
async def async_setup_entry(hass: HomeAssistant, entry: SunConfigEntry) -> bool: ...
|
@@ -35,7 +35,6 @@ class Sun(Entity):
|
|
35
35
|
_unrecorded_attributes: Incomplete
|
36
36
|
_attr_name: str
|
37
37
|
entity_id = ENTITY_ID
|
38
|
-
_no_platform_reported: bool
|
39
38
|
location: Location
|
40
39
|
elevation: Elevation
|
41
40
|
next_rising: datetime
|
@@ -50,11 +49,11 @@ class Sun(Entity):
|
|
50
49
|
_next_change: datetime
|
51
50
|
hass: Incomplete
|
52
51
|
phase: Incomplete
|
53
|
-
_state_info: Incomplete
|
54
52
|
_config_listener: Incomplete
|
55
53
|
_update_events_listener: Incomplete
|
56
54
|
_update_sun_position_listener: Incomplete
|
57
55
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
56
|
+
async def async_added_to_hass(self) -> None: ...
|
58
57
|
def update_location(self, _: Event | None = None, initial: bool = False) -> None: ...
|
59
58
|
def remove_listeners(self) -> None: ...
|
60
59
|
@property
|
@@ -4,7 +4,6 @@ from enum import StrEnum
|
|
4
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
5
|
from homeassistant.const import SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
-
from homeassistant.helpers.deprecation import DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
|
8
7
|
from homeassistant.helpers.entity import ToggleEntity as ToggleEntity, ToggleEntityDescription as ToggleEntityDescription
|
9
8
|
from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
|
10
9
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
@@ -25,8 +24,6 @@ class SwitchDeviceClass(StrEnum):
|
|
25
24
|
|
26
25
|
DEVICE_CLASSES_SCHEMA: Incomplete
|
27
26
|
DEVICE_CLASSES: Incomplete
|
28
|
-
_DEPRECATED_DEVICE_CLASS_OUTLET: Incomplete
|
29
|
-
_DEPRECATED_DEVICE_CLASS_SWITCH: Incomplete
|
30
27
|
|
31
28
|
def is_on(hass: HomeAssistant, entity_id: str) -> bool: ...
|
32
29
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
@@ -44,7 +41,3 @@ class SwitchEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_)
|
|
44
41
|
entity_description: SwitchEntityDescription
|
45
42
|
_attr_device_class: SwitchDeviceClass | None
|
46
43
|
def device_class(self) -> SwitchDeviceClass | None: ...
|
47
|
-
|
48
|
-
__getattr__: Incomplete
|
49
|
-
__dir__: Incomplete
|
50
|
-
__all__: Incomplete
|
@@ -11,7 +11,6 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, asyn
|
|
11
11
|
|
12
12
|
class FanSwitch(BaseToggleEntity, FanEntity):
|
13
13
|
_attr_supported_features: Incomplete
|
14
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
15
14
|
@property
|
16
15
|
def is_on(self) -> bool | None: ...
|
17
16
|
async def async_turn_on(self, percentage: int | None = None, preset_mode: str | None = None, **kwargs: Any) -> None: ...
|
@@ -24,7 +24,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
|
|
24
24
|
class SwitchBeeClimateEntity(SwitchBeeDeviceEntity[SwitchBeeThermostat], ClimateEntity):
|
25
25
|
_attr_fan_modes = SUPPORTED_FAN_MODES
|
26
26
|
_attr_target_temperature_step: int
|
27
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
28
27
|
_attr_max_temp: Incomplete
|
29
28
|
_attr_min_temp: Incomplete
|
30
29
|
_attr_temperature_unit: Incomplete
|
@@ -28,7 +28,6 @@ class SwitchBotCloudAirConditioner(SwitchBotCloudEntity, ClimateEntity):
|
|
28
28
|
_attr_target_temperature_step: int
|
29
29
|
_attr_precision: int
|
30
30
|
_attr_name: Incomplete
|
31
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
32
31
|
async def _do_send_command(self, hvac_mode: HVACMode | None = None, fan_mode: str | None = None, temperature: float | None = None) -> None: ...
|
33
32
|
async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
|
34
33
|
async def async_set_fan_mode(self, fan_mode: str) -> None: ...
|
@@ -5,7 +5,7 @@ from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
|
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
|
-
from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UnitOfTemperature as UnitOfTemperature
|
8
|
+
from homeassistant.const import CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfPower as UnitOfPower, UnitOfTemperature as UnitOfTemperature
|
9
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
11
|
from switchbot_api import Device as Device, SwitchBotAPI as SwitchBotAPI
|
@@ -14,8 +14,17 @@ SENSOR_TYPE_TEMPERATURE: str
|
|
14
14
|
SENSOR_TYPE_HUMIDITY: str
|
15
15
|
SENSOR_TYPE_BATTERY: str
|
16
16
|
SENSOR_TYPE_CO2: str
|
17
|
-
|
18
|
-
|
17
|
+
SENSOR_TYPE_POWER: str
|
18
|
+
SENSOR_TYPE_VOLTAGE: str
|
19
|
+
SENSOR_TYPE_CURRENT: str
|
20
|
+
TEMPERATURE_DESCRIPTION: Incomplete
|
21
|
+
HUMIDITY_DESCRIPTION: Incomplete
|
22
|
+
BATTERY_DESCRIPTION: Incomplete
|
23
|
+
POWER_DESCRIPTION: Incomplete
|
24
|
+
VOLATGE_DESCRIPTION: Incomplete
|
25
|
+
CURRENT_DESCRIPTION: Incomplete
|
26
|
+
CO2_DESCRIPTION: Incomplete
|
27
|
+
SENSOR_DESCRIPTIONS_BY_DEVICE_TYPES: Incomplete
|
19
28
|
|
20
29
|
async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
21
30
|
|
@@ -26,4 +26,8 @@ class SwitchBotCloudRemoteSwitch(SwitchBotCloudSwitch):
|
|
26
26
|
class SwitchBotCloudPlugSwitch(SwitchBotCloudSwitch):
|
27
27
|
_attr_device_class: Incomplete
|
28
28
|
|
29
|
+
class SwitchBotCloudRelaySwitchSwitch(SwitchBotCloudSwitch):
|
30
|
+
_attr_is_on: Incomplete
|
31
|
+
def _handle_coordinator_update(self) -> None: ...
|
32
|
+
|
29
33
|
def _async_make_entity(api: SwitchBotAPI, device: Device | Remote, coordinator: SwitchBotCoordinator) -> SwitchBotCloudSwitch: ...
|
@@ -3,7 +3,7 @@ from .const import DOMAIN as DOMAIN, VACUUM_FAN_SPEED_MAX as VACUUM_FAN_SPEED_MA
|
|
3
3
|
from .coordinator import SwitchBotCoordinator as SwitchBotCoordinator
|
4
4
|
from .entity import SwitchBotCloudEntity as SwitchBotCloudEntity
|
5
5
|
from _typeshed import Incomplete
|
6
|
-
from homeassistant.components.vacuum import
|
6
|
+
from homeassistant.components.vacuum import StateVacuumEntity as StateVacuumEntity, VacuumActivity as VacuumActivity, VacuumEntityFeature as VacuumEntityFeature
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -12,7 +12,7 @@ from typing import Any
|
|
12
12
|
|
13
13
|
async def async_setup_entry(hass: HomeAssistant, config: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
14
14
|
|
15
|
-
VACUUM_SWITCHBOT_STATE_TO_HA_STATE: dict[str,
|
15
|
+
VACUUM_SWITCHBOT_STATE_TO_HA_STATE: dict[str, VacuumActivity]
|
16
16
|
VACUUM_FAN_SPEED_TO_SWITCHBOT_FAN_SPEED: dict[str, str]
|
17
17
|
|
18
18
|
class SwitchBotCloudVacuum(SwitchBotCloudEntity, StateVacuumEntity):
|
@@ -26,7 +26,7 @@ class SwitchBotCloudVacuum(SwitchBotCloudEntity, StateVacuumEntity):
|
|
26
26
|
async def async_start(self) -> None: ...
|
27
27
|
_attr_battery_level: Incomplete
|
28
28
|
_attr_available: Incomplete
|
29
|
-
|
29
|
+
_attr_activity: Incomplete
|
30
30
|
def _handle_coordinator_update(self) -> None: ...
|
31
31
|
|
32
32
|
def _async_make_entity(api: SwitchBotAPI, device: Device | Remote, coordinator: SwitchBotCoordinator) -> SwitchBotCloudVacuum: ...
|
@@ -4,7 +4,6 @@ from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoor
|
|
4
4
|
from .entity import SwitcherEntity as SwitcherEntity
|
5
5
|
from .utils import get_breeze_remote_manager as get_breeze_remote_manager
|
6
6
|
from _typeshed import Incomplete
|
7
|
-
from aioswitcher.api import SwitcherBaseResponse as SwitcherBaseResponse
|
8
7
|
from aioswitcher.api.remotes import SwitcherBreezeRemote as SwitcherBreezeRemote
|
9
8
|
from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, FAN_AUTO as FAN_AUTO, FAN_HIGH as FAN_HIGH, FAN_LOW as FAN_LOW, FAN_MEDIUM as FAN_MEDIUM, HVACMode as HVACMode, SWING_OFF as SWING_OFF, SWING_VERTICAL as SWING_VERTICAL
|
10
9
|
from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, UnitOfTemperature as UnitOfTemperature
|
@@ -14,6 +13,7 @@ from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_d
|
|
14
13
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
15
14
|
from typing import Any
|
16
15
|
|
16
|
+
API_CONTROL_BREEZE_DEVICE: str
|
17
17
|
DEVICE_MODE_TO_HA: Incomplete
|
18
18
|
HA_TO_DEVICE_MODE: Incomplete
|
19
19
|
DEVICE_FAN_TO_HA: Incomplete
|
@@ -23,7 +23,6 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: SwitcherConfigEnt
|
|
23
23
|
|
24
24
|
class SwitcherClimateEntity(SwitcherEntity, ClimateEntity):
|
25
25
|
_attr_name: Incomplete
|
26
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
27
26
|
_remote: Incomplete
|
28
27
|
_attr_unique_id: Incomplete
|
29
28
|
_attr_min_temp: Incomplete
|
@@ -2,16 +2,13 @@ from .const import SIGNAL_DEVICE_ADD as SIGNAL_DEVICE_ADD
|
|
2
2
|
from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
|
3
3
|
from .entity import SwitcherEntity as SwitcherEntity
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from aioswitcher.api import SwitcherBaseResponse as SwitcherBaseResponse
|
6
5
|
from homeassistant.components.cover import ATTR_POSITION as ATTR_POSITION, CoverDeviceClass as CoverDeviceClass, CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
|
7
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
|
-
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
8
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
|
11
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
10
|
from typing import Any
|
13
11
|
|
14
|
-
_LOGGER: Incomplete
|
15
12
|
API_SET_POSITON: str
|
16
13
|
API_STOP: str
|
17
14
|
|
@@ -27,7 +24,6 @@ class SwitcherBaseCoverEntity(SwitcherEntity, CoverEntity):
|
|
27
24
|
_attr_is_closing: Incomplete
|
28
25
|
_attr_is_opening: Incomplete
|
29
26
|
def _update_data(self) -> None: ...
|
30
|
-
async def _async_call_api(self, api: str, *args: Any) -> None: ...
|
31
27
|
async def async_close_cover(self, **kwargs: Any) -> None: ...
|
32
28
|
async def async_open_cover(self, **kwargs: Any) -> None: ...
|
33
29
|
async def async_set_cover_position(self, **kwargs: Any) -> None: ...
|
@@ -1,9 +1,15 @@
|
|
1
1
|
from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
|
2
2
|
from _typeshed import Incomplete
|
3
|
+
from aioswitcher.api.messages import SwitcherBaseResponse as SwitcherBaseResponse
|
4
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
3
5
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
4
6
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
7
|
+
from typing import Any
|
8
|
+
|
9
|
+
_LOGGER: Incomplete
|
5
10
|
|
6
11
|
class SwitcherEntity(CoordinatorEntity[SwitcherDataUpdateCoordinator]):
|
7
12
|
_attr_has_entity_name: bool
|
8
13
|
_attr_device_info: Incomplete
|
9
14
|
def __init__(self, coordinator: SwitcherDataUpdateCoordinator) -> None: ...
|
15
|
+
async def _async_call_api(self, api: str, *args: Any, **kwargs: Any) -> None: ...
|
@@ -2,16 +2,13 @@ from .const import SIGNAL_DEVICE_ADD as SIGNAL_DEVICE_ADD
|
|
2
2
|
from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
|
3
3
|
from .entity import SwitcherEntity as SwitcherEntity
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from aioswitcher.api import SwitcherBaseResponse as SwitcherBaseResponse
|
6
5
|
from homeassistant.components.light import ColorMode as ColorMode, LightEntity as LightEntity
|
7
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
|
-
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
8
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
|
11
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
12
10
|
from typing import Any
|
13
11
|
|
14
|
-
_LOGGER: Incomplete
|
15
12
|
API_SET_LIGHT: str
|
16
13
|
|
17
14
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -24,7 +21,6 @@ class SwitcherBaseLightEntity(SwitcherEntity, LightEntity):
|
|
24
21
|
def _handle_coordinator_update(self) -> None: ...
|
25
22
|
@property
|
26
23
|
def is_on(self) -> bool: ...
|
27
|
-
async def _async_call_api(self, api: str, *args: Any) -> None: ...
|
28
24
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
29
25
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
30
26
|
|
@@ -2,7 +2,6 @@ from .const import CONF_AUTO_OFF as CONF_AUTO_OFF, CONF_TIMER_MINUTES as CONF_TI
|
|
2
2
|
from .coordinator import SwitcherDataUpdateCoordinator as SwitcherDataUpdateCoordinator
|
3
3
|
from .entity import SwitcherEntity as SwitcherEntity
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from aioswitcher.api import SwitcherBaseResponse as SwitcherBaseResponse
|
6
5
|
from datetime import timedelta
|
7
6
|
from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity
|
8
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -27,7 +26,6 @@ class SwitcherBaseSwitchEntity(SwitcherEntity, SwitchEntity):
|
|
27
26
|
_attr_unique_id: Incomplete
|
28
27
|
def __init__(self, coordinator: SwitcherDataUpdateCoordinator) -> None: ...
|
29
28
|
def _handle_coordinator_update(self) -> None: ...
|
30
|
-
async def _async_call_api(self, api: str, *args: Any) -> None: ...
|
31
29
|
@property
|
32
30
|
def is_on(self) -> bool: ...
|
33
31
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
@@ -1,12 +1,10 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
|
-
from .coordinator import TailwindDataUpdateCoordinator as TailwindDataUpdateCoordinator
|
3
|
-
from .typing import TailwindConfigEntry as TailwindConfigEntry
|
2
|
+
from .coordinator import TailwindConfigEntry as TailwindConfigEntry, TailwindDataUpdateCoordinator as TailwindDataUpdateCoordinator
|
4
3
|
from _typeshed import Incomplete
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
4
|
from homeassistant.const import Platform as Platform
|
7
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
6
|
|
9
7
|
PLATFORMS: Incomplete
|
10
8
|
|
11
9
|
async def async_setup_entry(hass: HomeAssistant, entry: TailwindConfigEntry) -> bool: ...
|
12
|
-
async def async_unload_entry(hass: HomeAssistant, entry:
|
10
|
+
async def async_unload_entry(hass: HomeAssistant, entry: TailwindConfigEntry) -> bool: ...
|
@@ -1,5 +1,5 @@
|
|
1
|
+
from .coordinator import TailwindConfigEntry as TailwindConfigEntry
|
1
2
|
from .entity import TailwindDoorEntity as TailwindDoorEntity
|
2
|
-
from .typing import TailwindConfigEntry as TailwindConfigEntry
|
3
3
|
from collections.abc import Callable as Callable
|
4
4
|
from dataclasses import dataclass
|
5
5
|
from gotailwind import TailwindDoor as TailwindDoor
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import TailwindConfigEntry as TailwindConfigEntry
|
2
3
|
from .entity import TailwindEntity as TailwindEntity
|
3
|
-
from .typing import TailwindConfigEntry as TailwindConfigEntry
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from collections.abc import Awaitable, Callable as Callable
|
6
6
|
from dataclasses import dataclass
|
@@ -8,7 +8,8 @@ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFai
|
|
8
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
9
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
10
10
|
|
11
|
+
type TailwindConfigEntry = ConfigEntry[TailwindDataUpdateCoordinator]
|
11
12
|
class TailwindDataUpdateCoordinator(DataUpdateCoordinator[TailwindDeviceStatus]):
|
12
13
|
tailwind: Incomplete
|
13
|
-
def __init__(self, hass: HomeAssistant, entry:
|
14
|
+
def __init__(self, hass: HomeAssistant, entry: TailwindConfigEntry) -> None: ...
|
14
15
|
async def _async_update_data(self) -> TailwindDeviceStatus: ...
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
|
2
|
+
from .coordinator import TailwindConfigEntry as TailwindConfigEntry
|
2
3
|
from .entity import TailwindDoorEntity as TailwindDoorEntity
|
3
|
-
from .typing import TailwindConfigEntry as TailwindConfigEntry
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from homeassistant.components.cover import CoverDeviceClass as CoverDeviceClass, CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import TailwindConfigEntry as TailwindConfigEntry
|
2
3
|
from .entity import TailwindEntity as TailwindEntity
|
3
|
-
from .typing import TailwindConfigEntry as TailwindConfigEntry
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from collections.abc import Awaitable, Callable as Callable
|
6
6
|
from dataclasses import dataclass
|
@@ -4,7 +4,6 @@ from _typeshed import Incomplete
|
|
4
4
|
from aiohttp.web import Request as Request, Response as Response
|
5
5
|
from collections.abc import Awaitable, Callable as Callable
|
6
6
|
from homeassistant.components.http import HomeAssistantView as HomeAssistantView
|
7
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
7
|
from homeassistant.const import CONF_WEBHOOK_ID as CONF_WEBHOOK_ID, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
10
9
|
from homeassistant.helpers.network import get_url as get_url
|
@@ -13,6 +12,6 @@ PLATFORMS: Incomplete
|
|
13
12
|
_LOGGER: Incomplete
|
14
13
|
|
15
14
|
async def async_setup_entry(hass: HomeAssistant, entry: TedeeConfigEntry) -> bool: ...
|
16
|
-
async def async_unload_entry(hass: HomeAssistant, entry:
|
15
|
+
async def async_unload_entry(hass: HomeAssistant, entry: TedeeConfigEntry) -> bool: ...
|
17
16
|
def get_webhook_handler(coordinator: TedeeApiCoordinator) -> Callable[[HomeAssistant, str, Request], Awaitable[Response | None]]: ...
|
18
|
-
async def async_migrate_entry(hass: HomeAssistant, config_entry:
|
17
|
+
async def async_migrate_entry(hass: HomeAssistant, config_entry: TedeeConfigEntry) -> bool: ...
|
@@ -8,6 +8,8 @@ from homeassistant.const import EntityCategory as EntityCategory
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
10
|
|
11
|
+
PARALLEL_UPDATES: int
|
12
|
+
|
11
13
|
@dataclass(frozen=True, kw_only=True)
|
12
14
|
class TedeeBinarySensorEntityDescription(BinarySensorEntityDescription):
|
13
15
|
is_on_fn: Callable[[TedeeLock], bool | None]
|
@@ -8,6 +8,8 @@ from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
10
|
|
11
|
+
PARALLEL_UPDATES: int
|
12
|
+
|
11
13
|
@dataclass(frozen=True, kw_only=True)
|
12
14
|
class TedeeSensorEntityDescription(SensorEntityDescription):
|
13
15
|
value_fn: Callable[[TedeeLock], float | None]
|
@@ -10,6 +10,6 @@ ATTR_START: Final[str]
|
|
10
10
|
ATTR_END: Final[str]
|
11
11
|
SERVICE_SCHEMA: Final[Incomplete]
|
12
12
|
|
13
|
-
async def __get_prices(call: ServiceCall
|
13
|
+
async def __get_prices(call: ServiceCall) -> ServiceResponse: ...
|
14
14
|
def __get_date(date_input: str | None, mode: str | None) -> datetime: ...
|
15
15
|
def async_setup_services(hass: HomeAssistant) -> None: ...
|
@@ -24,7 +24,6 @@ class SaunaClimate(ToloSaunaCoordinatorEntity, ClimateEntity):
|
|
24
24
|
_attr_supported_features: Incomplete
|
25
25
|
_attr_target_temperature_step: int
|
26
26
|
_attr_temperature_unit: Incomplete
|
27
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
28
27
|
_attr_unique_id: Incomplete
|
29
28
|
def __init__(self, coordinator: ToloSaunaUpdateCoordinator, entry: ConfigEntry) -> None: ...
|
30
29
|
@property
|