homeassistant-stubs 2024.10.4__py3-none-any.whl → 2024.11.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 +8 -5
- homeassistant-stubs/auth/mfa_modules/notify.pyi +1 -0
- homeassistant-stubs/auth/models.pyi +8 -5
- homeassistant-stubs/auth/permissions/types.pyi +7 -0
- homeassistant-stubs/auth/permissions/util.pyi +2 -0
- homeassistant-stubs/auth/providers/__init__.pyi +5 -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 -3
- homeassistant-stubs/auth/providers/trusted_networks.pyi +5 -2
- homeassistant-stubs/bootstrap.pyi +1 -0
- homeassistant-stubs/components/abode/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/accuweather/__init__.pyi +1 -9
- homeassistant-stubs/components/accuweather/coordinator.pyi +11 -2
- homeassistant-stubs/components/accuweather/diagnostics.pyi +1 -1
- homeassistant-stubs/components/accuweather/sensor.pyi +1 -2
- homeassistant-stubs/components/accuweather/system_health.pyi +1 -1
- homeassistant-stubs/components/accuweather/weather.pyi +1 -2
- homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
- homeassistant-stubs/components/adguard/__init__.pyi +1 -0
- homeassistant-stubs/components/adguard/config_flow.pyi +1 -1
- homeassistant-stubs/components/aftership/__init__.pyi +2 -0
- homeassistant-stubs/components/airgradient/__init__.pyi +1 -0
- homeassistant-stubs/components/airgradient/update.pyi +0 -2
- homeassistant-stubs/components/airly/__init__.pyi +1 -0
- homeassistant-stubs/components/airnow/__init__.pyi +1 -0
- homeassistant-stubs/components/airthings/__init__.pyi +3 -0
- homeassistant-stubs/components/airthings_ble/__init__.pyi +2 -11
- homeassistant-stubs/components/airthings_ble/coordinator.pyi +21 -0
- homeassistant-stubs/components/airthings_ble/sensor.pyi +1 -1
- homeassistant-stubs/components/airtouch5/__init__.pyi +2 -1
- homeassistant-stubs/components/airvisual/__init__.pyi +1 -0
- homeassistant-stubs/components/airvisual/config_flow.pyi +1 -1
- homeassistant-stubs/components/airvisual_pro/__init__.pyi +1 -0
- homeassistant-stubs/components/airvisual_pro/config_flow.pyi +2 -3
- homeassistant-stubs/components/airzone/__init__.pyi +1 -0
- homeassistant-stubs/components/airzone/switch.pyi +33 -0
- homeassistant-stubs/components/airzone_cloud/__init__.pyi +1 -0
- homeassistant-stubs/components/airzone_cloud/select.pyi +10 -2
- homeassistant-stubs/components/airzone_cloud/switch.pyi +33 -0
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +13 -6
- homeassistant-stubs/components/alarm_control_panel/const.pyi +12 -0
- homeassistant-stubs/components/alarm_control_panel/device_condition.pyi +2 -2
- homeassistant-stubs/components/alarm_control_panel/device_trigger.pyi +2 -2
- homeassistant-stubs/components/alarm_control_panel/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
- homeassistant-stubs/components/alexa/handlers.pyi +2 -2
- homeassistant-stubs/components/amberelectric/__init__.pyi +1 -0
- homeassistant-stubs/components/ambient_network/__init__.pyi +1 -0
- homeassistant-stubs/components/ambient_station/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics/__init__.pyi +2 -0
- homeassistant-stubs/components/analytics/analytics.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/__init__.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/config_flow.pyi +1 -1
- homeassistant-stubs/components/analytics_insights/const.pyi +1 -0
- homeassistant-stubs/components/analytics_insights/coordinator.pyi +8 -2
- homeassistant-stubs/components/analytics_insights/sensor.pyi +4 -0
- homeassistant-stubs/components/android_ip_webcam/__init__.pyi +3 -5
- homeassistant-stubs/components/android_ip_webcam/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/android_ip_webcam/camera.pyi +2 -3
- homeassistant-stubs/components/android_ip_webcam/coordinator.pyi +3 -2
- homeassistant-stubs/components/android_ip_webcam/sensor.pyi +2 -4
- homeassistant-stubs/components/android_ip_webcam/switch.pyi +2 -4
- homeassistant-stubs/components/androidtv/__init__.pyi +3 -1
- homeassistant-stubs/components/androidtv/config_flow.pyi +2 -1
- homeassistant-stubs/components/androidtv/const.pyi +2 -1
- homeassistant-stubs/components/androidtv/entity.pyi +5 -2
- homeassistant-stubs/components/androidtv/media_player.pyi +5 -6
- homeassistant-stubs/components/androidtv_remote/config_flow.pyi +5 -7
- homeassistant-stubs/components/anova/__init__.pyi +2 -1
- homeassistant-stubs/components/anova/config_flow.pyi +2 -1
- homeassistant-stubs/components/anova/models.pyi +1 -0
- homeassistant-stubs/components/anthemav/__init__.pyi +2 -0
- homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -1
- homeassistant-stubs/components/apcupsd/__init__.pyi +1 -0
- homeassistant-stubs/components/apple_tv/__init__.pyi +1 -0
- homeassistant-stubs/components/apple_tv/config_flow.pyi +5 -1
- homeassistant-stubs/components/apsystems/__init__.pyi +1 -0
- homeassistant-stubs/components/apsystems/sensor.pyi +2 -2
- homeassistant-stubs/components/aquostv/media_player.pyi +1 -1
- homeassistant-stubs/components/aranet/__init__.pyi +3 -3
- homeassistant-stubs/components/aranet/sensor.pyi +4 -4
- homeassistant-stubs/components/arcam_fmj/__init__.pyi +1 -0
- homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -0
- homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/__init__.pyi +4 -6
- homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +2 -3
- homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +2 -0
- homeassistant-stubs/components/aseko_pool_live/sensor.pyi +2 -4
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -1
- homeassistant-stubs/components/asuswrt/__init__.pyi +1 -0
- homeassistant-stubs/components/asuswrt/bridge.pyi +4 -2
- homeassistant-stubs/components/autarco/__init__.pyi +1 -0
- homeassistant-stubs/components/auth/__init__.pyi +5 -0
- homeassistant-stubs/components/auth/login_flow.pyi +1 -1
- homeassistant-stubs/components/auth/mfa_setup_flow.pyi +4 -2
- homeassistant-stubs/components/automation/__init__.pyi +0 -14
- homeassistant-stubs/components/awair/__init__.pyi +4 -6
- homeassistant-stubs/components/awair/config_flow.pyi +1 -0
- homeassistant-stubs/components/awair/coordinator.pyi +1 -0
- homeassistant-stubs/components/awair/sensor.pyi +2 -2
- homeassistant-stubs/components/axis/__init__.pyi +1 -0
- homeassistant-stubs/components/axis/config_flow.pyi +2 -2
- homeassistant-stubs/components/backup/__init__.pyi +2 -2
- homeassistant-stubs/components/backup/const.pyi +3 -0
- homeassistant-stubs/components/backup/http.pyi +1 -1
- homeassistant-stubs/components/backup/manager.pyi +25 -11
- homeassistant-stubs/components/backup/websocket.pyi +2 -2
- homeassistant-stubs/components/baf/__init__.pyi +2 -0
- homeassistant-stubs/components/bang_olufsen/__init__.pyi +3 -2
- homeassistant-stubs/components/bang_olufsen/const.pyi +3 -2
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +14 -6
- homeassistant-stubs/components/bang_olufsen/websocket.pyi +1 -0
- homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -3
- homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
- homeassistant-stubs/components/blue_current/config_flow.pyi +1 -2
- homeassistant-stubs/components/blue_current/sensor.pyi +2 -3
- homeassistant-stubs/components/blueprint/__init__.pyi +2 -2
- homeassistant-stubs/components/bluesound/__init__.pyi +2 -1
- homeassistant-stubs/components/bluesound/const.pyi +0 -4
- homeassistant-stubs/components/bluesound/media_player.pyi +6 -14
- homeassistant-stubs/components/bluesound/services.pyi +21 -0
- homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +1 -1
- homeassistant-stubs/components/bluetooth/active_update_processor.pyi +1 -1
- homeassistant-stubs/components/bluetooth/match.pyi +1 -1
- homeassistant-stubs/components/bluetooth/models.pyi +4 -0
- homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +4 -4
- homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +4 -2
- homeassistant-stubs/components/bond/__init__.pyi +1 -0
- homeassistant-stubs/components/braviatv/config_flow.pyi +1 -2
- homeassistant-stubs/components/braviatv/coordinator.pyi +1 -1
- homeassistant-stubs/components/brother/__init__.pyi +1 -0
- homeassistant-stubs/components/brother/config_flow.pyi +2 -4
- homeassistant-stubs/components/bryant_evolution/__init__.pyi +2 -0
- homeassistant-stubs/components/bryant_evolution/config_flow.pyi +1 -4
- homeassistant-stubs/components/bthome/config_flow.pyi +1 -1
- homeassistant-stubs/components/bthome/coordinator.pyi +1 -1
- homeassistant-stubs/components/bthome/types.pyi +2 -0
- homeassistant-stubs/components/button/__init__.pyi +0 -3
- homeassistant-stubs/components/calendar/trigger.pyi +3 -1
- homeassistant-stubs/components/cambridge_audio/__init__.pyi +14 -0
- homeassistant-stubs/components/cambridge_audio/config_flow.pyi +14 -0
- homeassistant-stubs/components/cambridge_audio/const.pyi +9 -0
- homeassistant-stubs/components/cambridge_audio/diagnostics.pyi +5 -0
- homeassistant-stubs/components/cambridge_audio/entity.pyi +21 -0
- homeassistant-stubs/components/cambridge_audio/media_player.pyi +71 -0
- homeassistant-stubs/components/cambridge_audio/select.pyi +34 -0
- homeassistant-stubs/components/cambridge_audio/switch.pyi +30 -0
- homeassistant-stubs/components/camera/__init__.pyi +39 -22
- homeassistant-stubs/components/camera/const.pyi +1 -2
- homeassistant-stubs/components/camera/diagnostics.pyi +1 -1
- homeassistant-stubs/components/camera/helper.pyi +6 -0
- homeassistant-stubs/components/camera/webrtc.pyi +96 -0
- homeassistant-stubs/components/canary/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/canary/sensor.pyi +1 -0
- homeassistant-stubs/components/cert_expiry/__init__.pyi +1 -0
- homeassistant-stubs/components/climate/__init__.pyi +0 -24
- homeassistant-stubs/components/cloud/client.pyi +5 -1
- homeassistant-stubs/components/cloud/const.pyi +1 -0
- homeassistant-stubs/components/cloud/http_api.pyi +2 -2
- homeassistant-stubs/components/cloud/prefs.pyi +4 -2
- homeassistant-stubs/components/co2signal/__init__.pyi +1 -0
- homeassistant-stubs/components/co2signal/config_flow.pyi +1 -2
- homeassistant-stubs/components/config/automation.pyi +1 -1
- homeassistant-stubs/components/config/script.pyi +1 -1
- homeassistant-stubs/components/config/view.pyi +2 -2
- homeassistant-stubs/components/configurator/__init__.pyi +2 -0
- homeassistant-stubs/components/counter/__init__.pyi +1 -1
- homeassistant-stubs/components/cover/__init__.pyi +12 -8
- homeassistant-stubs/components/cover/device_condition.pyi +2 -2
- homeassistant-stubs/components/cover/device_trigger.pyi +2 -2
- homeassistant-stubs/components/cover/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/date/__init__.pyi +0 -4
- homeassistant-stubs/components/datetime/__init__.pyi +0 -4
- homeassistant-stubs/components/deako/__init__.pyi +2 -0
- homeassistant-stubs/components/deconz/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/deconz/binary_sensor.pyi +10 -1
- homeassistant-stubs/components/deconz/config_flow.pyi +1 -1
- homeassistant-stubs/components/deconz/device_trigger.pyi +4 -0
- homeassistant-stubs/components/deconz/entity.pyi +6 -2
- homeassistant-stubs/components/deconz/light.pyi +1 -1
- homeassistant-stubs/components/deconz/number.pyi +3 -1
- homeassistant-stubs/components/demo/alarm_control_panel.pyi +2 -1
- homeassistant-stubs/components/demo/update.pyi +5 -2
- homeassistant-stubs/components/derivative/sensor.pyi +1 -4
- homeassistant-stubs/components/device_automation/__init__.pyi +2 -0
- homeassistant-stubs/components/device_tracker/config_entry.pyi +0 -10
- homeassistant-stubs/components/device_tracker/legacy.pyi +0 -2
- homeassistant-stubs/components/devolo_home_control/__init__.pyi +2 -0
- homeassistant-stubs/components/devolo_home_control/config_flow.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/__init__.pyi +4 -2
- homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/config_flow.pyi +4 -1
- homeassistant-stubs/components/devolo_home_network/coordinator.pyi +13 -0
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +4 -3
- homeassistant-stubs/components/devolo_home_network/entity.pyi +7 -3
- homeassistant-stubs/components/devolo_home_network/image.pyi +2 -2
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +9 -10
- homeassistant-stubs/components/devolo_home_network/switch.pyi +6 -6
- homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
- homeassistant-stubs/components/diagnostics/util.pyi +1 -1
- homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
- homeassistant-stubs/components/discovergy/config_flow.pyi +2 -2
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
- homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -1
- homeassistant-stubs/components/dlna_dms/dms.pyi +1 -3
- homeassistant-stubs/components/doorbird/config_flow.pyi +1 -1
- homeassistant-stubs/components/doorbird/device.pyi +0 -6
- homeassistant-stubs/components/doorbird/models.pyi +1 -0
- homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +1 -2
- homeassistant-stubs/components/dsmr/__init__.pyi +1 -0
- homeassistant-stubs/components/duotecno/entity.pyi +1 -1
- homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
- homeassistant-stubs/components/ecowitt/__init__.pyi +2 -0
- homeassistant-stubs/components/efergy/__init__.pyi +2 -0
- homeassistant-stubs/components/electric_kiwi/config_flow.pyi +1 -4
- homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
- homeassistant-stubs/components/elgato/__init__.pyi +1 -0
- homeassistant-stubs/components/elkm1/__init__.pyi +1 -0
- homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/elkm1/config_flow.pyi +3 -1
- homeassistant-stubs/components/energy/data.pyi +1 -0
- homeassistant-stubs/components/energy/types.pyi +2 -0
- homeassistant-stubs/components/energy/websocket_api.pyi +3 -0
- homeassistant-stubs/components/enigma2/__init__.pyi +1 -0
- homeassistant-stubs/components/enigma2/config_flow.pyi +0 -2
- homeassistant-stubs/components/enigma2/media_player.pyi +1 -6
- homeassistant-stubs/components/enphase_envoy/__init__.pyi +3 -1
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +4 -6
- homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -0
- homeassistant-stubs/components/esphome/alarm_control_panel.pyi +5 -6
- homeassistant-stubs/components/esphome/assist_satellite.pyi +1 -1
- homeassistant-stubs/components/esphome/config_flow.pyi +6 -5
- homeassistant-stubs/components/esphome/entity.pyi +3 -3
- homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
- homeassistant-stubs/components/esphome/enum_mapper.pyi +1 -1
- homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +7 -3
- homeassistant-stubs/components/esphome/update.pyi +3 -1
- homeassistant-stubs/components/event/__init__.pyi +0 -3
- homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
- homeassistant-stubs/components/evohome/climate.pyi +2 -3
- homeassistant-stubs/components/evohome/entity.pyi +1 -1
- homeassistant-stubs/components/fan/__init__.pyi +0 -8
- homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
- homeassistant-stubs/components/feedreader/__init__.pyi +1 -0
- homeassistant-stubs/components/feedreader/config_flow.pyi +1 -3
- homeassistant-stubs/components/feedreader/event.pyi +1 -0
- homeassistant-stubs/components/filesize/__init__.pyi +1 -0
- homeassistant-stubs/components/fitbit/api.pyi +1 -1
- homeassistant-stubs/components/fitbit/config_flow.pyi +1 -2
- homeassistant-stubs/components/flexit_bacnet/sensor.pyi +2 -1
- homeassistant-stubs/components/flux_led/config_flow.pyi +3 -1
- homeassistant-stubs/components/forecast_solar/__init__.pyi +1 -0
- homeassistant-stubs/components/fritz/config_flow.pyi +5 -5
- homeassistant-stubs/components/fritz/update.pyi +1 -1
- homeassistant-stubs/components/fritzbox/climate.pyi +1 -0
- homeassistant-stubs/components/fritzbox/config_flow.pyi +5 -6
- homeassistant-stubs/components/fritzbox/coordinator.pyi +1 -0
- homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +2 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -0
- homeassistant-stubs/components/fronius/__init__.pyi +2 -1
- homeassistant-stubs/components/fronius/config_flow.pyi +1 -2
- homeassistant-stubs/components/fronius/const.pyi +1 -0
- homeassistant-stubs/components/fronius/coordinator.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +0 -3
- homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +1 -0
- homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +1 -2
- homeassistant-stubs/components/fully_kiosk/config_flow.pyi +1 -0
- homeassistant-stubs/components/fyta/__init__.pyi +1 -0
- homeassistant-stubs/components/fyta/config_flow.pyi +0 -2
- homeassistant-stubs/components/fyta/coordinator.pyi +6 -1
- homeassistant-stubs/components/geo_location/__init__.pyi +0 -5
- homeassistant-stubs/components/gios/__init__.pyi +1 -0
- homeassistant-stubs/components/glances/__init__.pyi +1 -0
- homeassistant-stubs/components/glances/config_flow.pyi +1 -2
- homeassistant-stubs/components/go2rtc/__init__.pyi +41 -0
- homeassistant-stubs/components/go2rtc/config_flow.pyi +7 -0
- homeassistant-stubs/components/go2rtc/const.pyi +7 -0
- homeassistant-stubs/components/go2rtc/server.pyi +44 -0
- homeassistant-stubs/components/goalzero/config_flow.pyi +1 -2
- homeassistant-stubs/components/goalzero/coordinator.pyi +1 -0
- homeassistant-stubs/components/google/__init__.pyi +1 -1
- homeassistant-stubs/components/google/api.pyi +2 -2
- homeassistant-stubs/components/google/calendar.pyi +6 -5
- homeassistant-stubs/components/google/config_flow.pyi +2 -3
- homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +1 -2
- homeassistant-stubs/components/google_photos/config_flow.pyi +2 -3
- homeassistant-stubs/components/google_photos/types.pyi +2 -0
- homeassistant-stubs/components/google_sheets/__init__.pyi +1 -0
- homeassistant-stubs/components/google_sheets/config_flow.pyi +1 -3
- homeassistant-stubs/components/govee_ble/__init__.pyi +11 -0
- homeassistant-stubs/components/govee_ble/binary_sensor.pyi +22 -0
- homeassistant-stubs/components/govee_ble/config_flow.pyi +16 -0
- homeassistant-stubs/components/govee_ble/const.pyi +2 -0
- homeassistant-stubs/components/govee_ble/coordinator.pyi +24 -0
- homeassistant-stubs/components/govee_ble/device.pyi +4 -0
- homeassistant-stubs/components/govee_ble/event.pyi +27 -0
- homeassistant-stubs/components/govee_ble/sensor.pyi +25 -0
- homeassistant-stubs/components/gpsd/__init__.pyi +2 -0
- homeassistant-stubs/components/greeneye_monitor/sensor.pyi +1 -0
- homeassistant-stubs/components/group/cover.pyi +2 -2
- homeassistant-stubs/components/group/registry.pyi +2 -1
- homeassistant-stubs/components/group/sensor.pyi +10 -11
- homeassistant-stubs/components/guardian/config_flow.pyi +0 -1
- homeassistant-stubs/components/guardian/util.pyi +1 -1
- homeassistant-stubs/components/hardkernel/__init__.pyi +2 -1
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -5
- homeassistant-stubs/components/history_stats/__init__.pyi +1 -0
- homeassistant-stubs/components/history_stats/coordinator.pyi +2 -1
- homeassistant-stubs/components/history_stats/sensor.pyi +2 -1
- homeassistant-stubs/components/holiday/config_flow.pyi +1 -3
- homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
- homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -1
- homeassistant-stubs/components/homeassistant/triggers/time.pyi +7 -1
- homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +2 -1
- homeassistant-stubs/components/homeassistant_green/__init__.pyi +2 -1
- homeassistant-stubs/components/homeassistant_green/config_flow.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +2 -1
- homeassistant-stubs/components/homeassistant_hardware/util.pyi +2 -1
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +3 -3
- homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +2 -1
- homeassistant-stubs/components/homekit/__init__.pyi +0 -1
- homeassistant-stubs/components/homekit/models.pyi +1 -0
- homeassistant-stubs/components/homekit/type_covers.pyi +2 -2
- homeassistant-stubs/components/homekit/type_security_systems.pyi +2 -2
- homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +4 -4
- homeassistant-stubs/components/homekit_controller/config_flow.pyi +4 -1
- homeassistant-stubs/components/homekit_controller/utils.pyi +1 -0
- homeassistant-stubs/components/homewizard/__init__.pyi +1 -0
- homeassistant-stubs/components/homewizard/config_flow.pyi +1 -2
- homeassistant-stubs/components/homewizard/helpers.pyi +1 -1
- homeassistant-stubs/components/homewizard/sensor.pyi +1 -1
- homeassistant-stubs/components/homeworks/config_flow.pyi +2 -5
- homeassistant-stubs/components/http/ban.pyi +2 -1
- homeassistant-stubs/components/http/data_validator.pyi +1 -1
- homeassistant-stubs/components/http/decorators.pyi +7 -4
- homeassistant-stubs/components/huawei_lte/config_flow.pyi +2 -0
- homeassistant-stubs/components/huawei_lte/device_tracker.pyi +1 -0
- homeassistant-stubs/components/humidifier/__init__.pyi +0 -10
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -3
- homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +2 -3
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +5 -4
- homeassistant-stubs/components/husqvarna_automower/number.pyi +8 -8
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +24 -3
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -5
- homeassistant-stubs/components/hydrawise/config_flow.pyi +1 -4
- homeassistant-stubs/components/hyperion/config_flow.pyi +1 -0
- homeassistant-stubs/components/ibeacon/__init__.pyi +1 -0
- homeassistant-stubs/components/image/__init__.pyi +7 -6
- homeassistant-stubs/components/imap/__init__.pyi +1 -0
- homeassistant-stubs/components/imap/config_flow.pyi +1 -2
- homeassistant-stubs/components/imgw_pib/__init__.pyi +1 -0
- homeassistant-stubs/components/intent/__init__.pyi +5 -0
- homeassistant-stubs/components/intent/timers.pyi +1 -2
- homeassistant-stubs/components/iotty/__init__.pyi +1 -0
- homeassistant-stubs/components/iotty/coordinator.pyi +1 -1
- homeassistant-stubs/components/ipp/__init__.pyi +1 -0
- homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +1 -0
- homeassistant-stubs/components/jellyfin/__init__.pyi +2 -2
- homeassistant-stubs/components/jellyfin/config_flow.pyi +0 -1
- homeassistant-stubs/components/jellyfin/coordinator.pyi +8 -15
- homeassistant-stubs/components/jellyfin/entity.pyi +22 -7
- homeassistant-stubs/components/jellyfin/media_player.pyi +6 -18
- homeassistant-stubs/components/jellyfin/remote.pyi +19 -0
- homeassistant-stubs/components/jellyfin/sensor.pyi +10 -8
- homeassistant-stubs/components/jewish_calendar/config_flow.pyi +1 -0
- homeassistant-stubs/components/jvc_projector/__init__.pyi +1 -0
- homeassistant-stubs/components/jvc_projector/config_flow.pyi +1 -2
- homeassistant-stubs/components/knocki/__init__.pyi +1 -0
- homeassistant-stubs/components/knx/__init__.pyi +0 -1
- homeassistant-stubs/components/knx/climate.pyi +2 -0
- homeassistant-stubs/components/knx/const.pyi +4 -0
- homeassistant-stubs/components/knx/notify.pyi +3 -15
- homeassistant-stubs/components/knx/schema.pyi +1 -0
- homeassistant-stubs/components/knx/storage/config_store.pyi +2 -2
- homeassistant-stubs/components/knx/websocket.pyi +4 -1
- homeassistant-stubs/components/kraken/const.pyi +1 -0
- homeassistant-stubs/components/lacrosse_view/config_flow.pyi +1 -2
- homeassistant-stubs/components/lamarzocco/__init__.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/button.pyi +3 -1
- homeassistant-stubs/components/lamarzocco/calendar.pyi +1 -2
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -5
- homeassistant-stubs/components/lamarzocco/coordinator.pyi +5 -4
- homeassistant-stubs/components/lamarzocco/diagnostics.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/number.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/select.pyi +5 -1
- homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/switch.pyi +3 -2
- homeassistant-stubs/components/lamarzocco/update.pyi +3 -2
- homeassistant-stubs/components/lametric/config_flow.pyi +1 -2
- homeassistant-stubs/components/lametric/helpers.pyi +1 -1
- homeassistant-stubs/components/lawn_mower/__init__.pyi +0 -3
- homeassistant-stubs/components/lcn/__init__.pyi +2 -2
- homeassistant-stubs/components/lcn/binary_sensor.pyi +3 -0
- homeassistant-stubs/components/lcn/config_flow.pyi +2 -5
- homeassistant-stubs/components/lcn/const.pyi +1 -0
- homeassistant-stubs/components/lcn/helpers.pyi +4 -0
- homeassistant-stubs/components/lcn/sensor.pyi +4 -1
- homeassistant-stubs/components/lcn/switch.pyi +24 -1
- homeassistant-stubs/components/lcn/websocket.pyi +3 -1
- homeassistant-stubs/components/lektrico/__init__.pyi +1 -0
- homeassistant-stubs/components/lektrico/switch.pyi +31 -0
- homeassistant-stubs/components/lidarr/__init__.pyi +4 -2
- homeassistant-stubs/components/lidarr/config_flow.pyi +1 -5
- homeassistant-stubs/components/lidarr/coordinator.pyi +4 -1
- homeassistant-stubs/components/lifx/config_flow.pyi +3 -1
- homeassistant-stubs/components/lifx/coordinator.pyi +0 -6
- homeassistant-stubs/components/light/__init__.pyi +0 -15
- homeassistant-stubs/components/linear_garage_door/config_flow.pyi +1 -2
- homeassistant-stubs/components/linear_garage_door/coordinator.pyi +1 -1
- homeassistant-stubs/components/linkplay/__init__.pyi +2 -1
- homeassistant-stubs/components/linkplay/const.pyi +4 -0
- homeassistant-stubs/components/linkplay/media_player.pyi +12 -4
- homeassistant-stubs/components/litterrobot/__init__.pyi +1 -0
- homeassistant-stubs/components/litterrobot/vacuum.pyi +0 -1
- homeassistant-stubs/components/local_todo/__init__.pyi +1 -0
- homeassistant-stubs/components/lock/__init__.pyi +0 -10
- homeassistant-stubs/components/logbook/models.pyi +0 -7
- homeassistant-stubs/components/lookin/coordinator.pyi +1 -1
- homeassistant-stubs/components/madvr/__init__.pyi +1 -0
- homeassistant-stubs/components/madvr/config_flow.pyi +2 -5
- homeassistant-stubs/components/manual/alarm_control_panel.pyi +19 -10
- homeassistant-stubs/components/mastodon/__init__.pyi +1 -0
- homeassistant-stubs/components/mastodon/config_flow.pyi +2 -0
- homeassistant-stubs/components/matter/api.pyi +1 -1
- homeassistant-stubs/components/matter/climate.pyi +1 -0
- homeassistant-stubs/components/matter/config_flow.pyi +3 -1
- homeassistant-stubs/components/matter/entity.pyi +2 -2
- homeassistant-stubs/components/matter/fan.pyi +1 -0
- homeassistant-stubs/components/matter/light.pyi +1 -0
- homeassistant-stubs/components/matter/lock.pyi +1 -0
- homeassistant-stubs/components/matter/models.pyi +2 -0
- homeassistant-stubs/components/matter/select.pyi +2 -0
- homeassistant-stubs/components/matter/switch.pyi +1 -0
- homeassistant-stubs/components/matter/update.pyi +1 -0
- homeassistant-stubs/components/matter/vacuum.pyi +47 -0
- homeassistant-stubs/components/matter/valve.pyi +1 -0
- homeassistant-stubs/components/media_player/__init__.pyi +0 -33
- homeassistant-stubs/components/mikrotik/__init__.pyi +1 -0
- homeassistant-stubs/components/mikrotik/config_flow.pyi +0 -1
- homeassistant-stubs/components/modbus/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/const.pyi +0 -2
- homeassistant-stubs/components/modbus/cover.pyi +2 -2
- homeassistant-stubs/components/modbus/modbus.pyi +1 -2
- homeassistant-stubs/components/modbus/validators.pyi +1 -1
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +9 -0
- homeassistant-stubs/components/mold_indicator/sensor.pyi +6 -2
- homeassistant-stubs/components/monzo/config_flow.pyi +1 -2
- homeassistant-stubs/components/mopeka/__init__.pyi +1 -0
- homeassistant-stubs/components/mqtt/__init__.pyi +2 -1
- homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +3 -3
- homeassistant-stubs/components/mqtt/client.pyi +4 -0
- homeassistant-stubs/components/mqtt/config_flow.pyi +3 -2
- homeassistant-stubs/components/mqtt/const.pyi +3 -1
- homeassistant-stubs/components/mqtt/cover.pyi +1 -1
- homeassistant-stubs/components/mqtt/discovery.pyi +26 -9
- homeassistant-stubs/components/mqtt/entity.pyi +5 -2
- homeassistant-stubs/components/mqtt/models.pyi +11 -0
- homeassistant-stubs/components/mqtt/schemas.pyi +15 -7
- homeassistant-stubs/components/mqtt/update.pyi +7 -11
- homeassistant-stubs/components/mysensors/const.pyi +6 -1
- homeassistant-stubs/components/myuplink/__init__.pyi +1 -0
- homeassistant-stubs/components/myuplink/config_flow.pyi +1 -2
- homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
- homeassistant-stubs/components/nam/__init__.pyi +1 -0
- homeassistant-stubs/components/nam/config_flow.pyi +4 -7
- homeassistant-stubs/components/nanoleaf/__init__.pyi +1 -0
- homeassistant-stubs/components/nanoleaf/config_flow.pyi +1 -2
- homeassistant-stubs/components/nest/__init__.pyi +1 -1
- homeassistant-stubs/components/nest/api.pyi +5 -3
- homeassistant-stubs/components/nest/camera.pyi +37 -16
- homeassistant-stubs/components/nest/config_flow.pyi +10 -4
- homeassistant-stubs/components/nest/const.pyi +2 -1
- homeassistant-stubs/components/netatmo/climate.pyi +1 -0
- homeassistant-stubs/components/network/websocket.pyi +2 -0
- homeassistant-stubs/components/nextdns/__init__.pyi +1 -0
- homeassistant-stubs/components/nextdns/config_flow.pyi +1 -2
- homeassistant-stubs/components/notify/__init__.pyi +0 -2
- homeassistant-stubs/components/notion/config_flow.pyi +1 -3
- homeassistant-stubs/components/number/__init__.pyi +0 -8
- homeassistant-stubs/components/nut/__init__.pyi +1 -0
- homeassistant-stubs/components/onboarding/views.pyi +1 -0
- homeassistant-stubs/components/oncue/config_flow.pyi +1 -3
- homeassistant-stubs/components/oncue/types.pyi +3 -0
- homeassistant-stubs/components/onewire/__init__.pyi +1 -0
- homeassistant-stubs/components/onkyo/__init__.pyi +25 -0
- homeassistant-stubs/components/onkyo/config_flow.pyi +30 -0
- homeassistant-stubs/components/onkyo/const.pyi +68 -0
- homeassistant-stubs/components/onkyo/media_player.pyi +24 -26
- homeassistant-stubs/components/onkyo/receiver.pyi +23 -3
- homeassistant-stubs/components/onkyo/services.pyi +14 -0
- homeassistant-stubs/components/openai_conversation/__init__.pyi +19 -0
- homeassistant-stubs/components/openai_conversation/config_flow.pyi +30 -0
- homeassistant-stubs/components/openai_conversation/const.pyi +14 -0
- homeassistant-stubs/components/openai_conversation/conversation.pyi +36 -0
- homeassistant-stubs/components/openexchangerates/config_flow.pyi +1 -2
- homeassistant-stubs/components/oralb/__init__.pyi +1 -0
- homeassistant-stubs/components/otbr/__init__.pyi +1 -0
- homeassistant-stubs/components/otbr/config_flow.pyi +2 -1
- homeassistant-stubs/components/otbr/silabs_multiprotocol.pyi +1 -1
- homeassistant-stubs/components/otbr/util.pyi +1 -1
- homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +12 -12
- homeassistant-stubs/components/overkiz/climate/atlantic_pass_apc_zone_control_zone.pyi +0 -3
- homeassistant-stubs/components/overkiz/config_flow.pyi +1 -2
- homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -2
- homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -2
- homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
- homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
- homeassistant-stubs/components/panel_custom/__init__.pyi +28 -0
- homeassistant-stubs/components/pi_hole/__init__.pyi +1 -0
- homeassistant-stubs/components/pi_hole/update.pyi +1 -1
- homeassistant-stubs/components/ping/__init__.pyi +1 -0
- homeassistant-stubs/components/plugwise/__init__.pyi +1 -0
- homeassistant-stubs/components/plugwise/config_flow.pyi +8 -6
- homeassistant-stubs/components/plugwise/const.pyi +4 -1
- homeassistant-stubs/components/plugwise/util.pyi +1 -1
- homeassistant-stubs/components/powerwall/config_flow.pyi +0 -1
- homeassistant-stubs/components/powerwall/models.pyi +1 -0
- homeassistant-stubs/components/private_ble_device/coordinator.pyi +3 -0
- homeassistant-stubs/components/prometheus/__init__.pyi +7 -4
- homeassistant-stubs/components/proximity/coordinator.pyi +1 -0
- homeassistant-stubs/components/purpleair/config_flow.pyi +0 -1
- homeassistant-stubs/components/pvoutput/config_flow.pyi +1 -2
- homeassistant-stubs/components/qnap_qsw/sensor.pyi +8 -2
- homeassistant-stubs/components/radarr/__init__.pyi +1 -0
- homeassistant-stubs/components/radarr/config_flow.pyi +1 -3
- homeassistant-stubs/components/radio_browser/__init__.pyi +10 -0
- homeassistant-stubs/components/radio_browser/config_flow.pyi +8 -0
- homeassistant-stubs/components/radio_browser/const.pyi +5 -0
- homeassistant-stubs/components/radio_browser/media_source.pyi +28 -0
- homeassistant-stubs/components/rainforest_raven/__init__.pyi +3 -5
- homeassistant-stubs/components/rainforest_raven/coordinator.pyi +3 -12
- homeassistant-stubs/components/rainforest_raven/diagnostics.pyi +2 -4
- homeassistant-stubs/components/rainforest_raven/sensor.pyi +4 -5
- homeassistant-stubs/components/rainmachine/__init__.pyi +1 -0
- homeassistant-stubs/components/rainmachine/switch.pyi +1 -1
- homeassistant-stubs/components/rainmachine/update.pyi +7 -1
- homeassistant-stubs/components/raspberry_pi/__init__.pyi +2 -1
- homeassistant-stubs/components/recorder/core.pyi +2 -6
- homeassistant-stubs/components/recorder/migration.pyi +36 -16
- homeassistant-stubs/components/recorder/models/state.pyi +0 -7
- homeassistant-stubs/components/recorder/queries.pyi +1 -0
- homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -2
- homeassistant-stubs/components/recorder/util.pyi +10 -5
- homeassistant-stubs/components/remote/__init__.pyi +0 -4
- homeassistant-stubs/components/renault/__init__.pyi +1 -0
- homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
- homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
- homeassistant-stubs/components/rfxtrx/cover.pyi +1 -2
- homeassistant-stubs/components/rfxtrx/entity.pyi +1 -1
- homeassistant-stubs/components/ring/__init__.pyi +1 -0
- homeassistant-stubs/components/ring/config_flow.pyi +5 -2
- homeassistant-stubs/components/ring/coordinator.pyi +1 -1
- homeassistant-stubs/components/ring/entity.pyi +2 -2
- homeassistant-stubs/components/roborock/__init__.pyi +1 -0
- homeassistant-stubs/components/roborock/config_flow.pyi +1 -2
- homeassistant-stubs/components/roborock/coordinator.pyi +0 -5
- homeassistant-stubs/components/roku/browse_media.pyi +2 -0
- homeassistant-stubs/components/roku/helpers.pyi +5 -2
- homeassistant-stubs/components/rtsp_to_webrtc/__init__.pyi +1 -3
- homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +1 -1
- homeassistant-stubs/components/samsungtv/__init__.pyi +2 -2
- homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
- homeassistant-stubs/components/samsungtv/config_flow.pyi +2 -2
- homeassistant-stubs/components/scrape/__init__.pyi +1 -0
- homeassistant-stubs/components/scrape/coordinator.pyi +2 -1
- homeassistant-stubs/components/script/__init__.pyi +0 -16
- homeassistant-stubs/components/select/__init__.pyi +0 -3
- homeassistant-stubs/components/sensibo/__init__.pyi +1 -0
- homeassistant-stubs/components/sensibo/config_flow.pyi +5 -2
- homeassistant-stubs/components/sensibo/entity.pyi +1 -1
- homeassistant-stubs/components/sensibo/update.pyi +1 -1
- homeassistant-stubs/components/sensor/__init__.pyi +0 -9
- homeassistant-stubs/components/sensor/websocket_api.pyi +3 -0
- homeassistant-stubs/components/sensoterra/__init__.pyi +1 -0
- homeassistant-stubs/components/senz/__init__.pyi +2 -0
- homeassistant-stubs/components/sfr_box/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/sfr_box/button.pyi +1 -1
- homeassistant-stubs/components/sfr_box/config_flow.pyi +1 -2
- homeassistant-stubs/components/sfr_box/coordinator.pyi +1 -1
- homeassistant-stubs/components/sfr_box/sensor.pyi +2 -2
- homeassistant-stubs/components/shell_command/__init__.pyi +13 -0
- homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/button.pyi +1 -1
- homeassistant-stubs/components/shelly/config_flow.pyi +1 -3
- homeassistant-stubs/components/shelly/const.pyi +1 -1
- homeassistant-stubs/components/shelly/coordinator.pyi +2 -4
- homeassistant-stubs/components/shelly/light.pyi +13 -2
- homeassistant-stubs/components/shelly/number.pyi +1 -1
- homeassistant-stubs/components/shelly/select.pyi +1 -1
- homeassistant-stubs/components/shelly/sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/switch.pyi +10 -1
- homeassistant-stubs/components/shelly/text.pyi +1 -1
- homeassistant-stubs/components/shelly/update.pyi +2 -2
- homeassistant-stubs/components/shelly/utils.pyi +3 -2
- homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/simplisafe/typing.pyi +4 -0
- homeassistant-stubs/components/siren/__init__.pyi +0 -3
- homeassistant-stubs/components/sleepiq/config_flow.pyi +1 -3
- homeassistant-stubs/components/sleepiq/entity.pyi +3 -2
- homeassistant-stubs/components/smhi/config_flow.pyi +1 -3
- homeassistant-stubs/components/smlight/__init__.pyi +1 -0
- homeassistant-stubs/components/smlight/config_flow.pyi +0 -2
- homeassistant-stubs/components/smlight/coordinator.pyi +1 -1
- homeassistant-stubs/components/smlight/update.pyi +4 -2
- homeassistant-stubs/components/solarlog/__init__.pyi +1 -0
- homeassistant-stubs/components/solarlog/config_flow.pyi +1 -4
- homeassistant-stubs/components/solarlog/coordinator.pyi +6 -0
- homeassistant-stubs/components/sonarr/config_flow.pyi +1 -4
- homeassistant-stubs/components/speedtestdotnet/__init__.pyi +2 -1
- homeassistant-stubs/components/spotify/__init__.pyi +5 -0
- homeassistant-stubs/components/spotify/application_credentials.pyi +4 -0
- homeassistant-stubs/components/spotify/browse_media.pyi +49 -0
- homeassistant-stubs/components/spotify/config_flow.pyi +19 -0
- homeassistant-stubs/components/spotify/const.pyi +9 -0
- homeassistant-stubs/components/spotify/coordinator.pyi +34 -0
- homeassistant-stubs/components/spotify/diagnostics.pyi +5 -0
- homeassistant-stubs/components/spotify/entity.pyi +10 -0
- homeassistant-stubs/components/spotify/media_player.pyi +82 -0
- homeassistant-stubs/components/spotify/models.pyi +12 -0
- homeassistant-stubs/components/spotify/sensor.pyi +31 -0
- homeassistant-stubs/components/spotify/system_health.pyi +6 -0
- homeassistant-stubs/components/spotify/util.pyi +7 -0
- homeassistant-stubs/components/squeezebox/__init__.pyi +6 -3
- homeassistant-stubs/components/squeezebox/const.pyi +5 -0
- homeassistant-stubs/components/squeezebox/coordinator.pyi +15 -3
- homeassistant-stubs/components/squeezebox/media_player.pyi +12 -13
- homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
- homeassistant-stubs/components/statistics/config_flow.pyi +8 -2
- homeassistant-stubs/components/statistics/sensor.pyi +20 -22
- homeassistant-stubs/components/steamist/config_flow.pyi +3 -1
- homeassistant-stubs/components/sun/entity.pyi +1 -0
- homeassistant-stubs/components/surepetcare/config_flow.pyi +1 -2
- homeassistant-stubs/components/switch/__init__.pyi +0 -2
- homeassistant-stubs/components/switch_as_x/__init__.pyi +3 -0
- homeassistant-stubs/components/switch_as_x/config_flow.pyi +18 -0
- homeassistant-stubs/components/switch_as_x/const.pyi +5 -0
- homeassistant-stubs/components/switch_as_x/cover.pyi +18 -0
- homeassistant-stubs/components/switch_as_x/entity.pyi +35 -0
- homeassistant-stubs/components/switch_as_x/fan.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/light.pyi +13 -0
- homeassistant-stubs/components/switch_as_x/lock.pyi +17 -0
- homeassistant-stubs/components/switch_as_x/siren.pyi +12 -0
- homeassistant-stubs/components/switch_as_x/valve.pyi +19 -0
- homeassistant-stubs/components/switchbee/entity.pyi +2 -2
- homeassistant-stubs/components/switchbee/switch.pyi +2 -1
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
- homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/lock.pyi +18 -0
- homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -0
- homeassistant-stubs/components/switcher_kis/button.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/climate.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/config_flow.pyi +1 -2
- homeassistant-stubs/components/switcher_kis/coordinator.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/cover.pyi +16 -9
- homeassistant-stubs/components/switcher_kis/entity.pyi +9 -0
- homeassistant-stubs/components/switcher_kis/light.pyi +44 -0
- homeassistant-stubs/components/switcher_kis/sensor.pyi +2 -5
- homeassistant-stubs/components/switcher_kis/switch.pyi +2 -5
- homeassistant-stubs/components/synology_dsm/coordinator.pyi +2 -2
- homeassistant-stubs/components/synology_dsm/entity.pyi +2 -1
- homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
- homeassistant-stubs/components/system_log/__init__.pyi +1 -0
- homeassistant-stubs/components/systemmonitor/__init__.pyi +1 -0
- homeassistant-stubs/components/tailscale/config_flow.pyi +1 -2
- homeassistant-stubs/components/tailwind/config_flow.pyi +1 -2
- homeassistant-stubs/components/tailwind/typing.pyi +2 -0
- homeassistant-stubs/components/tautulli/__init__.pyi +1 -0
- homeassistant-stubs/components/technove/helpers.pyi +1 -1
- homeassistant-stubs/components/tedee/__init__.pyi +1 -1
- homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tedee/config_flow.pyi +2 -5
- homeassistant-stubs/components/tedee/coordinator.pyi +5 -5
- homeassistant-stubs/components/tedee/lock.pyi +2 -2
- homeassistant-stubs/components/tedee/sensor.pyi +1 -1
- homeassistant-stubs/components/text/__init__.pyi +0 -6
- homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +1 -2
- homeassistant-stubs/components/thethingsnetwork/sensor.pyi +2 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +1 -3
- homeassistant-stubs/components/tibber/sensor.pyi +1 -0
- homeassistant-stubs/components/tile/device_tracker.pyi +3 -6
- homeassistant-stubs/components/time/__init__.pyi +0 -4
- homeassistant-stubs/components/timer/__init__.pyi +1 -1
- homeassistant-stubs/components/tod/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/todo/__init__.pyi +0 -2
- homeassistant-stubs/components/tplink/__init__.pyi +1 -0
- homeassistant-stubs/components/tplink/button.pyi +1 -1
- homeassistant-stubs/components/tplink/config_flow.pyi +5 -3
- homeassistant-stubs/components/tplink/entity.pyi +4 -4
- homeassistant-stubs/components/tplink_omada/__init__.pyi +4 -3
- homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +3 -5
- homeassistant-stubs/components/tplink_omada/const.pyi +11 -0
- homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/device_tracker.pyi +3 -4
- homeassistant-stubs/components/tplink_omada/entity.pyi +3 -1
- homeassistant-stubs/components/tplink_omada/sensor.pyi +34 -0
- homeassistant-stubs/components/tplink_omada/switch.pyi +3 -5
- homeassistant-stubs/components/tplink_omada/update.pyi +3 -6
- homeassistant-stubs/components/trace/__init__.pyi +5 -25
- homeassistant-stubs/components/trace/const.pyi +1 -1
- homeassistant-stubs/components/trace/models.pyi +2 -0
- homeassistant-stubs/components/trace/util.pyi +17 -0
- homeassistant-stubs/components/trace/websocket_api.pyi +1 -1
- homeassistant-stubs/components/tractive/__init__.pyi +1 -0
- homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +2 -2
- homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +1 -2
- homeassistant-stubs/components/trafikverket_train/config_flow.pyi +0 -1
- homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +3 -2
- homeassistant-stubs/components/transmission/__init__.pyi +1 -0
- homeassistant-stubs/components/transmission/config_flow.pyi +1 -2
- homeassistant-stubs/components/trend/binary_sensor.pyi +1 -2
- homeassistant-stubs/components/tts/__init__.pyi +0 -5
- homeassistant-stubs/components/tts/const.pyi +1 -0
- homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -0
- homeassistant-stubs/components/unifi/__init__.pyi +1 -0
- homeassistant-stubs/components/unifi/config_flow.pyi +1 -2
- homeassistant-stubs/components/unifi/device_tracker.pyi +0 -3
- homeassistant-stubs/components/unifi/update.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/camera.pyi +3 -2
- homeassistant-stubs/components/unifiprotect/config_flow.pyi +0 -1
- homeassistant-stubs/components/unifiprotect/data.pyi +2 -0
- homeassistant-stubs/components/update/__init__.pyi +7 -12
- homeassistant-stubs/components/update/const.pyi +2 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +0 -6
- homeassistant-stubs/components/vallox/config_flow.pyi +2 -5
- homeassistant-stubs/components/velbus/entity.pyi +1 -1
- homeassistant-stubs/components/vlc_telnet/__init__.pyi +1 -0
- homeassistant-stubs/components/vlc_telnet/config_flow.pyi +2 -3
- homeassistant-stubs/components/vlc_telnet/media_player.pyi +1 -1
- homeassistant-stubs/components/wallbox/__init__.pyi +1 -1
- homeassistant-stubs/components/wallbox/config_flow.pyi +2 -4
- homeassistant-stubs/components/wallbox/coordinator.pyi +3 -3
- homeassistant-stubs/components/water_heater/__init__.pyi +0 -9
- homeassistant-stubs/components/weather/__init__.pyi +0 -19
- homeassistant-stubs/components/webostv/config_flow.pyi +2 -2
- homeassistant-stubs/components/webostv/media_player.pyi +1 -1
- homeassistant-stubs/components/websocket_api/connection.pyi +3 -0
- homeassistant-stubs/components/websocket_api/const.pyi +4 -1
- homeassistant-stubs/components/wemo/__init__.pyi +4 -1
- homeassistant-stubs/components/wemo/coordinator.pyi +3 -0
- homeassistant-stubs/components/withings/__init__.pyi +4 -2
- homeassistant-stubs/components/withings/config_flow.pyi +1 -2
- homeassistant-stubs/components/withings/coordinator.pyi +7 -2
- homeassistant-stubs/components/withings/entity.pyi +14 -2
- homeassistant-stubs/components/withings/sensor.pyi +19 -4
- homeassistant-stubs/components/wiz/__init__.pyi +1 -0
- homeassistant-stubs/components/wled/__init__.pyi +1 -0
- homeassistant-stubs/components/wled/helpers.pyi +1 -1
- homeassistant-stubs/components/workday/__init__.pyi +13 -0
- homeassistant-stubs/components/workday/binary_sensor.pyi +46 -0
- homeassistant-stubs/components/workday/config_flow.pyi +33 -0
- homeassistant-stubs/components/workday/const.pyi +18 -0
- homeassistant-stubs/components/workday/diagnostics.pyi +5 -0
- homeassistant-stubs/components/workday/repairs.pyi +28 -0
- homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +7 -2
- homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +1 -1
- homeassistant-stubs/components/xiaomi_ble/types.pyi +2 -0
- homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +1 -0
- homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +2 -3
- homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +7 -0
- homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +0 -1
- homeassistant-stubs/components/yale_smart_alarm/const.pyi +2 -1
- homeassistant-stubs/components/yale_smart_alarm/select.pyi +21 -0
- homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -0
- homeassistant-stubs/components/yalexs_ble/config_flow.pyi +6 -2
- homeassistant-stubs/components/youtube/config_flow.pyi +1 -2
- homeassistant-stubs/components/zwave_js/api.pyi +1 -1
- homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
- homeassistant-stubs/components/zwave_js/discovery.pyi +2 -1
- homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +1 -1
- homeassistant-stubs/components/zwave_js/light.pyi +8 -6
- homeassistant-stubs/components/zwave_js/services.pyi +4 -1
- homeassistant-stubs/components/zwave_js/update.pyi +2 -1
- homeassistant-stubs/config.pyi +3 -24
- homeassistant-stubs/config_entries.pyi +52 -27
- homeassistant-stubs/const.pyi +16 -12
- homeassistant-stubs/core.pyi +40 -109
- homeassistant-stubs/core_config.pyi +108 -0
- homeassistant-stubs/data_entry_flow.pyi +22 -18
- homeassistant-stubs/helpers/area_registry.pyi +6 -8
- homeassistant-stubs/helpers/category_registry.pyi +1 -0
- homeassistant-stubs/helpers/check_config.pyi +2 -1
- homeassistant-stubs/helpers/collection.pyi +6 -4
- homeassistant-stubs/helpers/condition.pyi +1 -0
- homeassistant-stubs/helpers/config_entry_flow.pyi +3 -2
- homeassistant-stubs/helpers/config_validation.pyi +6 -6
- homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
- homeassistant-stubs/helpers/debounce.pyi +1 -1
- homeassistant-stubs/helpers/deprecation.pyi +9 -4
- homeassistant-stubs/helpers/device_registry.pyi +7 -8
- homeassistant-stubs/helpers/discovery_flow.pyi +5 -5
- homeassistant-stubs/helpers/dispatcher.pyi +9 -8
- homeassistant-stubs/helpers/entity.pyi +2 -31
- homeassistant-stubs/helpers/entity_registry.pyi +7 -9
- homeassistant-stubs/helpers/event.pyi +2 -1
- homeassistant-stubs/helpers/floor_registry.pyi +3 -3
- homeassistant-stubs/helpers/frame.pyi +1 -5
- homeassistant-stubs/helpers/hassio.pyi +4 -0
- homeassistant-stubs/helpers/http.pyi +2 -0
- homeassistant-stubs/helpers/intent.pyi +6 -5
- homeassistant-stubs/helpers/json.pyi +3 -0
- homeassistant-stubs/helpers/label_registry.pyi +3 -3
- homeassistant-stubs/helpers/llm.pyi +1 -2
- homeassistant-stubs/helpers/network.pyi +1 -0
- homeassistant-stubs/helpers/normalized_name_base_registry.pyi +6 -3
- homeassistant-stubs/helpers/ratelimit.pyi +1 -1
- homeassistant-stubs/helpers/redact.pyi +2 -2
- homeassistant-stubs/helpers/registry.pyi +5 -3
- homeassistant-stubs/helpers/script.pyi +3 -7
- homeassistant-stubs/helpers/selector.pyi +1 -1
- homeassistant-stubs/helpers/service.pyi +2 -2
- homeassistant-stubs/helpers/service_info/hassio.pyi +11 -0
- homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -0
- homeassistant-stubs/helpers/significant_change.pyi +3 -0
- homeassistant-stubs/helpers/singleton.pyi +3 -2
- homeassistant-stubs/helpers/storage.pyi +4 -5
- homeassistant-stubs/helpers/sun.pyi +2 -0
- homeassistant-stubs/helpers/system_info.pyi +1 -0
- homeassistant-stubs/helpers/template.pyi +4 -3
- homeassistant-stubs/helpers/trace.pyi +3 -3
- homeassistant-stubs/helpers/typing.pyi +13 -0
- homeassistant-stubs/helpers/update_coordinator.pyi +4 -4
- homeassistant-stubs/loader.pyi +5 -21
- homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -1
- homeassistant-stubs/util/__init__.pyi +1 -1
- homeassistant-stubs/util/async_.pyi +2 -2
- homeassistant-stubs/util/decorator.pyi +2 -1
- homeassistant-stubs/util/dt.pyi +3 -2
- homeassistant-stubs/util/enum.pyi +2 -2
- homeassistant-stubs/util/hass_dict.pyi +17 -17
- homeassistant-stubs/util/json.pyi +3 -0
- homeassistant-stubs/util/limited_size_dict.pyi +1 -1
- homeassistant-stubs/util/logging.pyi +8 -8
- homeassistant-stubs/util/loop.pyi +1 -1
- homeassistant-stubs/util/percentage.pyi +2 -2
- homeassistant-stubs/util/read_only_dict.pyi +1 -1
- homeassistant-stubs/util/signal_type.pyi +3 -3
- homeassistant-stubs/util/variance.pyi +3 -3
- homeassistant-stubs/util/yaml/loader.pyi +2 -4
- {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/RECORD +850 -771
- homeassistant-stubs/components/jellyfin/models.pyi +0 -10
- homeassistant-stubs/components/map/__init__.pyi +0 -14
- {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.10.4.dist-info → homeassistant_stubs-2024.11.0.dist-info}/licenses/LICENSE +0 -0
@@ -4,12 +4,15 @@ from _typeshed import Incomplete
|
|
4
4
|
from collections.abc import Mapping
|
5
5
|
from homeassistant.components import onboarding as onboarding
|
6
6
|
from homeassistant.components.bluetooth import BluetoothScanningMode as BluetoothScanningMode, BluetoothServiceInfo as BluetoothServiceInfo, async_discovered_service_info as async_discovered_service_info, async_process_advertisements as async_process_advertisements
|
7
|
-
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
|
8
|
-
from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
|
7
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
|
8
|
+
from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
|
9
|
+
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
10
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
11
|
from typing import Any
|
10
12
|
from xiaomi_ble import XiaomiBluetoothDeviceData as DeviceData
|
11
13
|
|
12
14
|
ADDITIONAL_DISCOVERY_TIMEOUT: int
|
15
|
+
_LOGGER: Incomplete
|
13
16
|
|
14
17
|
@dataclasses.dataclass
|
15
18
|
class Discovery:
|
@@ -30,6 +33,8 @@ class XiaomiConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
30
33
|
async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfo) -> ConfigFlowResult: ...
|
31
34
|
async def async_step_get_encryption_key_legacy(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
32
35
|
async def async_step_get_encryption_key_4_5(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
36
|
+
async def async_step_cloud_auth(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
37
|
+
async def async_step_get_encryption_key_4_5_choose_method(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
33
38
|
async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
34
39
|
async def async_step_confirm_slow(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
35
40
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -19,5 +19,5 @@ class XiaomiActiveBluetoothProcessorCoordinator(ActiveBluetoothProcessorCoordina
|
|
19
19
|
@property
|
20
20
|
def sleepy_device(self) -> bool: ...
|
21
21
|
|
22
|
-
class XiaomiPassiveBluetoothDataProcessor(PassiveBluetoothDataProcessor[_T, SensorUpdate]):
|
22
|
+
class XiaomiPassiveBluetoothDataProcessor[_T](PassiveBluetoothDataProcessor[_T, SensorUpdate]):
|
23
23
|
coordinator: XiaomiActiveBluetoothProcessorCoordinator
|
@@ -5,6 +5,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
|
5
5
|
from homeassistant.const import CONF_CODE as CONF_CODE
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
|
8
|
+
type YaleConfigEntry = ConfigEntry[YaleDataUpdateCoordinator]
|
8
9
|
async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry) -> bool: ...
|
9
10
|
async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
10
11
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -3,12 +3,11 @@ from .const import DOMAIN as DOMAIN, STATE_MAP as STATE_MAP, YALE_ALL_ERRORS as
|
|
3
3
|
from .coordinator import YaleDataUpdateCoordinator as YaleDataUpdateCoordinator
|
4
4
|
from .entity import YaleAlarmEntity as YaleAlarmEntity
|
5
5
|
from _typeshed import Incomplete
|
6
|
-
from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity as AlarmControlPanelEntity, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature
|
6
|
+
from homeassistant.components.alarm_control_panel import AlarmControlPanelEntity as AlarmControlPanelEntity, AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState
|
7
7
|
from homeassistant.const import CONF_NAME as CONF_NAME
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
9
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
|
-
from homeassistant.helpers.typing import StateType as StateType
|
12
11
|
|
13
12
|
async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
14
13
|
|
@@ -25,4 +24,4 @@ class YaleAlarmDevice(YaleAlarmEntity, AlarmControlPanelEntity):
|
|
25
24
|
@property
|
26
25
|
def available(self) -> bool: ...
|
27
26
|
@property
|
28
|
-
def
|
27
|
+
def alarm_state(self) -> AlarmControlPanelState | None: ...
|
@@ -16,6 +16,13 @@ class YaleDoorSensor(YaleEntity, BinarySensorEntity):
|
|
16
16
|
@property
|
17
17
|
def is_on(self) -> bool: ...
|
18
18
|
|
19
|
+
class YaleDoorBatterySensor(YaleEntity, BinarySensorEntity):
|
20
|
+
_attr_device_class: Incomplete
|
21
|
+
_attr_unique_id: Incomplete
|
22
|
+
def __init__(self, coordinator: YaleDataUpdateCoordinator, data: dict) -> None: ...
|
23
|
+
@property
|
24
|
+
def is_on(self) -> bool: ...
|
25
|
+
|
19
26
|
class YaleProblemSensor(YaleAlarmEntity, BinarySensorEntity):
|
20
27
|
entity_description: BinarySensorEntityDescription
|
21
28
|
_attr_unique_id: Incomplete
|
@@ -11,7 +11,6 @@ DATA_SCHEMA_AUTH: Incomplete
|
|
11
11
|
|
12
12
|
class YaleConfigFlow(ConfigFlow, domain=DOMAIN):
|
13
13
|
VERSION: int
|
14
|
-
entry: ConfigEntry | None
|
15
14
|
@staticmethod
|
16
15
|
def async_get_options_flow(config_entry: ConfigEntry) -> YaleOptionsFlowHandler: ...
|
17
16
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
@@ -1,5 +1,6 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.
|
2
|
+
from homeassistant.components.alarm_control_panel import AlarmControlPanelState as AlarmControlPanelState
|
3
|
+
from homeassistant.const import Platform as Platform
|
3
4
|
|
4
5
|
CONF_AREA_ID: str
|
5
6
|
CONF_LOCK_CODE_DIGITS: str
|
@@ -0,0 +1,21 @@
|
|
1
|
+
from . import YaleConfigEntry as YaleConfigEntry
|
2
|
+
from .coordinator import YaleDataUpdateCoordinator as YaleDataUpdateCoordinator
|
3
|
+
from .entity import YaleLockEntity as YaleLockEntity
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from homeassistant.components.select import SelectEntity as SelectEntity
|
6
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
8
|
+
from yalesmartalarmclient import YaleLock as YaleLock
|
9
|
+
|
10
|
+
VOLUME_OPTIONS: Incomplete
|
11
|
+
|
12
|
+
async def async_setup_entry(hass: HomeAssistant, entry: YaleConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
13
|
+
|
14
|
+
class YaleLockVolumeSelect(YaleLockEntity, SelectEntity):
|
15
|
+
_attr_translation_key: str
|
16
|
+
_attr_unique_id: Incomplete
|
17
|
+
_attr_current_option: Incomplete
|
18
|
+
_attr_options: Incomplete
|
19
|
+
def __init__(self, coordinator: YaleDataUpdateCoordinator, lock: YaleLock) -> None: ...
|
20
|
+
async def async_select_option(self, option: str) -> None: ...
|
21
|
+
def _handle_coordinator_update(self) -> None: ...
|
@@ -8,6 +8,7 @@ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as Core
|
|
8
8
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
9
9
|
from yalexs_ble import ConnectionInfo as ConnectionInfo, LockInfo as LockInfo, LockState as LockState
|
10
10
|
|
11
|
+
type YALEXSBLEConfigEntry = ConfigEntry[YaleXSBLEData]
|
11
12
|
PLATFORMS: list[Platform]
|
12
13
|
|
13
14
|
async def async_setup_entry(hass: HomeAssistant, entry: YALEXSBLEConfigEntry) -> bool: ...
|
@@ -9,7 +9,7 @@ from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
|
|
9
9
|
from homeassistant.core import callback as callback
|
10
10
|
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
11
11
|
from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
|
12
|
-
from typing import Any
|
12
|
+
from typing import Any, Self
|
13
13
|
|
14
14
|
_LOGGER: Incomplete
|
15
15
|
|
@@ -17,13 +17,17 @@ async def async_validate_lock_or_error(local_name: str, device: BLEDevice, key:
|
|
17
17
|
|
18
18
|
class YalexsConfigFlow(ConfigFlow, domain=DOMAIN):
|
19
19
|
VERSION: int
|
20
|
+
_address: str | None
|
21
|
+
_local_name_is_unique: bool
|
22
|
+
active: bool
|
23
|
+
local_name: str | None
|
20
24
|
_discovery_info: Incomplete
|
21
25
|
_discovered_devices: Incomplete
|
22
26
|
_lock_cfg: Incomplete
|
23
|
-
_reauth_entry: Incomplete
|
24
27
|
def __init__(self) -> None: ...
|
25
28
|
async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
|
26
29
|
async def async_step_integration_discovery(self, discovery_info: DiscoveryInfoType) -> ConfigFlowResult: ...
|
30
|
+
def is_matching(self, other_flow: Self) -> bool: ...
|
27
31
|
async def async_step_integration_discovery_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
28
32
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
29
33
|
async def async_step_reauth_validate(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import logging
|
2
2
|
from .const import CHANNEL_CREATION_HELP_URL as CHANNEL_CREATION_HELP_URL, CONF_CHANNELS as CONF_CHANNELS, DEFAULT_ACCESS as DEFAULT_ACCESS, DOMAIN as DOMAIN, LOGGER as LOGGER
|
3
3
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry, SOURCE_REAUTH as SOURCE_REAUTH
|
5
5
|
from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_TOKEN as CONF_TOKEN
|
6
6
|
from homeassistant.core import callback as callback
|
7
7
|
from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
|
@@ -14,7 +14,6 @@ class OAuth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, doma
|
|
14
14
|
_data: dict[str, Any]
|
15
15
|
_title: str
|
16
16
|
DOMAIN = DOMAIN
|
17
|
-
reauth_entry: ConfigEntry | None
|
18
17
|
_youtube: YouTube | None
|
19
18
|
@staticmethod
|
20
19
|
def async_get_options_flow(config_entry: ConfigEntry) -> YouTubeOptionsFlowHandler: ...
|
@@ -77,7 +77,7 @@ async def _async_get_entry(hass: HomeAssistant, connection: ActiveConnection, ms
|
|
77
77
|
def async_get_entry(orig_func: Callable[[HomeAssistant, ActiveConnection, dict[str, Any], ConfigEntry, Client, Driver], Coroutine[Any, Any, None]]) -> Callable[[HomeAssistant, ActiveConnection, dict[str, Any]], Coroutine[Any, Any, None]]: ...
|
78
78
|
async def _async_get_node(hass: HomeAssistant, connection: ActiveConnection, msg: dict, device_id: str) -> Node | None: ...
|
79
79
|
def async_get_node(orig_func: Callable[[HomeAssistant, ActiveConnection, dict[str, Any], Node], Coroutine[Any, Any, None]]) -> Callable[[HomeAssistant, ActiveConnection, dict[str, Any]], Coroutine[Any, Any, None]]: ...
|
80
|
-
def async_handle_failed_command(orig_func: Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]) -> Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]: ...
|
80
|
+
def async_handle_failed_command[**_P](orig_func: Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]) -> Callable[Concatenate[HomeAssistant, ActiveConnection, dict[str, Any], _P], Coroutine[Any, Any, None]]: ...
|
81
81
|
def node_status(node: Node) -> dict[str, Any]: ...
|
82
82
|
def async_register_api(hass: HomeAssistant) -> None: ...
|
83
83
|
async def websocket_network_status(hass: HomeAssistant, connection: ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -6,14 +6,16 @@ from .const import ADDON_SLUG as ADDON_SLUG, CONF_ADDON_DEVICE as CONF_ADDON_DEV
|
|
6
6
|
from _typeshed import Incomplete
|
7
7
|
from abc import ABC, abstractmethod
|
8
8
|
from homeassistant.components import usb as usb
|
9
|
-
from homeassistant.components.hassio import AddonError as AddonError, AddonInfo as AddonInfo, AddonManager as AddonManager, AddonState as AddonState
|
9
|
+
from homeassistant.components.hassio import AddonError as AddonError, AddonInfo as AddonInfo, AddonManager as AddonManager, AddonState as AddonState
|
10
10
|
from homeassistant.components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
|
11
|
-
from homeassistant.config_entries import ConfigEntriesFlowManager as ConfigEntriesFlowManager, ConfigEntry as ConfigEntry, ConfigEntryBaseFlow as ConfigEntryBaseFlow, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowManager as OptionsFlowManager, SOURCE_USB as SOURCE_USB
|
11
|
+
from homeassistant.config_entries import ConfigEntriesFlowManager as ConfigEntriesFlowManager, ConfigEntry as ConfigEntry, ConfigEntryBaseFlow as ConfigEntryBaseFlow, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowContext as ConfigFlowContext, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowManager as OptionsFlowManager, SOURCE_USB as SOURCE_USB
|
12
12
|
from homeassistant.const import CONF_NAME as CONF_NAME, CONF_URL as CONF_URL
|
13
13
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
14
14
|
from homeassistant.data_entry_flow import AbortFlow as AbortFlow, FlowManager as FlowManager
|
15
15
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
16
16
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
17
|
+
from homeassistant.helpers.hassio import is_hassio as is_hassio
|
18
|
+
from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
17
19
|
from homeassistant.helpers.typing import VolDictType as VolDictType
|
18
20
|
from typing import Any
|
19
21
|
from zwave_js_server.version import VersionInfo as VersionInfo
|
@@ -54,7 +56,7 @@ class BaseZwaveJSFlow(ConfigEntryBaseFlow, ABC, metaclass=abc.ABCMeta):
|
|
54
56
|
def __init__(self) -> None: ...
|
55
57
|
@property
|
56
58
|
@abstractmethod
|
57
|
-
def flow_manager(self) -> FlowManager[ConfigFlowResult]: ...
|
59
|
+
def flow_manager(self) -> FlowManager[ConfigFlowContext, ConfigFlowResult]: ...
|
58
60
|
async def async_step_install_addon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
59
61
|
async def async_step_install_failed(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
60
62
|
async def async_step_start_addon(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
@@ -71,8 +73,8 @@ class BaseZwaveJSFlow(ConfigEntryBaseFlow, ABC, metaclass=abc.ABCMeta):
|
|
71
73
|
|
72
74
|
class ZWaveJSConfigFlow(BaseZwaveJSFlow, ConfigFlow, domain=DOMAIN):
|
73
75
|
VERSION: int
|
76
|
+
_title: str
|
74
77
|
use_addon: bool
|
75
|
-
_title: Incomplete
|
76
78
|
_usb_discovery: bool
|
77
79
|
def __init__(self) -> None: ...
|
78
80
|
@property
|
@@ -85,6 +85,7 @@ DOOR_LOCK_CURRENT_MODE_SCHEMA: Incomplete
|
|
85
85
|
SWITCH_MULTILEVEL_CURRENT_VALUE_SCHEMA: Incomplete
|
86
86
|
SWITCH_MULTILEVEL_TARGET_VALUE_SCHEMA: Incomplete
|
87
87
|
SWITCH_BINARY_CURRENT_VALUE_SCHEMA: Incomplete
|
88
|
+
COLOR_SWITCH_CURRENT_VALUE_SCHEMA: Incomplete
|
88
89
|
SIREN_TONE_SCHEMA: Incomplete
|
89
90
|
WINDOW_COVERING_COVER_CURRENT_VALUE_SCHEMA: Incomplete
|
90
91
|
WINDOW_COVERING_SLAT_CURRENT_VALUE_SCHEMA: Incomplete
|
@@ -93,4 +94,4 @@ DISCOVERY_SCHEMAS: Incomplete
|
|
93
94
|
def async_discover_node_values(node: ZwaveNode, device: DeviceEntry, discovered_value_ids: dict[str, set[str]]) -> Generator[ZwaveDiscoveryInfo]: ...
|
94
95
|
def async_discover_single_value(value: ZwaveValue, device: DeviceEntry, discovered_value_ids: dict[str, set[str]]) -> Generator[ZwaveDiscoveryInfo]: ...
|
95
96
|
def async_discover_single_configuration_value(value: ConfigurationValue) -> Generator[ZwaveDiscoveryInfo]: ...
|
96
|
-
def check_value(value: ZwaveValue, schema: ZWaveValueDiscoverySchema) -> bool: ...
|
97
|
+
def check_value(value: ZwaveValue, schema: ZWaveValueDiscoverySchema, primary_value: ZwaveValue | None = None) -> bool: ...
|
@@ -48,7 +48,7 @@ class NumericSensorDataTemplateData:
|
|
48
48
|
|
49
49
|
class NumericSensorDataTemplate(BaseDiscoverySchemaDataTemplate):
|
50
50
|
@staticmethod
|
51
|
-
def find_key_from_matching_set(enum_value: _T, set_map: Mapping[str, list[_T]]) -> str | None: ...
|
51
|
+
def find_key_from_matching_set[_T: Enum](enum_value: _T, set_map: Mapping[str, list[_T]]) -> str | None: ...
|
52
52
|
def resolve_data(self, value: ZwaveValue) -> NumericSensorDataTemplateData: ...
|
53
53
|
|
54
54
|
@dataclass
|
@@ -22,9 +22,10 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
|
|
22
22
|
_supports_color: bool
|
23
23
|
_supports_rgbw: bool
|
24
24
|
_supports_color_temp: bool
|
25
|
+
_supports_dimming: bool
|
26
|
+
_color_mode: Incomplete
|
25
27
|
_hs_color: Incomplete
|
26
28
|
_rgbw_color: Incomplete
|
27
|
-
_color_mode: Incomplete
|
28
29
|
_color_temp: Incomplete
|
29
30
|
_min_mireds: int
|
30
31
|
_max_mireds: int
|
@@ -33,6 +34,7 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
|
|
33
34
|
_supported_color_modes: Incomplete
|
34
35
|
_target_brightness: Incomplete
|
35
36
|
_attr_name: Incomplete
|
37
|
+
_current_color: Incomplete
|
36
38
|
_target_color: Incomplete
|
37
39
|
supports_brightness_transition: Incomplete
|
38
40
|
supports_color_transition: Incomplete
|
@@ -59,18 +61,18 @@ class ZwaveLight(ZWaveBaseEntity, LightEntity):
|
|
59
61
|
def supported_color_modes(self) -> set[ColorMode] | None: ...
|
60
62
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
61
63
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
64
|
+
def _get_new_colors(self, hs_color: tuple[float, float] | None, color_temp: int | None, rgbw: tuple[int, int, int, int] | None, brightness_scale: float | None = None) -> dict[ColorComponent, int] | None: ...
|
62
65
|
async def _async_set_colors(self, colors: dict[ColorComponent, int], transition: float | None = None) -> None: ...
|
63
66
|
async def _async_set_brightness(self, brightness: int | None, transition: float | None = None) -> None: ...
|
64
67
|
def _get_color_values(self) -> tuple[Value | None, ...]: ...
|
65
68
|
def _calculate_color_support(self) -> None: ...
|
66
69
|
def _calculate_color_values(self) -> None: ...
|
67
70
|
|
68
|
-
class
|
69
|
-
|
71
|
+
class ZwaveColorOnOffLight(ZwaveLight):
|
72
|
+
_last_on_color: Incomplete
|
73
|
+
_last_brightness: Incomplete
|
70
74
|
def __init__(self, config_entry: ConfigEntry, driver: Driver, info: ZwaveDiscoveryInfo) -> None: ...
|
71
75
|
@property
|
72
|
-
def brightness(self) -> int: ...
|
73
|
-
@property
|
74
|
-
def is_on(self) -> bool | None: ...
|
76
|
+
def brightness(self) -> int | None: ...
|
75
77
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
76
78
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
@@ -11,14 +11,17 @@ from homeassistant.helpers.dispatcher import async_dispatcher_send as async_disp
|
|
11
11
|
from homeassistant.helpers.group import expand_entity_ids as expand_entity_ids
|
12
12
|
from typing import Any
|
13
13
|
from zwave_js_server.const import CommandClass
|
14
|
+
from zwave_js_server.model.endpoint import Endpoint
|
15
|
+
from zwave_js_server.model.node import Node as ZwaveNode
|
14
16
|
|
15
17
|
_LOGGER: Incomplete
|
18
|
+
type _NodeOrEndpointType = ZwaveNode | Endpoint
|
16
19
|
TARGET_VALIDATORS: Incomplete
|
17
20
|
|
18
21
|
def parameter_name_does_not_need_bitmask(val: dict[str, int | str | list[str]]) -> dict[str, int | str | list[str]]: ...
|
19
22
|
def check_base_2(val: int) -> int: ...
|
20
23
|
def broadcast_command(val: dict[str, Any]) -> dict[str, Any]: ...
|
21
|
-
def get_valid_responses_from_results(zwave_objects: Sequence[_T], results: Sequence[Any]) -> Generator[tuple[_T, Any]]: ...
|
24
|
+
def get_valid_responses_from_results[_T: ZwaveNode | Endpoint](zwave_objects: Sequence[_T], results: Sequence[Any]) -> Generator[tuple[_T, Any]]: ...
|
22
25
|
def raise_exceptions_from_results(zwave_objects: Sequence[_NodeOrEndpointType], results: Sequence[Any]) -> None: ...
|
23
26
|
async def _async_invoke_cc_api(nodes_or_endpoints: Collection[_NodeOrEndpointType], command_class: CommandClass, method_name: str, *args: Any) -> None: ...
|
24
27
|
|
@@ -58,7 +58,8 @@ class ZWaveNodeFirmwareUpdate(UpdateEntity):
|
|
58
58
|
@property
|
59
59
|
def extra_restore_state_data(self) -> ZWaveNodeFirmwareUpdateExtraStoredData: ...
|
60
60
|
def _update_on_status_change(self, _: dict[str, Any]) -> None: ...
|
61
|
-
_attr_in_progress:
|
61
|
+
_attr_in_progress: bool
|
62
|
+
_attr_update_percentage: Incomplete
|
62
63
|
def _update_progress(self, event: dict[str, Any]) -> None: ...
|
63
64
|
def _update_finished(self, event: dict[str, Any]) -> None: ...
|
64
65
|
def _unsub_firmware_events_and_reset_progress(self, write_state: bool = True) -> None: ...
|
homeassistant-stubs/config.pyi
CHANGED
@@ -1,18 +1,14 @@
|
|
1
1
|
import voluptuous as vol
|
2
|
-
from . import
|
3
|
-
from .
|
4
|
-
from .
|
2
|
+
from .const import CONF_PACKAGES as CONF_PACKAGES, CONF_PLATFORM as CONF_PLATFORM, __version__ as __version__
|
3
|
+
from .core import HomeAssistant as HomeAssistant, callback as callback
|
4
|
+
from .core_config import _PACKAGES_CONFIG_SCHEMA as _PACKAGES_CONFIG_SCHEMA, _PACKAGE_DEFINITION_SCHEMA as _PACKAGE_DEFINITION_SCHEMA
|
5
5
|
from .exceptions import ConfigValidationError as ConfigValidationError, HomeAssistantError as HomeAssistantError
|
6
|
-
from .generated.currencies import HISTORIC_CURRENCIES as HISTORIC_CURRENCIES
|
7
|
-
from .helpers.entity_values import EntityValues as EntityValues
|
8
6
|
from .helpers.translation import async_get_exception_message as async_get_exception_message
|
9
7
|
from .helpers.typing import ConfigType as ConfigType
|
10
8
|
from .loader import ComponentProtocol as ComponentProtocol, Integration as Integration, IntegrationNotFound as IntegrationNotFound
|
11
9
|
from .requirements import RequirementsNotFound as RequirementsNotFound, async_get_integration_with_requirements as async_get_integration_with_requirements
|
12
10
|
from .util.async_ import create_eager_task as create_eager_task
|
13
|
-
from .util.hass_dict import HassKey as HassKey
|
14
11
|
from .util.package import is_docker_env as is_docker_env
|
15
|
-
from .util.unit_system import get_unit_system as get_unit_system, validate_unit_system as validate_unit_system
|
16
12
|
from .util.yaml import SECRET_YAML as SECRET_YAML, Secrets as Secrets, YamlTypeError as YamlTypeError, load_yaml_dict as load_yaml_dict
|
17
13
|
from .util.yaml.objects import NodeStrClass as NodeStrClass
|
18
14
|
from _typeshed import Incomplete
|
@@ -27,7 +23,6 @@ RE_ASCII: Incomplete
|
|
27
23
|
YAML_CONFIG_FILE: str
|
28
24
|
VERSION_FILE: str
|
29
25
|
CONFIG_DIR_NAME: str
|
30
|
-
DATA_CUSTOMIZE: HassKey[EntityValues]
|
31
26
|
AUTOMATION_CONFIG_PATH: str
|
32
27
|
SCRIPT_CONFIG_PATH: str
|
33
28
|
SCENE_CONFIG_PATH: str
|
@@ -68,21 +63,6 @@ class IntegrationConfigInfo:
|
|
68
63
|
exception_info_list: list[ConfigExceptionInfo]
|
69
64
|
def __init__(self, config, exception_info_list) -> None: ...
|
70
65
|
|
71
|
-
def _no_duplicate_auth_provider(configs: Sequence[dict[str, Any]]) -> Sequence[dict[str, Any]]: ...
|
72
|
-
def _no_duplicate_auth_mfa_module(configs: Sequence[dict[str, Any]]) -> Sequence[dict[str, Any]]: ...
|
73
|
-
def _filter_bad_internal_external_urls(conf: dict) -> dict: ...
|
74
|
-
|
75
|
-
PACKAGES_CONFIG_SCHEMA: Incomplete
|
76
|
-
PACKAGE_DEFINITION_SCHEMA: Incomplete
|
77
|
-
CUSTOMIZE_DICT_SCHEMA: Incomplete
|
78
|
-
CUSTOMIZE_CONFIG_SCHEMA: Incomplete
|
79
|
-
|
80
|
-
def _raise_issue_if_historic_currency(hass: HomeAssistant, currency: str) -> None: ...
|
81
|
-
def _raise_issue_if_no_country(hass: HomeAssistant, country: str | None) -> None: ...
|
82
|
-
def _validate_currency(data: Any) -> Any: ...
|
83
|
-
|
84
|
-
CORE_CONFIG_SCHEMA: Incomplete
|
85
|
-
|
86
66
|
def get_default_config_dir() -> str: ...
|
87
67
|
async def async_ensure_config_exists(hass: HomeAssistant) -> bool: ...
|
88
68
|
async def async_create_default_config(hass: HomeAssistant) -> bool: ...
|
@@ -100,7 +80,6 @@ def stringify_invalid(hass: HomeAssistant, exc: vol.Invalid, domain: str, config
|
|
100
80
|
def humanize_error(hass: HomeAssistant, validation_error: vol.Invalid, domain: str, config: dict, link: str | None, max_sub_error_length: int = ...) -> str: ...
|
101
81
|
def format_homeassistant_error(hass: HomeAssistant, exc: HomeAssistantError, domain: str, config: dict, link: str | None = None) -> str: ...
|
102
82
|
def format_schema_error(hass: HomeAssistant, exc: vol.Invalid, domain: str, config: dict, link: str | None = None) -> str: ...
|
103
|
-
async def async_process_ha_core_config(hass: HomeAssistant, config: dict) -> None: ...
|
104
83
|
def _log_pkg_error(hass: HomeAssistant, package: str, component: str | None, config: dict, message: str) -> None: ...
|
105
84
|
def _identify_config_schema(module: ComponentProtocol) -> str | None: ...
|
106
85
|
def _validate_package_definition(name: str, conf: Any) -> None: ...
|
@@ -1,15 +1,15 @@
|
|
1
1
|
import asyncio
|
2
|
+
import voluptuous as vol
|
2
3
|
from . import data_entry_flow as data_entry_flow, loader as loader
|
3
4
|
from .components import persistent_notification as persistent_notification
|
4
5
|
from .components.bluetooth import BluetoothServiceInfoBleak as BluetoothServiceInfoBleak
|
5
6
|
from .components.dhcp import DhcpServiceInfo as DhcpServiceInfo
|
6
|
-
from .components.hassio import HassioServiceInfo as HassioServiceInfo
|
7
7
|
from .components.ssdp import SsdpServiceInfo as SsdpServiceInfo
|
8
8
|
from .components.usb import UsbServiceInfo as UsbServiceInfo
|
9
9
|
from .components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
|
10
|
-
from .const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
10
|
+
from .const import CONF_NAME as CONF_NAME, EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
11
11
|
from .core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as CoreState, Event as Event, HassJob as HassJob, HassJobType as HassJobType, HomeAssistant as HomeAssistant, callback as callback
|
12
|
-
from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS, FlowResult as FlowResult
|
12
|
+
from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS, FlowContext as FlowContext, FlowResult as FlowResult
|
13
13
|
from .exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
14
14
|
from .helpers import device_registry as device_registry, entity_registry as entity_registry, storage as storage
|
15
15
|
from .helpers.debounce import Debouncer as Debouncer
|
@@ -17,7 +17,8 @@ from .helpers.discovery_flow import DiscoveryKey as DiscoveryKey
|
|
17
17
|
from .helpers.dispatcher import SignalType as SignalType, async_dispatcher_send_internal as async_dispatcher_send_internal
|
18
18
|
from .helpers.event import RANDOM_MICROSECOND_MAX as RANDOM_MICROSECOND_MAX, RANDOM_MICROSECOND_MIN as RANDOM_MICROSECOND_MIN, async_call_later as async_call_later
|
19
19
|
from .helpers.frame import report as report
|
20
|
-
from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
|
20
|
+
from .helpers.json import json_bytes as json_bytes, json_bytes_sorted as json_bytes_sorted, json_fragment as json_fragment
|
21
|
+
from .helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
21
22
|
from .helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
|
22
23
|
from .helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
23
24
|
from .loader import async_suggest_report_issue as async_suggest_report_issue
|
@@ -32,7 +33,6 @@ from collections.abc import Callable, Coroutine, Generator, Iterable, Mapping, V
|
|
32
33
|
from contextvars import ContextVar
|
33
34
|
from datetime import datetime
|
34
35
|
from enum import Enum, StrEnum
|
35
|
-
from functools import cached_property as cached_property
|
36
36
|
from types import MappingProxyType
|
37
37
|
from typing import Any, Generic, Self
|
38
38
|
from typing_extensions import TypeVar
|
@@ -61,6 +61,8 @@ STORAGE_VERSION: int
|
|
61
61
|
STORAGE_VERSION_MINOR: int
|
62
62
|
SAVE_DELAY: int
|
63
63
|
DISCOVERY_COOLDOWN: int
|
64
|
+
ISSUE_UNIQUE_ID_COLLISION: str
|
65
|
+
UNIQUE_ID_COLLISION_TITLE_LIMIT: int
|
64
66
|
_DataT = TypeVar('_DataT', default=Any)
|
65
67
|
|
66
68
|
class ConfigEntryState(Enum):
|
@@ -107,11 +109,22 @@ CONN_CLASS_UNKNOWN: str
|
|
107
109
|
class ConfigError(HomeAssistantError): ...
|
108
110
|
class UnknownEntry(ConfigError): ...
|
109
111
|
class OperationNotAllowed(ConfigError): ...
|
112
|
+
type UpdateListenerType = Callable[[HomeAssistant, ConfigEntry], Coroutine[Any, Any, None]]
|
110
113
|
|
114
|
+
STATE_KEYS: Incomplete
|
111
115
|
FROZEN_CONFIG_ENTRY_ATTRS: Incomplete
|
112
116
|
UPDATE_ENTRY_CONFIG_ENTRY_ATTRS: Incomplete
|
113
117
|
|
114
|
-
class
|
118
|
+
class ConfigFlowContext(FlowContext, total=False):
|
119
|
+
alternative_domain: str
|
120
|
+
configuration_url: str
|
121
|
+
confirm_only: bool
|
122
|
+
discovery_key: DiscoveryKey
|
123
|
+
entry_id: str
|
124
|
+
title_placeholders: Mapping[str, str]
|
125
|
+
unique_id: str | None
|
126
|
+
|
127
|
+
class ConfigFlowResult(FlowResult[ConfigFlowContext, str], total=False):
|
115
128
|
minor_version: int
|
116
129
|
options: Mapping[str, Any]
|
117
130
|
version: int
|
@@ -145,7 +158,6 @@ class ConfigEntry(Generic[_DataT]):
|
|
145
158
|
_on_unload: list[Callable[[], Coroutine[Any, Any, None] | None]] | None
|
146
159
|
setup_lock: asyncio.Lock
|
147
160
|
_reauth_lock: asyncio.Lock
|
148
|
-
_reconfigure_lock: asyncio.Lock
|
149
161
|
_tasks: set[asyncio.Future[Any]]
|
150
162
|
_background_tasks: set[asyncio.Future[Any]]
|
151
163
|
_integration_for_domain: loader.Integration | None
|
@@ -160,10 +172,12 @@ class ConfigEntry(Generic[_DataT]):
|
|
160
172
|
def supports_options(self) -> bool: ...
|
161
173
|
@property
|
162
174
|
def supports_reconfigure(self) -> bool: ...
|
163
|
-
def
|
164
|
-
@cached_property
|
175
|
+
def clear_state_cache(self) -> None: ...
|
165
176
|
def as_json_fragment(self) -> json_fragment: ...
|
177
|
+
def clear_storage_cache(self) -> None: ...
|
178
|
+
def as_storage_fragment(self) -> json_fragment: ...
|
166
179
|
async def async_setup(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> None: ...
|
180
|
+
async def __async_setup_with_context(self, hass: HomeAssistant, integration: loader.Integration | None) -> None: ...
|
167
181
|
def _async_setup_again(self, hass: HomeAssistant, *_: Any) -> None: ...
|
168
182
|
async def async_setup_locked(self, hass: HomeAssistant, integration: loader.Integration | None = None) -> None: ...
|
169
183
|
def async_shutdown(self) -> None: ...
|
@@ -176,13 +190,11 @@ class ConfigEntry(Generic[_DataT]):
|
|
176
190
|
def as_dict(self) -> dict[str, Any]: ...
|
177
191
|
def async_on_unload(self, func: Callable[[], Coroutine[Any, Any, None] | None]) -> None: ...
|
178
192
|
async def _async_process_on_unload(self, hass: HomeAssistant) -> None: ...
|
179
|
-
def async_start_reauth(self, hass: HomeAssistant, context:
|
180
|
-
async def _async_init_reauth(self, hass: HomeAssistant, context:
|
181
|
-
def async_start_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
|
182
|
-
async def _async_init_reconfigure(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
|
193
|
+
def async_start_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
|
194
|
+
async def _async_init_reauth(self, hass: HomeAssistant, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> None: ...
|
183
195
|
def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[ConfigFlowResult]: ...
|
184
|
-
def async_create_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
|
185
|
-
def async_create_background_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
|
196
|
+
def async_create_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = True) -> asyncio.Task[_R]: ...
|
197
|
+
def async_create_background_task[_R](self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = True) -> asyncio.Task[_R]: ...
|
186
198
|
|
187
199
|
current_entry: ContextVar[ConfigEntry | None]
|
188
200
|
|
@@ -190,7 +202,7 @@ class FlowCancelledError(Exception): ...
|
|
190
202
|
|
191
203
|
def _report_non_awaited_platform_forwards(entry: ConfigEntry, what: str) -> None: ...
|
192
204
|
|
193
|
-
class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
|
205
|
+
class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFlowResult]):
|
194
206
|
_flow_result = ConfigFlowResult
|
195
207
|
config_entries: Incomplete
|
196
208
|
_hass_config: Incomplete
|
@@ -200,14 +212,16 @@ class ConfigEntriesFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
|
|
200
212
|
def __init__(self, hass: HomeAssistant, config_entries: ConfigEntries, hass_config: ConfigType) -> None: ...
|
201
213
|
async def async_wait_import_flow_initialized(self, handler: str) -> None: ...
|
202
214
|
def _async_has_other_discovery_flows(self, flow_id: str) -> bool: ...
|
203
|
-
async def async_init(self, handler: str, *, context:
|
204
|
-
async def _async_init(self, flow_id: str, handler: str, context:
|
215
|
+
async def async_init(self, handler: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlowResult: ...
|
216
|
+
async def _async_init(self, flow_id: str, handler: str, context: ConfigFlowContext, data: Any) -> tuple[ConfigFlow, ConfigFlowResult]: ...
|
205
217
|
def _set_pending_import_done(self, flow: ConfigFlow) -> None: ...
|
206
218
|
def async_shutdown(self) -> None: ...
|
207
|
-
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
|
208
|
-
async def async_create_flow(self, handler_key: str, *, context:
|
209
|
-
async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> None: ...
|
219
|
+
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
|
220
|
+
async def async_create_flow(self, handler_key: str, *, context: ConfigFlowContext | None = None, data: Any = None) -> ConfigFlow: ...
|
221
|
+
async def async_post_init(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> None: ...
|
210
222
|
def _async_discovery(self) -> None: ...
|
223
|
+
def async_has_matching_discovery_flow(self, handler: str, match_context: ConfigFlowContext, data: Any) -> bool: ...
|
224
|
+
def async_has_matching_flow(self, flow: ConfigFlow) -> bool: ...
|
211
225
|
|
212
226
|
class ConfigEntryItems(UserDict[str, ConfigEntry]):
|
213
227
|
_hass: Incomplete
|
@@ -216,6 +230,7 @@ class ConfigEntryItems(UserDict[str, ConfigEntry]):
|
|
216
230
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
217
231
|
def values(self) -> ValuesView[ConfigEntry]: ...
|
218
232
|
def __setitem__(self, entry_id: str, entry: ConfigEntry) -> None: ...
|
233
|
+
def check_unique_id(self, entry: ConfigEntry) -> None: ...
|
219
234
|
def _index_entry(self, entry: ConfigEntry) -> None: ...
|
220
235
|
def _unindex_entry(self, entry_id: str) -> None: ...
|
221
236
|
def __delitem__(self, entry_id: str) -> None: ...
|
@@ -262,10 +277,11 @@ class ConfigEntries:
|
|
262
277
|
def _async_schedule_save(self) -> None: ...
|
263
278
|
def _data_to_save(self) -> dict[str, list[dict[str, Any]]]: ...
|
264
279
|
async def async_wait_component(self, entry: ConfigEntry) -> bool: ...
|
280
|
+
def async_update_issues(self) -> None: ...
|
265
281
|
|
266
282
|
def _async_abort_entries_match(other_entries: list[ConfigEntry], match_dict: dict[str, Any] | None = None) -> None: ...
|
267
283
|
|
268
|
-
class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowResult]):
|
284
|
+
class ConfigEntryBaseFlow(data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult]):
|
269
285
|
_flow_result = ConfigFlowResult
|
270
286
|
|
271
287
|
class ConfigFlow(ConfigEntryBaseFlow):
|
@@ -277,6 +293,7 @@ class ConfigFlow(ConfigEntryBaseFlow):
|
|
277
293
|
@classmethod
|
278
294
|
def async_supports_options_flow(cls, config_entry: ConfigEntry) -> bool: ...
|
279
295
|
def _async_abort_entries_match(self, match_dict: dict[str, Any] | None = None) -> None: ...
|
296
|
+
def _abort_if_unique_id_mismatch(self, *, reason: str = 'unique_id_mismatch', description_placeholders: Mapping[str, str] | None = None) -> None: ...
|
280
297
|
def _abort_if_unique_id_configured(self, updates: dict[str, Any] | None = None, reload_on_update: bool = True, *, error: str = 'already_configured') -> None: ...
|
281
298
|
async def async_set_unique_id(self, unique_id: str | None = None, *, raise_on_progress: bool = True) -> ConfigEntry | None: ...
|
282
299
|
def _set_confirm_only(self) -> None: ...
|
@@ -299,14 +316,22 @@ class ConfigFlow(ConfigEntryBaseFlow):
|
|
299
316
|
async def async_step_usb(self, discovery_info: UsbServiceInfo) -> ConfigFlowResult: ...
|
300
317
|
async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
|
301
318
|
def async_create_entry(self, *, title: str, data: Mapping[str, Any], description: str | None = None, description_placeholders: Mapping[str, str] | None = None, options: Mapping[str, Any] | None = None) -> ConfigFlowResult: ...
|
302
|
-
def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str =
|
319
|
+
def async_update_reload_and_abort(self, entry: ConfigEntry, *, unique_id: str | None | UndefinedType = ..., title: str | UndefinedType = ..., data: Mapping[str, Any] | UndefinedType = ..., data_updates: Mapping[str, Any] | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., reason: str | UndefinedType = ..., reload_even_if_entry_is_unchanged: bool = True) -> ConfigFlowResult: ...
|
320
|
+
def async_show_form(self, *, step_id: str | None = None, data_schema: vol.Schema | None = None, errors: dict[str, str] | None = None, description_placeholders: Mapping[str, str | None] | None = None, last_step: bool | None = None, preview: str | None = None) -> ConfigFlowResult: ...
|
321
|
+
def is_matching(self, other_flow: Self) -> bool: ...
|
322
|
+
@property
|
323
|
+
def _reauth_entry_id(self) -> str: ...
|
324
|
+
def _get_reauth_entry(self) -> ConfigEntry: ...
|
325
|
+
@property
|
326
|
+
def _reconfigure_entry_id(self) -> str: ...
|
327
|
+
def _get_reconfigure_entry(self) -> ConfigEntry: ...
|
303
328
|
|
304
|
-
class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowResult]):
|
329
|
+
class OptionsFlowManager(data_entry_flow.FlowManager[ConfigFlowContext, ConfigFlowResult]):
|
305
330
|
_flow_result = ConfigFlowResult
|
306
331
|
def _async_get_config_entry(self, config_entry_id: str) -> ConfigEntry: ...
|
307
|
-
async def async_create_flow(self, handler_key: str, *, context:
|
308
|
-
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
|
309
|
-
async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler[ConfigFlowResult]) -> None: ...
|
332
|
+
async def async_create_flow(self, handler_key: str, *, context: ConfigFlowContext | None = None, data: dict[str, Any] | None = None) -> OptionsFlow: ...
|
333
|
+
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult], result: ConfigFlowResult) -> ConfigFlowResult: ...
|
334
|
+
async def _async_setup_preview(self, flow: data_entry_flow.FlowHandler[ConfigFlowContext, ConfigFlowResult]) -> None: ...
|
310
335
|
|
311
336
|
class OptionsFlow(ConfigEntryBaseFlow):
|
312
337
|
handler: str
|