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
@@ -27,7 +27,7 @@ class AuthManagerFlowManager(FlowManager[AuthFlowContext, AuthFlowResult, tuple[
|
|
27
27
|
_flow_result = AuthFlowResult
|
28
28
|
auth_manager: Incomplete
|
29
29
|
def __init__(self, hass: HomeAssistant, auth_manager: AuthManager) -> None: ...
|
30
|
-
async def async_create_flow(self, handler_key: tuple[str, str], *, context: AuthFlowContext | None = None, data: dict[str, Any] | None = None) -> LoginFlow: ...
|
30
|
+
async def async_create_flow(self, handler_key: tuple[str, str], *, context: AuthFlowContext | None = None, data: dict[str, Any] | None = None) -> LoginFlow[Any]: ...
|
31
31
|
async def async_finish_flow(self, flow: FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]], result: AuthFlowResult) -> AuthFlowResult: ...
|
32
32
|
|
33
33
|
class AuthManager:
|
@@ -9,12 +9,14 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
9
9
|
from homeassistant.helpers.importlib import async_import_module as async_import_module
|
10
10
|
from homeassistant.util.decorator import Registry as Registry
|
11
11
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
12
|
-
from typing import Any
|
12
|
+
from typing import Any, Generic
|
13
|
+
from typing_extensions import TypeVar
|
13
14
|
|
14
15
|
MULTI_FACTOR_AUTH_MODULES: Registry[str, type[MultiFactorAuthModule]]
|
15
16
|
MULTI_FACTOR_AUTH_MODULE_SCHEMA: Incomplete
|
16
17
|
DATA_REQS: HassKey[set[str]]
|
17
18
|
_LOGGER: Incomplete
|
19
|
+
_MultiFactorAuthModuleT = TypeVar('_MultiFactorAuthModuleT', bound='MultiFactorAuthModule', default='MultiFactorAuthModule')
|
18
20
|
|
19
21
|
class MultiFactorAuthModule:
|
20
22
|
DEFAULT_TITLE: str
|
@@ -30,17 +32,17 @@ class MultiFactorAuthModule:
|
|
30
32
|
def name(self) -> str: ...
|
31
33
|
@property
|
32
34
|
def input_schema(self) -> vol.Schema: ...
|
33
|
-
async def async_setup_flow(self, user_id: str) -> SetupFlow: ...
|
35
|
+
async def async_setup_flow(self, user_id: str) -> SetupFlow[Any]: ...
|
34
36
|
async def async_setup_user(self, user_id: str, setup_data: Any) -> Any: ...
|
35
37
|
async def async_depose_user(self, user_id: str) -> None: ...
|
36
38
|
async def async_is_user_setup(self, user_id: str) -> bool: ...
|
37
39
|
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool: ...
|
38
40
|
|
39
|
-
class SetupFlow(data_entry_flow.FlowHandler):
|
41
|
+
class SetupFlow(data_entry_flow.FlowHandler, Generic[_MultiFactorAuthModuleT]):
|
40
42
|
_auth_module: Incomplete
|
41
43
|
_setup_schema: Incomplete
|
42
44
|
_user_id: Incomplete
|
43
|
-
def __init__(self, auth_module:
|
45
|
+
def __init__(self, auth_module: _MultiFactorAuthModuleT, setup_schema: vol.Schema, user_id: str) -> None: ...
|
44
46
|
async def async_step_init(self, user_input: dict[str, str] | None = None) -> FlowResult: ...
|
45
47
|
|
46
48
|
async def auth_mfa_module_from_config(hass: HomeAssistant, config: dict[str, Any]) -> MultiFactorAuthModule: ...
|
@@ -49,7 +49,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
|
|
49
49
|
async def _async_load(self) -> None: ...
|
50
50
|
async def _async_save(self) -> None: ...
|
51
51
|
def aync_get_available_notify_services(self) -> list[str]: ...
|
52
|
-
async def async_setup_flow(self, user_id: str) ->
|
52
|
+
async def async_setup_flow(self, user_id: str) -> NotifySetupFlow: ...
|
53
53
|
async def async_setup_user(self, user_id: str, setup_data: Any) -> Any: ...
|
54
54
|
async def async_depose_user(self, user_id: str) -> None: ...
|
55
55
|
async def async_is_user_setup(self, user_id: str) -> bool: ...
|
@@ -58,8 +58,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
|
|
58
58
|
async def async_notify_user(self, user_id: str, code: str) -> None: ...
|
59
59
|
async def async_notify(self, code: str, notify_service: str, target: str | None = None) -> None: ...
|
60
60
|
|
61
|
-
class NotifySetupFlow(SetupFlow):
|
62
|
-
_auth_module: Incomplete
|
61
|
+
class NotifySetupFlow(SetupFlow[NotifyAuthModule]):
|
63
62
|
_available_notify_services: Incomplete
|
64
63
|
_secret: Incomplete
|
65
64
|
_count: Incomplete
|
@@ -32,15 +32,14 @@ class TotpAuthModule(MultiFactorAuthModule):
|
|
32
32
|
async def _async_load(self) -> None: ...
|
33
33
|
async def _async_save(self) -> None: ...
|
34
34
|
def _add_ota_secret(self, user_id: str, secret: str | None = None) -> str: ...
|
35
|
-
async def async_setup_flow(self, user_id: str) ->
|
35
|
+
async def async_setup_flow(self, user_id: str) -> TotpSetupFlow: ...
|
36
36
|
async def async_setup_user(self, user_id: str, setup_data: Any) -> str: ...
|
37
37
|
async def async_depose_user(self, user_id: str) -> None: ...
|
38
38
|
async def async_is_user_setup(self, user_id: str) -> bool: ...
|
39
39
|
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool: ...
|
40
40
|
def _validate_2fa(self, user_id: str, code: str) -> bool: ...
|
41
41
|
|
42
|
-
class TotpSetupFlow(SetupFlow):
|
43
|
-
_auth_module: TotpAuthModule
|
42
|
+
class TotpSetupFlow(SetupFlow[TotpAuthModule]):
|
44
43
|
_ota_secret: str
|
45
44
|
_url: str
|
46
45
|
_image: str
|
@@ -12,12 +12,14 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
12
12
|
from homeassistant.helpers.importlib import async_import_module as async_import_module
|
13
13
|
from homeassistant.util.decorator import Registry as Registry
|
14
14
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
15
|
-
from typing import Any
|
15
|
+
from typing import Any, Generic
|
16
|
+
from typing_extensions import TypeVar
|
16
17
|
|
17
18
|
_LOGGER: Incomplete
|
18
19
|
DATA_REQS: HassKey[set[str]]
|
19
20
|
AUTH_PROVIDERS: Registry[str, type[AuthProvider]]
|
20
21
|
AUTH_PROVIDER_SCHEMA: Incomplete
|
22
|
+
_AuthProviderT = TypeVar('_AuthProviderT', bound='AuthProvider', default='AuthProvider')
|
21
23
|
|
22
24
|
class AuthProvider:
|
23
25
|
DEFAULT_TITLE: str
|
@@ -35,7 +37,7 @@ class AuthProvider:
|
|
35
37
|
def support_mfa(self) -> bool: ...
|
36
38
|
async def async_credentials(self) -> list[Credentials]: ...
|
37
39
|
def async_create_credentials(self, data: dict[str, str]) -> Credentials: ...
|
38
|
-
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow: ...
|
40
|
+
async def async_login_flow(self, context: AuthFlowContext | None) -> LoginFlow[Any]: ...
|
39
41
|
async def async_get_or_create_credentials(self, flow_result: Mapping[str, str]) -> Credentials: ...
|
40
42
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
41
43
|
async def async_initialize(self) -> None: ...
|
@@ -44,7 +46,7 @@ class AuthProvider:
|
|
44
46
|
async def auth_provider_from_config(hass: HomeAssistant, store: AuthStore, config: dict[str, Any]) -> AuthProvider: ...
|
45
47
|
async def load_auth_provider_module(hass: HomeAssistant, provider: str) -> types.ModuleType: ...
|
46
48
|
|
47
|
-
class LoginFlow(FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]]):
|
49
|
+
class LoginFlow(FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]], Generic[_AuthProviderT]):
|
48
50
|
_flow_result = AuthFlowResult
|
49
51
|
_auth_provider: Incomplete
|
50
52
|
_auth_module_id: Incomplete
|
@@ -54,7 +56,7 @@ class LoginFlow(FlowHandler[AuthFlowContext, AuthFlowResult, tuple[str, str]]):
|
|
54
56
|
invalid_mfa_times: int
|
55
57
|
user: Incomplete
|
56
58
|
credential: Incomplete
|
57
|
-
def __init__(self, auth_provider:
|
59
|
+
def __init__(self, auth_provider: _AuthProviderT) -> None: ...
|
58
60
|
async def async_step_init(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
59
61
|
async def async_step_select_mfa_module(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
60
62
|
async def async_step_mfa(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
@@ -18,10 +18,10 @@ class CommandLineAuthProvider(AuthProvider):
|
|
18
18
|
ALLOWED_META_KEYS: Incomplete
|
19
19
|
_user_meta: Incomplete
|
20
20
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
21
|
-
async def async_login_flow(self, context: AuthFlowContext | None) ->
|
21
|
+
async def async_login_flow(self, context: AuthFlowContext | None) -> CommandLineLoginFlow: ...
|
22
22
|
async def async_validate_login(self, username: str, password: str) -> None: ...
|
23
23
|
async def async_get_or_create_credentials(self, flow_result: Mapping[str, str]) -> Credentials: ...
|
24
24
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
25
25
|
|
26
|
-
class CommandLineLoginFlow(LoginFlow):
|
26
|
+
class CommandLineLoginFlow(LoginFlow[CommandLineAuthProvider]):
|
27
27
|
async def async_step_init(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
@@ -50,7 +50,7 @@ class HassAuthProvider(AuthProvider):
|
|
50
50
|
_init_lock: Incomplete
|
51
51
|
def __init__(self, *args: Any, **kwargs: Any) -> None: ...
|
52
52
|
async def async_initialize(self) -> None: ...
|
53
|
-
async def async_login_flow(self, context: AuthFlowContext | None) ->
|
53
|
+
async def async_login_flow(self, context: AuthFlowContext | None) -> HassLoginFlow: ...
|
54
54
|
async def async_validate_login(self, username: str, password: str) -> None: ...
|
55
55
|
async def async_add_auth(self, username: str, password: str) -> None: ...
|
56
56
|
async def async_remove_auth(self, username: str) -> None: ...
|
@@ -60,5 +60,5 @@ class HassAuthProvider(AuthProvider):
|
|
60
60
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
61
61
|
async def async_will_remove_credentials(self, credentials: Credentials) -> None: ...
|
62
62
|
|
63
|
-
class HassLoginFlow(LoginFlow):
|
63
|
+
class HassLoginFlow(LoginFlow[HassAuthProvider]):
|
64
64
|
async def async_step_init(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
@@ -11,10 +11,10 @@ CONFIG_SCHEMA: Incomplete
|
|
11
11
|
class InvalidAuthError(HomeAssistantError): ...
|
12
12
|
|
13
13
|
class ExampleAuthProvider(AuthProvider):
|
14
|
-
async def async_login_flow(self, context: AuthFlowContext | None) ->
|
14
|
+
async def async_login_flow(self, context: AuthFlowContext | None) -> ExampleLoginFlow: ...
|
15
15
|
def async_validate_login(self, username: str, password: str) -> None: ...
|
16
16
|
async def async_get_or_create_credentials(self, flow_result: Mapping[str, str]) -> Credentials: ...
|
17
17
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
18
18
|
|
19
|
-
class ExampleLoginFlow(LoginFlow):
|
19
|
+
class ExampleLoginFlow(LoginFlow[ExampleAuthProvider]):
|
20
20
|
async def async_step_init(self, user_input: dict[str, str] | None = None) -> AuthFlowResult: ...
|
@@ -29,13 +29,13 @@ class TrustedNetworksAuthProvider(AuthProvider):
|
|
29
29
|
def trusted_proxies(self) -> list[IPNetwork]: ...
|
30
30
|
@property
|
31
31
|
def support_mfa(self) -> bool: ...
|
32
|
-
async def async_login_flow(self, context: AuthFlowContext | None) ->
|
32
|
+
async def async_login_flow(self, context: AuthFlowContext | None) -> TrustedNetworksLoginFlow: ...
|
33
33
|
async def async_get_or_create_credentials(self, flow_result: Mapping[str, str]) -> Credentials: ...
|
34
34
|
async def async_user_meta_for_credentials(self, credentials: Credentials) -> UserMeta: ...
|
35
35
|
def async_validate_access(self, ip_addr: IPAddress) -> None: ...
|
36
36
|
def async_validate_refresh_token(self, refresh_token: RefreshToken, remote_ip: str | None = None) -> None: ...
|
37
37
|
|
38
|
-
class TrustedNetworksLoginFlow(LoginFlow):
|
38
|
+
class TrustedNetworksLoginFlow(LoginFlow[TrustedNetworksAuthProvider]):
|
39
39
|
_available_users: Incomplete
|
40
40
|
_ip_address: Incomplete
|
41
41
|
_allow_bypass_login: Incomplete
|
@@ -1,17 +1,24 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
+
from collections.abc import Iterable
|
2
3
|
from dataclasses import dataclass
|
3
4
|
from pathlib import Path
|
4
5
|
|
5
6
|
RESTORE_BACKUP_FILE: str
|
6
|
-
|
7
|
+
KEEP_BACKUPS: Incomplete
|
8
|
+
KEEP_DATABASE: Incomplete
|
7
9
|
_LOGGER: Incomplete
|
8
10
|
|
9
11
|
@dataclass
|
10
12
|
class RestoreBackupFileContent:
|
11
13
|
backup_file_path: Path
|
12
|
-
|
14
|
+
password: str | None
|
15
|
+
remove_after_restore: bool
|
16
|
+
restore_database: bool
|
17
|
+
restore_homeassistant: bool
|
18
|
+
def __init__(self, backup_file_path, password, remove_after_restore, restore_database, restore_homeassistant) -> None: ...
|
13
19
|
|
20
|
+
def password_to_key(password: str) -> bytes: ...
|
14
21
|
def restore_backup_file_content(config_dir: Path) -> RestoreBackupFileContent | None: ...
|
15
|
-
def _clear_configuration_directory(config_dir: Path) -> None: ...
|
16
|
-
def _extract_backup(config_dir: Path,
|
22
|
+
def _clear_configuration_directory(config_dir: Path, keep: Iterable[str]) -> None: ...
|
23
|
+
def _extract_backup(config_dir: Path, restore_content: RestoreBackupFileContent) -> None: ...
|
17
24
|
def restore_backup(config_dir_path: str) -> bool: ...
|
@@ -7,7 +7,7 @@ from .exceptions import HomeAssistantError as HomeAssistantError
|
|
7
7
|
from .helpers import area_registry as area_registry, category_registry as category_registry, device_registry as device_registry, entity as entity, entity_registry as entity_registry, floor_registry as floor_registry, issue_registry as issue_registry, label_registry as label_registry, recorder as recorder, restore_state as restore_state, template as template, translation as translation
|
8
8
|
from .helpers.dispatcher import async_dispatcher_send_internal as async_dispatcher_send_internal
|
9
9
|
from .helpers.storage import get_internal_store_manager as get_internal_store_manager
|
10
|
-
from .helpers.system_info import async_get_system_info as async_get_system_info
|
10
|
+
from .helpers.system_info import async_get_system_info as async_get_system_info
|
11
11
|
from .helpers.typing import ConfigType as ConfigType
|
12
12
|
from .runner import RuntimeConfig as RuntimeConfig
|
13
13
|
from .setup import _setup_started as _setup_started, async_get_setup_timings as async_get_setup_timings, async_notify_setup_error as async_notify_setup_error, async_set_domains_to_be_loaded as async_set_domains_to_be_loaded, async_setup_component as async_setup_component
|
@@ -15,6 +15,7 @@ from .util.async_ import create_eager_task as create_eager_task
|
|
15
15
|
from .util.hass_dict import HassKey as HassKey
|
16
16
|
from .util.logging import async_activate_log_queue_handler as async_activate_log_queue_handler
|
17
17
|
from .util.package import async_get_user_site as async_get_user_site, is_docker_env as is_docker_env, is_virtual_env as is_virtual_env
|
18
|
+
from .util.system_info import is_official_image as is_official_image
|
18
19
|
from _typeshed import Incomplete
|
19
20
|
from anyio._backends import _asyncio as _asyncio
|
20
21
|
from logging.handlers import RotatingFileHandler, TimedRotatingFileHandler
|
@@ -2,11 +2,10 @@ from . import AbodeSystem as AbodeSystem
|
|
2
2
|
from .const import DOMAIN as DOMAIN
|
3
3
|
from .entity import AbodeDevice as AbodeDevice
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS,
|
5
|
+
from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_HS_COLOR as ATTR_HS_COLOR, ColorMode as ColorMode, DEFAULT_MAX_KELVIN as DEFAULT_MAX_KELVIN, DEFAULT_MIN_KELVIN as DEFAULT_MIN_KELVIN, LightEntity as LightEntity
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
8
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
-
from homeassistant.util.color import color_temperature_kelvin_to_mired as color_temperature_kelvin_to_mired, color_temperature_mired_to_kelvin as color_temperature_mired_to_kelvin
|
10
9
|
from jaraco.abode.devices.light import Light as Light
|
11
10
|
from typing import Any
|
12
11
|
|
@@ -15,6 +14,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
|
|
15
14
|
class AbodeLight(AbodeDevice, LightEntity):
|
16
15
|
_device: Light
|
17
16
|
_attr_name: Incomplete
|
17
|
+
_attr_max_color_temp_kelvin = DEFAULT_MAX_KELVIN
|
18
|
+
_attr_min_color_temp_kelvin = DEFAULT_MIN_KELVIN
|
18
19
|
def turn_on(self, **kwargs: Any) -> None: ...
|
19
20
|
def turn_off(self, **kwargs: Any) -> None: ...
|
20
21
|
@property
|
@@ -22,7 +23,7 @@ class AbodeLight(AbodeDevice, LightEntity):
|
|
22
23
|
@property
|
23
24
|
def brightness(self) -> int | None: ...
|
24
25
|
@property
|
25
|
-
def
|
26
|
+
def color_temp_kelvin(self) -> int | None: ...
|
26
27
|
@property
|
27
28
|
def hs_color(self) -> tuple[float, float] | None: ...
|
28
29
|
@property
|
@@ -0,0 +1,9 @@
|
|
1
|
+
from .coordinator import AcaiaConfigEntry as AcaiaConfigEntry, AcaiaCoordinator as AcaiaCoordinator
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.const import Platform as Platform
|
4
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
|
6
|
+
PLATFORMS: Incomplete
|
7
|
+
|
8
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AcaiaConfigEntry) -> bool: ...
|
9
|
+
async def async_unload_entry(hass: HomeAssistant, entry: AcaiaConfigEntry) -> bool: ...
|
@@ -0,0 +1,24 @@
|
|
1
|
+
from .coordinator import AcaiaConfigEntry as AcaiaConfigEntry
|
2
|
+
from .entity import AcaiaEntity as AcaiaEntity
|
3
|
+
from aioacaia.acaiascale import AcaiaScale as AcaiaScale
|
4
|
+
from collections.abc import Callable as Callable
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
|
10
|
+
PARALLEL_UPDATES: int
|
11
|
+
|
12
|
+
@dataclass(kw_only=True, frozen=True)
|
13
|
+
class AcaiaBinarySensorEntityDescription(BinarySensorEntityDescription):
|
14
|
+
is_on_fn: Callable[[AcaiaScale], bool]
|
15
|
+
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=..., is_on_fn) -> None: ...
|
16
|
+
|
17
|
+
BINARY_SENSORS: tuple[AcaiaBinarySensorEntityDescription, ...]
|
18
|
+
|
19
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AcaiaConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
20
|
+
|
21
|
+
class AcaiaBinarySensor(AcaiaEntity, BinarySensorEntity):
|
22
|
+
entity_description: AcaiaBinarySensorEntityDescription
|
23
|
+
@property
|
24
|
+
def is_on(self) -> bool: ...
|
@@ -0,0 +1,24 @@
|
|
1
|
+
from .coordinator import AcaiaConfigEntry as AcaiaConfigEntry
|
2
|
+
from .entity import AcaiaEntity as AcaiaEntity
|
3
|
+
from aioacaia.acaiascale import AcaiaScale as AcaiaScale
|
4
|
+
from collections.abc import Callable as Callable, Coroutine
|
5
|
+
from dataclasses import dataclass
|
6
|
+
from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
|
7
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
9
|
+
from typing import Any
|
10
|
+
|
11
|
+
PARALLEL_UPDATES: int
|
12
|
+
|
13
|
+
@dataclass(kw_only=True, frozen=True)
|
14
|
+
class AcaiaButtonEntityDescription(ButtonEntityDescription):
|
15
|
+
press_fn: Callable[[AcaiaScale], Coroutine[Any, Any, 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
|
+
BUTTONS: tuple[AcaiaButtonEntityDescription, ...]
|
19
|
+
|
20
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AcaiaConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
21
|
+
|
22
|
+
class AcaiaButton(AcaiaEntity, ButtonEntity):
|
23
|
+
entity_description: AcaiaButtonEntityDescription
|
24
|
+
async def async_press(self) -> None: ...
|
@@ -0,0 +1,18 @@
|
|
1
|
+
from .const import CONF_IS_NEW_STYLE_SCALE as CONF_IS_NEW_STYLE_SCALE, DOMAIN as DOMAIN
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from homeassistant.components.bluetooth import BluetoothServiceInfoBleak as BluetoothServiceInfoBleak, async_discovered_service_info as async_discovered_service_info
|
4
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
5
|
+
from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_NAME as CONF_NAME
|
6
|
+
from homeassistant.helpers.device_registry import format_mac as format_mac
|
7
|
+
from homeassistant.helpers.selector import SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
|
8
|
+
from typing import Any
|
9
|
+
|
10
|
+
_LOGGER: Incomplete
|
11
|
+
|
12
|
+
class AcaiaConfigFlow(ConfigFlow, domain=DOMAIN):
|
13
|
+
_discovered: Incomplete
|
14
|
+
_discovered_devices: Incomplete
|
15
|
+
def __init__(self) -> None: ...
|
16
|
+
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
17
|
+
async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
|
18
|
+
async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -0,0 +1,19 @@
|
|
1
|
+
from .const import CONF_IS_NEW_STYLE_SCALE as CONF_IS_NEW_STYLE_SCALE
|
2
|
+
from _typeshed import Incomplete
|
3
|
+
from aioacaia.acaiascale import AcaiaScale
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
+
from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
|
+
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
|
8
|
+
|
9
|
+
SCAN_INTERVAL: Incomplete
|
10
|
+
_LOGGER: Incomplete
|
11
|
+
type AcaiaConfigEntry = ConfigEntry[AcaiaCoordinator]
|
12
|
+
|
13
|
+
class AcaiaCoordinator(DataUpdateCoordinator[None]):
|
14
|
+
config_entry: AcaiaConfigEntry
|
15
|
+
_scale: Incomplete
|
16
|
+
def __init__(self, hass: HomeAssistant, entry: AcaiaConfigEntry) -> None: ...
|
17
|
+
@property
|
18
|
+
def scale(self) -> AcaiaScale: ...
|
19
|
+
async def _async_update_data(self) -> None: ...
|
@@ -1,6 +1,5 @@
|
|
1
|
-
from .
|
2
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
1
|
+
from . import AcaiaConfigEntry as AcaiaConfigEntry
|
3
2
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
4
3
|
from typing import Any
|
5
4
|
|
6
|
-
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry:
|
5
|
+
async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: AcaiaConfigEntry) -> dict[str, Any]: ...
|
@@ -0,0 +1,17 @@
|
|
1
|
+
from .const import DOMAIN as DOMAIN
|
2
|
+
from .coordinator import AcaiaCoordinator as AcaiaCoordinator
|
3
|
+
from dataclasses import dataclass
|
4
|
+
from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH as CONNECTION_BLUETOOTH, DeviceInfo as DeviceInfo, format_mac as format_mac
|
5
|
+
from homeassistant.helpers.entity import EntityDescription as EntityDescription
|
6
|
+
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
7
|
+
|
8
|
+
@dataclass
|
9
|
+
class AcaiaEntity(CoordinatorEntity[AcaiaCoordinator]):
|
10
|
+
_attr_has_entity_name = ...
|
11
|
+
entity_description = ...
|
12
|
+
_scale = ...
|
13
|
+
_attr_unique_id = ...
|
14
|
+
_attr_device_info = ...
|
15
|
+
def __init__(self, coordinator: AcaiaCoordinator, entity_description: EntityDescription) -> None: ...
|
16
|
+
@property
|
17
|
+
def available(self) -> bool: ...
|
@@ -0,0 +1,44 @@
|
|
1
|
+
from .coordinator import AcaiaConfigEntry as AcaiaConfigEntry
|
2
|
+
from .entity import AcaiaEntity as AcaiaEntity
|
3
|
+
from _typeshed import Incomplete
|
4
|
+
from aioacaia.acaiascale import AcaiaDeviceState as AcaiaDeviceState, AcaiaScale as AcaiaScale
|
5
|
+
from collections.abc import Callable as Callable
|
6
|
+
from dataclasses import dataclass
|
7
|
+
from homeassistant.components.sensor import RestoreSensor as RestoreSensor, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorExtraStoredData as SensorExtraStoredData, SensorStateClass as SensorStateClass
|
8
|
+
from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfMass as UnitOfMass, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate
|
9
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
+
|
12
|
+
PARALLEL_UPDATES: int
|
13
|
+
|
14
|
+
@dataclass(kw_only=True, frozen=True)
|
15
|
+
class AcaiaSensorEntityDescription(SensorEntityDescription):
|
16
|
+
value_fn: Callable[[AcaiaScale], int | float | None]
|
17
|
+
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: ...
|
18
|
+
|
19
|
+
@dataclass(kw_only=True, frozen=True)
|
20
|
+
class AcaiaDynamicUnitSensorEntityDescription(AcaiaSensorEntityDescription):
|
21
|
+
unit_fn: Callable[[AcaiaDeviceState], str] | None = ...
|
22
|
+
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, unit_fn=...) -> None: ...
|
23
|
+
|
24
|
+
SENSORS: tuple[AcaiaSensorEntityDescription, ...]
|
25
|
+
RESTORE_SENSORS: tuple[AcaiaSensorEntityDescription, ...]
|
26
|
+
|
27
|
+
async def async_setup_entry(hass: HomeAssistant, entry: AcaiaConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
28
|
+
|
29
|
+
class AcaiaSensor(AcaiaEntity, SensorEntity):
|
30
|
+
entity_description: AcaiaDynamicUnitSensorEntityDescription
|
31
|
+
@property
|
32
|
+
def native_unit_of_measurement(self) -> str | None: ...
|
33
|
+
@property
|
34
|
+
def native_value(self) -> int | float | None: ...
|
35
|
+
|
36
|
+
class AcaiaRestoreSensor(AcaiaEntity, RestoreSensor):
|
37
|
+
entity_description: AcaiaSensorEntityDescription
|
38
|
+
_restored_data: SensorExtraStoredData | None
|
39
|
+
_attr_native_value: Incomplete
|
40
|
+
_attr_native_unit_of_measurement: Incomplete
|
41
|
+
async def async_added_to_hass(self) -> None: ...
|
42
|
+
def _handle_coordinator_update(self) -> None: ...
|
43
|
+
@property
|
44
|
+
def available(self) -> bool: ...
|
@@ -20,7 +20,6 @@ class AdaxDevice(ClimateEntity):
|
|
20
20
|
_attr_supported_features: Incomplete
|
21
21
|
_attr_target_temperature_step = PRECISION_WHOLE
|
22
22
|
_attr_temperature_unit: Incomplete
|
23
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
24
23
|
_device_id: Incomplete
|
25
24
|
_adax_data_handler: Incomplete
|
26
25
|
_attr_unique_id: Incomplete
|
@@ -29,7 +29,6 @@ class Airtouch5ClimateEntity(ClimateEntity, Airtouch5Entity):
|
|
29
29
|
_attr_translation_key = DOMAIN
|
30
30
|
_attr_target_temperature_step: int
|
31
31
|
_attr_name: Incomplete
|
32
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
33
32
|
|
34
33
|
class Airtouch5AC(Airtouch5ClimateEntity):
|
35
34
|
_ability: Incomplete
|
@@ -24,7 +24,6 @@ class AirzoneClimate(AirzoneZoneEntity, ClimateEntity):
|
|
24
24
|
_attr_name: Incomplete
|
25
25
|
_speeds: dict[int, str]
|
26
26
|
_speeds_reverse: dict[str, int]
|
27
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
28
27
|
_attr_unique_id: Incomplete
|
29
28
|
_attr_supported_features: Incomplete
|
30
29
|
_attr_target_temperature_step: Incomplete
|
@@ -22,7 +22,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: AirzoneCloudConfigEntry,
|
|
22
22
|
class AirzoneClimate(AirzoneEntity, ClimateEntity, metaclass=abc.ABCMeta):
|
23
23
|
_attr_name: Incomplete
|
24
24
|
_attr_temperature_unit: Incomplete
|
25
|
-
_enable_turn_on_off_backwards_compatibility: bool
|
26
25
|
_attr_target_temperature_step: Incomplete
|
27
26
|
_attr_hvac_modes: Incomplete
|
28
27
|
def _init_attributes(self) -> None: ...
|
@@ -30,7 +29,6 @@ class AirzoneClimate(AirzoneEntity, ClimateEntity, metaclass=abc.ABCMeta):
|
|
30
29
|
_attr_current_temperature: Incomplete
|
31
30
|
_attr_current_humidity: Incomplete
|
32
31
|
_attr_hvac_action: Incomplete
|
33
|
-
_attr_fan_mode: Incomplete
|
34
32
|
_attr_hvac_mode: Incomplete
|
35
33
|
_attr_max_temp: Incomplete
|
36
34
|
_attr_min_temp: Incomplete
|
@@ -43,6 +41,9 @@ class AirzoneDeviceClimate(AirzoneClimate, metaclass=abc.ABCMeta):
|
|
43
41
|
_attr_supported_features: Incomplete
|
44
42
|
_speeds: dict[int, str]
|
45
43
|
_speeds_reverse: dict[str, int]
|
44
|
+
def _init_attributes(self) -> None: ...
|
45
|
+
_attr_fan_mode: Incomplete
|
46
|
+
def _async_update_attrs(self) -> None: ...
|
46
47
|
_attr_fan_modes: Incomplete
|
47
48
|
def _initialize_fan_speeds(self) -> None: ...
|
48
49
|
async def async_turn_on(self) -> None: ...
|
@@ -1,12 +1,11 @@
|
|
1
1
|
import asyncio
|
2
|
-
from .const import ATTR_CHANGED_BY as ATTR_CHANGED_BY, ATTR_CODE_ARM_REQUIRED as ATTR_CODE_ARM_REQUIRED, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState, CodeFormat as CodeFormat, DOMAIN as DOMAIN
|
2
|
+
from .const import ATTR_CHANGED_BY as ATTR_CHANGED_BY, ATTR_CODE_ARM_REQUIRED as ATTR_CODE_ARM_REQUIRED, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState, CodeFormat as CodeFormat, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
5
|
from homeassistant.const import ATTR_CODE as ATTR_CODE, ATTR_CODE_FORMAT as ATTR_CODE_FORMAT, SERVICE_ALARM_ARM_AWAY as SERVICE_ALARM_ARM_AWAY, SERVICE_ALARM_ARM_CUSTOM_BYPASS as SERVICE_ALARM_ARM_CUSTOM_BYPASS, SERVICE_ALARM_ARM_HOME as SERVICE_ALARM_ARM_HOME, SERVICE_ALARM_ARM_NIGHT as SERVICE_ALARM_ARM_NIGHT, SERVICE_ALARM_ARM_VACATION as SERVICE_ALARM_ARM_VACATION, SERVICE_ALARM_DISARM as SERVICE_ALARM_DISARM, SERVICE_ALARM_TRIGGER as SERVICE_ALARM_TRIGGER
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
7
|
from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
|
8
8
|
from homeassistant.helpers.config_validation import make_entity_service_schema as make_entity_service_schema
|
9
|
-
from homeassistant.helpers.deprecation import 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
|
10
9
|
from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
|
11
10
|
from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
|
12
11
|
from homeassistant.helpers.entity_platform import EntityPlatform as EntityPlatform
|
@@ -81,7 +80,3 @@ class AlarmControlPanelEntity(Entity, cached_properties=CACHED_PROPERTIES_WITH_A
|
|
81
80
|
async def async_internal_added_to_hass(self) -> None: ...
|
82
81
|
def async_registry_entry_updated(self) -> None: ...
|
83
82
|
def _async_read_entity_options(self) -> None: ...
|
84
|
-
|
85
|
-
__getattr__: Incomplete
|
86
|
-
__dir__: Incomplete
|
87
|
-
__all__: Incomplete
|
@@ -1,6 +1,4 @@
|
|
1
|
-
from _typeshed import Incomplete
|
2
1
|
from enum import IntFlag, StrEnum
|
3
|
-
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
|
4
2
|
from typing import Final
|
5
3
|
|
6
4
|
DOMAIN: Final[str]
|
@@ -23,9 +21,6 @@ class CodeFormat(StrEnum):
|
|
23
21
|
TEXT = 'text'
|
24
22
|
NUMBER = 'number'
|
25
23
|
|
26
|
-
_DEPRECATED_FORMAT_TEXT: Final[Incomplete]
|
27
|
-
_DEPRECATED_FORMAT_NUMBER: Final[Incomplete]
|
28
|
-
|
29
24
|
class AlarmControlPanelEntityFeature(IntFlag):
|
30
25
|
ARM_HOME = 1
|
31
26
|
ARM_AWAY = 2
|
@@ -34,12 +29,6 @@ class AlarmControlPanelEntityFeature(IntFlag):
|
|
34
29
|
ARM_CUSTOM_BYPASS = 16
|
35
30
|
ARM_VACATION = 32
|
36
31
|
|
37
|
-
_DEPRECATED_SUPPORT_ALARM_ARM_HOME: Final[Incomplete]
|
38
|
-
_DEPRECATED_SUPPORT_ALARM_ARM_AWAY: Final[Incomplete]
|
39
|
-
_DEPRECATED_SUPPORT_ALARM_ARM_NIGHT: Final[Incomplete]
|
40
|
-
_DEPRECATED_SUPPORT_ALARM_TRIGGER: Final[Incomplete]
|
41
|
-
_DEPRECATED_SUPPORT_ALARM_ARM_CUSTOM_BYPASS: Final[Incomplete]
|
42
|
-
_DEPRECATED_SUPPORT_ALARM_ARM_VACATION: Final[Incomplete]
|
43
32
|
CONDITION_TRIGGERED: Final[str]
|
44
33
|
CONDITION_DISARMED: Final[str]
|
45
34
|
CONDITION_ARMED_HOME: Final[str]
|
@@ -47,6 +36,3 @@ CONDITION_ARMED_AWAY: Final[str]
|
|
47
36
|
CONDITION_ARMED_NIGHT: Final[str]
|
48
37
|
CONDITION_ARMED_VACATION: Final[str]
|
49
38
|
CONDITION_ARMED_CUSTOM_BYPASS: Final[str]
|
50
|
-
__getattr__: Incomplete
|
51
|
-
__dir__: Incomplete
|
52
|
-
__all__: Incomplete
|
@@ -1,6 +1,7 @@
|
|
1
|
+
from . import AnalyticsInsightsConfigEntry as AnalyticsInsightsConfigEntry
|
1
2
|
from .const import CONF_TRACKED_ADDONS as CONF_TRACKED_ADDONS, CONF_TRACKED_CUSTOM_INTEGRATIONS as CONF_TRACKED_CUSTOM_INTEGRATIONS, CONF_TRACKED_INTEGRATIONS as CONF_TRACKED_INTEGRATIONS, DOMAIN as DOMAIN, LOGGER as LOGGER
|
2
3
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.config_entries import
|
4
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
4
5
|
from homeassistant.core import callback as callback
|
5
6
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
6
7
|
from homeassistant.helpers.selector import SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig
|
@@ -10,7 +11,7 @@ INTEGRATION_TYPES_WITHOUT_ANALYTICS: Incomplete
|
|
10
11
|
|
11
12
|
class HomeassistantAnalyticsConfigFlow(ConfigFlow, domain=DOMAIN):
|
12
13
|
@staticmethod
|
13
|
-
def async_get_options_flow(config_entry:
|
14
|
+
def async_get_options_flow(config_entry: AnalyticsInsightsConfigEntry) -> HomeassistantAnalyticsOptionsFlowHandler: ...
|
14
15
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
15
16
|
|
16
17
|
class HomeassistantAnalyticsOptionsFlowHandler(OptionsFlow):
|
@@ -28,7 +28,6 @@ async def device_scan(hass: HomeAssistant, identifier: str | None, loop: asyncio
|
|
28
28
|
class AppleTVConfigFlow(ConfigFlow, domain=DOMAIN):
|
29
29
|
VERSION: int
|
30
30
|
scan_filter: str | None
|
31
|
-
all_identifiers: set[str]
|
32
31
|
atv: BaseConfig | None
|
33
32
|
atv_identifiers: list[str] | None
|
34
33
|
_host: str
|
@@ -39,6 +38,7 @@ class AppleTVConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
39
38
|
@staticmethod
|
40
39
|
def async_get_options_flow(config_entry: ConfigEntry) -> SchemaOptionsFlowHandler: ...
|
41
40
|
credentials: Incomplete
|
41
|
+
all_identifiers: Incomplete
|
42
42
|
def __init__(self) -> None: ...
|
43
43
|
@property
|
44
44
|
def device_identifier(self) -> str | None: ...
|
@@ -20,6 +20,7 @@ class ApSystemsMaxOutputNumber(ApSystemsEntity, NumberEntity):
|
|
20
20
|
_attr_native_max_value: Incomplete
|
21
21
|
_attr_native_min_value: Incomplete
|
22
22
|
def __init__(self, data: ApSystemsData) -> None: ...
|
23
|
+
_attr_available: bool
|
23
24
|
_attr_native_value: Incomplete
|
24
25
|
async def async_update(self) -> None: ...
|
25
26
|
async def async_set_native_value(self, value: float) -> None: ...
|
@@ -2,6 +2,7 @@ from .coordinator import AutarcoDataUpdateCoordinator as AutarcoDataUpdateCoordi
|
|
2
2
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
3
3
|
from homeassistant.const import CONF_EMAIL as CONF_EMAIL, CONF_PASSWORD as CONF_PASSWORD, Platform as Platform
|
4
4
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
5
|
+
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
5
6
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
6
7
|
|
7
8
|
PLATFORMS: list[Platform]
|