homeassistant-stubs 2024.10.3__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 +8 -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/timeout.pyi +3 -1
- homeassistant-stubs/util/variance.pyi +3 -3
- homeassistant-stubs/util/yaml/loader.pyi +2 -4
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/RECORD +851 -772
- homeassistant-stubs/components/jellyfin/models.pyi +0 -10
- homeassistant-stubs/components/map/__init__.pyi +0 -14
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2024.10.3.dist-info → homeassistant_stubs-2024.11.0.dist-info}/licenses/LICENSE +0 -0
@@ -4,10 +4,8 @@ from . import migration as migration, statistics as statistics
|
|
4
4
|
from .const import DB_WORKER_PREFIX as DB_WORKER_PREFIX, DOMAIN as DOMAIN, KEEPALIVE_TIME as KEEPALIVE_TIME, LAST_REPORTED_SCHEMA_VERSION as LAST_REPORTED_SCHEMA_VERSION, MARIADB_PYMYSQL_URL_PREFIX as MARIADB_PYMYSQL_URL_PREFIX, MARIADB_URL_PREFIX as MARIADB_URL_PREFIX, MAX_QUEUE_BACKLOG_MIN_VALUE as MAX_QUEUE_BACKLOG_MIN_VALUE, MIN_AVAILABLE_MEMORY_FOR_QUEUE_BACKLOG as MIN_AVAILABLE_MEMORY_FOR_QUEUE_BACKLOG, MYSQLDB_PYMYSQL_URL_PREFIX as MYSQLDB_PYMYSQL_URL_PREFIX, MYSQLDB_URL_PREFIX as MYSQLDB_URL_PREFIX, SQLITE_MAX_BIND_VARS as SQLITE_MAX_BIND_VARS, SQLITE_URL_PREFIX as SQLITE_URL_PREFIX, SupportedDialect as SupportedDialect
|
5
5
|
from .db_schema import Base as Base, EventData as EventData, EventTypes as EventTypes, Events as Events, SCHEMA_VERSION as SCHEMA_VERSION, StateAttributes as StateAttributes, States as States, StatesMeta as StatesMeta, Statistics as Statistics, StatisticsShortTerm as StatisticsShortTerm
|
6
6
|
from .executor import DBInterruptibleThreadPoolExecutor as DBInterruptibleThreadPoolExecutor
|
7
|
-
from .migration import EntityIDMigration as EntityIDMigration, EventIDPostMigration as EventIDPostMigration, EventTypeIDMigration as EventTypeIDMigration, EventsContextIDMigration as EventsContextIDMigration, StatesContextIDMigration as StatesContextIDMigration
|
8
7
|
from .models import DatabaseEngine as DatabaseEngine, StatisticData as StatisticData, StatisticMetaData as StatisticMetaData, UnsupportedDialect as UnsupportedDialect
|
9
8
|
from .pool import MutexPool as MutexPool, POOL_SIZE as POOL_SIZE, RecorderPool as RecorderPool
|
10
|
-
from .queries import get_migration_changes as get_migration_changes
|
11
9
|
from .table_managers.event_data import EventDataManager as EventDataManager
|
12
10
|
from .table_managers.event_types import EventTypeManager as EventTypeManager
|
13
11
|
from .table_managers.recorder_runs import RecorderRunsManager as RecorderRunsManager
|
@@ -16,11 +14,10 @@ from .table_managers.states import StatesManager as StatesManager
|
|
16
14
|
from .table_managers.states_meta import StatesMetaManager as StatesMetaManager
|
17
15
|
from .table_managers.statistics_meta import StatisticsMetaManager as StatisticsMetaManager
|
18
16
|
from .tasks import AdjustLRUSizeTask as AdjustLRUSizeTask, AdjustStatisticsTask as AdjustStatisticsTask, ChangeStatisticsUnitTask as ChangeStatisticsUnitTask, ClearStatisticsTask as ClearStatisticsTask, CommitTask as CommitTask, CompileMissingStatisticsTask as CompileMissingStatisticsTask, DatabaseLockTask as DatabaseLockTask, ImportStatisticsTask as ImportStatisticsTask, KeepAliveTask as KeepAliveTask, PerodicCleanupTask as PerodicCleanupTask, PurgeTask as PurgeTask, RecorderTask as RecorderTask, StatisticsTask as StatisticsTask, StopTask as StopTask, SynchronizeTask as SynchronizeTask, UpdateStatesMetadataTask as UpdateStatesMetadataTask, UpdateStatisticsMetadataTask as UpdateStatisticsMetadataTask, WaitTask as WaitTask
|
19
|
-
from .util import async_create_backup_failure_issue as async_create_backup_failure_issue, build_mysqldb_conv as build_mysqldb_conv, dburl_to_path as dburl_to_path, end_incomplete_runs as end_incomplete_runs,
|
17
|
+
from .util import async_create_backup_failure_issue as async_create_backup_failure_issue, build_mysqldb_conv as build_mysqldb_conv, dburl_to_path as dburl_to_path, end_incomplete_runs as end_incomplete_runs, is_second_sunday as is_second_sunday, move_away_broken_database as move_away_broken_database, session_scope as session_scope, setup_connection_for_dialect as setup_connection_for_dialect, validate_or_move_away_sqlite_database as validate_or_move_away_sqlite_database, write_lock_db_sqlite as write_lock_db_sqlite
|
20
18
|
from _typeshed import Incomplete
|
21
19
|
from collections.abc import Callable as Callable, Iterable
|
22
20
|
from datetime import datetime
|
23
|
-
from functools import cached_property as cached_property
|
24
21
|
from homeassistant.components import persistent_notification as persistent_notification
|
25
22
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_HOMEASSISTANT_FINAL_WRITE as EVENT_HOMEASSISTANT_FINAL_WRITE, EVENT_STATE_CHANGED as EVENT_STATE_CHANGED, MATCH_ALL as MATCH_ALL
|
26
23
|
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
|
@@ -104,7 +101,6 @@ class Recorder(threading.Thread):
|
|
104
101
|
def __init__(self, hass: HomeAssistant, auto_purge: bool, auto_repack: bool, keep_days: int, commit_interval: int, uri: str, db_max_retries: int, db_retry_wait: int, entity_filter: Callable[[str], bool] | None, exclude_event_types: set[EventType[Any] | str]) -> None: ...
|
105
102
|
@property
|
106
103
|
def backlog(self) -> int: ...
|
107
|
-
@cached_property
|
108
104
|
def dialect_name(self) -> SupportedDialect | None: ...
|
109
105
|
@property
|
110
106
|
def _using_file_sqlite(self) -> bool: ...
|
@@ -118,7 +114,7 @@ class Recorder(threading.Thread):
|
|
118
114
|
def async_initialize(self) -> None: ...
|
119
115
|
def _async_keep_alive(self, now: datetime) -> None: ...
|
120
116
|
def _async_commit(self, now: datetime) -> None: ...
|
121
|
-
def async_add_executor_job(self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
|
117
|
+
def async_add_executor_job[_T](self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
|
122
118
|
def _async_check_queue(self, *_: Any) -> None: ...
|
123
119
|
def _available_memory(self) -> int: ...
|
124
120
|
def _reached_max_backlog(self) -> bool: ...
|
@@ -5,10 +5,10 @@ from .const import CONTEXT_ID_AS_BINARY_SCHEMA_VERSION as CONTEXT_ID_AS_BINARY_S
|
|
5
5
|
from .db_schema import BIG_INTEGER_SQL as BIG_INTEGER_SQL, Base as Base, CONTEXT_ID_BIN_MAX_LENGTH as CONTEXT_ID_BIN_MAX_LENGTH, DOUBLE_PRECISION_TYPE_SQL as DOUBLE_PRECISION_TYPE_SQL, EventTypes as EventTypes, Events as Events, LEGACY_STATES_ENTITY_ID_LAST_UPDATED_INDEX as LEGACY_STATES_ENTITY_ID_LAST_UPDATED_INDEX, LEGACY_STATES_EVENT_ID_INDEX as LEGACY_STATES_EVENT_ID_INDEX, LegacyBase as LegacyBase, MYSQL_COLLATE as MYSQL_COLLATE, MYSQL_DEFAULT_CHARSET as MYSQL_DEFAULT_CHARSET, MigrationChanges as MigrationChanges, SCHEMA_VERSION as SCHEMA_VERSION, STATISTICS_TABLES as STATISTICS_TABLES, SchemaChanges as SchemaChanges, States as States, StatesMeta as StatesMeta, Statistics as Statistics, StatisticsMeta as StatisticsMeta, StatisticsRuns as StatisticsRuns, StatisticsShortTerm as StatisticsShortTerm, TABLE_STATES as TABLE_STATES
|
6
6
|
from .models import process_timestamp as process_timestamp
|
7
7
|
from .models.time import datetime_to_timestamp_or_none as datetime_to_timestamp_or_none
|
8
|
-
from .queries import batch_cleanup_entity_ids as batch_cleanup_entity_ids, delete_duplicate_short_term_statistics_row as delete_duplicate_short_term_statistics_row, delete_duplicate_statistics_row as delete_duplicate_statistics_row, find_entity_ids_to_migrate as find_entity_ids_to_migrate, find_event_type_to_migrate as find_event_type_to_migrate, find_events_context_ids_to_migrate as find_events_context_ids_to_migrate, find_states_context_ids_to_migrate as find_states_context_ids_to_migrate, find_unmigrated_short_term_statistics_rows as find_unmigrated_short_term_statistics_rows, find_unmigrated_statistics_rows as find_unmigrated_statistics_rows, has_entity_ids_to_migrate as has_entity_ids_to_migrate, has_event_type_to_migrate as has_event_type_to_migrate, has_events_context_ids_to_migrate as has_events_context_ids_to_migrate, has_states_context_ids_to_migrate as has_states_context_ids_to_migrate, has_used_states_event_ids as has_used_states_event_ids, migrate_single_short_term_statistics_row_to_timestamp as migrate_single_short_term_statistics_row_to_timestamp, migrate_single_statistics_row_to_timestamp as migrate_single_statistics_row_to_timestamp
|
8
|
+
from .queries import batch_cleanup_entity_ids as batch_cleanup_entity_ids, delete_duplicate_short_term_statistics_row as delete_duplicate_short_term_statistics_row, delete_duplicate_statistics_row as delete_duplicate_statistics_row, find_entity_ids_to_migrate as find_entity_ids_to_migrate, find_event_type_to_migrate as find_event_type_to_migrate, find_events_context_ids_to_migrate as find_events_context_ids_to_migrate, find_states_context_ids_to_migrate as find_states_context_ids_to_migrate, find_unmigrated_short_term_statistics_rows as find_unmigrated_short_term_statistics_rows, find_unmigrated_statistics_rows as find_unmigrated_statistics_rows, get_migration_changes as get_migration_changes, has_entity_ids_to_migrate as has_entity_ids_to_migrate, has_event_type_to_migrate as has_event_type_to_migrate, has_events_context_ids_to_migrate as has_events_context_ids_to_migrate, has_states_context_ids_to_migrate as has_states_context_ids_to_migrate, has_used_states_entity_ids as has_used_states_entity_ids, has_used_states_event_ids as has_used_states_event_ids, migrate_single_short_term_statistics_row_to_timestamp as migrate_single_short_term_statistics_row_to_timestamp, migrate_single_statistics_row_to_timestamp as migrate_single_statistics_row_to_timestamp
|
9
9
|
from .statistics import cleanup_statistics_timestamp_migration as cleanup_statistics_timestamp_migration, get_start_time as get_start_time
|
10
10
|
from .tasks import RecorderTask as RecorderTask
|
11
|
-
from .util import database_job_retry_wrapper as database_job_retry_wrapper,
|
11
|
+
from .util import database_job_retry_wrapper as database_job_retry_wrapper, database_job_retry_wrapper_method as database_job_retry_wrapper_method, execute_stmt_lambda_element as execute_stmt_lambda_element, get_index_by_name as get_index_by_name, retryable_database_job_method as retryable_database_job_method, session_scope as session_scope
|
12
12
|
from _typeshed import Incomplete
|
13
13
|
from abc import ABC, abstractmethod
|
14
14
|
from collections.abc import Callable as Callable, Iterable
|
@@ -46,13 +46,14 @@ def raise_if_exception_missing_str(ex: Exception, match_substrs: Iterable[str])
|
|
46
46
|
def _get_schema_version(session: Session) -> int | None: ...
|
47
47
|
def get_schema_version(session_maker: Callable[[], Session]) -> int | None: ...
|
48
48
|
|
49
|
-
@dataclass(frozen=True)
|
49
|
+
@dataclass(frozen=True, kw_only=True)
|
50
50
|
class SchemaValidationStatus:
|
51
51
|
current_version: int
|
52
52
|
migration_needed: bool
|
53
|
+
non_live_data_migration_needed: bool
|
53
54
|
schema_errors: set[str]
|
54
55
|
start_version: int
|
55
|
-
def __init__(self, current_version, migration_needed, schema_errors, start_version) -> None: ...
|
56
|
+
def __init__(self, *, current_version, migration_needed, non_live_data_migration_needed, schema_errors, start_version) -> None: ...
|
56
57
|
|
57
58
|
def _schema_is_current(current_version: int) -> bool: ...
|
58
59
|
def validate_db_schema(hass: HomeAssistant, instance: Recorder, session_maker: Callable[[], Session]) -> SchemaValidationStatus | None: ...
|
@@ -62,6 +63,10 @@ def pre_migrate_schema(engine: Engine) -> None: ...
|
|
62
63
|
def _migrate_schema(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus, end_version: int) -> SchemaValidationStatus: ...
|
63
64
|
def migrate_schema_non_live(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> SchemaValidationStatus: ...
|
64
65
|
def migrate_schema_live(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> SchemaValidationStatus: ...
|
66
|
+
def _get_migration_changes(session: Session) -> dict[str, int]: ...
|
67
|
+
def non_live_data_migration_needed(instance: Recorder, session_maker: Callable[[], Session], schema_version: int) -> bool: ...
|
68
|
+
def migrate_data_non_live(instance: Recorder, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> None: ...
|
69
|
+
def migrate_data_live(instance: Recorder, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> None: ...
|
65
70
|
def _create_index(session_maker: Callable[[], Session], table_name: str, index_name: str) -> None: ...
|
66
71
|
def _execute_or_collect_error(session_maker: Callable[[], Session], query: str, errors: list[str]) -> bool: ...
|
67
72
|
def _drop_index(session_maker: Callable[[], Session], table_name: str, index_name: str, quiet: bool | None = None) -> None: ...
|
@@ -263,17 +268,17 @@ class DataMigrationStatus:
|
|
263
268
|
migration_done: bool
|
264
269
|
def __init__(self, *, needs_migrate, migration_done) -> None: ...
|
265
270
|
|
266
|
-
class
|
271
|
+
class BaseMigration(ABC, metaclass=abc.ABCMeta):
|
267
272
|
index_to_drop: tuple[str, str] | None
|
268
273
|
required_schema_version: int
|
269
274
|
migration_version: int
|
270
275
|
migration_id: str
|
271
|
-
task = MigrationTask
|
272
276
|
schema_version: Incomplete
|
273
277
|
migration_changes: Incomplete
|
274
278
|
def __init__(self, schema_version: int, migration_changes: dict[str, int]) -> None: ...
|
275
|
-
|
279
|
+
@abstractmethod
|
276
280
|
def migrate_data(self, instance: Recorder) -> bool: ...
|
281
|
+
def _migrate_data(self, instance: Recorder) -> bool: ...
|
277
282
|
@abstractmethod
|
278
283
|
def migrate_data_impl(self, instance: Recorder) -> DataMigrationStatus: ...
|
279
284
|
def migration_done(self, instance: Recorder, session: Session) -> None: ...
|
@@ -281,12 +286,21 @@ class BaseRunTimeMigration(ABC, metaclass=abc.ABCMeta):
|
|
281
286
|
def needs_migrate_impl(self, instance: Recorder, session: Session) -> DataMigrationStatus: ...
|
282
287
|
def needs_migrate(self, instance: Recorder, session: Session) -> bool: ...
|
283
288
|
|
284
|
-
class
|
289
|
+
class BaseOffLineMigration(BaseMigration, metaclass=abc.ABCMeta):
|
290
|
+
def migrate_all(self, instance: Recorder, session_maker: Callable[[], Session]) -> None: ...
|
291
|
+
def migrate_data(self, instance: Recorder) -> bool: ...
|
292
|
+
|
293
|
+
class BaseRunTimeMigration(BaseMigration, metaclass=abc.ABCMeta):
|
294
|
+
task = MigrationTask
|
295
|
+
def queue_migration(self, instance: Recorder, session: Session) -> None: ...
|
296
|
+
def migrate_data(self, instance: Recorder) -> bool: ...
|
297
|
+
|
298
|
+
class BaseMigrationWithQuery(BaseMigration, metaclass=abc.ABCMeta):
|
285
299
|
@abstractmethod
|
286
300
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
287
301
|
def needs_migrate_impl(self, instance: Recorder, session: Session) -> DataMigrationStatus: ...
|
288
302
|
|
289
|
-
class StatesContextIDMigration(
|
303
|
+
class StatesContextIDMigration(BaseMigrationWithQuery, BaseOffLineMigration):
|
290
304
|
required_schema_version = CONTEXT_ID_AS_BINARY_SCHEMA_VERSION
|
291
305
|
migration_id: str
|
292
306
|
migration_version: int
|
@@ -294,7 +308,7 @@ class StatesContextIDMigration(BaseRunTimeMigrationWithQuery):
|
|
294
308
|
def migrate_data_impl(self, instance: Recorder) -> DataMigrationStatus: ...
|
295
309
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
296
310
|
|
297
|
-
class EventsContextIDMigration(
|
311
|
+
class EventsContextIDMigration(BaseMigrationWithQuery, BaseOffLineMigration):
|
298
312
|
required_schema_version = CONTEXT_ID_AS_BINARY_SCHEMA_VERSION
|
299
313
|
migration_id: str
|
300
314
|
migration_version: int
|
@@ -302,7 +316,7 @@ class EventsContextIDMigration(BaseRunTimeMigrationWithQuery):
|
|
302
316
|
def migrate_data_impl(self, instance: Recorder) -> DataMigrationStatus: ...
|
303
317
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
304
318
|
|
305
|
-
class EventTypeIDMigration(
|
319
|
+
class EventTypeIDMigration(BaseMigrationWithQuery, BaseRunTimeMigration):
|
306
320
|
required_schema_version = EVENT_TYPE_IDS_SCHEMA_VERSION
|
307
321
|
migration_id: str
|
308
322
|
task = CommitBeforeMigrationTask
|
@@ -310,7 +324,7 @@ class EventTypeIDMigration(BaseRunTimeMigrationWithQuery):
|
|
310
324
|
def migration_done(self, instance: Recorder, session: Session) -> None: ...
|
311
325
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
312
326
|
|
313
|
-
class EntityIDMigration(
|
327
|
+
class EntityIDMigration(BaseMigrationWithQuery, BaseRunTimeMigration):
|
314
328
|
required_schema_version = STATES_META_SCHEMA_VERSION
|
315
329
|
migration_id: str
|
316
330
|
task = CommitBeforeMigrationTask
|
@@ -327,9 +341,15 @@ class EventIDPostMigration(BaseRunTimeMigration):
|
|
327
341
|
def _legacy_event_id_foreign_key_exists(instance: Recorder) -> bool: ...
|
328
342
|
def needs_migrate_impl(self, instance: Recorder, session: Session) -> DataMigrationStatus: ...
|
329
343
|
|
330
|
-
|
331
|
-
|
332
|
-
|
344
|
+
class EntityIDPostMigration(BaseMigrationWithQuery, BaseRunTimeMigration):
|
345
|
+
migration_id: str
|
346
|
+
task = MigrationTask
|
347
|
+
index_to_drop: Incomplete
|
348
|
+
def migrate_data_impl(self, instance: Recorder) -> DataMigrationStatus: ...
|
349
|
+
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
350
|
+
|
351
|
+
NON_LIVE_DATA_MIGRATORS: Incomplete
|
352
|
+
LIVE_DATA_MIGRATORS: Incomplete
|
333
353
|
|
334
|
-
def _mark_migration_done(session: Session, migration: type[
|
354
|
+
def _mark_migration_done(session: Session, migration: type[BaseMigration]) -> None: ...
|
335
355
|
def rebuild_sqlite_table(session_maker: Callable[[], Session], engine: Engine, table: type[Base]) -> bool: ...
|
@@ -1,7 +1,6 @@
|
|
1
1
|
from .state_attributes import decode_attributes_from_source as decode_attributes_from_source
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from datetime import datetime
|
4
|
-
from functools import cached_property as cached_property
|
5
4
|
from homeassistant.const import COMPRESSED_STATE_ATTRIBUTES as COMPRESSED_STATE_ATTRIBUTES, COMPRESSED_STATE_LAST_CHANGED as COMPRESSED_STATE_LAST_CHANGED, COMPRESSED_STATE_LAST_UPDATED as COMPRESSED_STATE_LAST_UPDATED, COMPRESSED_STATE_STATE as COMPRESSED_STATE_STATE
|
6
5
|
from homeassistant.core import Context as Context, State as State
|
7
6
|
from sqlalchemy.engine.row import Row as Row
|
@@ -21,17 +20,11 @@ class LazyState(State):
|
|
21
20
|
attr_cache: Incomplete
|
22
21
|
context: Incomplete
|
23
22
|
def __init__(self, row: Row, attr_cache: dict[str, dict[str, Any]], start_time_ts: float | None, entity_id: str, state: str, last_updated_ts: float | None, no_attributes: bool) -> None: ...
|
24
|
-
@cached_property
|
25
23
|
def attributes(self) -> dict[str, Any]: ...
|
26
|
-
@cached_property
|
27
24
|
def _last_changed_ts(self) -> float | None: ...
|
28
|
-
@cached_property
|
29
25
|
def last_changed(self) -> datetime: ...
|
30
|
-
@cached_property
|
31
26
|
def _last_reported_ts(self) -> float | None: ...
|
32
|
-
@cached_property
|
33
27
|
def last_reported(self) -> datetime: ...
|
34
|
-
@cached_property
|
35
28
|
def last_updated(self) -> datetime: ...
|
36
29
|
def as_dict(self) -> dict[str, Any]: ...
|
37
30
|
|
@@ -36,6 +36,7 @@ def find_events_context_ids_to_migrate(max_bind_vars: int) -> StatementLambdaEle
|
|
36
36
|
def find_event_type_to_migrate(max_bind_vars: int) -> StatementLambdaElement: ...
|
37
37
|
def find_entity_ids_to_migrate(max_bind_vars: int) -> StatementLambdaElement: ...
|
38
38
|
def batch_cleanup_entity_ids() -> StatementLambdaElement: ...
|
39
|
+
def has_used_states_entity_ids() -> StatementLambdaElement: ...
|
39
40
|
def has_used_states_event_ids() -> StatementLambdaElement: ...
|
40
41
|
def has_events_context_ids_to_migrate() -> StatementLambdaElement: ...
|
41
42
|
def has_states_context_ids_to_migrate() -> StatementLambdaElement: ...
|
@@ -4,7 +4,7 @@ from homeassistant.util.event_type import EventType as EventType
|
|
4
4
|
from lru import LRU
|
5
5
|
from typing import Any
|
6
6
|
|
7
|
-
class BaseTableManager:
|
7
|
+
class BaseTableManager[_DataT]:
|
8
8
|
_id_map: LRU[EventType[Any] | str, int]
|
9
9
|
recorder: Incomplete
|
10
10
|
_pending: Incomplete
|
@@ -13,7 +13,7 @@ class BaseTableManager:
|
|
13
13
|
def get_pending(self, shared_data: EventType[Any] | str) -> _DataT | None: ...
|
14
14
|
def reset(self) -> None: ...
|
15
15
|
|
16
|
-
class BaseLRUTableManager(BaseTableManager[_DataT]):
|
16
|
+
class BaseLRUTableManager[_DataT](BaseTableManager[_DataT]):
|
17
17
|
_id_map: Incomplete
|
18
18
|
def __init__(self, recorder: Recorder, lru_size: int) -> None: ...
|
19
19
|
def adjust_lru_size(self, new_size: int) -> None: ...
|
@@ -15,7 +15,7 @@ from sqlalchemy.orm.query import Query as Query
|
|
15
15
|
from sqlalchemy.orm.session import Session as Session
|
16
16
|
from sqlalchemy.sql.lambdas import StatementLambdaElement as StatementLambdaElement
|
17
17
|
from sqlite3.dbapi2 import Cursor as SQLiteCursor
|
18
|
-
from typing import Any, NoReturn
|
18
|
+
from typing import Any, Concatenate, NoReturn
|
19
19
|
|
20
20
|
_LOGGER: Incomplete
|
21
21
|
RETRIES: int
|
@@ -72,10 +72,15 @@ def async_create_backup_failure_issue(hass: HomeAssistant, local_start_time: dat
|
|
72
72
|
def setup_connection_for_dialect(instance: Recorder, dialect_name: str, dbapi_connection: DBAPIConnection, first_connection: bool) -> DatabaseEngine | None: ...
|
73
73
|
def end_incomplete_runs(session: Session, start_time: datetime) -> None: ...
|
74
74
|
def _is_retryable_error(instance: Recorder, err: OperationalError) -> bool: ...
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
def
|
75
|
+
type _FuncType[**P, R] = Callable[Concatenate[Recorder, P], R]
|
76
|
+
type _MethType[Self, **P, R] = Callable[Concatenate[Self, Recorder, P], R]
|
77
|
+
type _FuncOrMethType[**_P, _R] = Callable[_P, _R]
|
78
|
+
def retryable_database_job[**_P](description: str) -> Callable[[_FuncType[_P, bool]], _FuncType[_P, bool]]: ...
|
79
|
+
def retryable_database_job_method[_Self, **_P](description: str) -> Callable[[_MethType[_Self, _P, bool]], _MethType[_Self, _P, bool]]: ...
|
80
|
+
def _wrap_retryable_database_job_func_or_meth[**_P](job: _FuncOrMethType[_P, bool], description: str, method: bool) -> _FuncOrMethType[_P, bool]: ...
|
81
|
+
def database_job_retry_wrapper[**_P, _R](description: str, attempts: int) -> Callable[[_FuncType[_P, _R]], _FuncType[_P, _R]]: ...
|
82
|
+
def database_job_retry_wrapper_method[_Self, **_P, _R](description: str, attempts: int) -> Callable[[_MethType[_Self, _P, _R]], _MethType[_Self, _P, _R]]: ...
|
83
|
+
def _database_job_retry_wrapper_func_or_meth[**_P, _R](job: _FuncOrMethType[_P, _R], description: str, attempts: int, method: bool) -> _FuncOrMethType[_P, _R]: ...
|
79
84
|
def periodic_db_cleanups(instance: Recorder) -> None: ...
|
80
85
|
def write_lock_db_sqlite(instance: Recorder) -> Generator[None]: ...
|
81
86
|
def async_migration_in_progress(hass: HomeAssistant) -> bool: ...
|
@@ -1,7 +1,6 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from collections.abc import Iterable
|
3
3
|
from enum import IntFlag
|
4
|
-
from functools import cached_property as cached_property
|
5
4
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
5
|
from homeassistant.const import ATTR_COMMAND as ATTR_COMMAND, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
|
7
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
@@ -65,13 +64,10 @@ class RemoteEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_)
|
|
65
64
|
_attr_activity_list: list[str] | None
|
66
65
|
_attr_current_activity: str | None
|
67
66
|
_attr_supported_features: RemoteEntityFeature
|
68
|
-
@cached_property
|
69
67
|
def supported_features(self) -> RemoteEntityFeature: ...
|
70
68
|
@property
|
71
69
|
def supported_features_compat(self) -> RemoteEntityFeature: ...
|
72
|
-
@cached_property
|
73
70
|
def current_activity(self) -> str | None: ...
|
74
|
-
@cached_property
|
75
71
|
def activity_list(self) -> list[str] | None: ...
|
76
72
|
@property
|
77
73
|
def state_attributes(self) -> dict[str, Any] | None: ...
|
@@ -10,6 +10,7 @@ from homeassistant.helpers import device_registry as dr
|
|
10
10
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
11
11
|
|
12
12
|
CONFIG_SCHEMA: Incomplete
|
13
|
+
type RenaultConfigEntry = ConfigEntry[RenaultHub]
|
13
14
|
|
14
15
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
15
16
|
async def async_setup_entry(hass: HomeAssistant, config_entry: RenaultConfigEntry) -> bool: ...
|
@@ -13,7 +13,7 @@ from typing import Any, Concatenate
|
|
13
13
|
|
14
14
|
LOGGER: Incomplete
|
15
15
|
|
16
|
-
def with_error_wrapping(func: Callable[Concatenate[RenaultVehicleProxy, _P], Awaitable[_R]]) -> Callable[Concatenate[RenaultVehicleProxy, _P], Coroutine[Any, Any, _R]]: ...
|
16
|
+
def with_error_wrapping[**_P, _R](func: Callable[Concatenate[RenaultVehicleProxy, _P], Awaitable[_R]]) -> Callable[Concatenate[RenaultVehicleProxy, _P], Coroutine[Any, Any, _R]]: ...
|
17
17
|
|
18
18
|
@dataclass
|
19
19
|
class RenaultCoordinatorDescription:
|
@@ -11,7 +11,7 @@ class ConfirmRepairFlow(RepairsFlow):
|
|
11
11
|
async def async_step_confirm(self, user_input: dict[str, str] | None = None) -> data_entry_flow.FlowResult: ...
|
12
12
|
|
13
13
|
class RepairsFlowManager(data_entry_flow.FlowManager):
|
14
|
-
async def async_create_flow(self, handler_key: str, *, context:
|
14
|
+
async def async_create_flow(self, handler_key: str, *, context: data_entry_flow.FlowContext | None = None, data: dict[str, Any] | None = None) -> RepairsFlow: ...
|
15
15
|
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> data_entry_flow.FlowResult: ...
|
16
16
|
|
17
17
|
def async_setup(hass: HomeAssistant) -> None: ...
|
@@ -3,9 +3,8 @@ from . import DeviceTuple as DeviceTuple, async_setup_platform_entry as async_se
|
|
3
3
|
from .const import COMMAND_OFF_LIST as COMMAND_OFF_LIST, COMMAND_ON_LIST as COMMAND_ON_LIST, CONF_VENETIAN_BLIND_MODE as CONF_VENETIAN_BLIND_MODE, CONST_VENETIAN_BLIND_MODE_EU as CONST_VENETIAN_BLIND_MODE_EU, CONST_VENETIAN_BLIND_MODE_US as CONST_VENETIAN_BLIND_MODE_US
|
4
4
|
from .entity import RfxtrxCommandEntity as RfxtrxCommandEntity
|
5
5
|
from _typeshed import Incomplete
|
6
|
-
from homeassistant.components.cover import CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
|
6
|
+
from homeassistant.components.cover import CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature, CoverState as CoverState
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
|
-
from homeassistant.const import STATE_OPEN as STATE_OPEN
|
9
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
9
|
from homeassistant.helpers.entity import Entity as Entity
|
11
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -30,4 +30,4 @@ class RfxtrxEntity(RestoreEntity):
|
|
30
30
|
class RfxtrxCommandEntity(RfxtrxEntity):
|
31
31
|
_attr_name: Incomplete
|
32
32
|
def __init__(self, device: rfxtrxmod.RFXtrxDevice, device_id: DeviceTuple, event: rfxtrxmod.RFXtrxEvent | None = None) -> None: ...
|
33
|
-
async def _async_send(self, fun: Callable[[rfxtrxmod.PySerialTransport, Unpack[_Ts]], None], *args: Unpack[_Ts]) -> None: ...
|
33
|
+
async def _async_send[*_Ts](self, fun: Callable[[rfxtrxmod.PySerialTransport, Unpack[_Ts]], None], *args: Unpack[_Ts]) -> None: ...
|
@@ -18,6 +18,7 @@ class RingData:
|
|
18
18
|
devices_coordinator: RingDataCoordinator
|
19
19
|
listen_coordinator: RingListenCoordinator
|
20
20
|
def __init__(self, api, devices, devices_coordinator, listen_coordinator) -> None: ...
|
21
|
+
type RingConfigEntry = ConfigEntry[RingData]
|
21
22
|
|
22
23
|
def get_auth_user_agent() -> str: ...
|
23
24
|
async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry) -> bool: ...
|
@@ -2,7 +2,8 @@ from . import get_auth_user_agent as get_auth_user_agent
|
|
2
2
|
from .const import CONF_2FA as CONF_2FA, CONF_CONFIG_ENTRY_MINOR_VERSION as CONF_CONFIG_ENTRY_MINOR_VERSION, DOMAIN as DOMAIN
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from collections.abc import Mapping
|
5
|
-
from homeassistant.
|
5
|
+
from homeassistant.components import dhcp as dhcp
|
6
|
+
from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
|
6
7
|
from homeassistant.const import CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
|
7
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
@@ -13,6 +14,7 @@ _LOGGER: Incomplete
|
|
13
14
|
STEP_USER_DATA_SCHEMA: Incomplete
|
14
15
|
STEP_REAUTH_DATA_SCHEMA: Incomplete
|
15
16
|
STEP_RECONFIGURE_DATA_SCHEMA: Incomplete
|
17
|
+
UNKNOWN_RING_ACCOUNT: str
|
16
18
|
|
17
19
|
async def validate_input(hass: HomeAssistant, hardware_id: str, data: dict[str, str]) -> dict[str, Any]: ...
|
18
20
|
|
@@ -21,11 +23,12 @@ class RingConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
21
23
|
MINOR_VERSION = CONF_CONFIG_ENTRY_MINOR_VERSION
|
22
24
|
user_pass: dict[str, Any]
|
23
25
|
hardware_id: str | None
|
24
|
-
|
26
|
+
async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
|
25
27
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
26
28
|
async def async_step_2fa(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
27
29
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
28
30
|
async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
31
|
+
async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
29
32
|
|
30
33
|
class Require2FA(HomeAssistantError): ...
|
31
34
|
class InvalidAuth(HomeAssistantError): ...
|
@@ -10,7 +10,7 @@ from typing import Any
|
|
10
10
|
|
11
11
|
_LOGGER: Incomplete
|
12
12
|
|
13
|
-
async def _call_api(hass: HomeAssistant, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R]], *args: Unpack[_Ts], msg_suffix: str = '') -> _R: ...
|
13
|
+
async def _call_api[*_Ts, _R](hass: HomeAssistant, target: Callable[[Unpack[_Ts]], Coroutine[Any, Any, _R]], *args: Unpack[_Ts], msg_suffix: str = '') -> _R: ...
|
14
14
|
|
15
15
|
class RingDataCoordinator(DataUpdateCoordinator[RingDevices]):
|
16
16
|
ring_api: Incomplete
|
@@ -31,8 +31,8 @@ class RingEntityDescription(EntityDescription):
|
|
31
31
|
deprecated_info: DeprecatedInfo | None = ...
|
32
32
|
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., deprecated_info=...) -> None: ...
|
33
33
|
|
34
|
-
def exception_wrap(async_func: Callable[Concatenate[_RingBaseEntityT, _P], Coroutine[Any, Any, _R]]) -> Callable[Concatenate[_RingBaseEntityT, _P], Coroutine[Any, Any, _R]]: ...
|
35
|
-
def refresh_after(func: Callable[Concatenate[_RingEntityT, _P], Awaitable[None]]) -> Callable[Concatenate[_RingEntityT, _P], Coroutine[Any, Any, None]]: ...
|
34
|
+
def exception_wrap[_RingBaseEntityT: RingBaseEntity[Any, Any], **_P, _R](async_func: Callable[Concatenate[_RingBaseEntityT, _P], Coroutine[Any, Any, _R]]) -> Callable[Concatenate[_RingBaseEntityT, _P], Coroutine[Any, Any, _R]]: ...
|
35
|
+
def refresh_after[_RingEntityT: RingEntity[Any], **_P](func: Callable[Concatenate[_RingEntityT, _P], Awaitable[None]]) -> Callable[Concatenate[_RingEntityT, _P], Coroutine[Any, Any, None]]: ...
|
36
36
|
def async_check_create_deprecated(hass: HomeAssistant, platform: Platform, unique_id: str, entity_description: RingEntityDescription) -> bool: ...
|
37
37
|
|
38
38
|
class RingBaseEntity(BaseCoordinatorEntity[_RingCoordinatorT], Generic[_RingCoordinatorT, RingDeviceT], metaclass=abc.ABCMeta):
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from .const import CONF_BASE_URL as CONF_BASE_URL, CONF_ENTRY_CODE as CONF_ENTRY_CODE, CONF_USER_DATA as CONF_USER_DATA, DEFAULT_DRAWABLES as DEFAULT_DRAWABLES, DOMAIN as DOMAIN, DRAWABLES as DRAWABLES
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from collections.abc import Mapping
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry, SOURCE_REAUTH as SOURCE_REAUTH
|
5
5
|
from homeassistant.const import CONF_USERNAME as CONF_USERNAME
|
6
6
|
from homeassistant.core import callback as callback
|
7
7
|
from roborock.containers import UserData as UserData
|
@@ -12,7 +12,6 @@ _LOGGER: Incomplete
|
|
12
12
|
|
13
13
|
class RoborockFlowHandler(ConfigFlow, domain=DOMAIN):
|
14
14
|
VERSION: int
|
15
|
-
reauth_entry: ConfigEntry | None
|
16
15
|
_username: Incomplete
|
17
16
|
_client: Incomplete
|
18
17
|
def __init__(self) -> None: ...
|
@@ -1,7 +1,6 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from .models import RoborockA01HassDeviceInfo as RoborockA01HassDeviceInfo, RoborockHassDeviceInfo as RoborockHassDeviceInfo, RoborockMapInfo as RoborockMapInfo
|
3
3
|
from _typeshed import Incomplete
|
4
|
-
from functools import cached_property as cached_property
|
5
4
|
from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS
|
6
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
6
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
@@ -34,9 +33,7 @@ class RoborockDataUpdateCoordinator(DataUpdateCoordinator[DeviceProp]):
|
|
34
33
|
def _set_current_map(self) -> None: ...
|
35
34
|
async def get_maps(self) -> None: ...
|
36
35
|
async def get_rooms(self) -> None: ...
|
37
|
-
@cached_property
|
38
36
|
def duid(self) -> str: ...
|
39
|
-
@cached_property
|
40
37
|
def duid_slug(self) -> str: ...
|
41
38
|
|
42
39
|
class RoborockDataUpdateCoordinatorA01(DataUpdateCoordinator[dict[RoborockDyadDataProtocol | RoborockZeoProtocol, StateType]]):
|
@@ -47,7 +44,5 @@ class RoborockDataUpdateCoordinatorA01(DataUpdateCoordinator[dict[RoborockDyadDa
|
|
47
44
|
def __init__(self, hass: HomeAssistant, device: HomeDataDevice, product_info: HomeDataProduct, api: RoborockClientA01) -> None: ...
|
48
45
|
async def _async_update_data(self) -> dict[RoborockDyadDataProtocol | RoborockZeoProtocol, StateType]: ...
|
49
46
|
async def release(self) -> None: ...
|
50
|
-
@cached_property
|
51
47
|
def duid(self) -> str: ...
|
52
|
-
@cached_property
|
53
48
|
def duid_slug(self) -> str: ...
|
@@ -1,6 +1,7 @@
|
|
1
1
|
from .coordinator import RokuDataUpdateCoordinator as RokuDataUpdateCoordinator
|
2
2
|
from .helpers import format_channel_name as format_channel_name
|
3
3
|
from _typeshed import Incomplete
|
4
|
+
from collections.abc import Callable
|
4
5
|
from homeassistant.components import media_source as media_source
|
5
6
|
from homeassistant.components.media_player import BrowseError as BrowseError, BrowseMedia as BrowseMedia, MediaClass as MediaClass, MediaType as MediaType
|
6
7
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
@@ -10,6 +11,7 @@ CONTENT_TYPE_MEDIA_CLASS: Incomplete
|
|
10
11
|
CONTAINER_TYPES_SPECIFIC_MEDIA_CLASS: Incomplete
|
11
12
|
PLAYABLE_MEDIA_TYPES: Incomplete
|
12
13
|
EXPANDABLE_MEDIA_TYPES: Incomplete
|
14
|
+
type GetBrowseImageUrlType = Callable[[str, str, str | None], str | None]
|
13
15
|
|
14
16
|
def get_thumbnail_url_full(coordinator: RokuDataUpdateCoordinator, is_internal: bool, get_browse_image_url: GetBrowseImageUrlType, media_content_type: str, media_content_id: str, media_image_id: str | None = None) -> str | None: ...
|
15
17
|
async def async_browse_media(hass: HomeAssistant, coordinator: RokuDataUpdateCoordinator, get_browse_image_url: GetBrowseImageUrlType, media_content_id: str | None, media_content_type: str | None) -> BrowseMedia: ...
|
@@ -1,6 +1,9 @@
|
|
1
1
|
from .entity import RokuEntity as RokuEntity
|
2
|
-
from collections.abc import Callable
|
2
|
+
from collections.abc import Awaitable, Callable, Coroutine
|
3
3
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
4
|
+
from typing import Any, Concatenate
|
4
5
|
|
6
|
+
type _FuncType[_T, **_P] = Callable[Concatenate[_T, _P], Awaitable[Any]]
|
7
|
+
type _ReturnFuncType[_T, **_P] = Callable[Concatenate[_T, _P], Coroutine[Any, Any, None]]
|
5
8
|
def format_channel_name(channel_number: str, channel_name: str | None = None) -> str: ...
|
6
|
-
def roku_exception_handler(ignore_timeout: bool = False) -> Callable[[_FuncType[_RokuEntityT, _P]], _ReturnFuncType[_RokuEntityT, _P]]: ...
|
9
|
+
def roku_exception_handler[_RokuEntityT: RokuEntity, **_P](ignore_timeout: bool = False) -> Callable[[_FuncType[_RokuEntityT, _P]], _ReturnFuncType[_RokuEntityT, _P]]: ...
|
@@ -1,11 +1,10 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.components import camera as camera
|
2
|
+
from homeassistant.components import camera as camera
|
3
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
4
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
5
5
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
6
6
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
7
7
|
from rtsp_to_webrtc.interface import WebRTCClientInterface as WebRTCClientInterface
|
8
|
-
from typing import Any
|
9
8
|
|
10
9
|
_LOGGER: Incomplete
|
11
10
|
DOMAIN: str
|
@@ -17,4 +16,3 @@ CONF_STUN_SERVER: str
|
|
17
16
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
18
17
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
19
18
|
async def async_reload_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
20
|
-
def ws_get_settings(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -1,10 +1,10 @@
|
|
1
1
|
from . import CONF_STUN_SERVER as CONF_STUN_SERVER, DATA_SERVER_URL as DATA_SERVER_URL, DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from homeassistant.components.hassio import HassioServiceInfo as HassioServiceInfo
|
4
3
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
|
5
4
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT
|
6
5
|
from homeassistant.core import callback as callback
|
7
6
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
7
|
+
from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
8
8
|
from typing import Any
|
9
9
|
|
10
10
|
_LOGGER: Incomplete
|
@@ -1,9 +1,9 @@
|
|
1
1
|
from .bridge import SamsungTVBridge as SamsungTVBridge, async_get_device_info as async_get_device_info, mac_from_device_info as mac_from_device_info, model_requires_encryption as model_requires_encryption
|
2
|
-
from .const import CONF_SESSION_ID as CONF_SESSION_ID, CONF_SSDP_MAIN_TV_AGENT_LOCATION as CONF_SSDP_MAIN_TV_AGENT_LOCATION, CONF_SSDP_RENDERING_CONTROL_LOCATION as CONF_SSDP_RENDERING_CONTROL_LOCATION,
|
2
|
+
from .const import CONF_SESSION_ID as CONF_SESSION_ID, CONF_SSDP_MAIN_TV_AGENT_LOCATION as CONF_SSDP_MAIN_TV_AGENT_LOCATION, CONF_SSDP_RENDERING_CONTROL_LOCATION as CONF_SSDP_RENDERING_CONTROL_LOCATION, ENTRY_RELOAD_COOLDOWN as ENTRY_RELOAD_COOLDOWN, LEGACY_PORT as LEGACY_PORT, LOGGER as LOGGER, METHOD_ENCRYPTED_WEBSOCKET as METHOD_ENCRYPTED_WEBSOCKET, METHOD_LEGACY as METHOD_LEGACY, UPNP_SVC_MAIN_TV_AGENT as UPNP_SVC_MAIN_TV_AGENT, UPNP_SVC_RENDERING_CONTROL as UPNP_SVC_RENDERING_CONTROL
|
3
3
|
from .coordinator import SamsungTVDataUpdateCoordinator as SamsungTVDataUpdateCoordinator
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from homeassistant.components import ssdp as ssdp
|
6
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
6
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.const import CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_METHOD as CONF_METHOD, CONF_MODEL as CONF_MODEL, CONF_PORT as CONF_PORT, CONF_TOKEN as CONF_TOKEN, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
8
8
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
@@ -81,7 +81,7 @@ class SamsungTVLegacyBridge(SamsungTVBridge):
|
|
81
81
|
async def async_close_remote(self) -> None: ...
|
82
82
|
def _close_remote(self) -> None: ...
|
83
83
|
|
84
|
-
class SamsungTVWSBaseBridge(SamsungTVBridge, metaclass=abc.ABCMeta):
|
84
|
+
class SamsungTVWSBaseBridge[_RemoteT: (SamsungTVWSAsyncRemote, SamsungTVEncryptedWSAsyncRemote), _CommandT: (SamsungTVCommand, SamsungTVEncryptedCommand)](SamsungTVBridge, metaclass=abc.ABCMeta):
|
85
85
|
_remote: Incomplete
|
86
86
|
_remote_lock: Incomplete
|
87
87
|
def __init__(self, hass: HomeAssistant, method: str, host: str, port: int | None = None) -> None: ...
|
@@ -9,7 +9,7 @@ from homeassistant.core import callback as callback
|
|
9
9
|
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
10
10
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
11
11
|
from homeassistant.helpers.device_registry import format_mac as format_mac
|
12
|
-
from typing import Any
|
12
|
+
from typing import Any, Self
|
13
13
|
|
14
14
|
DATA_SCHEMA: Incomplete
|
15
15
|
|
@@ -20,7 +20,6 @@ def _mac_is_same_with_incorrect_formatting(current_unformatted_mac: str, formatt
|
|
20
20
|
class SamsungTVConfigFlow(ConfigFlow, domain=DOMAIN):
|
21
21
|
VERSION: int
|
22
22
|
MINOR_VERSION: int
|
23
|
-
_reauth_entry: Incomplete
|
24
23
|
_host: str
|
25
24
|
_mac: Incomplete
|
26
25
|
_udn: Incomplete
|
@@ -54,6 +53,7 @@ class SamsungTVConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
54
53
|
def _async_update_existing_matching_entry(self) -> ConfigEntry | None: ...
|
55
54
|
def _async_start_discovery_with_mac_address(self) -> None: ...
|
56
55
|
def _async_abort_if_host_already_in_progress(self) -> None: ...
|
56
|
+
def is_matching(self, other_flow: Self) -> bool: ...
|
57
57
|
def _abort_if_manufacturer_is_not_samsung(self) -> None: ...
|
58
58
|
async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> ConfigFlowResult: ...
|
59
59
|
async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
|
@@ -10,6 +10,7 @@ from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
|
|
10
10
|
from homeassistant.helpers.trigger_template_entity import CONF_AVAILABILITY as CONF_AVAILABILITY, TEMPLATE_SENSOR_BASE_SCHEMA as TEMPLATE_SENSOR_BASE_SCHEMA
|
11
11
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
12
12
|
|
13
|
+
type ScrapeConfigEntry = ConfigEntry[ScrapeCoordinator]
|
13
14
|
SENSOR_SCHEMA: Incomplete
|
14
15
|
COMBINED_SCHEMA: Incomplete
|
15
16
|
CONFIG_SCHEMA: Incomplete
|
@@ -2,6 +2,7 @@ from _typeshed import Incomplete
|
|
2
2
|
from bs4 import BeautifulSoup
|
3
3
|
from datetime import timedelta
|
4
4
|
from homeassistant.components.rest import RestData as RestData
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
7
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
7
8
|
|
@@ -9,5 +10,5 @@ _LOGGER: Incomplete
|
|
9
10
|
|
10
11
|
class ScrapeCoordinator(DataUpdateCoordinator[BeautifulSoup]):
|
11
12
|
_rest: Incomplete
|
12
|
-
def __init__(self, hass: HomeAssistant, rest: RestData, update_interval: timedelta) -> None: ...
|
13
|
+
def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry | None, rest: RestData, update_interval: timedelta) -> None: ...
|
13
14
|
async def _async_update_data(self) -> BeautifulSoup: ...
|