homeassistant-stubs 2024.7.4__py3-none-any.whl → 2024.8.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- homeassistant-stubs/auth/__init__.pyi +1 -1
- homeassistant-stubs/auth/permissions/events.pyi +3 -0
- homeassistant-stubs/auth/permissions/types.pyi +3 -4
- homeassistant-stubs/auth/permissions/util.pyi +1 -2
- homeassistant-stubs/auth/providers/trusted_networks.pyi +3 -2
- homeassistant-stubs/bootstrap.pyi +2 -2
- homeassistant-stubs/components/abode/__init__.pyi +1 -1
- homeassistant-stubs/components/abode/sensor.pyi +1 -1
- homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
- homeassistant-stubs/components/adguard/sensor.pyi +1 -1
- homeassistant-stubs/components/adguard/switch.pyi +1 -1
- homeassistant-stubs/components/airgradient/__init__.pyi +2 -2
- homeassistant-stubs/components/airgradient/button.pyi +1 -1
- homeassistant-stubs/components/airgradient/coordinator.pyi +0 -4
- homeassistant-stubs/components/airgradient/number.pyi +1 -1
- homeassistant-stubs/components/airgradient/select.pyi +1 -1
- homeassistant-stubs/components/airgradient/sensor.pyi +2 -2
- homeassistant-stubs/components/airgradient/switch.pyi +1 -1
- homeassistant-stubs/components/airly/sensor.pyi +1 -1
- homeassistant-stubs/components/airnow/sensor.pyi +1 -1
- homeassistant-stubs/components/airq/sensor.pyi +1 -1
- homeassistant-stubs/components/airtouch5/climate.pyi +1 -0
- homeassistant-stubs/components/airtouch5/cover.pyi +34 -0
- homeassistant-stubs/components/airtouch5/entity.pyi +0 -2
- homeassistant-stubs/components/airvisual_pro/config_flow.pyi +1 -1
- homeassistant-stubs/components/airvisual_pro/sensor.pyi +1 -1
- homeassistant-stubs/components/airzone/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/airzone/select.pyi +1 -1
- homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/airzone_cloud/select.pyi +1 -1
- homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -1
- homeassistant-stubs/components/alarm_control_panel/const.pyi +8 -8
- homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
- homeassistant-stubs/components/alexa/entities.pyi +7 -3
- homeassistant-stubs/components/alexa/handlers.pyi +1 -1
- homeassistant-stubs/components/alexa/intent.pyi +4 -4
- homeassistant-stubs/components/amberelectric/binary_sensor.pyi +4 -0
- homeassistant-stubs/components/ambient_station/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/amcrest/__init__.pyi +1 -1
- homeassistant-stubs/components/amcrest/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/analytics_insights/sensor.pyi +1 -1
- homeassistant-stubs/components/android_ip_webcam/sensor.pyi +1 -1
- homeassistant-stubs/components/android_ip_webcam/switch.pyi +1 -1
- homeassistant-stubs/components/anova/sensor.pyi +1 -1
- homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -1
- homeassistant-stubs/components/apcupsd/const.pyi +1 -0
- homeassistant-stubs/components/apcupsd/sensor.pyi +3 -2
- homeassistant-stubs/components/api/__init__.pyi +1 -1
- homeassistant-stubs/components/apsystems/__init__.pyi +2 -1
- homeassistant-stubs/components/apsystems/config_flow.pyi +2 -2
- homeassistant-stubs/components/apsystems/const.pyi +1 -0
- homeassistant-stubs/components/apsystems/sensor.pyi +1 -1
- homeassistant-stubs/components/apsystems/switch.pyi +21 -0
- homeassistant-stubs/components/aqualogic/sensor.pyi +1 -1
- homeassistant-stubs/components/aranet/sensor.pyi +1 -1
- homeassistant-stubs/components/arcam_fmj/__init__.pyi +3 -4
- homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -6
- homeassistant-stubs/components/arcam_fmj/const.pyi +0 -3
- homeassistant-stubs/components/arcam_fmj/media_player.pyi +2 -3
- homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/entity.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
- homeassistant-stubs/components/assist_pipeline/audio_enhancer.pyi +28 -0
- homeassistant-stubs/components/assist_pipeline/const.pyi +6 -0
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +41 -50
- homeassistant-stubs/components/assist_pipeline/vad.pyi +8 -23
- homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +2 -2
- homeassistant-stubs/components/asuswrt/bridge.pyi +2 -2
- homeassistant-stubs/components/asuswrt/sensor.pyi +1 -1
- homeassistant-stubs/components/autarco/__init__.pyi +11 -0
- homeassistant-stubs/components/autarco/config_flow.pyi +11 -0
- homeassistant-stubs/components/autarco/const.pyi +6 -0
- homeassistant-stubs/components/autarco/coordinator.pyi +18 -0
- homeassistant-stubs/components/autarco/diagnostics.pyi +5 -0
- homeassistant-stubs/components/autarco/sensor.pyi +49 -0
- homeassistant-stubs/components/auth/__init__.pyi +1 -1
- homeassistant-stubs/components/automation/config.pyi +6 -6
- homeassistant-stubs/components/automation/trace.pyi +1 -1
- homeassistant-stubs/components/awair/sensor.pyi +1 -1
- homeassistant-stubs/components/axis/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/axis/entity.pyi +1 -1
- homeassistant-stubs/components/axis/light.pyi +1 -1
- homeassistant-stubs/components/axis/switch.pyi +1 -1
- homeassistant-stubs/components/baf/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/baf/fan.pyi +1 -0
- homeassistant-stubs/components/baf/number.pyi +1 -1
- homeassistant-stubs/components/baf/sensor.pyi +1 -1
- homeassistant-stubs/components/baf/switch.pyi +1 -1
- homeassistant-stubs/components/bang_olufsen/const.pyi +26 -35
- homeassistant-stubs/components/bayesian/helpers.pyi +1 -1
- homeassistant-stubs/components/binary_sensor/__init__.pyi +29 -29
- homeassistant-stubs/components/blueprint/importer.pyi +4 -0
- homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +2 -2
- homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +1 -1
- homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +9 -17
- homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +5 -5
- homeassistant-stubs/components/bmw_connected_drive/button.pyi +4 -5
- homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +1 -0
- homeassistant-stubs/components/bmw_connected_drive/const.pyi +0 -1
- homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +4 -4
- homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +4 -5
- homeassistant-stubs/components/bmw_connected_drive/entity.pyi +13 -0
- homeassistant-stubs/components/bmw_connected_drive/lock.pyi +3 -4
- homeassistant-stubs/components/bmw_connected_drive/notify.pyi +4 -8
- homeassistant-stubs/components/bmw_connected_drive/number.pyi +4 -5
- homeassistant-stubs/components/bmw_connected_drive/select.pyi +4 -5
- homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +6 -6
- homeassistant-stubs/components/bmw_connected_drive/switch.pyi +4 -5
- homeassistant-stubs/components/bond/button.pyi +5 -4
- homeassistant-stubs/components/bond/cover.pyi +3 -3
- homeassistant-stubs/components/bond/entity.pyi +4 -3
- homeassistant-stubs/components/bond/fan.pyi +3 -3
- homeassistant-stubs/components/bond/light.pyi +3 -3
- homeassistant-stubs/components/braviatv/button.pyi +1 -1
- homeassistant-stubs/components/braviatv/const.pyi +3 -3
- homeassistant-stubs/components/brother/sensor.pyi +1 -1
- homeassistant-stubs/components/bryant_evolution/__init__.pyi +17 -0
- homeassistant-stubs/components/bryant_evolution/climate.pyi +43 -0
- homeassistant-stubs/components/bryant_evolution/config_flow.pyi +15 -0
- homeassistant-stubs/components/bryant_evolution/const.pyi +2 -0
- homeassistant-stubs/components/bryant_evolution/names.pyi +5 -0
- homeassistant-stubs/components/bthome/__init__.pyi +5 -5
- homeassistant-stubs/components/bthome/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/bthome/coordinator.pyi +2 -2
- homeassistant-stubs/components/bthome/event.pyi +2 -3
- homeassistant-stubs/components/bthome/sensor.pyi +3 -4
- homeassistant-stubs/components/bthome/types.pyi +4 -0
- homeassistant-stubs/components/button/__init__.pyi +4 -4
- homeassistant-stubs/components/calendar/__init__.pyi +1 -1
- homeassistant-stubs/components/calendar/const.pyi +3 -3
- homeassistant-stubs/components/camera/__init__.pyi +4 -5
- homeassistant-stubs/components/camera/const.pyi +2 -2
- homeassistant-stubs/components/camera/prefs.pyi +1 -1
- homeassistant-stubs/components/canary/sensor.pyi +1 -1
- homeassistant-stubs/components/climate/__init__.pyi +2 -1
- homeassistant-stubs/components/climate/const.pyi +24 -23
- homeassistant-stubs/components/climate/reproduce_state.pyi +1 -1
- homeassistant-stubs/components/cloud/__init__.pyi +2 -2
- homeassistant-stubs/components/co2signal/sensor.pyi +1 -1
- homeassistant-stubs/components/command_line/__init__.pyi +1 -2
- homeassistant-stubs/components/command_line/const.pyi +2 -0
- homeassistant-stubs/components/command_line/sensor.pyi +3 -3
- homeassistant-stubs/components/config/config_entries.pyi +2 -2
- homeassistant-stubs/components/cover/__init__.pyi +19 -19
- homeassistant-stubs/components/cover/intent.pyi +1 -1
- homeassistant-stubs/components/date/__init__.pyi +1 -1
- homeassistant-stubs/components/datetime/__init__.pyi +1 -1
- homeassistant-stubs/components/deconz/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/deconz/button.pyi +1 -1
- homeassistant-stubs/components/deconz/deconz_device.pyi +4 -1
- homeassistant-stubs/components/deconz/fan.pyi +1 -0
- homeassistant-stubs/components/deconz/number.pyi +1 -1
- homeassistant-stubs/components/deconz/sensor.pyi +1 -1
- homeassistant-stubs/components/demo/fan.pyi +1 -0
- homeassistant-stubs/components/demo/mailbox.pyi +1 -0
- homeassistant-stubs/components/device_automation/__init__.pyi +5 -4
- homeassistant-stubs/components/device_tracker/config_entry.pyi +10 -9
- homeassistant-stubs/components/device_tracker/const.pyi +4 -4
- homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +3 -1
- homeassistant-stubs/components/devolo_home_network/button.pyi +3 -1
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -0
- homeassistant-stubs/components/devolo_home_network/entity.pyi +3 -1
- homeassistant-stubs/components/devolo_home_network/image.pyi +3 -1
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +4 -3
- homeassistant-stubs/components/devolo_home_network/switch.pyi +2 -1
- homeassistant-stubs/components/devolo_home_network/update.pyi +3 -1
- homeassistant-stubs/components/diagnostics/__init__.pyi +1 -1
- homeassistant-stubs/components/diagnostics/const.pyi +2 -2
- homeassistant-stubs/components/discovergy/sensor.pyi +1 -1
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -1
- homeassistant-stubs/components/doorbird/__init__.pyi +9 -14
- homeassistant-stubs/components/doorbird/button.pyi +11 -12
- homeassistant-stubs/components/doorbird/camera.pyi +3 -6
- homeassistant-stubs/components/doorbird/config_flow.pyi +10 -3
- homeassistant-stubs/components/doorbird/const.pyi +6 -3
- homeassistant-stubs/components/doorbird/device.pyi +33 -14
- homeassistant-stubs/components/doorbird/event.pyi +23 -0
- homeassistant-stubs/components/doorbird/logbook.pyi +1 -1
- homeassistant-stubs/components/doorbird/models.pyi +3 -0
- homeassistant-stubs/components/doorbird/repairs.pyi +12 -0
- homeassistant-stubs/components/doorbird/util.pyi +3 -2
- homeassistant-stubs/components/doorbird/view.pyi +1 -1
- homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/dsmr/__init__.pyi +14 -4
- homeassistant-stubs/components/dsmr/const.pyi +0 -1
- homeassistant-stubs/components/dsmr/diagnostics.pyi +6 -0
- homeassistant-stubs/components/dsmr/sensor.pyi +19 -10
- homeassistant-stubs/components/easyenergy/sensor.pyi +1 -1
- homeassistant-stubs/components/easyenergy/services.pyi +3 -3
- homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
- homeassistant-stubs/components/ecovacs/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/ecovacs/button.pyi +2 -2
- homeassistant-stubs/components/ecovacs/const.pyi +3 -2
- homeassistant-stubs/components/ecovacs/controller.pyi +3 -0
- homeassistant-stubs/components/ecovacs/entity.pyi +15 -1
- homeassistant-stubs/components/ecovacs/number.pyi +3 -3
- homeassistant-stubs/components/ecovacs/select.pyi +1 -1
- homeassistant-stubs/components/ecovacs/sensor.pyi +19 -4
- homeassistant-stubs/components/ecovacs/switch.pyi +1 -1
- homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -9
- homeassistant-stubs/components/ecowitt/__init__.pyi +4 -2
- homeassistant-stubs/components/ecowitt/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/ecowitt/diagnostics.pyi +2 -3
- homeassistant-stubs/components/ecowitt/sensor.pyi +3 -4
- homeassistant-stubs/components/electric_kiwi/sensor.pyi +2 -2
- homeassistant-stubs/components/elevenlabs/__init__.pyi +23 -0
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +26 -0
- homeassistant-stubs/components/elevenlabs/const.pyi +4 -0
- homeassistant-stubs/components/elevenlabs/tts.pyi +30 -0
- homeassistant-stubs/components/elgato/button.pyi +1 -1
- homeassistant-stubs/components/elgato/sensor.pyi +1 -1
- homeassistant-stubs/components/elgato/switch.pyi +1 -1
- homeassistant-stubs/components/elkm1/config_flow.pyi +2 -2
- homeassistant-stubs/components/energy/data.pyi +1 -2
- homeassistant-stubs/components/energy/types.pyi +2 -3
- homeassistant-stubs/components/energy/validate.pyi +2 -2
- homeassistant-stubs/components/energyzero/sensor.pyi +1 -1
- homeassistant-stubs/components/energyzero/services.pyi +2 -2
- homeassistant-stubs/components/enigma2/__init__.pyi +3 -5
- homeassistant-stubs/components/enigma2/coordinator.pyi +19 -0
- homeassistant-stubs/components/enigma2/media_player.pyi +6 -8
- homeassistant-stubs/components/enphase_envoy/__init__.pyi +4 -5
- homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +4 -5
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -1
- homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -4
- homeassistant-stubs/components/enphase_envoy/number.pyi +4 -5
- homeassistant-stubs/components/enphase_envoy/select.pyi +4 -5
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +10 -11
- homeassistant-stubs/components/enphase_envoy/switch.pyi +5 -8
- homeassistant-stubs/components/eq3btsmart/const.pyi +10 -10
- homeassistant-stubs/components/eq3btsmart/models.pyi +1 -1
- homeassistant-stubs/components/esphome/domain_data.pyi +1 -1
- homeassistant-stubs/components/esphome/entity.pyi +2 -3
- homeassistant-stubs/components/esphome/entry_data.pyi +1 -1
- homeassistant-stubs/components/esphome/fan.pyi +1 -0
- homeassistant-stubs/components/esphome/update.pyi +1 -0
- homeassistant-stubs/components/esphome/voice_assistant.pyi +1 -0
- homeassistant-stubs/components/event/__init__.pyi +4 -4
- homeassistant-stubs/components/evohome/__init__.pyi +18 -34
- homeassistant-stubs/components/evohome/climate.pyi +3 -2
- homeassistant-stubs/components/evohome/coordinator.pyi +11 -16
- homeassistant-stubs/components/evohome/entity.pyi +37 -0
- homeassistant-stubs/components/evohome/water_heater.pyi +2 -1
- homeassistant-stubs/components/faa_delays/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/fan/__init__.pyi +13 -7
- homeassistant-stubs/components/feedreader/__init__.pyi +1 -1
- homeassistant-stubs/components/feedreader/const.pyi +7 -5
- homeassistant-stubs/components/feedreader/coordinator.pyi +11 -7
- homeassistant-stubs/components/feedreader/event.pyi +30 -0
- homeassistant-stubs/components/fitbit/const.pyi +11 -11
- homeassistant-stubs/components/fitbit/sensor.pyi +1 -1
- homeassistant-stubs/components/flexit_bacnet/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/flexit_bacnet/number.pyi +1 -1
- homeassistant-stubs/components/flexit_bacnet/sensor.pyi +1 -1
- homeassistant-stubs/components/flexit_bacnet/switch.pyi +1 -1
- homeassistant-stubs/components/forecast_solar/sensor.pyi +1 -1
- homeassistant-stubs/components/fritz/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/fritz/button.pyi +1 -1
- homeassistant-stubs/components/fritz/config_flow.pyi +1 -0
- homeassistant-stubs/components/fritz/const.pyi +3 -3
- homeassistant-stubs/components/fritz/coordinator.pyi +3 -3
- homeassistant-stubs/components/fritz/entity.pyi +1 -1
- homeassistant-stubs/components/fritz/sensor.pyi +1 -1
- homeassistant-stubs/components/fritz/update.pyi +1 -1
- homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/fritzbox/sensor.pyi +1 -1
- homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -5
- homeassistant-stubs/components/fritzbox_callmonitor/const.pyi +4 -4
- homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +4 -4
- homeassistant-stubs/components/fronius/const.pyi +21 -21
- homeassistant-stubs/components/fronius/sensor.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +3 -2
- homeassistant-stubs/components/fully_kiosk/button.pyi +1 -1
- homeassistant-stubs/components/fully_kiosk/image.pyi +1 -1
- homeassistant-stubs/components/fully_kiosk/notify.pyi +1 -1
- homeassistant-stubs/components/fully_kiosk/sensor.pyi +1 -1
- homeassistant-stubs/components/fully_kiosk/switch.pyi +1 -1
- homeassistant-stubs/components/generic_hygrostat/__init__.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
- homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -1
- homeassistant-stubs/components/generic_thermostat/__init__.pyi +2 -5
- homeassistant-stubs/components/generic_thermostat/climate.pyi +10 -15
- homeassistant-stubs/components/generic_thermostat/config_flow.pyi +2 -1
- homeassistant-stubs/components/generic_thermostat/const.pyi +14 -0
- homeassistant-stubs/components/geocaching/sensor.pyi +1 -1
- homeassistant-stubs/components/gios/sensor.pyi +1 -1
- homeassistant-stubs/components/glances/sensor.pyi +1 -1
- homeassistant-stubs/components/google/const.pyi +5 -5
- homeassistant-stubs/components/gpsd/__init__.pyi +5 -3
- homeassistant-stubs/components/gpsd/config_flow.pyi +2 -0
- homeassistant-stubs/components/gpsd/sensor.pyi +6 -5
- homeassistant-stubs/components/group/button.pyi +28 -0
- homeassistant-stubs/components/group/config_flow.pyi +2 -0
- homeassistant-stubs/components/group/fan.pyi +1 -0
- homeassistant-stubs/components/group/notify.pyi +19 -3
- homeassistant-stubs/components/guardian/__init__.pyi +1 -1
- homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/guardian/button.pyi +1 -1
- homeassistant-stubs/components/guardian/sensor.pyi +2 -2
- homeassistant-stubs/components/guardian/switch.pyi +1 -1
- homeassistant-stubs/components/guardian/valve.pyi +9 -9
- homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -1
- homeassistant-stubs/components/history/websocket_api.pyi +1 -1
- homeassistant-stubs/components/history_stats/__init__.pyi +13 -4
- homeassistant-stubs/components/history_stats/config_flow.pyi +19 -0
- homeassistant-stubs/components/history_stats/const.pyi +14 -0
- homeassistant-stubs/components/history_stats/sensor.pyi +6 -11
- homeassistant-stubs/components/homeassistant/__init__.pyi +4 -4
- homeassistant-stubs/components/homeassistant/logbook.pyi +1 -1
- homeassistant-stubs/components/homeassistant/repairs.pyi +15 -0
- homeassistant-stubs/components/homeassistant/scene.pyi +1 -0
- homeassistant-stubs/components/homeassistant_hardware/const.pyi +7 -0
- homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +59 -0
- homeassistant-stubs/components/homeassistant_hardware/util.pyi +24 -0
- homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +1 -1
- homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +19 -49
- homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +2 -10
- homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -20
- homeassistant-stubs/components/homekit/__init__.pyi +17 -8
- homeassistant-stubs/components/homekit/accessories.pyi +1 -1
- homeassistant-stubs/components/homekit/aidmanager.pyi +1 -1
- homeassistant-stubs/components/homekit/diagnostics.pyi +2 -4
- homeassistant-stubs/components/homekit/models.pyi +4 -1
- homeassistant-stubs/components/homekit/type_cameras.pyi +5 -3
- homeassistant-stubs/components/homekit/type_switches.pyi +17 -6
- homeassistant-stubs/components/homekit/util.pyi +1 -1
- homeassistant-stubs/components/homekit_controller/button.pyi +1 -1
- homeassistant-stubs/components/homekit_controller/select.pyi +1 -1
- homeassistant-stubs/components/homekit_controller/utils.pyi +1 -2
- homeassistant-stubs/components/homewizard/__init__.pyi +7 -5
- homeassistant-stubs/components/homewizard/button.pyi +2 -3
- homeassistant-stubs/components/homewizard/const.pyi +1 -1
- homeassistant-stubs/components/homewizard/diagnostics.pyi +2 -4
- homeassistant-stubs/components/homewizard/number.pyi +2 -3
- homeassistant-stubs/components/homewizard/sensor.pyi +4 -4
- homeassistant-stubs/components/homewizard/switch.pyi +4 -4
- homeassistant-stubs/components/homeworks/__init__.pyi +1 -1
- homeassistant-stubs/components/homeworks/config_flow.pyi +5 -3
- homeassistant-stubs/components/http/__init__.pyi +1 -1
- homeassistant-stubs/components/http/decorators.pyi +2 -1
- homeassistant-stubs/components/http/static.pyi +1 -4
- homeassistant-stubs/components/huawei_lte/select.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -2
- homeassistant-stubs/components/humidifier/__init__.pyi +3 -3
- homeassistant-stubs/components/humidifier/const.pyi +5 -5
- homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +6 -1
- homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +6 -5
- homeassistant-stubs/components/husqvarna_automower/number.pyi +3 -5
- homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -2
- homeassistant-stubs/components/husqvarna_automower/sensor.pyi +9 -2
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +1 -3
- homeassistant-stubs/components/hydrawise/binary_sensor.pyi +14 -2
- homeassistant-stubs/components/hydrawise/const.pyi +5 -2
- homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
- homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
- homeassistant-stubs/components/hydrawise/valve.pyi +24 -0
- homeassistant-stubs/components/ibeacon/sensor.pyi +1 -1
- homeassistant-stubs/components/idasen_desk/button.pyi +1 -1
- homeassistant-stubs/components/idasen_desk/sensor.pyi +1 -1
- homeassistant-stubs/components/image/__init__.pyi +1 -1
- homeassistant-stubs/components/image_processing/__init__.pyi +4 -4
- homeassistant-stubs/components/image_upload/__init__.pyi +1 -1
- homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/imgw_pib/sensor.pyi +1 -1
- homeassistant-stubs/components/integration/sensor.pyi +2 -2
- homeassistant-stubs/components/intent/__init__.pyi +10 -0
- homeassistant-stubs/components/intent/timers.pyi +7 -7
- homeassistant-stubs/components/ios/__init__.pyi +1 -1
- homeassistant-stubs/components/ios/const.pyi +1 -0
- homeassistant-stubs/components/iotty/__init__.pyi +21 -0
- homeassistant-stubs/components/iotty/api.pyi +15 -0
- homeassistant-stubs/components/iotty/application_credentials.pyi +7 -0
- homeassistant-stubs/components/iotty/config_flow.pyi +8 -0
- homeassistant-stubs/components/iotty/const.pyi +1 -0
- homeassistant-stubs/components/iotty/coordinator.pyi +29 -0
- homeassistant-stubs/components/iotty/switch.pyi +34 -0
- homeassistant-stubs/components/ipp/sensor.pyi +1 -1
- homeassistant-stubs/components/isy994/fan.pyi +1 -0
- homeassistant-stubs/components/isy994/switch.pyi +1 -1
- homeassistant-stubs/components/jellyfin/__init__.pyi +5 -3
- homeassistant-stubs/components/jellyfin/config_flow.pyi +4 -5
- homeassistant-stubs/components/jellyfin/coordinator.pyi +0 -2
- homeassistant-stubs/components/jellyfin/diagnostics.pyi +2 -4
- homeassistant-stubs/components/jellyfin/media_player.pyi +2 -3
- homeassistant-stubs/components/jellyfin/media_source.pyi +2 -3
- homeassistant-stubs/components/jellyfin/sensor.pyi +3 -5
- homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/jvc_projector/select.pyi +1 -1
- homeassistant-stubs/components/kaleidescape/sensor.pyi +1 -1
- homeassistant-stubs/components/knocki/coordinator.pyi +2 -2
- homeassistant-stubs/components/knx/__init__.pyi +7 -3
- homeassistant-stubs/components/knx/binary_sensor.pyi +4 -4
- homeassistant-stubs/components/knx/button.pyi +4 -4
- homeassistant-stubs/components/knx/climate.pyi +5 -3
- homeassistant-stubs/components/knx/config_flow.pyi +1 -1
- homeassistant-stubs/components/knx/const.pyi +5 -4
- homeassistant-stubs/components/knx/cover.pyi +4 -4
- homeassistant-stubs/components/knx/date.pyi +7 -9
- homeassistant-stubs/components/knx/datetime.pyi +7 -6
- homeassistant-stubs/components/knx/device.pyi +2 -1
- homeassistant-stubs/components/knx/expose.pyi +4 -5
- homeassistant-stubs/components/knx/fan.pyi +5 -4
- homeassistant-stubs/components/knx/knx_entity.pyi +29 -5
- homeassistant-stubs/components/knx/light.pyi +32 -11
- homeassistant-stubs/components/knx/notify.pyi +4 -3
- homeassistant-stubs/components/knx/number.pyi +4 -3
- homeassistant-stubs/components/knx/project.pyi +5 -3
- homeassistant-stubs/components/knx/scene.pyi +4 -4
- homeassistant-stubs/components/knx/schema.pyi +5 -2
- homeassistant-stubs/components/knx/select.pyi +5 -4
- homeassistant-stubs/components/knx/sensor.pyi +5 -5
- homeassistant-stubs/components/knx/services.pyi +1 -1
- homeassistant-stubs/components/knx/storage/config_store.pyi +44 -0
- homeassistant-stubs/components/knx/storage/const.pyi +25 -0
- homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +36 -0
- homeassistant-stubs/components/knx/storage/entity_store_validation.pyi +25 -0
- homeassistant-stubs/components/knx/storage/knx_selector.pyi +21 -0
- homeassistant-stubs/components/knx/switch.pyi +23 -9
- homeassistant-stubs/components/knx/telegrams.pyi +5 -6
- homeassistant-stubs/components/knx/text.pyi +4 -3
- homeassistant-stubs/components/knx/time.pyi +7 -9
- homeassistant-stubs/components/knx/trigger.pyi +1 -1
- homeassistant-stubs/components/knx/validation.pyi +8 -1
- homeassistant-stubs/components/knx/weather.pyi +4 -3
- homeassistant-stubs/components/knx/websocket.pyi +17 -1
- homeassistant-stubs/components/kraken/sensor.pyi +1 -1
- homeassistant-stubs/components/lacrosse_view/sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/button.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/entity.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/number.pyi +2 -2
- homeassistant-stubs/components/lamarzocco/select.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/switch.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/update.pyi +3 -1
- homeassistant-stubs/components/lametric/button.pyi +1 -1
- homeassistant-stubs/components/lametric/number.pyi +1 -1
- homeassistant-stubs/components/lametric/select.pyi +1 -1
- homeassistant-stubs/components/lametric/sensor.pyi +1 -1
- homeassistant-stubs/components/lametric/switch.pyi +1 -1
- homeassistant-stubs/components/laundrify/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/laundrify/const.pyi +3 -1
- homeassistant-stubs/components/laundrify/coordinator.pyi +1 -2
- homeassistant-stubs/components/lawn_mower/__init__.pyi +1 -1
- homeassistant-stubs/components/lawn_mower/const.pyi +7 -7
- homeassistant-stubs/components/lcn/schemas.pyi +9 -8
- homeassistant-stubs/components/lidarr/sensor.pyi +1 -1
- homeassistant-stubs/components/lifx/const.pyi +1 -0
- homeassistant-stubs/components/lifx/coordinator.pyi +20 -7
- homeassistant-stubs/components/lifx/light.pyi +5 -2
- homeassistant-stubs/components/lifx/manager.pyi +12 -1
- homeassistant-stubs/components/light/__init__.pyi +16 -17
- homeassistant-stubs/components/linkplay/__init__.pyi +14 -0
- homeassistant-stubs/components/linkplay/config_flow.pyi +14 -0
- homeassistant-stubs/components/linkplay/const.pyi +5 -0
- homeassistant-stubs/components/linkplay/media_player.pyi +66 -0
- homeassistant-stubs/components/linkplay/utils.pyi +19 -0
- homeassistant-stubs/components/litterrobot/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/litterrobot/button.pyi +1 -1
- homeassistant-stubs/components/litterrobot/hub.pyi +2 -2
- homeassistant-stubs/components/litterrobot/select.pyi +1 -1
- homeassistant-stubs/components/litterrobot/sensor.pyi +1 -1
- homeassistant-stubs/components/litterrobot/switch.pyi +1 -1
- homeassistant-stubs/components/litterrobot/time.pyi +1 -1
- homeassistant-stubs/components/lock/__init__.pyi +2 -2
- homeassistant-stubs/components/logbook/models.pyi +2 -2
- homeassistant-stubs/components/logbook/processor.pyi +2 -3
- homeassistant-stubs/components/logbook/websocket_api.pyi +1 -1
- homeassistant-stubs/components/logger/helpers.pyi +5 -5
- homeassistant-stubs/components/madvr/__init__.pyi +13 -0
- homeassistant-stubs/components/madvr/binary_sensor.pyi +30 -0
- homeassistant-stubs/components/madvr/config_flow.pyi +17 -0
- homeassistant-stubs/components/madvr/const.pyi +29 -0
- homeassistant-stubs/components/madvr/coordinator.pyi +18 -0
- homeassistant-stubs/components/madvr/entity.pyi +10 -0
- homeassistant-stubs/components/madvr/errors.pyi +1 -0
- homeassistant-stubs/components/madvr/remote.pyi +24 -0
- homeassistant-stubs/components/madvr/sensor.pyi +31 -0
- homeassistant-stubs/components/mastodon/__init__.pyi +11 -0
- homeassistant-stubs/components/mastodon/config_flow.pyi +18 -0
- homeassistant-stubs/components/mastodon/const.pyi +7 -0
- homeassistant-stubs/components/mastodon/notify.pyi +8 -5
- homeassistant-stubs/components/mastodon/utils.pyi +5 -0
- homeassistant-stubs/components/matrix/__init__.pyi +1 -1
- homeassistant-stubs/components/matter/__init__.pyi +1 -0
- homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/matter/climate.pyi +11 -13
- homeassistant-stubs/components/matter/cover.pyi +4 -4
- homeassistant-stubs/components/matter/discovery.pyi +1 -1
- homeassistant-stubs/components/matter/entity.pyi +2 -1
- homeassistant-stubs/components/matter/fan.pyi +4 -0
- homeassistant-stubs/components/matter/light.pyi +2 -0
- homeassistant-stubs/components/matter/lock.pyi +3 -6
- homeassistant-stubs/components/matter/models.pyi +1 -1
- homeassistant-stubs/components/matter/number.pyi +1 -1
- homeassistant-stubs/components/matter/select.pyi +34 -0
- homeassistant-stubs/components/matter/sensor.pyi +1 -1
- homeassistant-stubs/components/matter/update.pyi +53 -0
- homeassistant-stubs/components/media_player/__init__.pyi +8 -8
- homeassistant-stubs/components/media_player/const.pyi +72 -72
- homeassistant-stubs/components/media_player/intent.pyi +2 -4
- homeassistant-stubs/components/minecraft_server/api.pyi +3 -3
- homeassistant-stubs/components/minecraft_server/sensor.pyi +1 -1
- homeassistant-stubs/components/modbus/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/const.pyi +11 -11
- homeassistant-stubs/components/modbus/fan.pyi +3 -1
- homeassistant-stubs/components/modbus/validators.pyi +2 -3
- homeassistant-stubs/components/monzo/sensor.pyi +1 -1
- homeassistant-stubs/components/mopeka/__init__.pyi +5 -3
- homeassistant-stubs/components/mopeka/config_flow.pyi +18 -1
- homeassistant-stubs/components/mopeka/const.pyi +5 -0
- homeassistant-stubs/components/mopeka/sensor.pyi +3 -4
- homeassistant-stubs/components/mqtt/client.pyi +3 -4
- homeassistant-stubs/components/mqtt/device_trigger.pyi +2 -2
- homeassistant-stubs/components/mqtt/fan.pyi +1 -0
- homeassistant-stubs/components/mqtt/models.pyi +4 -4
- homeassistant-stubs/components/mqtt/subscription.pyi +1 -1
- homeassistant-stubs/components/mqtt/switch.pyi +3 -2
- homeassistant-stubs/components/mqtt/vacuum.pyi +2 -7
- homeassistant-stubs/components/mysensors/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/mysensors/cover.pyi +4 -4
- homeassistant-stubs/components/myuplink/select.pyi +23 -0
- homeassistant-stubs/components/nam/sensor.pyi +1 -1
- homeassistant-stubs/components/nest/media_source.pyi +1 -1
- homeassistant-stubs/components/netatmo/fan.pyi +1 -0
- homeassistant-stubs/components/netatmo/helper.pyi +1 -1
- homeassistant-stubs/components/netatmo/sensor.pyi +2 -2
- homeassistant-stubs/components/nextdns/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/nextdns/sensor.pyi +1 -1
- homeassistant-stubs/components/nextdns/switch.pyi +1 -1
- homeassistant-stubs/components/notify/__init__.pyi +2 -2
- homeassistant-stubs/components/notion/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/notion/config_flow.pyi +1 -1
- homeassistant-stubs/components/notion/coordinator.pyi +1 -1
- homeassistant-stubs/components/notion/sensor.pyi +1 -1
- homeassistant-stubs/components/number/__init__.pyi +1 -1
- homeassistant-stubs/components/number/const.pyi +52 -52
- homeassistant-stubs/components/nut/__init__.pyi +1 -1
- homeassistant-stubs/components/oncue/__init__.pyi +3 -4
- homeassistant-stubs/components/oncue/binary_sensor.pyi +2 -5
- homeassistant-stubs/components/oncue/sensor.pyi +2 -3
- homeassistant-stubs/components/oncue/types.pyi +5 -0
- homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/onewire/onewire_entities.pyi +1 -1
- homeassistant-stubs/components/onewire/sensor.pyi +1 -1
- homeassistant-stubs/components/onewire/switch.pyi +1 -1
- homeassistant-stubs/components/openuv/sensor.pyi +1 -1
- homeassistant-stubs/components/oralb/__init__.pyi +3 -3
- homeassistant-stubs/components/oralb/sensor.pyi +3 -4
- homeassistant-stubs/components/otbr/websocket_api.pyi +6 -3
- homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +1 -1
- homeassistant-stubs/components/overkiz/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/overkiz/button.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate_entities/__init__.pyi +3 -2
- homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heat_pump_main_component.pyi +18 -0
- homeassistant-stubs/components/overkiz/number.pyi +1 -1
- homeassistant-stubs/components/overkiz/select.pyi +1 -1
- homeassistant-stubs/components/overkiz/sensor.pyi +1 -1
- homeassistant-stubs/components/overkiz/switch.pyi +1 -1
- homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
- homeassistant-stubs/components/peco/sensor.pyi +1 -1
- homeassistant-stubs/components/persistent_notification/__init__.pyi +4 -4
- homeassistant-stubs/components/pi_hole/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/pi_hole/update.pyi +1 -1
- homeassistant-stubs/components/ping/entity.pyi +0 -1
- homeassistant-stubs/components/ping/sensor.pyi +1 -1
- homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/plugwise/number.pyi +1 -1
- homeassistant-stubs/components/plugwise/select.pyi +1 -1
- homeassistant-stubs/components/plugwise/sensor.pyi +1 -1
- homeassistant-stubs/components/plugwise/switch.pyi +1 -1
- homeassistant-stubs/components/powerwall/__init__.pyi +4 -4
- homeassistant-stubs/components/powerwall/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/powerwall/models.pyi +4 -1
- homeassistant-stubs/components/powerwall/sensor.pyi +4 -6
- homeassistant-stubs/components/powerwall/switch.pyi +2 -4
- homeassistant-stubs/components/private_ble_device/sensor.pyi +1 -1
- homeassistant-stubs/components/prometheus/__init__.pyi +3 -1
- homeassistant-stubs/components/prusalink/__init__.pyi +1 -1
- homeassistant-stubs/components/prusalink/binary_sensor.pyi +36 -0
- homeassistant-stubs/components/prusalink/button.pyi +1 -1
- homeassistant-stubs/components/prusalink/coordinator.pyi +4 -1
- homeassistant-stubs/components/prusalink/sensor.pyi +3 -3
- homeassistant-stubs/components/pure_energie/sensor.pyi +1 -1
- homeassistant-stubs/components/purpleair/config_flow.pyi +1 -1
- homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
- homeassistant-stubs/components/pvoutput/sensor.pyi +1 -1
- homeassistant-stubs/components/qnap_qsw/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/qnap_qsw/button.pyi +1 -1
- homeassistant-stubs/components/qnap_qsw/entity.pyi +1 -1
- homeassistant-stubs/components/qnap_qsw/sensor.pyi +1 -1
- homeassistant-stubs/components/rabbitair/fan.pyi +1 -0
- homeassistant-stubs/components/radarr/coordinator.pyi +1 -1
- homeassistant-stubs/components/radarr/sensor.pyi +1 -1
- homeassistant-stubs/components/rainforest_raven/sensor.pyi +1 -1
- homeassistant-stubs/components/rainmachine/__init__.pyi +8 -7
- homeassistant-stubs/components/rainmachine/binary_sensor.pyi +4 -5
- homeassistant-stubs/components/rainmachine/button.pyi +4 -5
- homeassistant-stubs/components/rainmachine/coordinator.pyi +3 -3
- homeassistant-stubs/components/rainmachine/diagnostics.pyi +3 -4
- homeassistant-stubs/components/rainmachine/model.pyi +1 -1
- homeassistant-stubs/components/rainmachine/select.pyi +5 -5
- homeassistant-stubs/components/rainmachine/sensor.pyi +5 -5
- homeassistant-stubs/components/rainmachine/switch.pyi +6 -6
- homeassistant-stubs/components/rainmachine/update.pyi +9 -10
- homeassistant-stubs/components/rainmachine/util.pyi +4 -4
- homeassistant-stubs/components/rdw/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/rdw/sensor.pyi +1 -1
- homeassistant-stubs/components/recorder/__init__.pyi +2 -1
- homeassistant-stubs/components/recorder/basic_websocket_api.pyi +7 -0
- homeassistant-stubs/components/recorder/const.pyi +5 -8
- homeassistant-stubs/components/recorder/core.pyi +16 -16
- homeassistant-stubs/components/recorder/db_schema.pyi +19 -6
- homeassistant-stubs/components/recorder/migration.pyi +221 -24
- homeassistant-stubs/components/recorder/models/context.pyi +1 -3
- homeassistant-stubs/components/recorder/statistics.pyi +2 -2
- homeassistant-stubs/components/recorder/table_managers/__init__.pyi +0 -1
- homeassistant-stubs/components/recorder/table_managers/event_data.pyi +0 -1
- homeassistant-stubs/components/recorder/table_managers/event_types.pyi +1 -0
- homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +0 -1
- homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +1 -0
- homeassistant-stubs/components/recorder/tasks.pyi +0 -24
- homeassistant-stubs/components/recorder/util.pyi +8 -6
- homeassistant-stubs/components/recorder/websocket_api.pyi +0 -1
- homeassistant-stubs/components/remote/__init__.pyi +4 -4
- homeassistant-stubs/components/renault/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/renault/button.pyi +1 -1
- homeassistant-stubs/components/renault/entity.pyi +1 -1
- homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
- homeassistant-stubs/components/renault/select.pyi +1 -1
- homeassistant-stubs/components/renault/sensor.pyi +1 -1
- homeassistant-stubs/components/repairs/websocket_api.pyi +1 -1
- homeassistant-stubs/components/rfxtrx/sensor.pyi +1 -1
- homeassistant-stubs/components/ring/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/ring/light.pyi +2 -2
- homeassistant-stubs/components/ring/sensor.pyi +1 -1
- homeassistant-stubs/components/rituals_perfume_genie/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/rituals_perfume_genie/number.pyi +1 -1
- homeassistant-stubs/components/rituals_perfume_genie/select.pyi +1 -1
- homeassistant-stubs/components/rituals_perfume_genie/sensor.pyi +1 -1
- homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +1 -1
- homeassistant-stubs/components/roborock/__init__.pyi +4 -3
- homeassistant-stubs/components/roborock/binary_sensor.pyi +3 -6
- homeassistant-stubs/components/roborock/button.pyi +3 -6
- homeassistant-stubs/components/roborock/coordinator.pyi +8 -2
- homeassistant-stubs/components/roborock/diagnostics.pyi +2 -4
- homeassistant-stubs/components/roborock/image.pyi +2 -3
- homeassistant-stubs/components/roborock/number.pyi +3 -6
- homeassistant-stubs/components/roborock/select.pyi +12 -6
- homeassistant-stubs/components/roborock/sensor.pyi +6 -9
- homeassistant-stubs/components/roborock/switch.pyi +3 -6
- homeassistant-stubs/components/roborock/time.pyi +3 -6
- homeassistant-stubs/components/roborock/vacuum.pyi +2 -4
- homeassistant-stubs/components/roku/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/roku/browse_media.pyi +2 -1
- homeassistant-stubs/components/roku/select.pyi +1 -1
- homeassistant-stubs/components/roku/sensor.pyi +1 -1
- homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
- homeassistant-stubs/components/script/__init__.pyi +148 -0
- homeassistant-stubs/components/script/config.pyi +39 -0
- homeassistant-stubs/components/script/const.pyi +14 -0
- homeassistant-stubs/components/script/helpers.pyi +11 -0
- homeassistant-stubs/components/script/logbook.pyi +8 -0
- homeassistant-stubs/components/script/trace.pyi +10 -0
- homeassistant-stubs/components/search/__init__.pyi +14 -13
- homeassistant-stubs/components/select/__init__.pyi +1 -1
- homeassistant-stubs/components/sensibo/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/sensibo/button.pyi +1 -1
- homeassistant-stubs/components/sensibo/number.pyi +1 -1
- homeassistant-stubs/components/sensibo/select.pyi +1 -1
- homeassistant-stubs/components/sensibo/sensor.pyi +2 -2
- homeassistant-stubs/components/sensibo/switch.pyi +1 -1
- homeassistant-stubs/components/sensibo/update.pyi +1 -1
- homeassistant-stubs/components/sensor/__init__.pyi +1 -1
- homeassistant-stubs/components/sensor/const.pyi +55 -55
- homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/sfr_box/button.pyi +1 -1
- homeassistant-stubs/components/sfr_box/sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/binary_sensor.pyi +4 -4
- homeassistant-stubs/components/shelly/button.pyi +1 -1
- homeassistant-stubs/components/shelly/climate.pyi +1 -1
- homeassistant-stubs/components/shelly/const.pyi +6 -3
- homeassistant-stubs/components/shelly/coordinator.pyi +1 -1
- homeassistant-stubs/components/shelly/entity.pyi +9 -3
- homeassistant-stubs/components/shelly/event.pyi +2 -2
- homeassistant-stubs/components/shelly/number.pyi +28 -6
- homeassistant-stubs/components/shelly/select.pyi +25 -0
- homeassistant-stubs/components/shelly/sensor.pyi +6 -4
- homeassistant-stubs/components/shelly/switch.pyi +17 -3
- homeassistant-stubs/components/shelly/text.pyi +23 -0
- homeassistant-stubs/components/shelly/update.pyi +2 -2
- homeassistant-stubs/components/shelly/utils.pyi +3 -1
- homeassistant-stubs/components/shelly/valve.pyi +1 -1
- homeassistant-stubs/components/simplisafe/button.pyi +1 -1
- homeassistant-stubs/components/simplisafe/typing.pyi +3 -2
- homeassistant-stubs/components/siren/__init__.pyi +1 -1
- homeassistant-stubs/components/siren/const.pyi +5 -5
- homeassistant-stubs/components/skybell/sensor.pyi +1 -1
- homeassistant-stubs/components/sleepiq/button.pyi +1 -1
- homeassistant-stubs/components/sleepiq/entity.pyi +1 -1
- homeassistant-stubs/components/sleepiq/number.pyi +1 -1
- homeassistant-stubs/components/snooz/fan.pyi +1 -0
- homeassistant-stubs/components/sonarr/sensor.pyi +1 -1
- homeassistant-stubs/components/speedtestdotnet/sensor.pyi +1 -1
- homeassistant-stubs/components/ssdp/__init__.pyi +1 -1
- homeassistant-stubs/components/starlink/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/starlink/button.pyi +1 -1
- homeassistant-stubs/components/starlink/device_tracker.pyi +1 -1
- homeassistant-stubs/components/starlink/sensor.pyi +1 -1
- homeassistant-stubs/components/starlink/switch.pyi +1 -1
- homeassistant-stubs/components/starlink/time.pyi +1 -1
- homeassistant-stubs/components/steamist/sensor.pyi +1 -1
- homeassistant-stubs/components/stream/core.pyi +9 -9
- homeassistant-stubs/components/stream/fmp4utils.pyi +1 -1
- homeassistant-stubs/components/stream/worker.pyi +1 -2
- homeassistant-stubs/components/streamlabswater/entity.pyi +0 -1
- homeassistant-stubs/components/streamlabswater/sensor.pyi +1 -1
- homeassistant-stubs/components/stt/const.pyi +21 -21
- homeassistant-stubs/components/sun/sensor.pyi +1 -1
- homeassistant-stubs/components/switch/__init__.pyi +3 -3
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +1 -1
- homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -1
- homeassistant-stubs/components/switcher_kis/button.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/button.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/camera.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/entity.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/sensor.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/switch.pyi +1 -1
- homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
- homeassistant-stubs/components/system_health/__init__.pyi +1 -1
- homeassistant-stubs/components/system_log/__init__.pyi +1 -1
- homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/systemmonitor/sensor.pyi +1 -1
- homeassistant-stubs/components/tag/__init__.pyi +0 -1
- homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
- homeassistant-stubs/components/tailwind/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tailwind/button.pyi +1 -1
- homeassistant-stubs/components/tailwind/number.pyi +1 -1
- homeassistant-stubs/components/tami4/button.pyi +1 -1
- homeassistant-stubs/components/tautulli/sensor.pyi +2 -2
- homeassistant-stubs/components/technove/__init__.pyi +2 -2
- homeassistant-stubs/components/technove/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/technove/coordinator.pyi +2 -3
- homeassistant-stubs/components/technove/diagnostics.pyi +9 -0
- homeassistant-stubs/components/technove/number.pyi +37 -0
- homeassistant-stubs/components/technove/sensor.pyi +3 -4
- homeassistant-stubs/components/technove/switch.pyi +3 -4
- homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tedee/config_flow.pyi +3 -0
- homeassistant-stubs/components/tedee/lock.pyi +1 -1
- homeassistant-stubs/components/tedee/sensor.pyi +1 -1
- homeassistant-stubs/components/text/__init__.pyi +3 -3
- homeassistant-stubs/components/time/__init__.pyi +1 -1
- homeassistant-stubs/components/todo/__init__.pyi +2 -2
- homeassistant-stubs/components/todo/const.pyi +19 -9
- homeassistant-stubs/components/tolo/const.pyi +4 -5
- homeassistant-stubs/components/tolo/fan.pyi +3 -1
- homeassistant-stubs/components/tolo/number.pyi +1 -1
- homeassistant-stubs/components/tolo/select.pyi +1 -1
- homeassistant-stubs/components/tolo/sensor.pyi +1 -1
- homeassistant-stubs/components/tolo/switch.pyi +1 -1
- homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tplink/button.pyi +1 -1
- homeassistant-stubs/components/tplink/entity.pyi +1 -1
- homeassistant-stubs/components/tplink/fan.pyi +1 -0
- homeassistant-stubs/components/tplink/number.pyi +1 -1
- homeassistant-stubs/components/tplink/select.pyi +1 -1
- homeassistant-stubs/components/tplink/sensor.pyi +1 -1
- homeassistant-stubs/components/tplink/switch.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/switch.pyi +4 -4
- homeassistant-stubs/components/tractive/sensor.pyi +1 -1
- homeassistant-stubs/components/tractive/switch.pyi +1 -1
- homeassistant-stubs/components/tradfri/fan.pyi +1 -0
- homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
- homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +3 -3
- homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +2 -2
- homeassistant-stubs/components/trafikverket_camera/sensor.pyi +1 -1
- homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +1 -1
- homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -1
- homeassistant-stubs/components/trafikverket_train/coordinator.pyi +3 -3
- homeassistant-stubs/components/trafikverket_train/sensor.pyi +1 -1
- homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +3 -3
- homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +3 -3
- homeassistant-stubs/components/transmission/sensor.pyi +1 -1
- homeassistant-stubs/components/transmission/switch.pyi +1 -1
- homeassistant-stubs/components/tts/__init__.pyi +10 -9
- homeassistant-stubs/components/tts/const.pyi +1 -3
- homeassistant-stubs/components/twentemilieu/sensor.pyi +1 -1
- homeassistant-stubs/components/unifi/button.pyi +1 -1
- homeassistant-stubs/components/unifi/device_tracker.pyi +6 -5
- homeassistant-stubs/components/unifi/entity.pyi +3 -2
- homeassistant-stubs/components/unifi/hub/entity_loader.pyi +9 -0
- homeassistant-stubs/components/unifi/image.pyi +1 -1
- homeassistant-stubs/components/unifi/sensor.pyi +9 -3
- homeassistant-stubs/components/unifi/switch.pyi +3 -2
- homeassistant-stubs/components/unifi/update.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +10 -14
- homeassistant-stubs/components/unifiprotect/button.pyi +7 -6
- homeassistant-stubs/components/unifiprotect/camera.pyi +4 -4
- homeassistant-stubs/components/unifiprotect/data.pyi +2 -3
- homeassistant-stubs/components/unifiprotect/entity.pyi +14 -10
- homeassistant-stubs/components/unifiprotect/event.pyi +25 -0
- homeassistant-stubs/components/unifiprotect/light.pyi +3 -3
- homeassistant-stubs/components/unifiprotect/lock.pyi +3 -3
- homeassistant-stubs/components/unifiprotect/media_player.pyi +3 -3
- homeassistant-stubs/components/unifiprotect/media_source.pyi +10 -10
- homeassistant-stubs/components/unifiprotect/models.pyi +6 -6
- homeassistant-stubs/components/unifiprotect/number.pyi +4 -4
- homeassistant-stubs/components/unifiprotect/select.pyi +4 -4
- homeassistant-stubs/components/unifiprotect/sensor.pyi +6 -6
- homeassistant-stubs/components/unifiprotect/switch.pyi +12 -12
- homeassistant-stubs/components/unifiprotect/text.pyi +4 -4
- homeassistant-stubs/components/unifiprotect/utils.pyi +1 -2
- homeassistant-stubs/components/upcloud/__init__.pyi +1 -1
- homeassistant-stubs/components/update/__init__.pyi +2 -2
- homeassistant-stubs/components/update/const.pyi +5 -5
- homeassistant-stubs/components/vacuum/__init__.pyi +15 -15
- homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/vallox/fan.pyi +1 -0
- homeassistant-stubs/components/vallox/number.pyi +1 -1
- homeassistant-stubs/components/vallox/sensor.pyi +1 -1
- homeassistant-stubs/components/vallox/switch.pyi +1 -1
- homeassistant-stubs/components/valve/__init__.pyi +7 -7
- homeassistant-stubs/components/wake_on_lan/__init__.pyi +5 -1
- homeassistant-stubs/components/wake_on_lan/button.pyi +21 -0
- homeassistant-stubs/components/wake_on_lan/config_flow.pyi +20 -0
- homeassistant-stubs/components/wake_on_lan/const.pyi +7 -0
- homeassistant-stubs/components/wake_on_lan/switch.pyi +2 -5
- homeassistant-stubs/components/wake_word/models.pyi +2 -2
- homeassistant-stubs/components/wallbox/const.pyi +18 -18
- homeassistant-stubs/components/wallbox/number.pyi +1 -1
- homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
- homeassistant-stubs/components/waqi/sensor.pyi +1 -1
- homeassistant-stubs/components/water_heater/__init__.pyi +5 -5
- homeassistant-stubs/components/weather/__init__.pyi +1 -1
- homeassistant-stubs/components/weather/const.pyi +3 -3
- homeassistant-stubs/components/wemo/__init__.pyi +1 -1
- homeassistant-stubs/components/wemo/coordinator.pyi +1 -1
- homeassistant-stubs/components/wemo/entity.pyi +1 -1
- homeassistant-stubs/components/wemo/fan.pyi +1 -0
- homeassistant-stubs/components/wemo/models.pyi +1 -1
- homeassistant-stubs/components/wemo/sensor.pyi +1 -1
- homeassistant-stubs/components/whois/sensor.pyi +1 -1
- homeassistant-stubs/components/withings/__init__.pyi +1 -1
- homeassistant-stubs/components/withings/sensor.pyi +5 -5
- homeassistant-stubs/components/wiz/__init__.pyi +1 -0
- homeassistant-stubs/components/wiz/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/wiz/diagnostics.pyi +2 -4
- homeassistant-stubs/components/wiz/light.pyi +2 -3
- homeassistant-stubs/components/wiz/number.pyi +3 -4
- homeassistant-stubs/components/wiz/sensor.pyi +2 -3
- homeassistant-stubs/components/wiz/switch.pyi +2 -3
- homeassistant-stubs/components/wled/__init__.pyi +7 -2
- homeassistant-stubs/components/wled/const.pyi +7 -0
- homeassistant-stubs/components/wled/coordinator.pyi +7 -2
- homeassistant-stubs/components/wled/helpers.pyi +2 -0
- homeassistant-stubs/components/wled/light.pyi +7 -5
- homeassistant-stubs/components/wled/number.pyi +2 -2
- homeassistant-stubs/components/wled/sensor.pyi +1 -1
- homeassistant-stubs/components/wled/switch.pyi +1 -1
- homeassistant-stubs/components/wled/update.pyi +7 -3
- homeassistant-stubs/components/worldclock/__init__.pyi +7 -0
- homeassistant-stubs/components/worldclock/config_flow.pyi +22 -0
- homeassistant-stubs/components/worldclock/const.pyi +8 -0
- homeassistant-stubs/components/worldclock/sensor.pyi +9 -4
- homeassistant-stubs/components/xiaomi_ble/__init__.pyi +4 -4
- homeassistant-stubs/components/xiaomi_ble/binary_sensor.pyi +3 -4
- homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +2 -2
- homeassistant-stubs/components/xiaomi_ble/event.pyi +2 -3
- homeassistant-stubs/components/xiaomi_ble/sensor.pyi +3 -4
- homeassistant-stubs/components/xiaomi_ble/types.pyi +4 -0
- homeassistant-stubs/components/yalexs_ble/sensor.pyi +1 -1
- homeassistant-stubs/components/youtube/sensor.pyi +1 -1
- homeassistant-stubs/components/zwave_js/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/zwave_js/discovery.pyi +9 -9
- homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +7 -7
- homeassistant-stubs/components/zwave_js/fan.pyi +1 -0
- homeassistant-stubs/components/zwave_js/helpers.pyi +2 -2
- homeassistant-stubs/components/zwave_js/humidifier.pyi +1 -1
- homeassistant-stubs/components/zwave_js/migrate.pyi +1 -1
- homeassistant-stubs/components/zwave_js/sensor.pyi +1 -1
- homeassistant-stubs/components/zwave_js/services.pyi +4 -3
- homeassistant-stubs/config.pyi +10 -10
- homeassistant-stubs/config_entries.pyi +18 -14
- homeassistant-stubs/const.pyi +161 -160
- homeassistant-stubs/core.pyi +29 -26
- homeassistant-stubs/data_entry_flow.pyi +8 -8
- homeassistant-stubs/exceptions.pyi +1 -2
- homeassistant-stubs/helpers/aiohttp_client.pyi +6 -6
- homeassistant-stubs/helpers/area_registry.pyi +4 -1
- homeassistant-stubs/helpers/category_registry.pyi +12 -2
- homeassistant-stubs/helpers/condition.pyi +2 -4
- homeassistant-stubs/helpers/config_validation.pyi +9 -6
- homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
- homeassistant-stubs/helpers/device_registry.pyi +19 -10
- homeassistant-stubs/helpers/entity.pyi +7 -8
- homeassistant-stubs/helpers/entity_platform.pyi +1 -1
- homeassistant-stubs/helpers/entity_registry.pyi +16 -11
- homeassistant-stubs/helpers/event.pyi +7 -7
- homeassistant-stubs/helpers/floor_registry.pyi +9 -2
- homeassistant-stubs/helpers/http.pyi +2 -1
- homeassistant-stubs/helpers/intent.pyi +41 -38
- homeassistant-stubs/helpers/issue_registry.pyi +3 -3
- homeassistant-stubs/helpers/json.pyi +8 -2
- homeassistant-stubs/helpers/label_registry.pyi +9 -2
- homeassistant-stubs/helpers/llm.pyi +1 -1
- homeassistant-stubs/helpers/normalized_name_base_registry.pyi +4 -1
- homeassistant-stubs/helpers/recorder.pyi +10 -1
- homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -1
- homeassistant-stubs/helpers/script.pyi +18 -16
- homeassistant-stubs/helpers/selector.pyi +24 -23
- homeassistant-stubs/helpers/service.pyi +2 -2
- homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -2
- homeassistant-stubs/helpers/significant_change.pyi +3 -2
- homeassistant-stubs/helpers/template.pyi +3 -3
- homeassistant-stubs/helpers/trace.pyi +2 -3
- homeassistant-stubs/helpers/trigger.pyi +1 -1
- homeassistant-stubs/helpers/typing.pyi +3 -3
- homeassistant-stubs/helpers/update_coordinator.pyi +8 -4
- homeassistant-stubs/runner.pyi +1 -1
- homeassistant-stubs/setup.pyi +8 -9
- homeassistant-stubs/util/event_type.pyi +1 -1
- homeassistant-stubs/util/hass_dict.pyi +19 -19
- homeassistant-stubs/util/json.pyi +4 -9
- homeassistant-stubs/util/language.pyi +1 -1
- homeassistant-stubs/util/signal_type.pyi +1 -1
- homeassistant-stubs/util/ssl.pyi +3 -3
- homeassistant-stubs/util/timeout.pyi +4 -4
- homeassistant-stubs/util/ulid.pyi +2 -2
- homeassistant-stubs/util/yaml/loader.pyi +2 -3
- {homeassistant_stubs-2024.7.4.dist-info → homeassistant_stubs-2024.8.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.7.4.dist-info → homeassistant_stubs-2024.8.0.dist-info}/RECORD +943 -861
- homeassistant-stubs/components/laundrify/model.pyi +0 -7
- homeassistant-stubs/helpers/backports/__init__.pyi +0 -0
- homeassistant-stubs/helpers/backports/aiohttp_resolver.pyi +0 -21
- /homeassistant-stubs/components/knx/{helpers → storage}/__init__.pyi +0 -0
- /homeassistant-stubs/components/knx/{helpers → storage}/keyring.pyi +0 -0
- {homeassistant_stubs-2024.7.4.dist-info → homeassistant_stubs-2024.8.0.dist-info}/LICENSE +0 -0
- {homeassistant_stubs-2024.7.4.dist-info → homeassistant_stubs-2024.8.0.dist-info}/WHEEL +0 -0
@@ -1,13 +1,13 @@
|
|
1
1
|
import abc
|
2
2
|
from . import Recorder as Recorder
|
3
3
|
from .auto_repairs.statistics.duplicates import delete_statistics_duplicates as delete_statistics_duplicates, delete_statistics_meta_duplicates as delete_statistics_meta_duplicates
|
4
|
-
from .const import CONTEXT_ID_AS_BINARY_SCHEMA_VERSION as CONTEXT_ID_AS_BINARY_SCHEMA_VERSION, EVENT_TYPE_IDS_SCHEMA_VERSION as EVENT_TYPE_IDS_SCHEMA_VERSION, STATES_META_SCHEMA_VERSION as STATES_META_SCHEMA_VERSION, SupportedDialect as SupportedDialect
|
5
|
-
from .db_schema import 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, 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
|
4
|
+
from .const import CONTEXT_ID_AS_BINARY_SCHEMA_VERSION as CONTEXT_ID_AS_BINARY_SCHEMA_VERSION, EVENT_TYPE_IDS_SCHEMA_VERSION as EVENT_TYPE_IDS_SCHEMA_VERSION, LEGACY_STATES_EVENT_ID_INDEX_SCHEMA_VERSION as LEGACY_STATES_EVENT_ID_INDEX_SCHEMA_VERSION, STATES_META_SCHEMA_VERSION as STATES_META_SCHEMA_VERSION, SupportedDialect as SupportedDialect
|
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
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
|
9
9
|
from .statistics import get_start_time as get_start_time
|
10
|
-
from .tasks import CommitTask as CommitTask,
|
10
|
+
from .tasks import CommitTask as CommitTask, EntityIDPostMigrationTask as EntityIDPostMigrationTask, PostSchemaMigrationTask as PostSchemaMigrationTask, RecorderTask as RecorderTask, StatisticsTimestampMigrationCleanupTask as StatisticsTimestampMigrationCleanupTask
|
11
11
|
from .util import database_job_retry_wrapper as database_job_retry_wrapper, execute_stmt_lambda_element as execute_stmt_lambda_element, get_index_by_name as get_index_by_name, retryable_database_job as retryable_database_job, session_scope as session_scope
|
12
12
|
from _typeshed import Incomplete
|
13
13
|
from abc import ABC, abstractmethod
|
@@ -17,10 +17,13 @@ from homeassistant.core import HomeAssistant as HomeAssistant
|
|
17
17
|
from homeassistant.util.enum import try_parse_enum as try_parse_enum
|
18
18
|
from homeassistant.util.ulid import ulid_at_time as ulid_at_time, ulid_to_bytes as ulid_to_bytes
|
19
19
|
from sqlalchemy.engine import CursorResult as CursorResult, Engine as Engine
|
20
|
+
from sqlalchemy.engine.interfaces import ReflectedForeignKeyConstraint as ReflectedForeignKeyConstraint
|
20
21
|
from sqlalchemy.orm.session import Session as Session
|
21
22
|
from sqlalchemy.sql.lambdas import StatementLambdaElement as StatementLambdaElement
|
23
|
+
from typing import Any
|
22
24
|
|
23
25
|
LIVE_MIGRATION_MIN_SCHEMA_VERSION: int
|
26
|
+
MIGRATION_NOTE_OFFLINE: str
|
24
27
|
_EMPTY_ENTITY_ID: str
|
25
28
|
_EMPTY_EVENT_TYPE: str
|
26
29
|
_LOGGER: Incomplete
|
@@ -41,26 +44,180 @@ def raise_if_exception_missing_str(ex: Exception, match_substrs: Iterable[str])
|
|
41
44
|
def _get_schema_version(session: Session) -> int | None: ...
|
42
45
|
def get_schema_version(session_maker: Callable[[], Session]) -> int | None: ...
|
43
46
|
|
44
|
-
@dataclass
|
47
|
+
@dataclass(frozen=True)
|
45
48
|
class SchemaValidationStatus:
|
46
49
|
current_version: int
|
50
|
+
migration_needed: bool
|
47
51
|
schema_errors: set[str]
|
48
|
-
|
49
|
-
def __init__(self, current_version, schema_errors,
|
52
|
+
start_version: int
|
53
|
+
def __init__(self, current_version, migration_needed, schema_errors, start_version) -> None: ...
|
50
54
|
|
51
55
|
def _schema_is_current(current_version: int) -> bool: ...
|
52
56
|
def validate_db_schema(hass: HomeAssistant, instance: Recorder, session_maker: Callable[[], Session]) -> SchemaValidationStatus | None: ...
|
53
57
|
def _find_schema_errors(hass: HomeAssistant, instance: Recorder, session_maker: Callable[[], Session]) -> set[str]: ...
|
54
58
|
def live_migration(schema_status: SchemaValidationStatus) -> bool: ...
|
55
|
-
def
|
59
|
+
def pre_migrate_schema(engine: Engine) -> None: ...
|
60
|
+
def _migrate_schema(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus, end_version: int) -> SchemaValidationStatus: ...
|
61
|
+
def migrate_schema_non_live(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> SchemaValidationStatus: ...
|
62
|
+
def migrate_schema_live(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], schema_status: SchemaValidationStatus) -> SchemaValidationStatus: ...
|
56
63
|
def _create_index(session_maker: Callable[[], Session], table_name: str, index_name: str) -> None: ...
|
57
64
|
def _execute_or_collect_error(session_maker: Callable[[], Session], query: str, errors: list[str]) -> bool: ...
|
58
65
|
def _drop_index(session_maker: Callable[[], Session], table_name: str, index_name: str, quiet: bool | None = None) -> None: ...
|
59
66
|
def _add_columns(session_maker: Callable[[], Session], table_name: str, columns_def: list[str]) -> None: ...
|
60
67
|
def _modify_columns(session_maker: Callable[[], Session], engine: Engine, table_name: str, columns_def: list[str]) -> None: ...
|
61
68
|
def _update_states_table_with_foreign_key_options(session_maker: Callable[[], Session], engine: Engine) -> None: ...
|
62
|
-
def _drop_foreign_key_constraints(session_maker: Callable[[], Session], engine: Engine, table: str,
|
69
|
+
def _drop_foreign_key_constraints(session_maker: Callable[[], Session], engine: Engine, table: str, column: str) -> list[tuple[str, str, ReflectedForeignKeyConstraint]]: ...
|
70
|
+
def _restore_foreign_key_constraints(session_maker: Callable[[], Session], engine: Engine, dropped_constraints: list[tuple[str, str, ReflectedForeignKeyConstraint]]) -> None: ...
|
63
71
|
def _apply_update(instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], new_version: int, old_version: int) -> None: ...
|
72
|
+
|
73
|
+
class _SchemaVersionMigrator(ABC, metaclass=abc.ABCMeta):
|
74
|
+
__migrators: dict[int, type[_SchemaVersionMigrator]]
|
75
|
+
def __init_subclass__(cls, target_version: int, **kwargs: Any) -> None: ...
|
76
|
+
instance: Incomplete
|
77
|
+
hass: Incomplete
|
78
|
+
engine: Incomplete
|
79
|
+
session_maker: Incomplete
|
80
|
+
old_version: Incomplete
|
81
|
+
column_types: Incomplete
|
82
|
+
def __init__(self, instance: Recorder, hass: HomeAssistant, engine: Engine, session_maker: Callable[[], Session], old_version: int) -> None: ...
|
83
|
+
@classmethod
|
84
|
+
def get_migrator(cls, target_version: int) -> type[_SchemaVersionMigrator]: ...
|
85
|
+
def apply_update(self) -> None: ...
|
86
|
+
@abstractmethod
|
87
|
+
def _apply_update(self) -> None: ...
|
88
|
+
|
89
|
+
class _SchemaVersion1Migrator(_SchemaVersionMigrator, target_version=1):
|
90
|
+
def _apply_update(self) -> None: ...
|
91
|
+
|
92
|
+
class _SchemaVersion2Migrator(_SchemaVersionMigrator, target_version=2):
|
93
|
+
def _apply_update(self) -> None: ...
|
94
|
+
|
95
|
+
class _SchemaVersion3Migrator(_SchemaVersionMigrator, target_version=3):
|
96
|
+
def _apply_update(self) -> None: ...
|
97
|
+
|
98
|
+
class _SchemaVersion4Migrator(_SchemaVersionMigrator, target_version=4):
|
99
|
+
def _apply_update(self) -> None: ...
|
100
|
+
|
101
|
+
class _SchemaVersion5Migrator(_SchemaVersionMigrator, target_version=5):
|
102
|
+
def _apply_update(self) -> None: ...
|
103
|
+
|
104
|
+
class _SchemaVersion6Migrator(_SchemaVersionMigrator, target_version=6):
|
105
|
+
def _apply_update(self) -> None: ...
|
106
|
+
|
107
|
+
class _SchemaVersion7Migrator(_SchemaVersionMigrator, target_version=7):
|
108
|
+
def _apply_update(self) -> None: ...
|
109
|
+
|
110
|
+
class _SchemaVersion8Migrator(_SchemaVersionMigrator, target_version=8):
|
111
|
+
def _apply_update(self) -> None: ...
|
112
|
+
|
113
|
+
class _SchemaVersion9Migrator(_SchemaVersionMigrator, target_version=9):
|
114
|
+
def _apply_update(self) -> None: ...
|
115
|
+
|
116
|
+
class _SchemaVersion10Migrator(_SchemaVersionMigrator, target_version=10):
|
117
|
+
def _apply_update(self) -> None: ...
|
118
|
+
|
119
|
+
class _SchemaVersion11Migrator(_SchemaVersionMigrator, target_version=11):
|
120
|
+
def _apply_update(self) -> None: ...
|
121
|
+
|
122
|
+
class _SchemaVersion12Migrator(_SchemaVersionMigrator, target_version=12):
|
123
|
+
def _apply_update(self) -> None: ...
|
124
|
+
|
125
|
+
class _SchemaVersion13Migrator(_SchemaVersionMigrator, target_version=13):
|
126
|
+
def _apply_update(self) -> None: ...
|
127
|
+
|
128
|
+
class _SchemaVersion14Migrator(_SchemaVersionMigrator, target_version=14):
|
129
|
+
def _apply_update(self) -> None: ...
|
130
|
+
|
131
|
+
class _SchemaVersion15Migrator(_SchemaVersionMigrator, target_version=15):
|
132
|
+
def _apply_update(self) -> None: ...
|
133
|
+
|
134
|
+
class _SchemaVersion16Migrator(_SchemaVersionMigrator, target_version=16):
|
135
|
+
def _apply_update(self) -> None: ...
|
136
|
+
|
137
|
+
class _SchemaVersion17Migrator(_SchemaVersionMigrator, target_version=17):
|
138
|
+
def _apply_update(self) -> None: ...
|
139
|
+
|
140
|
+
class _SchemaVersion18Migrator(_SchemaVersionMigrator, target_version=18):
|
141
|
+
def _apply_update(self) -> None: ...
|
142
|
+
|
143
|
+
class _SchemaVersion19Migrator(_SchemaVersionMigrator, target_version=19):
|
144
|
+
def _apply_update(self) -> None: ...
|
145
|
+
|
146
|
+
class _SchemaVersion20Migrator(_SchemaVersionMigrator, target_version=20):
|
147
|
+
def _apply_update(self) -> None: ...
|
148
|
+
|
149
|
+
class _SchemaVersion21Migrator(_SchemaVersionMigrator, target_version=21):
|
150
|
+
def _apply_update(self) -> None: ...
|
151
|
+
|
152
|
+
class _SchemaVersion22Migrator(_SchemaVersionMigrator, target_version=22):
|
153
|
+
def _apply_update(self) -> None: ...
|
154
|
+
|
155
|
+
class _SchemaVersion23Migrator(_SchemaVersionMigrator, target_version=23):
|
156
|
+
def _apply_update(self) -> None: ...
|
157
|
+
|
158
|
+
class _SchemaVersion24Migrator(_SchemaVersionMigrator, target_version=24):
|
159
|
+
def _apply_update(self) -> None: ...
|
160
|
+
|
161
|
+
class _SchemaVersion25Migrator(_SchemaVersionMigrator, target_version=25):
|
162
|
+
def _apply_update(self) -> None: ...
|
163
|
+
|
164
|
+
class _SchemaVersion26Migrator(_SchemaVersionMigrator, target_version=26):
|
165
|
+
def _apply_update(self) -> None: ...
|
166
|
+
|
167
|
+
class _SchemaVersion27Migrator(_SchemaVersionMigrator, target_version=27):
|
168
|
+
def _apply_update(self) -> None: ...
|
169
|
+
|
170
|
+
class _SchemaVersion28Migrator(_SchemaVersionMigrator, target_version=28):
|
171
|
+
def _apply_update(self) -> None: ...
|
172
|
+
|
173
|
+
class _SchemaVersion29Migrator(_SchemaVersionMigrator, target_version=29):
|
174
|
+
def _apply_update(self) -> None: ...
|
175
|
+
|
176
|
+
class _SchemaVersion30Migrator(_SchemaVersionMigrator, target_version=30):
|
177
|
+
def _apply_update(self) -> None: ...
|
178
|
+
|
179
|
+
class _SchemaVersion31Migrator(_SchemaVersionMigrator, target_version=31):
|
180
|
+
def _apply_update(self) -> None: ...
|
181
|
+
|
182
|
+
class _SchemaVersion32Migrator(_SchemaVersionMigrator, target_version=32):
|
183
|
+
def _apply_update(self) -> None: ...
|
184
|
+
|
185
|
+
class _SchemaVersion33Migrator(_SchemaVersionMigrator, target_version=33):
|
186
|
+
def _apply_update(self) -> None: ...
|
187
|
+
|
188
|
+
class _SchemaVersion34Migrator(_SchemaVersionMigrator, target_version=34):
|
189
|
+
def _apply_update(self) -> None: ...
|
190
|
+
|
191
|
+
class _SchemaVersion35Migrator(_SchemaVersionMigrator, target_version=35):
|
192
|
+
def _apply_update(self) -> None: ...
|
193
|
+
|
194
|
+
class _SchemaVersion36Migrator(_SchemaVersionMigrator, target_version=36):
|
195
|
+
def _apply_update(self) -> None: ...
|
196
|
+
|
197
|
+
class _SchemaVersion37Migrator(_SchemaVersionMigrator, target_version=37):
|
198
|
+
def _apply_update(self) -> None: ...
|
199
|
+
|
200
|
+
class _SchemaVersion38Migrator(_SchemaVersionMigrator, target_version=38):
|
201
|
+
def _apply_update(self) -> None: ...
|
202
|
+
|
203
|
+
class _SchemaVersion39Migrator(_SchemaVersionMigrator, target_version=39):
|
204
|
+
def _apply_update(self) -> None: ...
|
205
|
+
|
206
|
+
class _SchemaVersion40Migrator(_SchemaVersionMigrator, target_version=40):
|
207
|
+
def _apply_update(self) -> None: ...
|
208
|
+
|
209
|
+
class _SchemaVersion41Migrator(_SchemaVersionMigrator, target_version=41):
|
210
|
+
def _apply_update(self) -> None: ...
|
211
|
+
|
212
|
+
class _SchemaVersion42Migrator(_SchemaVersionMigrator, target_version=42):
|
213
|
+
def _apply_update(self) -> None: ...
|
214
|
+
|
215
|
+
class _SchemaVersion43Migrator(_SchemaVersionMigrator, target_version=43):
|
216
|
+
def _apply_update(self) -> None: ...
|
217
|
+
|
218
|
+
class _SchemaVersion44Migrator(_SchemaVersionMigrator, target_version=44):
|
219
|
+
def _apply_update(self) -> None: ...
|
220
|
+
|
64
221
|
def _migrate_statistics_columns_to_timestamp_removing_duplicates(hass: HomeAssistant, instance: Recorder, session_maker: Callable[[], Session], engine: Engine) -> None: ...
|
65
222
|
def _correct_table_character_set_and_collation(table: str, session_maker: Callable[[], Session]) -> None: ...
|
66
223
|
def post_schema_migration(instance: Recorder, old_version: int, new_version: int) -> None: ...
|
@@ -71,51 +228,91 @@ def _migrate_statistics_columns_to_timestamp_one_by_one(instance: Recorder, sess
|
|
71
228
|
def _migrate_statistics_columns_to_timestamp(instance: Recorder, session_maker: Callable[[], Session], engine: Engine) -> None: ...
|
72
229
|
def _context_id_to_bytes(context_id: str | None) -> bytes | None: ...
|
73
230
|
def _generate_ulid_bytes_at_time(timestamp: float | None) -> bytes: ...
|
74
|
-
def migrate_states_context_ids(instance: Recorder) -> bool: ...
|
75
|
-
def migrate_events_context_ids(instance: Recorder) -> bool: ...
|
76
|
-
def migrate_event_type_ids(instance: Recorder) -> bool: ...
|
77
|
-
def migrate_entity_ids(instance: Recorder) -> bool: ...
|
78
231
|
def post_migrate_entity_ids(instance: Recorder) -> bool: ...
|
79
232
|
def cleanup_legacy_states_event_ids(instance: Recorder) -> bool: ...
|
80
233
|
def _initialize_database(session: Session) -> bool: ...
|
81
234
|
def initialize_database(session_maker: Callable[[], Session]) -> bool: ...
|
82
235
|
|
236
|
+
@dataclass(slots=True)
|
237
|
+
class MigrationTask(RecorderTask):
|
238
|
+
migrator: BaseRunTimeMigration
|
239
|
+
commit_before = ...
|
240
|
+
def run(self, instance: Recorder) -> None: ...
|
241
|
+
def __init__(self, migrator) -> None: ...
|
242
|
+
|
243
|
+
@dataclass(slots=True)
|
244
|
+
class CommitBeforeMigrationTask(MigrationTask):
|
245
|
+
commit_before = ...
|
246
|
+
def __init__(self, migrator) -> None: ...
|
247
|
+
|
248
|
+
@dataclass(frozen=True, kw_only=True)
|
249
|
+
class NeedsMigrateResult:
|
250
|
+
needs_migrate: bool
|
251
|
+
migration_done: bool
|
252
|
+
def __init__(self, *, needs_migrate, migration_done) -> None: ...
|
253
|
+
|
83
254
|
class BaseRunTimeMigration(ABC, metaclass=abc.ABCMeta):
|
84
255
|
required_schema_version: int
|
85
256
|
migration_version: int
|
86
257
|
migration_id: str
|
87
|
-
task
|
258
|
+
task = MigrationTask
|
88
259
|
schema_version: Incomplete
|
89
|
-
session: Incomplete
|
90
260
|
migration_changes: Incomplete
|
91
|
-
def __init__(self,
|
261
|
+
def __init__(self, schema_version: int, migration_changes: dict[str, int]) -> None: ...
|
262
|
+
def do_migrate(self, instance: Recorder, session: Session) -> None: ...
|
263
|
+
@staticmethod
|
264
|
+
@abstractmethod
|
265
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
266
|
+
def migration_done(self, instance: Recorder, session: Session | None) -> None: ...
|
267
|
+
@abstractmethod
|
268
|
+
def needs_migrate_impl(self, instance: Recorder, session: Session) -> NeedsMigrateResult: ...
|
269
|
+
def needs_migrate(self, instance: Recorder, session: Session) -> bool: ...
|
270
|
+
|
271
|
+
class BaseRunTimeMigrationWithQuery(BaseRunTimeMigration, metaclass=abc.ABCMeta):
|
92
272
|
@abstractmethod
|
93
273
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
94
|
-
def
|
274
|
+
def needs_migrate_impl(self, instance: Recorder, session: Session) -> NeedsMigrateResult: ...
|
95
275
|
|
96
|
-
class StatesContextIDMigration(
|
276
|
+
class StatesContextIDMigration(BaseRunTimeMigrationWithQuery):
|
97
277
|
required_schema_version = CONTEXT_ID_AS_BINARY_SCHEMA_VERSION
|
98
278
|
migration_id: str
|
99
|
-
|
279
|
+
@staticmethod
|
280
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
100
281
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
101
282
|
|
102
|
-
class EventsContextIDMigration(
|
283
|
+
class EventsContextIDMigration(BaseRunTimeMigrationWithQuery):
|
103
284
|
required_schema_version = CONTEXT_ID_AS_BINARY_SCHEMA_VERSION
|
104
285
|
migration_id: str
|
105
|
-
|
286
|
+
@staticmethod
|
287
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
106
288
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
107
289
|
|
108
|
-
class EventTypeIDMigration(
|
290
|
+
class EventTypeIDMigration(BaseRunTimeMigrationWithQuery):
|
109
291
|
required_schema_version = EVENT_TYPE_IDS_SCHEMA_VERSION
|
110
292
|
migration_id: str
|
111
|
-
task =
|
293
|
+
task = CommitBeforeMigrationTask
|
294
|
+
@staticmethod
|
295
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
296
|
+
def migration_done(self, instance: Recorder, session: Session | None) -> None: ...
|
112
297
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
113
298
|
|
114
|
-
class EntityIDMigration(
|
299
|
+
class EntityIDMigration(BaseRunTimeMigrationWithQuery):
|
115
300
|
required_schema_version = STATES_META_SCHEMA_VERSION
|
116
301
|
migration_id: str
|
117
|
-
task =
|
302
|
+
task = CommitBeforeMigrationTask
|
303
|
+
@staticmethod
|
304
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
305
|
+
def migration_done(self, instance: Recorder, _session: Session | None) -> None: ...
|
118
306
|
def needs_migrate_query(self) -> StatementLambdaElement: ...
|
119
307
|
|
308
|
+
class EventIDPostMigration(BaseRunTimeMigration):
|
309
|
+
migration_id: str
|
310
|
+
task = MigrationTask
|
311
|
+
@staticmethod
|
312
|
+
def migrate_data(instance: Recorder) -> bool: ...
|
313
|
+
@staticmethod
|
314
|
+
def _legacy_event_id_foreign_key_exists(instance: Recorder) -> bool: ...
|
315
|
+
def needs_migrate_impl(self, instance: Recorder, session: Session) -> NeedsMigrateResult: ...
|
316
|
+
|
120
317
|
def _mark_migration_done(session: Session, migration: type[BaseRunTimeMigration]) -> None: ...
|
121
318
|
def rebuild_sqlite_table(session_maker: Callable[[], Session], engine: Engine, table: type[Base]) -> None: ...
|
@@ -1,9 +1,7 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
|
-
from homeassistant.util.ulid import bytes_to_ulid as bytes_to_ulid, ulid_to_bytes as ulid_to_bytes
|
2
|
+
from homeassistant.util.ulid import bytes_to_ulid as bytes_to_ulid, bytes_to_ulid_or_none as bytes_to_ulid_or_none, ulid_to_bytes as ulid_to_bytes, ulid_to_bytes_or_none as ulid_to_bytes_or_none
|
3
3
|
|
4
4
|
_LOGGER: Incomplete
|
5
5
|
|
6
|
-
def ulid_to_bytes_or_none(ulid: str | None) -> bytes | None: ...
|
7
|
-
def bytes_to_ulid_or_none(_bytes: bytes | None) -> str | None: ...
|
8
6
|
def uuid_hex_to_bytes_or_none(uuid_hex: str | None) -> bytes | None: ...
|
9
7
|
def bytes_to_uuid_hex_or_none(_bytes: bytes | None) -> str | None: ...
|
@@ -36,7 +36,7 @@ class ShortTermStatisticsRunCache:
|
|
36
36
|
def get_latest_ids(self, metadata_ids: set[int]) -> dict[int, int]: ...
|
37
37
|
def set_latest_id_for_metadata_id(self, metadata_id: int, id_: int) -> None: ...
|
38
38
|
def set_latest_ids_for_metadata_ids(self, metadata_id_to_id: dict[int, int]) -> None: ...
|
39
|
-
def __init__(self, _latest_id_by_metadata_id) -> None: ...
|
39
|
+
def __init__(self, _latest_id_by_metadata_id=...) -> None: ...
|
40
40
|
|
41
41
|
class BaseStatisticsRow(TypedDict, total=False):
|
42
42
|
start: float
|
@@ -76,7 +76,7 @@ class ValidationIssue:
|
|
76
76
|
type: str
|
77
77
|
data: dict[str, str | None] | None = ...
|
78
78
|
def as_dict(self) -> dict: ...
|
79
|
-
def __init__(self, type, data) -> None: ...
|
79
|
+
def __init__(self, type, data=...) -> None: ...
|
80
80
|
|
81
81
|
def get_start_time() -> datetime: ...
|
82
82
|
def _compile_hourly_statistics_summary_mean_stmt(start_time_ts: float, end_time_ts: float) -> StatementLambdaElement: ...
|
@@ -14,7 +14,6 @@ CACHE_SIZE: int
|
|
14
14
|
_LOGGER: Incomplete
|
15
15
|
|
16
16
|
class EventDataManager(BaseLRUTableManager[EventData]):
|
17
|
-
active: bool
|
18
17
|
def __init__(self, recorder: Recorder) -> None: ...
|
19
18
|
def serialize_from_event(self, event: Event) -> bytes | None: ...
|
20
19
|
def load(self, events: list[Event], session: Session) -> None: ...
|
@@ -15,6 +15,7 @@ from typing import Any
|
|
15
15
|
CACHE_SIZE: int
|
16
16
|
|
17
17
|
class EventTypeManager(BaseLRUTableManager[EventTypes]):
|
18
|
+
active: bool
|
18
19
|
_non_existent_event_types: Incomplete
|
19
20
|
def __init__(self, recorder: Recorder) -> None: ...
|
20
21
|
def load(self, events: list[Event], session: Session) -> None: ...
|
@@ -14,7 +14,6 @@ CACHE_SIZE: int
|
|
14
14
|
_LOGGER: Incomplete
|
15
15
|
|
16
16
|
class StateAttributesManager(BaseLRUTableManager[StateAttributes]):
|
17
|
-
active: bool
|
18
17
|
def __init__(self, recorder: Recorder) -> None: ...
|
19
18
|
def serialize_from_event(self, event: Event[EventStateChangedData]) -> bytes | None: ...
|
20
19
|
def load(self, events: list[Event[EventStateChangedData]], session: Session) -> None: ...
|
@@ -11,6 +11,7 @@ from sqlalchemy.orm.session import Session as Session
|
|
11
11
|
CACHE_SIZE: int
|
12
12
|
|
13
13
|
class StatesMetaManager(BaseLRUTableManager[StatesMeta]):
|
14
|
+
active: bool
|
14
15
|
_did_first_load: bool
|
15
16
|
def __init__(self, recorder: Recorder) -> None: ...
|
16
17
|
def load(self, events: list[Event[EventStateChangedData]], session: Session) -> None: ...
|
@@ -157,34 +157,10 @@ class AdjustLRUSizeTask(RecorderTask):
|
|
157
157
|
commit_before = ...
|
158
158
|
def run(self, instance: Recorder) -> None: ...
|
159
159
|
|
160
|
-
@dataclass(slots=True)
|
161
|
-
class StatesContextIDMigrationTask(RecorderTask):
|
162
|
-
commit_before = ...
|
163
|
-
def run(self, instance: Recorder) -> None: ...
|
164
|
-
|
165
|
-
@dataclass(slots=True)
|
166
|
-
class EventsContextIDMigrationTask(RecorderTask):
|
167
|
-
commit_before = ...
|
168
|
-
def run(self, instance: Recorder) -> None: ...
|
169
|
-
|
170
|
-
@dataclass(slots=True)
|
171
|
-
class EventTypeIDMigrationTask(RecorderTask):
|
172
|
-
commit_before = ...
|
173
|
-
def run(self, instance: Recorder) -> None: ...
|
174
|
-
|
175
|
-
@dataclass(slots=True)
|
176
|
-
class EntityIDMigrationTask(RecorderTask):
|
177
|
-
commit_before = ...
|
178
|
-
def run(self, instance: Recorder) -> None: ...
|
179
|
-
|
180
160
|
@dataclass(slots=True)
|
181
161
|
class EntityIDPostMigrationTask(RecorderTask):
|
182
162
|
def run(self, instance: Recorder) -> None: ...
|
183
163
|
|
184
|
-
@dataclass(slots=True)
|
185
|
-
class EventIdMigrationTask(RecorderTask):
|
186
|
-
def run(self, instance: Recorder) -> None: ...
|
187
|
-
|
188
164
|
@dataclass(slots=True)
|
189
165
|
class RefreshEventTypesTask(RecorderTask):
|
190
166
|
event_types: list[EventType[Any] | str]
|
@@ -1,12 +1,13 @@
|
|
1
1
|
from . import Recorder as Recorder
|
2
|
-
from .const import
|
2
|
+
from .const import DEFAULT_MAX_BIND_VARS as DEFAULT_MAX_BIND_VARS, DOMAIN as DOMAIN, SQLITE_MAX_BIND_VARS as SQLITE_MAX_BIND_VARS, SQLITE_MODERN_MAX_BIND_VARS as SQLITE_MODERN_MAX_BIND_VARS, SQLITE_URL_PREFIX as SQLITE_URL_PREFIX, SupportedDialect as SupportedDialect
|
3
3
|
from .db_schema import RecorderRuns as RecorderRuns, TABLES_TO_CHECK as TABLES_TO_CHECK, TABLE_RECORDER_RUNS as TABLE_RECORDER_RUNS, TABLE_SCHEMA_CHANGES as TABLE_SCHEMA_CHANGES
|
4
4
|
from .models import DatabaseEngine as DatabaseEngine, DatabaseOptimizer as DatabaseOptimizer, StatisticPeriod as StatisticPeriod, UnsupportedDialect as UnsupportedDialect, process_timestamp as process_timestamp
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from awesomeversion import AwesomeVersion
|
7
|
-
from collections.abc import Callable, Sequence
|
7
|
+
from collections.abc import Callable, Generator, Sequence
|
8
8
|
from datetime import date, datetime
|
9
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
10
|
+
from homeassistant.helpers.recorder import DATA_INSTANCE as DATA_INSTANCE, get_instance as get_instance, session_scope as session_scope
|
10
11
|
from sqlalchemy.engine import Result as Result, Row as Row
|
11
12
|
from sqlalchemy.engine.interfaces import DBAPIConnection as DBAPIConnection
|
12
13
|
from sqlalchemy.exc import OperationalError
|
@@ -15,7 +16,6 @@ from sqlalchemy.orm.session import Session as Session
|
|
15
16
|
from sqlalchemy.sql.lambdas import StatementLambdaElement as StatementLambdaElement
|
16
17
|
from sqlite3.dbapi2 import Cursor as SQLiteCursor
|
17
18
|
from typing import Any, NoReturn
|
18
|
-
from typing_extensions import Generator
|
19
19
|
|
20
20
|
_LOGGER: Incomplete
|
21
21
|
RETRIES: int
|
@@ -40,6 +40,7 @@ MARIADB_WITH_FIXED_IN_QUERIES_108: Incomplete
|
|
40
40
|
MIN_VERSION_MYSQL: Incomplete
|
41
41
|
MIN_VERSION_PGSQL: Incomplete
|
42
42
|
MIN_VERSION_SQLITE: Incomplete
|
43
|
+
UPCOMING_MIN_VERSION_SQLITE: Incomplete
|
43
44
|
MIN_VERSION_SQLITE_MODERN_BIND_VARS: Incomplete
|
44
45
|
MAX_RESTART_TIME: Incomplete
|
45
46
|
RETRYABLE_MYSQL_ERRORS: Incomplete
|
@@ -47,7 +48,6 @@ FIRST_POSSIBLE_SUNDAY: int
|
|
47
48
|
SUNDAY_WEEKDAY: int
|
48
49
|
DAYS_IN_WEEK: int
|
49
50
|
|
50
|
-
def session_scope(*, hass: HomeAssistant | None = None, session: Session | None = None, exception_filter: Callable[[Exception], bool] | None = None, read_only: bool = False) -> Generator[Session]: ...
|
51
51
|
def execute(qry: Query, to_native: bool = False, validate_entity_ids: bool = True) -> list[Row]: ...
|
52
52
|
def execute_stmt_lambda_element(session: Session, stmt: StatementLambdaElement, start_time: datetime | None = None, end_time: datetime | None = None, yield_per: int = ..., orm_rows: bool = True) -> Sequence[Row] | Result: ...
|
53
53
|
def validate_or_move_away_sqlite_database(dburl: str) -> bool: ...
|
@@ -60,7 +60,10 @@ def move_away_broken_database(dbfile: str) -> None: ...
|
|
60
60
|
def execute_on_connection(dbapi_connection: DBAPIConnection, statement: str) -> None: ...
|
61
61
|
def query_on_connection(dbapi_connection: DBAPIConnection, statement: str) -> Any: ...
|
62
62
|
def _fail_unsupported_dialect(dialect_name: str) -> NoReturn: ...
|
63
|
-
def
|
63
|
+
def _raise_if_version_unsupported(server_version: str, dialect_name: str, minimum_version: str) -> NoReturn: ...
|
64
|
+
def _async_delete_issue_deprecated_version(hass: HomeAssistant, dialect_name: str) -> None: ...
|
65
|
+
def _async_create_issue_deprecated_version(hass: HomeAssistant, server_version: AwesomeVersion, dialect_name: str, min_version: AwesomeVersion) -> None: ...
|
66
|
+
def _extract_version_from_server_response_or_raise(server_response: str) -> AwesomeVersion: ...
|
64
67
|
def _extract_version_from_server_response(server_response: str) -> AwesomeVersion | None: ...
|
65
68
|
def _datetime_or_none(value: str) -> datetime | None: ...
|
66
69
|
def build_mysqldb_conv() -> dict: ...
|
@@ -80,7 +83,6 @@ def async_migration_in_progress(hass: HomeAssistant) -> bool: ...
|
|
80
83
|
def async_migration_is_live(hass: HomeAssistant) -> bool: ...
|
81
84
|
def second_sunday(year: int, month: int) -> date: ...
|
82
85
|
def is_second_sunday(date_time: datetime) -> bool: ...
|
83
|
-
def get_instance(hass: HomeAssistant) -> Recorder: ...
|
84
86
|
|
85
87
|
PERIOD_SCHEMA: Incomplete
|
86
88
|
|
@@ -29,4 +29,3 @@ def ws_update_statistics_metadata(hass: HomeAssistant, connection: websocket_api
|
|
29
29
|
def ws_change_statistics_unit(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
30
30
|
async def ws_adjust_sum_statistics(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
31
31
|
def ws_import_statistics(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
32
|
-
def ws_info(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -38,9 +38,9 @@ DEFAULT_DELAY_SECS: float
|
|
38
38
|
DEFAULT_HOLD_SECS: int
|
39
39
|
|
40
40
|
class RemoteEntityFeature(IntFlag):
|
41
|
-
LEARN_COMMAND
|
42
|
-
DELETE_COMMAND
|
43
|
-
ACTIVITY
|
41
|
+
LEARN_COMMAND = 1
|
42
|
+
DELETE_COMMAND = 2
|
43
|
+
ACTIVITY = 4
|
44
44
|
|
45
45
|
_DEPRECATED_SUPPORT_LEARN_COMMAND: Incomplete
|
46
46
|
_DEPRECATED_SUPPORT_DELETE_COMMAND: Incomplete
|
@@ -53,7 +53,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ..
|
|
53
53
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
54
54
|
|
55
55
|
class RemoteEntityDescription(ToggleEntityDescription, frozen_or_thawed=True):
|
56
|
-
def __init__(self, *, key, device_class
|
56
|
+
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=...) -> None: ...
|
57
57
|
|
58
58
|
CACHED_PROPERTIES_WITH_ATTR_: Incomplete
|
59
59
|
|
@@ -11,7 +11,7 @@ from renault_api.kamereon.models import KamereonVehicleBatteryStatusData
|
|
11
11
|
class RenaultBinarySensorEntityDescription(BinarySensorEntityDescription, RenaultDataEntityDescription):
|
12
12
|
on_key: str
|
13
13
|
on_value: StateType
|
14
|
-
def __init__(self, coordinator, *, key, device_class
|
14
|
+
def __init__(self, coordinator, *, 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=..., on_key, on_value) -> None: ...
|
15
15
|
|
16
16
|
async def async_setup_entry(hass: HomeAssistant, config_entry: RenaultConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
17
17
|
|
@@ -11,7 +11,7 @@ from typing import Any
|
|
11
11
|
class RenaultButtonEntityDescription(ButtonEntityDescription):
|
12
12
|
async_press: Callable[[RenaultButtonEntity], Coroutine[Any, Any, Any]]
|
13
13
|
requires_electricity: bool = ...
|
14
|
-
def __init__(self, *, key, device_class
|
14
|
+
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=..., async_press, requires_electricity=...) -> None: ...
|
15
15
|
|
16
16
|
async def async_setup_entry(hass: HomeAssistant, config_entry: RenaultConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
17
17
|
|
@@ -13,7 +13,7 @@ class RenaultDataRequiredKeysMixin:
|
|
13
13
|
|
14
14
|
@dataclass(frozen=True)
|
15
15
|
class RenaultDataEntityDescription(EntityDescription, RenaultDataRequiredKeysMixin):
|
16
|
-
def __init__(self, coordinator, *, key, device_class
|
16
|
+
def __init__(self, coordinator, *, 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=...) -> None: ...
|
17
17
|
|
18
18
|
class RenaultEntity(Entity):
|
19
19
|
_attr_has_entity_name: bool
|
@@ -21,7 +21,7 @@ class RenaultCoordinatorDescription:
|
|
21
21
|
key: str
|
22
22
|
update_method: Callable[[RenaultVehicle], Callable[[], Awaitable[models.KamereonVehicleDataAttributes]]]
|
23
23
|
requires_electricity: bool = ...
|
24
|
-
def __init__(self, endpoint, key, update_method, requires_electricity) -> None: ...
|
24
|
+
def __init__(self, endpoint, key, update_method, requires_electricity=...) -> None: ...
|
25
25
|
|
26
26
|
class RenaultVehicleProxy:
|
27
27
|
hass: Incomplete
|
@@ -10,7 +10,7 @@ from renault_api.kamereon.models import KamereonVehicleBatteryStatusData
|
|
10
10
|
@dataclass(frozen=True, kw_only=True)
|
11
11
|
class RenaultSelectEntityDescription(SelectEntityDescription, RenaultDataEntityDescription):
|
12
12
|
data_key: str
|
13
|
-
def __init__(self, coordinator, *, key, device_class
|
13
|
+
def __init__(self, coordinator, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., options=..., data_key) -> None: ...
|
14
14
|
|
15
15
|
async def async_setup_entry(hass: HomeAssistant, config_entry: RenaultConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
16
16
|
|
@@ -20,7 +20,7 @@ class RenaultSensorEntityDescription(SensorEntityDescription, RenaultDataEntityD
|
|
20
20
|
condition_lambda: Callable[[RenaultVehicleProxy], bool] | None = ...
|
21
21
|
requires_fuel: bool = ...
|
22
22
|
value_lambda: Callable[[RenaultSensor[T]], StateType | datetime] | None = ...
|
23
|
-
def __init__(self, coordinator, *, key, device_class
|
23
|
+
def __init__(self, coordinator, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., data_key, entity_class, condition_lambda=..., requires_fuel=..., value_lambda=...) -> None: ...
|
24
24
|
|
25
25
|
async def async_setup_entry(hass: HomeAssistant, config_entry: RenaultConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
26
26
|
|
@@ -23,5 +23,5 @@ class RepairsFlowIndexView(FlowManagerIndexView):
|
|
23
23
|
class RepairsFlowResourceView(FlowManagerResourceView):
|
24
24
|
url: str
|
25
25
|
name: str
|
26
|
-
async def get(self, request: web.Request, flow_id: str) -> web.Response: ...
|
26
|
+
async def get(self, request: web.Request, /, flow_id: str) -> web.Response: ...
|
27
27
|
async def post(self, request: web.Request, flow_id: str) -> web.Response: ...
|
@@ -23,7 +23,7 @@ def _rssi_convert(value: int | None) -> str | None: ...
|
|
23
23
|
@dataclass(frozen=True)
|
24
24
|
class RfxtrxSensorEntityDescription(SensorEntityDescription):
|
25
25
|
convert: Callable[[Any], StateType | date | datetime | Decimal] = ...
|
26
|
-
def __init__(self, *, key, device_class
|
26
|
+
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., convert=...) -> None: ...
|
27
27
|
|
28
28
|
SENSOR_TYPES: Incomplete
|
29
29
|
SENSOR_TYPES_DICT: Incomplete
|
@@ -15,7 +15,7 @@ from typing import Any
|
|
15
15
|
@dataclass(frozen=True, kw_only=True)
|
16
16
|
class RingBinarySensorEntityDescription(BinarySensorEntityDescription):
|
17
17
|
exists_fn: Callable[[RingGeneric], bool]
|
18
|
-
def __init__(self, *, key, device_class
|
18
|
+
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., exists_fn) -> None: ...
|
19
19
|
|
20
20
|
BINARY_SENSOR_TYPES: tuple[RingBinarySensorEntityDescription, ...]
|
21
21
|
|
@@ -15,8 +15,8 @@ _LOGGER: Incomplete
|
|
15
15
|
SKIP_UPDATES_DELAY: Incomplete
|
16
16
|
|
17
17
|
class OnOffState(StrEnum):
|
18
|
-
ON
|
19
|
-
OFF
|
18
|
+
ON = ...
|
19
|
+
OFF = ...
|
20
20
|
|
21
21
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
22
22
|
|