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
@@ -5,20 +5,25 @@ from .typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from collections.abc import Iterable
|
7
7
|
from dataclasses import dataclass
|
8
|
+
from datetime import datetime
|
8
9
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
10
|
+
from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp, utcnow as utcnow
|
9
11
|
from homeassistant.util.event_type import EventType as EventType
|
10
12
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
11
13
|
from homeassistant.util.ulid import ulid_now as ulid_now
|
12
|
-
from typing import Literal, TypedDict
|
14
|
+
from typing import Any, Literal, TypedDict
|
13
15
|
|
14
16
|
DATA_REGISTRY: HassKey[CategoryRegistry]
|
15
17
|
EVENT_CATEGORY_REGISTRY_UPDATED: EventType[EventCategoryRegistryUpdatedData]
|
16
18
|
STORAGE_KEY: str
|
17
19
|
STORAGE_VERSION_MAJOR: int
|
20
|
+
STORAGE_VERSION_MINOR: int
|
18
21
|
|
19
22
|
class _CategoryStoreData(TypedDict):
|
20
23
|
category_id: str
|
24
|
+
created_at: str
|
21
25
|
icon: str | None
|
26
|
+
modified_at: str
|
22
27
|
name: str
|
23
28
|
|
24
29
|
class CategoryRegistryStoreData(TypedDict):
|
@@ -33,9 +38,14 @@ EventCategoryRegistryUpdated = Event[EventCategoryRegistryUpdatedData]
|
|
33
38
|
@dataclass(slots=True, kw_only=True, frozen=True)
|
34
39
|
class CategoryEntry:
|
35
40
|
category_id: str = ...
|
41
|
+
created_at: datetime = ...
|
36
42
|
icon: str | None = ...
|
43
|
+
modified_at: datetime = ...
|
37
44
|
name: str
|
38
|
-
def __init__(self, *, category_id
|
45
|
+
def __init__(self, *, category_id=..., created_at=..., icon=..., modified_at=..., name) -> None: ...
|
46
|
+
|
47
|
+
class CategoryRegistryStore(Store[CategoryRegistryStoreData]):
|
48
|
+
async def _async_migrate_func(self, old_major_version: int, old_minor_version: int, old_data: dict[str, dict[str, list[dict[str, Any]]]]) -> CategoryRegistryStoreData: ...
|
39
49
|
|
40
50
|
class CategoryRegistry(BaseRegistry[CategoryRegistryStoreData]):
|
41
51
|
hass: Incomplete
|
@@ -4,7 +4,7 @@ from .template import Template as Template, render_complex as render_complex
|
|
4
4
|
from .trace import TraceElement as TraceElement, trace_append_element as trace_append_element, trace_path as trace_path, trace_path_get as trace_path_get, trace_stack_cv as trace_stack_cv, trace_stack_pop as trace_stack_pop, trace_stack_push as trace_stack_push, trace_stack_top as trace_stack_top
|
5
5
|
from .typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType
|
6
6
|
from _typeshed import Incomplete
|
7
|
-
from collections.abc import Container
|
7
|
+
from collections.abc import Callable, Container, Generator
|
8
8
|
from datetime import time as dt_time, timedelta
|
9
9
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass
|
10
10
|
from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, ATTR_GPS_ACCURACY as ATTR_GPS_ACCURACY, ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, CONF_ABOVE as CONF_ABOVE, CONF_AFTER as CONF_AFTER, CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_BEFORE as CONF_BEFORE, CONF_BELOW as CONF_BELOW, CONF_CONDITION as CONF_CONDITION, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_ENABLED as CONF_ENABLED, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_FOR as CONF_FOR, CONF_ID as CONF_ID, CONF_MATCH as CONF_MATCH, CONF_STATE as CONF_STATE, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, CONF_WEEKDAY as CONF_WEEKDAY, CONF_ZONE as CONF_ZONE, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_ANY as ENTITY_MATCH_ANY, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, SUN_EVENT_SUNRISE as SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET as SUN_EVENT_SUNSET, WEEKDAYS as WEEKDAYS
|
@@ -13,7 +13,6 @@ from homeassistant.exceptions import ConditionError as ConditionError, Condition
|
|
13
13
|
from homeassistant.loader import IntegrationNotFound as IntegrationNotFound, async_get_integration as async_get_integration
|
14
14
|
from homeassistant.util.async_ import run_callback_threadsafe as run_callback_threadsafe
|
15
15
|
from typing import Any, Protocol
|
16
|
-
from typing_extensions import Generator
|
17
16
|
|
18
17
|
ASYNC_FROM_CONFIG_FORMAT: str
|
19
18
|
FROM_CONFIG_FORMAT: str
|
@@ -25,8 +24,7 @@ class ConditionProtocol(Protocol):
|
|
25
24
|
CONDITION_SCHEMA: vol.Schema
|
26
25
|
async def async_validate_condition_config(self, hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
|
27
26
|
def async_condition_from_config(self, hass: HomeAssistant, config: ConfigType) -> ConditionCheckerType: ...
|
28
|
-
|
29
|
-
ConditionCheckerType: Incomplete
|
27
|
+
ConditionCheckerType = Callable[[HomeAssistant, TemplateVarsType], bool | None]
|
30
28
|
|
31
29
|
def condition_trace_append(variables: TemplateVarsType, path: str) -> TraceElement: ...
|
32
30
|
def condition_trace_set_result(result: bool, **kwargs: Any) -> None: ...
|
@@ -7,7 +7,7 @@ from _typeshed import Incomplete
|
|
7
7
|
from collections.abc import Callable as Callable, Hashable
|
8
8
|
from datetime import date as date_sys, datetime as datetime_sys, time as time_sys, timedelta
|
9
9
|
from enum import Enum, StrEnum
|
10
|
-
from homeassistant.const import ATTR_AREA_ID as ATTR_AREA_ID, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_FLOOR_ID as ATTR_FLOOR_ID, ATTR_LABEL_ID as ATTR_LABEL_ID, CONF_ABOVE as CONF_ABOVE, CONF_ALIAS as CONF_ALIAS, CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_BELOW as CONF_BELOW, CONF_CHOOSE as CONF_CHOOSE, CONF_CONDITION as CONF_CONDITION, CONF_CONDITIONS as CONF_CONDITIONS, CONF_CONTINUE_ON_ERROR as CONF_CONTINUE_ON_ERROR, CONF_CONTINUE_ON_TIMEOUT as CONF_CONTINUE_ON_TIMEOUT, CONF_COUNT as CONF_COUNT, CONF_DEFAULT as CONF_DEFAULT, CONF_DELAY as CONF_DELAY, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_DOMAIN as CONF_DOMAIN, CONF_ELSE as CONF_ELSE, CONF_ENABLED as CONF_ENABLED, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_ENTITY_NAMESPACE as CONF_ENTITY_NAMESPACE, CONF_ERROR as CONF_ERROR, CONF_EVENT as CONF_EVENT, CONF_EVENT_DATA as CONF_EVENT_DATA, CONF_EVENT_DATA_TEMPLATE as CONF_EVENT_DATA_TEMPLATE, CONF_FOR as CONF_FOR, CONF_FOR_EACH as CONF_FOR_EACH, CONF_ID as CONF_ID, CONF_IF as CONF_IF, CONF_MATCH as CONF_MATCH, CONF_PARALLEL as CONF_PARALLEL, CONF_PLATFORM as CONF_PLATFORM, CONF_REPEAT as CONF_REPEAT, CONF_RESPONSE_VARIABLE as CONF_RESPONSE_VARIABLE, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_SCENE as CONF_SCENE, CONF_SEQUENCE as CONF_SEQUENCE, CONF_SERVICE as CONF_SERVICE, CONF_SERVICE_DATA as CONF_SERVICE_DATA, CONF_SERVICE_DATA_TEMPLATE as CONF_SERVICE_DATA_TEMPLATE, CONF_SERVICE_TEMPLATE as CONF_SERVICE_TEMPLATE, CONF_SET_CONVERSATION_RESPONSE as CONF_SET_CONVERSATION_RESPONSE, CONF_STATE as CONF_STATE, CONF_STOP as CONF_STOP, CONF_TARGET as CONF_TARGET, CONF_THEN as CONF_THEN, CONF_TIMEOUT as CONF_TIMEOUT, CONF_UNTIL as CONF_UNTIL, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, CONF_VARIABLES as CONF_VARIABLES, CONF_WAIT_FOR_TRIGGER as CONF_WAIT_FOR_TRIGGER, CONF_WAIT_TEMPLATE as CONF_WAIT_TEMPLATE, CONF_WHILE as CONF_WHILE, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_ANY as ENTITY_MATCH_ANY, ENTITY_MATCH_NONE as ENTITY_MATCH_NONE, SUN_EVENT_SUNRISE as SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET as SUN_EVENT_SUNSET, UnitOfTemperature as UnitOfTemperature, WEEKDAYS as WEEKDAYS
|
10
|
+
from homeassistant.const import ATTR_AREA_ID as ATTR_AREA_ID, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_FLOOR_ID as ATTR_FLOOR_ID, ATTR_LABEL_ID as ATTR_LABEL_ID, CONF_ABOVE as CONF_ABOVE, CONF_ACTION as CONF_ACTION, CONF_ALIAS as CONF_ALIAS, CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_BELOW as CONF_BELOW, CONF_CHOOSE as CONF_CHOOSE, CONF_CONDITION as CONF_CONDITION, CONF_CONDITIONS as CONF_CONDITIONS, CONF_CONTINUE_ON_ERROR as CONF_CONTINUE_ON_ERROR, CONF_CONTINUE_ON_TIMEOUT as CONF_CONTINUE_ON_TIMEOUT, CONF_COUNT as CONF_COUNT, CONF_DEFAULT as CONF_DEFAULT, CONF_DELAY as CONF_DELAY, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_DOMAIN as CONF_DOMAIN, CONF_ELSE as CONF_ELSE, CONF_ENABLED as CONF_ENABLED, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_ENTITY_NAMESPACE as CONF_ENTITY_NAMESPACE, CONF_ERROR as CONF_ERROR, CONF_EVENT as CONF_EVENT, CONF_EVENT_DATA as CONF_EVENT_DATA, CONF_EVENT_DATA_TEMPLATE as CONF_EVENT_DATA_TEMPLATE, CONF_FOR as CONF_FOR, CONF_FOR_EACH as CONF_FOR_EACH, CONF_ID as CONF_ID, CONF_IF as CONF_IF, CONF_MATCH as CONF_MATCH, CONF_PARALLEL as CONF_PARALLEL, CONF_PLATFORM as CONF_PLATFORM, CONF_REPEAT as CONF_REPEAT, CONF_RESPONSE_VARIABLE as CONF_RESPONSE_VARIABLE, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_SCENE as CONF_SCENE, CONF_SEQUENCE as CONF_SEQUENCE, CONF_SERVICE as CONF_SERVICE, CONF_SERVICE_DATA as CONF_SERVICE_DATA, CONF_SERVICE_DATA_TEMPLATE as CONF_SERVICE_DATA_TEMPLATE, CONF_SERVICE_TEMPLATE as CONF_SERVICE_TEMPLATE, CONF_SET_CONVERSATION_RESPONSE as CONF_SET_CONVERSATION_RESPONSE, CONF_STATE as CONF_STATE, CONF_STOP as CONF_STOP, CONF_TARGET as CONF_TARGET, CONF_THEN as CONF_THEN, CONF_TIMEOUT as CONF_TIMEOUT, CONF_UNTIL as CONF_UNTIL, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, CONF_VARIABLES as CONF_VARIABLES, CONF_WAIT_FOR_TRIGGER as CONF_WAIT_FOR_TRIGGER, CONF_WAIT_TEMPLATE as CONF_WAIT_TEMPLATE, CONF_WHILE as CONF_WHILE, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_ANY as ENTITY_MATCH_ANY, ENTITY_MATCH_NONE as ENTITY_MATCH_NONE, SUN_EVENT_SUNRISE as SUN_EVENT_SUNRISE, SUN_EVENT_SUNSET as SUN_EVENT_SUNSET, UnitOfTemperature as UnitOfTemperature, WEEKDAYS as WEEKDAYS
|
11
11
|
from homeassistant.core import async_get_hass as async_get_hass, async_get_hass_or_none as async_get_hass_or_none, split_entity_id as split_entity_id, valid_entity_id as valid_entity_id
|
12
12
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, TemplateError as TemplateError
|
13
13
|
from homeassistant.generated import currencies as currencies
|
@@ -20,9 +20,9 @@ from typing import Any, overload
|
|
20
20
|
TIME_PERIOD_ERROR: str
|
21
21
|
|
22
22
|
class UrlProtocolSchema(StrEnum):
|
23
|
-
HTTP
|
24
|
-
HTTPS
|
25
|
-
HOMEASSISTANT
|
23
|
+
HTTP = 'http'
|
24
|
+
HTTPS = 'https'
|
25
|
+
HOMEASSISTANT = 'homeassistant'
|
26
26
|
|
27
27
|
EXTERNAL_URL_PROTOCOL_SCHEMA_LIST: Incomplete
|
28
28
|
CONFIGURATION_URL_PROTOCOL_SCHEMA_LIST: Incomplete
|
@@ -138,7 +138,7 @@ def platform_only_config_schema(domain: str) -> Callable[[dict], dict]: ...
|
|
138
138
|
|
139
139
|
PLATFORM_SCHEMA: Incomplete
|
140
140
|
PLATFORM_SCHEMA_BASE: Incomplete
|
141
|
-
ENTITY_SERVICE_FIELDS:
|
141
|
+
ENTITY_SERVICE_FIELDS: VolDictType
|
142
142
|
TARGET_SERVICE_FIELDS: Incomplete
|
143
143
|
_HAS_ENTITY_SERVICE_FIELD: Incomplete
|
144
144
|
|
@@ -154,8 +154,11 @@ SCRIPT_VARIABLES_SCHEMA: Incomplete
|
|
154
154
|
def script_action(value: Any) -> dict: ...
|
155
155
|
|
156
156
|
SCRIPT_SCHEMA: Incomplete
|
157
|
-
SCRIPT_ACTION_BASE_SCHEMA:
|
157
|
+
SCRIPT_ACTION_BASE_SCHEMA: VolDictType
|
158
158
|
EVENT_SCHEMA: Incomplete
|
159
|
+
|
160
|
+
def _backward_compat_service_schema(value: Any | None) -> Any: ...
|
161
|
+
|
159
162
|
SERVICE_SCHEMA: Incomplete
|
160
163
|
NUMERIC_STATE_THRESHOLD_SCHEMA: Incomplete
|
161
164
|
CONDITION_BASE_SCHEMA: VolDictType
|
@@ -19,6 +19,6 @@ class FlowManagerIndexView(_BaseFlowManagerView[_FlowManagerT]):
|
|
19
19
|
def get_context(self, data: dict[str, Any]) -> dict[str, Any]: ...
|
20
20
|
|
21
21
|
class FlowManagerResourceView(_BaseFlowManagerView[_FlowManagerT]):
|
22
|
-
async def get(self, request: web.Request, flow_id: str) -> web.Response: ...
|
22
|
+
async def get(self, request: web.Request, /, flow_id: str) -> web.Response: ...
|
23
23
|
async def post(self, request: web.Request, data: dict[str, Any], flow_id: str) -> web.Response: ...
|
24
24
|
async def delete(self, request: web.Request, flow_id: str) -> web.Response: ...
|
@@ -8,6 +8,7 @@ from .singleton import singleton as singleton
|
|
8
8
|
from .typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
9
9
|
from _typeshed import Incomplete
|
10
10
|
from collections.abc import Mapping
|
11
|
+
from datetime import datetime
|
11
12
|
from enum import StrEnum
|
12
13
|
from functools import cached_property as cached_property
|
13
14
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -15,6 +16,7 @@ from homeassistant.const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTA
|
|
15
16
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, ReleaseChannel as ReleaseChannel, callback as callback, get_release_channel as get_release_channel
|
16
17
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
17
18
|
from homeassistant.loader import async_suggest_report_issue as async_suggest_report_issue
|
19
|
+
from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp, utcnow as utcnow
|
18
20
|
from homeassistant.util.event_type import EventType as EventType
|
19
21
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
20
22
|
from homeassistant.util.json import format_unserializable_data as format_unserializable_data
|
@@ -37,9 +39,9 @@ RUNTIME_ONLY_ATTRS: Incomplete
|
|
37
39
|
CONFIGURATION_URL_SCHEMES: Incomplete
|
38
40
|
|
39
41
|
class DeviceEntryDisabler(StrEnum):
|
40
|
-
CONFIG_ENTRY
|
41
|
-
INTEGRATION
|
42
|
-
USER
|
42
|
+
CONFIG_ENTRY = 'config_entry'
|
43
|
+
INTEGRATION = 'integration'
|
44
|
+
USER = 'user'
|
43
45
|
|
44
46
|
_DEPRECATED_DISABLED_CONFIG_ENTRY: Incomplete
|
45
47
|
_DEPRECATED_DISABLED_INTEGRATION: Incomplete
|
@@ -48,6 +50,7 @@ _DEPRECATED_DISABLED_USER: Incomplete
|
|
48
50
|
class DeviceInfo(TypedDict, total=False):
|
49
51
|
configuration_url: str | URL | None
|
50
52
|
connections: set[tuple[str, str]]
|
53
|
+
created_at: str
|
51
54
|
default_manufacturer: str
|
52
55
|
default_model: str
|
53
56
|
default_name: str
|
@@ -55,6 +58,8 @@ class DeviceInfo(TypedDict, total=False):
|
|
55
58
|
identifiers: set[tuple[str, str]]
|
56
59
|
manufacturer: str | None
|
57
60
|
model: str | None
|
61
|
+
model_id: str | None
|
62
|
+
modified_at: str
|
58
63
|
name: str | None
|
59
64
|
serial_number: str | None
|
60
65
|
suggested_area: str | None
|
@@ -76,11 +81,10 @@ class _EventDeviceRegistryUpdatedData_Update(TypedDict):
|
|
76
81
|
action: Literal['update']
|
77
82
|
device_id: str
|
78
83
|
changes: dict[str, Any]
|
79
|
-
|
80
|
-
EventDeviceRegistryUpdatedData: Incomplete
|
84
|
+
EventDeviceRegistryUpdatedData = _EventDeviceRegistryUpdatedData_CreateRemove | _EventDeviceRegistryUpdatedData_Update
|
81
85
|
|
82
86
|
class DeviceEntryType(StrEnum):
|
83
|
-
SERVICE
|
87
|
+
SERVICE = 'service'
|
84
88
|
|
85
89
|
class DeviceInfoError(HomeAssistantError):
|
86
90
|
device_info: Incomplete
|
@@ -106,6 +110,7 @@ class DeviceEntry:
|
|
106
110
|
config_entries: set[str]
|
107
111
|
configuration_url: str | None
|
108
112
|
connections: set[tuple[str, str]]
|
113
|
+
created_at: datetime
|
109
114
|
disabled_by: DeviceEntryDisabler | None
|
110
115
|
entry_type: DeviceEntryType | None
|
111
116
|
hw_version: str | None
|
@@ -114,6 +119,8 @@ class DeviceEntry:
|
|
114
119
|
labels: set[str]
|
115
120
|
manufacturer: str | None
|
116
121
|
model: str | None
|
122
|
+
model_id: str | None
|
123
|
+
modified_at: datetime
|
117
124
|
name_by_user: str | None
|
118
125
|
name: str | None
|
119
126
|
primary_config_entry: str | None
|
@@ -130,7 +137,7 @@ class DeviceEntry:
|
|
130
137
|
def json_repr(self) -> bytes | None: ...
|
131
138
|
@cached_property
|
132
139
|
def as_storage_fragment(self) -> json_fragment: ...
|
133
|
-
def __init__(self, area_id, config_entries, configuration_url, connections, disabled_by, entry_type, hw_version, id, identifiers, labels, manufacturer, model, name_by_user, name, primary_config_entry, serial_number, suggested_area, sw_version, via_device_id, is_new) -> None: ...
|
140
|
+
def __init__(self, area_id, config_entries, configuration_url, connections, created_at, disabled_by, entry_type, hw_version, id, identifiers, labels, manufacturer, model, model_id, modified_at, name_by_user, name, primary_config_entry, serial_number, suggested_area, sw_version, via_device_id, is_new) -> None: ...
|
134
141
|
def __lt__(self, other): ...
|
135
142
|
def __le__(self, other): ...
|
136
143
|
def __gt__(self, other): ...
|
@@ -142,10 +149,12 @@ class DeletedDeviceEntry:
|
|
142
149
|
identifiers: set[tuple[str, str]]
|
143
150
|
id: str
|
144
151
|
orphaned_timestamp: float | None
|
152
|
+
created_at: datetime
|
153
|
+
modified_at: datetime
|
145
154
|
def to_device_entry(self, config_entry_id: str, connections: set[tuple[str, str]], identifiers: set[tuple[str, str]]) -> DeviceEntry: ...
|
146
155
|
@cached_property
|
147
156
|
def as_storage_fragment(self) -> json_fragment: ...
|
148
|
-
def __init__(self, config_entries, connections, identifiers, id, orphaned_timestamp) -> None: ...
|
157
|
+
def __init__(self, config_entries, connections, identifiers, id, orphaned_timestamp, created_at, modified_at) -> None: ...
|
149
158
|
def __lt__(self, other): ...
|
150
159
|
def __le__(self, other): ...
|
151
160
|
def __gt__(self, other): ...
|
@@ -186,8 +195,8 @@ class DeviceRegistry(BaseRegistry[dict[str, list[dict[str, Any]]]]):
|
|
186
195
|
def async_get_device(self, identifiers: set[tuple[str, str]] | None = None, connections: set[tuple[str, str]] | None = None) -> DeviceEntry | None: ...
|
187
196
|
def _async_get_deleted_device(self, identifiers: set[tuple[str, str]], connections: set[tuple[str, str]]) -> DeletedDeviceEntry | None: ...
|
188
197
|
def _substitute_name_placeholders(self, domain: str, name: str, translation_placeholders: Mapping[str, str]) -> str: ...
|
189
|
-
def async_get_or_create(self, *, config_entry_id: str, configuration_url: str | URL | None | UndefinedType = ..., connections: set[tuple[str, str]] | None | UndefinedType = ..., default_manufacturer: str | None | UndefinedType = ..., default_model: str | None | UndefinedType = ..., default_name: str | None | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., identifiers: set[tuple[str, str]] | None | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., model: str | None | UndefinedType = ..., name: str | None | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., translation_key: str | None = None, translation_placeholders: Mapping[str, str] | None = None, via_device: tuple[str, str] | None | UndefinedType = ...) -> DeviceEntry: ...
|
190
|
-
def async_update_device(self, device_id: str, *, add_config_entry: ConfigEntry | UndefinedType = ..., add_config_entry_id: str | UndefinedType = ..., allow_collisions: bool = False, area_id: str | None | UndefinedType = ..., configuration_url: str | URL | None | UndefinedType = ..., device_info_type: str | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., merge_connections: set[tuple[str, str]] | UndefinedType = ..., merge_identifiers: set[tuple[str, str]] | UndefinedType = ..., model: str | None | UndefinedType = ..., name_by_user: str | None | UndefinedType = ..., name: str | None | UndefinedType = ..., new_connections: set[tuple[str, str]] | UndefinedType = ..., new_identifiers: set[tuple[str, str]] | UndefinedType = ..., remove_config_entry_id: str | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., via_device_id: str | None | UndefinedType = ...) -> DeviceEntry | None: ...
|
198
|
+
def async_get_or_create(self, *, config_entry_id: str, configuration_url: str | URL | None | UndefinedType = ..., connections: set[tuple[str, str]] | None | UndefinedType = ..., created_at: str | datetime | UndefinedType = ..., default_manufacturer: str | None | UndefinedType = ..., default_model: str | None | UndefinedType = ..., default_name: str | None | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., identifiers: set[tuple[str, str]] | None | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., model: str | None | UndefinedType = ..., model_id: str | None | UndefinedType = ..., modified_at: str | datetime | UndefinedType = ..., name: str | None | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., translation_key: str | None = None, translation_placeholders: Mapping[str, str] | None = None, via_device: tuple[str, str] | None | UndefinedType = ...) -> DeviceEntry: ...
|
199
|
+
def async_update_device(self, device_id: str, *, add_config_entry: ConfigEntry | UndefinedType = ..., add_config_entry_id: str | UndefinedType = ..., allow_collisions: bool = False, area_id: str | None | UndefinedType = ..., configuration_url: str | URL | None | UndefinedType = ..., device_info_type: str | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., merge_connections: set[tuple[str, str]] | UndefinedType = ..., merge_identifiers: set[tuple[str, str]] | UndefinedType = ..., model: str | None | UndefinedType = ..., model_id: str | None | UndefinedType = ..., name_by_user: str | None | UndefinedType = ..., name: str | None | UndefinedType = ..., new_connections: set[tuple[str, str]] | UndefinedType = ..., new_identifiers: set[tuple[str, str]] | UndefinedType = ..., remove_config_entry_id: str | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., via_device_id: str | None | UndefinedType = ...) -> DeviceEntry | None: ...
|
191
200
|
def _validate_connections(self, device_id: str, connections: set[tuple[str, str]], allow_collisions: bool) -> set[tuple[str, str]]: ...
|
192
201
|
def _validate_identifiers(self, device_id: str, identifiers: set[tuple[str, str]], allow_collisions: bool) -> set[tuple[str, str]]: ...
|
193
202
|
def async_remove_device(self, device_id: str) -> None: ...
|
@@ -50,9 +50,9 @@ class StateInfo(TypedDict):
|
|
50
50
|
unrecorded_attributes: frozenset[str]
|
51
51
|
|
52
52
|
class EntityPlatformState(Enum):
|
53
|
-
NOT_ADDED
|
54
|
-
ADDED
|
55
|
-
REMOVED
|
53
|
+
NOT_ADDED = ...
|
54
|
+
ADDED = ...
|
55
|
+
REMOVED = ...
|
56
56
|
|
57
57
|
_SENTINEL: Incomplete
|
58
58
|
|
@@ -69,15 +69,14 @@ class EntityDescription(frozen_or_thawed=True, metaclass=FrozenOrThawed):
|
|
69
69
|
translation_key: str | None
|
70
70
|
translation_placeholders: Mapping[str, str] | None
|
71
71
|
unit_of_measurement: str | None
|
72
|
-
def __init__(self, *, key, device_class
|
72
|
+
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: ...
|
73
73
|
|
74
74
|
@dataclasses.dataclass(frozen=True, slots=True)
|
75
75
|
class CalculatedState:
|
76
76
|
state: str
|
77
77
|
attributes: dict[str, Any]
|
78
78
|
capability_attributes: Mapping[str, Any] | None
|
79
|
-
|
80
|
-
def __init__(self, state, attributes, capability_attributes, shadowed_attributes) -> None: ...
|
79
|
+
def __init__(self, state, attributes, capability_attributes) -> None: ...
|
81
80
|
|
82
81
|
class CachedProperties(type):
|
83
82
|
def __new__(mcs, name: str, bases: tuple[type, ...], namespace: dict[Any, Any], cached_properties: set[str] | None = None, **kwargs: Any) -> Any: ...
|
@@ -212,7 +211,7 @@ class Entity(cached_properties=CACHED_PROPERTIES_WITH_ATTR_, metaclass=ABCCached
|
|
212
211
|
def _stringify_state(self, available: bool) -> str: ...
|
213
212
|
def _friendly_name_internal(self) -> str | None: ...
|
214
213
|
def _async_calculate_state(self) -> CalculatedState: ...
|
215
|
-
def __async_calculate_state(self) -> tuple[str, dict[str, Any], Mapping[str, Any] | None,
|
214
|
+
def __async_calculate_state(self) -> tuple[str, dict[str, Any], Mapping[str, Any] | None, str | None, int | None]: ...
|
216
215
|
def _async_write_ha_state(self) -> None: ...
|
217
216
|
def schedule_update_ha_state(self, force_refresh: bool = False) -> None: ...
|
218
217
|
def async_schedule_update_ha_state(self, force_refresh: bool = False) -> None: ...
|
@@ -242,7 +241,7 @@ class Entity(cached_properties=CACHED_PROPERTIES_WITH_ATTR_, metaclass=ABCCached
|
|
242
241
|
def _report_deprecated_supported_features_values(self, replacement: IntFlag) -> None: ...
|
243
242
|
|
244
243
|
class ToggleEntityDescription(EntityDescription, frozen_or_thawed=True):
|
245
|
-
def __init__(self, *, key, device_class
|
244
|
+
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: ...
|
246
245
|
|
247
246
|
TOGGLE_ENTITY_CACHED_PROPERTIES_WITH_ATTR_: Incomplete
|
248
247
|
|
@@ -90,7 +90,7 @@ class EntityPlatform:
|
|
90
90
|
async def async_destroy(self) -> None: ...
|
91
91
|
async def async_remove_entity(self, entity_id: str) -> None: ...
|
92
92
|
async def async_extract_from_service(self, service_call: ServiceCall, expand_group: bool = True) -> list[Entity]: ...
|
93
|
-
def async_register_entity_service(self, name: str, schema: VolDictType | VolSchemaType
|
93
|
+
def async_register_entity_service(self, name: str, schema: VolDictType | VolSchemaType, func: str | Callable[..., Any], required_features: Iterable[int] | None = None, supports_response: SupportsResponse = ...) -> None: ...
|
94
94
|
async def _async_update_entity_states(self) -> None: ...
|
95
95
|
|
96
96
|
current_platform: ContextVar[EntityPlatform | None]
|
@@ -6,6 +6,7 @@ from .singleton import singleton as singleton
|
|
6
6
|
from .typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
7
7
|
from _typeshed import Incomplete
|
8
8
|
from collections.abc import Callable as Callable, Container, Hashable, KeysView, Mapping
|
9
|
+
from datetime import datetime
|
9
10
|
from enum import StrEnum
|
10
11
|
from functools import cached_property as cached_property
|
11
12
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -14,6 +15,7 @@ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, c
|
|
14
15
|
from homeassistant.exceptions import MaxLengthExceeded as MaxLengthExceeded
|
15
16
|
from homeassistant.loader import async_suggest_report_issue as async_suggest_report_issue
|
16
17
|
from homeassistant.util import slugify as slugify
|
18
|
+
from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp, utcnow as utcnow
|
17
19
|
from homeassistant.util.event_type import EventType as EventType
|
18
20
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
19
21
|
from homeassistant.util.json import format_unserializable_data as format_unserializable_data
|
@@ -33,15 +35,15 @@ ENTITY_CATEGORY_INDEX_TO_VALUE: Incomplete
|
|
33
35
|
ENTITY_DESCRIBING_ATTRIBUTES: Incomplete
|
34
36
|
|
35
37
|
class RegistryEntryDisabler(StrEnum):
|
36
|
-
CONFIG_ENTRY
|
37
|
-
DEVICE
|
38
|
-
HASS
|
39
|
-
INTEGRATION
|
40
|
-
USER
|
38
|
+
CONFIG_ENTRY = 'config_entry'
|
39
|
+
DEVICE = 'device'
|
40
|
+
HASS = 'hass'
|
41
|
+
INTEGRATION = 'integration'
|
42
|
+
USER = 'user'
|
41
43
|
|
42
44
|
class RegistryEntryHider(StrEnum):
|
43
|
-
INTEGRATION
|
44
|
-
USER
|
45
|
+
INTEGRATION = 'integration'
|
46
|
+
USER = 'user'
|
45
47
|
|
46
48
|
class _EventEntityRegistryUpdatedData_CreateRemove(TypedDict):
|
47
49
|
action: Literal['create', 'remove']
|
@@ -52,8 +54,7 @@ class _EventEntityRegistryUpdatedData_Update(TypedDict):
|
|
52
54
|
entity_id: str
|
53
55
|
changes: dict[str, Any]
|
54
56
|
old_entity_id: NotRequired[str]
|
55
|
-
|
56
|
-
EventEntityRegistryUpdatedData: Incomplete
|
57
|
+
EventEntityRegistryUpdatedData = _EventEntityRegistryUpdatedData_CreateRemove | _EventEntityRegistryUpdatedData_Update
|
57
58
|
EntityOptionsType = Mapping[str, Mapping[str, Any]]
|
58
59
|
ReadOnlyEntityOptionsType = ReadOnlyDict[str, ReadOnlyDict[str, Any]]
|
59
60
|
DISPLAY_DICT_OPTIONAL: Incomplete
|
@@ -70,6 +71,7 @@ class RegistryEntry:
|
|
70
71
|
categories: dict[str, str]
|
71
72
|
capabilities: Mapping[str, Any] | None
|
72
73
|
config_entry_id: str | None
|
74
|
+
created_at: datetime
|
73
75
|
device_class: str | None
|
74
76
|
device_id: str | None
|
75
77
|
domain: str
|
@@ -80,6 +82,7 @@ class RegistryEntry:
|
|
80
82
|
id: str
|
81
83
|
has_entity_name: bool
|
82
84
|
labels: set[str]
|
85
|
+
modified_at: datetime
|
83
86
|
name: str | None
|
84
87
|
options: ReadOnlyEntityOptionsType
|
85
88
|
original_device_class: str | None
|
@@ -106,7 +109,7 @@ class RegistryEntry:
|
|
106
109
|
@cached_property
|
107
110
|
def as_storage_fragment(self) -> json_fragment: ...
|
108
111
|
def write_unavailable_state(self, hass: HomeAssistant) -> None: ...
|
109
|
-
def __init__(self, entity_id, unique_id, platform, previous_unique_id, aliases, area_id, categories, capabilities, config_entry_id, device_class, device_id, domain, disabled_by, entity_category, hidden_by, icon, id, has_entity_name, labels, name, options, original_device_class, original_icon, original_name, supported_features, translation_key, unit_of_measurement) -> None: ...
|
112
|
+
def __init__(self, entity_id, unique_id, platform, previous_unique_id, aliases, area_id, categories, capabilities, config_entry_id, created_at, device_class, device_id, domain, disabled_by, entity_category, hidden_by, icon, id, has_entity_name, labels, modified_at, name, options, original_device_class, original_icon, original_name, supported_features, translation_key, unit_of_measurement) -> None: ...
|
110
113
|
def __lt__(self, other): ...
|
111
114
|
def __le__(self, other): ...
|
112
115
|
def __gt__(self, other): ...
|
@@ -120,10 +123,12 @@ class DeletedRegistryEntry:
|
|
120
123
|
domain: str
|
121
124
|
id: str
|
122
125
|
orphaned_timestamp: float | None
|
126
|
+
created_at: datetime
|
127
|
+
modified_at: datetime
|
123
128
|
def _domain_default(self) -> str: ...
|
124
129
|
@cached_property
|
125
130
|
def as_storage_fragment(self) -> json_fragment: ...
|
126
|
-
def __init__(self, entity_id, unique_id, platform, config_entry_id, domain, id, orphaned_timestamp) -> None: ...
|
131
|
+
def __init__(self, entity_id, unique_id, platform, config_entry_id, domain, id, orphaned_timestamp, created_at, modified_at) -> None: ...
|
127
132
|
def __lt__(self, other): ...
|
128
133
|
def __le__(self, other): ...
|
129
134
|
def __gt__(self, other): ...
|
@@ -62,7 +62,7 @@ class TrackTemplate:
|
|
62
62
|
template: Template
|
63
63
|
variables: TemplateVarsType
|
64
64
|
rate_limit: float | None = ...
|
65
|
-
def __init__(self, template, variables, rate_limit) -> None: ...
|
65
|
+
def __init__(self, template, variables, rate_limit=...) -> None: ...
|
66
66
|
|
67
67
|
@dataclass(slots=True)
|
68
68
|
class TrackTemplateResult:
|
@@ -77,6 +77,7 @@ def async_track_state_change(hass: HomeAssistant, entity_ids: str | Iterable[str
|
|
77
77
|
track_state_change: Incomplete
|
78
78
|
|
79
79
|
def async_track_state_change_event(hass: HomeAssistant, entity_ids: str | Iterable[str], action: Callable[[Event[EventStateChangedData]], Any], job_type: HassJobType | None = None) -> CALLBACK_TYPE: ...
|
80
|
+
def _async_dispatch_entity_id_event_soon(hass: HomeAssistant, callbacks: dict[str, list[HassJob[[Event[_StateEventDataT]], Any]]], event: Event[_StateEventDataT]) -> None: ...
|
80
81
|
def _async_dispatch_entity_id_event(hass: HomeAssistant, callbacks: dict[str, list[HassJob[[Event[_StateEventDataT]], Any]]], event: Event[_StateEventDataT]) -> None: ...
|
81
82
|
def _async_state_filter(hass: HomeAssistant, callbacks: dict[str, list[HassJob[[Event[_StateEventDataT]], Any]]], event_data: _StateEventDataT) -> bool: ...
|
82
83
|
|
@@ -163,8 +164,7 @@ class TrackTemplateResultInfo:
|
|
163
164
|
def _super_template_as_boolean(result: bool | str | TemplateError) -> bool: ...
|
164
165
|
def _apply_update(self, updates: list[TrackTemplateResult], update: bool | TrackTemplateResult, template: Template) -> bool: ...
|
165
166
|
def _refresh(self, event: Event[EventStateChangedData] | None, track_templates: Iterable[TrackTemplate] | None = None, replayed: bool | None = False) -> None: ...
|
166
|
-
|
167
|
-
TrackTemplateResultListener: Incomplete
|
167
|
+
TrackTemplateResultListener = Callable[[Event[EventStateChangedData] | None, list[TrackTemplateResult]], Coroutine[Any, Any, None] | None]
|
168
168
|
|
169
169
|
def async_track_template_result(hass: HomeAssistant, track_templates: Sequence[TrackTemplate], action: TrackTemplateResultListener, strict: bool = False, log_fn: Callable[[int, str], None] | None = None, has_super_template: bool = False) -> TrackTemplateResultInfo: ...
|
170
170
|
def async_track_same_state(hass: HomeAssistant, period: timedelta, action: Callable[[], Coroutine[Any, Any, None] | None], async_check_same_func: Callable[[str, State | None, State | None], bool], entity_ids: str | Iterable[str] = ...) -> CALLBACK_TYPE: ...
|
@@ -185,7 +185,7 @@ class _TrackPointUTCTime:
|
|
185
185
|
def async_attach(self) -> None: ...
|
186
186
|
def __call__(self) -> None: ...
|
187
187
|
def async_cancel(self) -> None: ...
|
188
|
-
def __init__(self, hass, job, utc_point_in_time, expected_fire_timestamp, _cancel_callback) -> None: ...
|
188
|
+
def __init__(self, hass, job, utc_point_in_time, expected_fire_timestamp, _cancel_callback=...) -> None: ...
|
189
189
|
|
190
190
|
def async_track_point_in_utc_time(hass: HomeAssistant, action: HassJob[[datetime], Coroutine[Any, Any, None] | None] | Callable[[datetime], Coroutine[Any, Any, None] | None], point_in_time: datetime) -> CALLBACK_TYPE: ...
|
191
191
|
|
@@ -211,7 +211,7 @@ class _TrackTimeInterval:
|
|
211
211
|
def _schedule_timer(self) -> None: ...
|
212
212
|
def _interval_listener(self, _: Any) -> None: ...
|
213
213
|
def async_cancel(self) -> None: ...
|
214
|
-
def __init__(self, hass, seconds, job_name, action, cancel_on_shutdown, _track_job
|
214
|
+
def __init__(self, hass, seconds, job_name, action, cancel_on_shutdown, _track_job=..., _run_job=..., _timer_handle=...) -> None: ...
|
215
215
|
|
216
216
|
def async_track_time_interval(hass: HomeAssistant, action: Callable[[datetime], Coroutine[Any, Any, None] | None], interval: timedelta, *, name: str | None = None, cancel_on_shutdown: bool | None = None) -> CALLBACK_TYPE: ...
|
217
217
|
|
@@ -230,7 +230,7 @@ class SunListener:
|
|
230
230
|
def _listen_next_sun_event(self) -> None: ...
|
231
231
|
def _handle_sun_event(self, _now: Any) -> None: ...
|
232
232
|
def _handle_config_event(self, _event: Any) -> None: ...
|
233
|
-
def __init__(self, hass, job, event, offset, _unsub_sun
|
233
|
+
def __init__(self, hass, job, event, offset, _unsub_sun=..., _unsub_config=...) -> None: ...
|
234
234
|
|
235
235
|
def async_track_sunrise(hass: HomeAssistant, action: Callable[[], None], offset: timedelta | None = None) -> CALLBACK_TYPE: ...
|
236
236
|
|
@@ -256,7 +256,7 @@ class _TrackUTCTimeChange:
|
|
256
256
|
def _calculate_next(self, utc_now: datetime) -> datetime: ...
|
257
257
|
def _pattern_time_change_listener(self, _: datetime) -> None: ...
|
258
258
|
def async_cancel(self) -> None: ...
|
259
|
-
def __init__(self, hass, time_match_expression, microsecond, local, job, listener_job_name, _pattern_time_change_listener_job
|
259
|
+
def __init__(self, hass, time_match_expression, microsecond, local, job, listener_job_name, _pattern_time_change_listener_job=..., _cancel_callback=...) -> None: ...
|
260
260
|
|
261
261
|
def async_track_utc_time_change(hass: HomeAssistant, action: Callable[[datetime], Coroutine[Any, Any, None] | None], hour: Any | None = None, minute: Any | None = None, second: Any | None = None, local: bool = False) -> CALLBACK_TYPE: ...
|
262
262
|
|
@@ -8,14 +8,16 @@ from collections.abc import Iterable
|
|
8
8
|
from dataclasses import dataclass
|
9
9
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
10
10
|
from homeassistant.util import slugify as slugify
|
11
|
+
from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp, utcnow as utcnow
|
11
12
|
from homeassistant.util.event_type import EventType as EventType
|
12
13
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
13
|
-
from typing import Literal, TypedDict
|
14
|
+
from typing import Any, Literal, TypedDict
|
14
15
|
|
15
16
|
DATA_REGISTRY: HassKey[FloorRegistry]
|
16
17
|
EVENT_FLOOR_REGISTRY_UPDATED: EventType[EventFloorRegistryUpdatedData]
|
17
18
|
STORAGE_KEY: str
|
18
19
|
STORAGE_VERSION_MAJOR: int
|
20
|
+
STORAGE_VERSION_MINOR: int
|
19
21
|
|
20
22
|
class _FloorStoreData(TypedDict):
|
21
23
|
aliases: list[str]
|
@@ -23,6 +25,8 @@ class _FloorStoreData(TypedDict):
|
|
23
25
|
icon: str | None
|
24
26
|
level: int | None
|
25
27
|
name: str
|
28
|
+
created_at: str
|
29
|
+
modified_at: str
|
26
30
|
|
27
31
|
class FloorRegistryStoreData(TypedDict):
|
28
32
|
floors: list[_FloorStoreData]
|
@@ -38,7 +42,10 @@ class FloorEntry(NormalizedNameBaseRegistryEntry):
|
|
38
42
|
floor_id: str
|
39
43
|
icon: str | None = ...
|
40
44
|
level: int | None = ...
|
41
|
-
def __init__(self, *, name, normalized_name, aliases, floor_id, icon
|
45
|
+
def __init__(self, *, name, normalized_name, created_at=..., modified_at=..., aliases, floor_id, icon=..., level=...) -> None: ...
|
46
|
+
|
47
|
+
class FloorRegistryStore(Store[FloorRegistryStoreData]):
|
48
|
+
async def _async_migrate_func(self, old_major_version: int, old_minor_version: int, old_data: dict[str, list[dict[str, Any]]]) -> FloorRegistryStoreData: ...
|
42
49
|
|
43
50
|
class FloorRegistry(BaseRegistry[FloorRegistryStoreData]):
|
44
51
|
floors: NormalizedNameBaseRegistryItems[FloorEntry]
|
@@ -3,6 +3,7 @@ from _typeshed import Incomplete
|
|
3
3
|
from aiohttp import web
|
4
4
|
from aiohttp.typedefs import LooseHeaders as LooseHeaders
|
5
5
|
from aiohttp.web import AppKey, Request as Request
|
6
|
+
from aiohttp.web_urldispatcher import AbstractResource, AbstractRoute
|
6
7
|
from collections.abc import Awaitable, Callable
|
7
8
|
from contextvars import ContextVar
|
8
9
|
from homeassistant import exceptions as exceptions
|
@@ -13,7 +14,7 @@ from http import HTTPStatus
|
|
13
14
|
from typing import Any, Final
|
14
15
|
|
15
16
|
_LOGGER: Incomplete
|
16
|
-
AllowCorsType
|
17
|
+
AllowCorsType = Callable[[AbstractRoute | AbstractResource], None]
|
17
18
|
KEY_AUTHENTICATED: Final[str]
|
18
19
|
KEY_ALLOW_ALL_CORS: Incomplete
|
19
20
|
KEY_ALLOW_CONFIGURED_CORS: Incomplete
|