homeassistant-stubs 2024.9.2__py3-none-any.whl → 2024.10.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/components/__init__.pyi +0 -8
- homeassistant-stubs/components/abode/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
- homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
- homeassistant-stubs/components/acmeda/cover.pyi +2 -2
- homeassistant-stubs/components/acmeda/{base.pyi → entity.pyi} +1 -1
- homeassistant-stubs/components/acmeda/sensor.pyi +2 -2
- homeassistant-stubs/components/actiontec/device_tracker.pyi +1 -1
- homeassistant-stubs/components/air_quality/__init__.pyi +2 -0
- homeassistant-stubs/components/airgradient/__init__.pyi +2 -10
- homeassistant-stubs/components/airgradient/button.pyi +4 -4
- homeassistant-stubs/components/airgradient/coordinator.pyi +13 -11
- homeassistant-stubs/components/airgradient/diagnostics.pyi +5 -0
- homeassistant-stubs/components/airgradient/number.pyi +2 -3
- homeassistant-stubs/components/airgradient/select.pyi +2 -3
- homeassistant-stubs/components/airgradient/sensor.pyi +9 -9
- homeassistant-stubs/components/airgradient/switch.pyi +2 -3
- homeassistant-stubs/components/airgradient/update.pyi +2 -3
- homeassistant-stubs/components/airnow/__init__.pyi +0 -1
- homeassistant-stubs/components/airnow/const.pyi +4 -1
- homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
- homeassistant-stubs/components/airnow/sensor.pyi +2 -1
- homeassistant-stubs/components/airvisual/__init__.pyi +6 -14
- homeassistant-stubs/components/airvisual/diagnostics.pyi +3 -4
- homeassistant-stubs/components/airvisual/entity.pyi +13 -0
- homeassistant-stubs/components/airvisual/sensor.pyi +4 -3
- homeassistant-stubs/components/airvisual_pro/__init__.pyi +2 -11
- homeassistant-stubs/components/airvisual_pro/entity.pyi +12 -0
- homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -1
- homeassistant-stubs/components/airzone/diagnostics.pyi +1 -1
- homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +1 -1
- homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
- homeassistant-stubs/components/alarm_control_panel/__init__.pyi +2 -0
- homeassistant-stubs/components/alert/__init__.pyi +3 -43
- homeassistant-stubs/components/alert/entity.pyi +45 -0
- homeassistant-stubs/components/alexa/capabilities.pyi +2 -1
- homeassistant-stubs/components/alexa/config.pyi +1 -1
- homeassistant-stubs/components/alexa/smart_home.pyi +1 -1
- homeassistant-stubs/components/amazon_polly/tts.pyi +3 -1
- homeassistant-stubs/components/amberelectric/__init__.pyi +5 -3
- homeassistant-stubs/components/amberelectric/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/amberelectric/sensor.pyi +3 -3
- homeassistant-stubs/components/ambient_network/__init__.pyi +3 -3
- homeassistant-stubs/components/ambient_network/sensor.pyi +2 -3
- homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -2
- homeassistant-stubs/components/anova/__init__.pyi +3 -5
- homeassistant-stubs/components/anova/models.pyi +3 -0
- homeassistant-stubs/components/anova/sensor.pyi +2 -4
- homeassistant-stubs/components/anthemav/__init__.pyi +4 -3
- homeassistant-stubs/components/anthemav/media_player.pyi +2 -3
- homeassistant-stubs/components/apcupsd/__init__.pyi +3 -4
- homeassistant-stubs/components/apcupsd/binary_sensor.pyi +2 -4
- homeassistant-stubs/components/apcupsd/diagnostics.pyi +2 -4
- homeassistant-stubs/components/apcupsd/sensor.pyi +3 -3
- homeassistant-stubs/components/apple_tv/__init__.pyi +2 -19
- homeassistant-stubs/components/apple_tv/const.pyi +2 -0
- homeassistant-stubs/components/apple_tv/entity.pyi +21 -0
- homeassistant-stubs/components/apple_tv/media_player.pyi +2 -1
- homeassistant-stubs/components/apple_tv/remote.pyi +2 -1
- homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -2
- homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +1 -1
- homeassistant-stubs/components/aruba/device_tracker.pyi +1 -1
- homeassistant-stubs/components/aseko_pool_live/__init__.pyi +1 -2
- homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +5 -8
- homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +0 -1
- homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +6 -5
- homeassistant-stubs/components/aseko_pool_live/entity.pyi +8 -3
- homeassistant-stubs/components/aseko_pool_live/sensor.pyi +16 -14
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
- homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
- homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
- homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
- homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
- homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
- homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
- homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
- homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
- homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
- homeassistant-stubs/components/asuswrt/const.pyi +3 -0
- homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
- homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
- homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
- homeassistant-stubs/components/autarco/sensor.pyi +18 -2
- homeassistant-stubs/components/automation/__init__.pyi +5 -3
- homeassistant-stubs/components/automation/config.pyi +6 -2
- homeassistant-stubs/components/automation/const.pyi +2 -0
- homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
- homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
- homeassistant-stubs/components/bang_olufsen/__init__.pyi +1 -0
- homeassistant-stubs/components/bang_olufsen/config_flow.pyi +2 -0
- homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
- homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
- homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
- homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
- homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
- homeassistant-stubs/components/bayesian/const.pyi +1 -0
- homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
- homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
- homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
- homeassistant-stubs/components/blueprint/importer.pyi +1 -1
- homeassistant-stubs/components/blueprint/models.pyi +4 -3
- homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
- homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
- homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
- homeassistant-stubs/components/bluesound/const.pyi +8 -0
- homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
- homeassistant-stubs/components/bluesound/utils.pyi +3 -0
- homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
- homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
- homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
- homeassistant-stubs/components/braviatv/entity.pyi +1 -1
- homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
- homeassistant-stubs/components/bryant_evolution/config_flow.pyi +3 -1
- homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
- homeassistant-stubs/components/button/__init__.pyi +2 -0
- homeassistant-stubs/components/calendar/__init__.pyi +7 -5
- homeassistant-stubs/components/calendar/const.pyi +5 -0
- homeassistant-stubs/components/calendar/trigger.pyi +2 -1
- homeassistant-stubs/components/camera/__init__.pyi +4 -4
- homeassistant-stubs/components/camera/const.pyi +12 -2
- homeassistant-stubs/components/camera/media_source.pyi +2 -4
- homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
- homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
- homeassistant-stubs/components/climate/__init__.pyi +6 -2
- homeassistant-stubs/components/climate/const.pyi +1 -0
- homeassistant-stubs/components/climate/intent.pyi +1 -3
- homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
- homeassistant-stubs/components/cloud/google_config.pyi +1 -1
- homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
- homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
- homeassistant-stubs/components/config/automation.pyi +1 -1
- homeassistant-stubs/components/config/category_registry.pyi +1 -1
- homeassistant-stubs/components/config/device_registry.pyi +1 -1
- homeassistant-stubs/components/config/entity_registry.pyi +1 -2
- homeassistant-stubs/components/config/floor_registry.pyi +1 -1
- homeassistant-stubs/components/config/label_registry.pyi +1 -1
- homeassistant-stubs/components/config/scene.pyi +1 -1
- homeassistant-stubs/components/config/script.pyi +0 -1
- homeassistant-stubs/components/cover/__init__.pyi +3 -1
- homeassistant-stubs/components/cover/const.pyi +2 -0
- homeassistant-stubs/components/cover/intent.pyi +1 -4
- homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
- homeassistant-stubs/components/crownstone/light.pyi +2 -2
- homeassistant-stubs/components/deako/__init__.pyi +14 -0
- homeassistant-stubs/components/deako/config_flow.pyi +6 -0
- homeassistant-stubs/components/deako/const.pyi +2 -0
- homeassistant-stubs/components/deako/light.pyi +32 -0
- homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
- homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/deconz/button.pyi +4 -4
- homeassistant-stubs/components/deconz/climate.pyi +3 -3
- homeassistant-stubs/components/deconz/cover.pyi +3 -3
- homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
- homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
- homeassistant-stubs/components/deconz/fan.pyi +3 -3
- homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
- homeassistant-stubs/components/deconz/light.pyi +3 -3
- homeassistant-stubs/components/deconz/lock.pyi +3 -3
- homeassistant-stubs/components/deconz/number.pyi +3 -3
- homeassistant-stubs/components/deconz/scene.pyi +3 -3
- homeassistant-stubs/components/deconz/select.pyi +6 -6
- homeassistant-stubs/components/deconz/sensor.pyi +6 -5
- homeassistant-stubs/components/deconz/siren.pyi +3 -3
- homeassistant-stubs/components/deconz/switch.pyi +3 -3
- homeassistant-stubs/components/demo/lock.pyi +1 -2
- homeassistant-stubs/components/demo/notify.pyi +1 -1
- homeassistant-stubs/components/derivative/sensor.pyi +1 -1
- homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
- homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
- homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
- homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
- homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
- homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
- homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
- homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
- homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
- homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
- homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
- homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
- homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
- homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
- homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
- homeassistant-stubs/components/downloader/__init__.pyi +1 -9
- homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
- homeassistant-stubs/components/dsmr/const.pyi +1 -0
- homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
- homeassistant-stubs/components/efergy/__init__.pyi +0 -9
- homeassistant-stubs/components/efergy/entity.pyi +11 -0
- homeassistant-stubs/components/efergy/sensor.pyi +2 -1
- homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
- homeassistant-stubs/components/elevenlabs/config_flow.pyi +8 -2
- homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
- homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
- homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
- homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
- homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/elkm1/climate.pyi +4 -1
- homeassistant-stubs/components/elkm1/entity.pyi +43 -0
- homeassistant-stubs/components/elkm1/light.pyi +2 -1
- homeassistant-stubs/components/elkm1/scene.pyi +2 -1
- homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
- homeassistant-stubs/components/elkm1/switch.pyi +19 -1
- homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
- homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
- homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
- homeassistant-stubs/components/esphome/__init__.pyi +3 -2
- homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
- homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
- homeassistant-stubs/components/esphome/const.pyi +1 -0
- homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
- homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
- homeassistant-stubs/components/esphome/manager.pyi +2 -9
- homeassistant-stubs/components/esphome/media_player.pyi +7 -1
- homeassistant-stubs/components/esphome/repairs.pyi +5 -0
- homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
- homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
- homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
- homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
- homeassistant-stubs/components/evohome/const.pyi +5 -5
- homeassistant-stubs/components/fan/__init__.pyi +2 -0
- homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
- homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
- homeassistant-stubs/components/fritz/switch.pyi +1 -1
- homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
- homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/fritzbox/button.pyi +1 -1
- homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
- homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
- homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
- homeassistant-stubs/components/fritzbox/light.pyi +2 -2
- homeassistant-stubs/components/fritzbox/sensor.pyi +5 -3
- homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
- homeassistant-stubs/components/frontend/__init__.pyi +1 -1
- homeassistant-stubs/components/frontend/storage.pyi +1 -1
- homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
- homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
- homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
- homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
- homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
- homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
- homeassistant-stubs/components/google/calendar.pyi +20 -6
- homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
- homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
- homeassistant-stubs/components/google_cloud/const.pyi +19 -0
- homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
- homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
- homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
- homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
- homeassistant-stubs/components/google_photos/api.pyi +15 -0
- homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
- homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
- homeassistant-stubs/components/google_photos/const.pyi +8 -0
- homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
- homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
- homeassistant-stubs/components/google_photos/services.pyi +15 -0
- homeassistant-stubs/components/google_photos/types.pyi +4 -0
- homeassistant-stubs/components/group/__init__.pyi +1 -3
- homeassistant-stubs/components/group/button.pyi +1 -1
- homeassistant-stubs/components/group/const.pyi +7 -3
- homeassistant-stubs/components/group/cover.pyi +1 -1
- homeassistant-stubs/components/group/entity.pyi +1 -1
- homeassistant-stubs/components/group/event.pyi +1 -1
- homeassistant-stubs/components/group/fan.pyi +1 -1
- homeassistant-stubs/components/group/lock.pyi +2 -2
- homeassistant-stubs/components/group/media_player.pyi +1 -1
- homeassistant-stubs/components/group/notify.pyi +1 -1
- homeassistant-stubs/components/group/registry.pyi +2 -1
- homeassistant-stubs/components/group/sensor.pyi +1 -1
- homeassistant-stubs/components/group/switch.pyi +1 -1
- homeassistant-stubs/components/guardian/__init__.pyi +0 -24
- homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/guardian/button.pyi +2 -1
- homeassistant-stubs/components/guardian/entity.pyi +29 -0
- homeassistant-stubs/components/guardian/sensor.pyi +2 -1
- homeassistant-stubs/components/guardian/switch.pyi +2 -1
- homeassistant-stubs/components/guardian/util.pyi +1 -1
- homeassistant-stubs/components/guardian/valve.pyi +2 -1
- homeassistant-stubs/components/history/websocket_api.pyi +1 -2
- homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
- homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
- homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
- homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
- homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
- homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
- homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
- homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
- homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
- homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
- homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
- homeassistant-stubs/components/homekit/util.pyi +1 -0
- homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
- homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
- homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
- homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/homeworks/button.pyi +2 -1
- homeassistant-stubs/components/homeworks/config_flow.pyi +6 -2
- homeassistant-stubs/components/homeworks/entity.pyi +16 -0
- homeassistant-stubs/components/homeworks/light.pyi +2 -1
- homeassistant-stubs/components/homeworks/util.pyi +1 -0
- homeassistant-stubs/components/http/__init__.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
- homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
- homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
- homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
- homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
- homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
- homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
- homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
- homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
- homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
- homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
- homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
- homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
- homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
- homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
- homeassistant-stubs/components/image/__init__.pyi +1 -1
- homeassistant-stubs/components/image/const.pyi +4 -0
- homeassistant-stubs/components/image/media_source.pyi +2 -5
- homeassistant-stubs/components/ios/__init__.pyi +1 -15
- homeassistant-stubs/components/ios/const.pyi +16 -0
- homeassistant-stubs/components/ios/notify.pyi +1 -1
- homeassistant-stubs/components/ios/sensor.pyi +2 -2
- homeassistant-stubs/components/iotty/cover.pyi +36 -0
- homeassistant-stubs/components/iotty/entity.pyi +19 -0
- homeassistant-stubs/components/iotty/switch.pyi +2 -11
- homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
- homeassistant-stubs/components/iqvia/entity.pyi +18 -0
- homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
- homeassistant-stubs/components/isy994/const.pyi +2 -1
- homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
- homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
- homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
- homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
- homeassistant-stubs/components/jvc_projector/coordinator.pyi +2 -1
- homeassistant-stubs/components/knx/__init__.pyi +4 -2
- homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/knx/button.pyi +2 -2
- homeassistant-stubs/components/knx/climate.pyi +9 -3
- homeassistant-stubs/components/knx/config_flow.pyi +1 -1
- homeassistant-stubs/components/knx/const.pyi +9 -3
- homeassistant-stubs/components/knx/cover.pyi +2 -2
- homeassistant-stubs/components/knx/date.pyi +2 -2
- homeassistant-stubs/components/knx/datetime.pyi +2 -2
- homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
- homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
- homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +10 -5
- homeassistant-stubs/components/knx/fan.pyi +2 -2
- homeassistant-stubs/components/knx/light.pyi +3 -9
- homeassistant-stubs/components/knx/notify.pyi +2 -2
- homeassistant-stubs/components/knx/number.pyi +2 -2
- homeassistant-stubs/components/knx/scene.pyi +2 -2
- homeassistant-stubs/components/knx/schema.pyi +8 -2
- homeassistant-stubs/components/knx/select.pyi +2 -2
- homeassistant-stubs/components/knx/sensor.pyi +2 -2
- homeassistant-stubs/components/knx/services.pyi +1 -1
- homeassistant-stubs/components/knx/switch.pyi +3 -9
- homeassistant-stubs/components/knx/text.pyi +2 -2
- homeassistant-stubs/components/knx/time.pyi +2 -2
- homeassistant-stubs/components/knx/weather.pyi +2 -2
- homeassistant-stubs/components/knx/websocket.pyi +1 -1
- homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
- homeassistant-stubs/components/laundrify/__init__.pyi +2 -0
- homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
- homeassistant-stubs/components/laundrify/config_flow.pyi +1 -0
- homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
- homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
- homeassistant-stubs/components/lcn/__init__.pyi +8 -30
- homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
- homeassistant-stubs/components/lcn/climate.pyi +5 -5
- homeassistant-stubs/components/lcn/config_flow.pyi +8 -3
- homeassistant-stubs/components/lcn/const.pyi +1 -0
- homeassistant-stubs/components/lcn/cover.pyi +6 -6
- homeassistant-stubs/components/lcn/entity.pyi +28 -0
- homeassistant-stubs/components/lcn/helpers.pyi +2 -2
- homeassistant-stubs/components/lcn/light.pyi +6 -6
- homeassistant-stubs/components/lcn/scene.pyi +4 -5
- homeassistant-stubs/components/lcn/sensor.pyi +6 -6
- homeassistant-stubs/components/lcn/services.pyi +16 -0
- homeassistant-stubs/components/lcn/switch.pyi +6 -6
- homeassistant-stubs/components/lcn/websocket.pyi +3 -1
- homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
- homeassistant-stubs/components/lektrico/button.pyi +27 -0
- homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
- homeassistant-stubs/components/lektrico/const.pyi +4 -0
- homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
- homeassistant-stubs/components/lektrico/entity.pyi +10 -0
- homeassistant-stubs/components/lektrico/number.pyi +29 -0
- homeassistant-stubs/components/lektrico/select.pyi +30 -0
- homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
- homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
- homeassistant-stubs/components/lidarr/entity.pyi +13 -0
- homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
- homeassistant-stubs/components/light/__init__.pyi +4 -2
- homeassistant-stubs/components/linkplay/const.pyi +1 -1
- homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
- homeassistant-stubs/components/linkplay/utils.pyi +1 -1
- homeassistant-stubs/components/local_todo/todo.pyi +1 -0
- homeassistant-stubs/components/lock/__init__.pyi +4 -2
- homeassistant-stubs/components/lock/const.pyi +11 -0
- homeassistant-stubs/components/lock/device_condition.pyi +2 -2
- homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
- homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
- homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
- homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
- homeassistant-stubs/components/madvr/__init__.pyi +1 -1
- homeassistant-stubs/components/madvr/config_flow.pyi +2 -1
- homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
- homeassistant-stubs/components/matter/button.pyi +25 -0
- homeassistant-stubs/components/matter/entity.pyi +1 -4
- homeassistant-stubs/components/matter/light.pyi +0 -1
- homeassistant-stubs/components/matter/models.pyi +5 -3
- homeassistant-stubs/components/matter/number.pyi +2 -2
- homeassistant-stubs/components/matter/sensor.pyi +9 -0
- homeassistant-stubs/components/matter/valve.pyi +33 -0
- homeassistant-stubs/components/media_player/__init__.pyi +11 -4
- homeassistant-stubs/components/media_player/const.pyi +67 -63
- homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
- homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
- homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
- homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/modbus/climate.pyi +1 -1
- homeassistant-stubs/components/modbus/cover.pyi +1 -1
- homeassistant-stubs/components/modbus/fan.pyi +1 -1
- homeassistant-stubs/components/modbus/light.pyi +1 -1
- homeassistant-stubs/components/modbus/sensor.pyi +1 -1
- homeassistant-stubs/components/modbus/switch.pyi +1 -1
- homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
- homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
- homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
- homeassistant-stubs/components/mold_indicator/sensor.pyi +60 -0
- homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
- homeassistant-stubs/components/motionmount/entity.pyi +3 -0
- homeassistant-stubs/components/motionmount/number.pyi +1 -0
- homeassistant-stubs/components/motionmount/select.pyi +5 -0
- homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
- homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/mqtt/button.pyi +1 -1
- homeassistant-stubs/components/mqtt/camera.pyi +1 -1
- homeassistant-stubs/components/mqtt/climate.pyi +1 -6
- homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
- homeassistant-stubs/components/mqtt/cover.pyi +1 -1
- homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
- homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
- homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
- homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
- homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
- homeassistant-stubs/components/mqtt/event.pyi +1 -1
- homeassistant-stubs/components/mqtt/fan.pyi +1 -1
- homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
- homeassistant-stubs/components/mqtt/image.pyi +1 -1
- homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
- homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
- homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
- homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
- homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
- homeassistant-stubs/components/mqtt/lock.pyi +1 -1
- homeassistant-stubs/components/mqtt/notify.pyi +1 -1
- homeassistant-stubs/components/mqtt/number.pyi +1 -1
- homeassistant-stubs/components/mqtt/scene.pyi +1 -1
- homeassistant-stubs/components/mqtt/select.pyi +1 -1
- homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
- homeassistant-stubs/components/mqtt/siren.pyi +1 -1
- homeassistant-stubs/components/mqtt/switch.pyi +1 -1
- homeassistant-stubs/components/mqtt/tag.pyi +1 -1
- homeassistant-stubs/components/mqtt/text.pyi +1 -1
- homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
- homeassistant-stubs/components/mqtt/update.pyi +1 -1
- homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
- homeassistant-stubs/components/mqtt/valve.pyi +3 -3
- homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
- homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
- homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
- homeassistant-stubs/components/mysensors/climate.pyi +3 -2
- homeassistant-stubs/components/mysensors/cover.pyi +3 -2
- homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
- homeassistant-stubs/components/mysensors/handler.pyi +1 -1
- homeassistant-stubs/components/mysensors/light.pyi +3 -3
- homeassistant-stubs/components/mysensors/remote.pyi +1 -1
- homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
- homeassistant-stubs/components/mysensors/switch.pyi +1 -1
- homeassistant-stubs/components/mysensors/text.pyi +2 -2
- homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
- homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
- homeassistant-stubs/components/nest/media_source.pyi +1 -2
- homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
- homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
- homeassistant-stubs/components/network/websocket.pyi +1 -1
- homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
- homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
- homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
- homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
- homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
- homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
- homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
- homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
- homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
- homeassistant-stubs/components/notify/__init__.pyi +3 -2
- homeassistant-stubs/components/notify/legacy.pyi +5 -6
- homeassistant-stubs/components/notify/repairs.pyi +1 -2
- homeassistant-stubs/components/notion/__init__.pyi +1 -23
- homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
- homeassistant-stubs/components/notion/entity.pyi +33 -0
- homeassistant-stubs/components/notion/sensor.pyi +1 -2
- homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/onewire/sensor.pyi +1 -1
- homeassistant-stubs/components/onewire/switch.pyi +1 -1
- homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
- homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
- homeassistant-stubs/components/openuv/__init__.pyi +0 -11
- homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/openuv/entity.pyi +14 -0
- homeassistant-stubs/components/openuv/sensor.pyi +1 -1
- homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
- homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
- homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
- homeassistant-stubs/components/overkiz/executor.pyi +1 -1
- homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
- homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
- homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
- homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
- homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
- homeassistant-stubs/components/pi_hole/update.pyi +2 -1
- homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
- homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
- homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
- homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/prusalink/button.pyi +1 -1
- homeassistant-stubs/components/prusalink/camera.pyi +1 -1
- homeassistant-stubs/components/prusalink/entity.pyi +9 -0
- homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
- homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
- homeassistant-stubs/components/purpleair/entity.pyi +21 -0
- homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
- homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
- homeassistant-stubs/components/radarr/__init__.pyi +2 -15
- homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/radarr/calendar.pyi +2 -1
- homeassistant-stubs/components/radarr/entity.pyi +16 -0
- homeassistant-stubs/components/radarr/sensor.pyi +2 -1
- homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
- homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/rainmachine/button.pyi +2 -2
- homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
- homeassistant-stubs/components/rainmachine/select.pyi +2 -2
- homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
- homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
- homeassistant-stubs/components/rainmachine/update.pyi +2 -2
- homeassistant-stubs/components/recorder/const.pyi +2 -2
- homeassistant-stubs/components/recorder/core.pyi +3 -7
- homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
- homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
- homeassistant-stubs/components/recorder/migration.pyi +28 -25
- homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
- homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
- homeassistant-stubs/components/recorder/models/time.pyi +0 -1
- homeassistant-stubs/components/recorder/statistics.pyi +2 -1
- homeassistant-stubs/components/recorder/tasks.pyi +4 -17
- homeassistant-stubs/components/recorder/util.pyi +6 -2
- homeassistant-stubs/components/recorder/websocket_api.pyi +6 -3
- homeassistant-stubs/components/remote/__init__.pyi +2 -0
- homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
- homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
- homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
- homeassistant-stubs/components/renault/services.pyi +4 -0
- homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
- homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
- homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
- homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
- homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
- homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
- homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
- homeassistant-stubs/components/ring/__init__.pyi +10 -9
- homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
- homeassistant-stubs/components/ring/button.pyi +2 -4
- homeassistant-stubs/components/ring/camera.pyi +2 -4
- homeassistant-stubs/components/ring/config_flow.pyi +2 -1
- homeassistant-stubs/components/ring/const.pyi +1 -1
- homeassistant-stubs/components/ring/coordinator.pyi +22 -7
- homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
- homeassistant-stubs/components/ring/entity.pyi +27 -7
- homeassistant-stubs/components/ring/event.pyi +30 -0
- homeassistant-stubs/components/ring/light.pyi +2 -4
- homeassistant-stubs/components/ring/number.pyi +33 -0
- homeassistant-stubs/components/ring/sensor.pyi +6 -8
- homeassistant-stubs/components/ring/siren.pyi +30 -14
- homeassistant-stubs/components/ring/switch.pyi +25 -17
- homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/roborock/button.pyi +1 -1
- homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
- homeassistant-stubs/components/roborock/image.pyi +1 -1
- homeassistant-stubs/components/roborock/number.pyi +3 -2
- homeassistant-stubs/components/roborock/select.pyi +2 -1
- homeassistant-stubs/components/roborock/sensor.pyi +1 -1
- homeassistant-stubs/components/roborock/switch.pyi +3 -2
- homeassistant-stubs/components/roborock/time.pyi +3 -2
- homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
- homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
- homeassistant-stubs/components/scene/__init__.pyi +2 -0
- homeassistant-stubs/components/schedule/__init__.pyi +5 -1
- homeassistant-stubs/components/schedule/const.pyi +1 -0
- homeassistant-stubs/components/script/helpers.pyi +1 -1
- homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
- homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
- homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
- homeassistant-stubs/components/sensor/recorder.pyi +10 -6
- homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
- homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
- homeassistant-stubs/components/sensoterra/const.pyi +9 -0
- homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
- homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
- homeassistant-stubs/components/shelly/cover.pyi +7 -1
- homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
- homeassistant-stubs/components/shelly/update.pyi +1 -0
- homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
- homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
- homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/simplisafe/button.pyi +2 -1
- homeassistant-stubs/components/simplisafe/const.pyi +6 -0
- homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
- homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
- homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
- homeassistant-stubs/components/siren/__init__.pyi +2 -0
- homeassistant-stubs/components/slack/__init__.pyi +1 -13
- homeassistant-stubs/components/slack/entity.pyi +15 -0
- homeassistant-stubs/components/slack/sensor.pyi +1 -1
- homeassistant-stubs/components/smlight/__init__.pyi +18 -0
- homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
- homeassistant-stubs/components/smlight/button.pyi +32 -0
- homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
- homeassistant-stubs/components/smlight/const.pyi +11 -0
- homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
- homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
- homeassistant-stubs/components/smlight/entity.pyi +10 -0
- homeassistant-stubs/components/smlight/sensor.pyi +56 -0
- homeassistant-stubs/components/smlight/switch.pyi +39 -0
- homeassistant-stubs/components/smlight/update.pyi +48 -0
- homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
- homeassistant-stubs/components/solarlog/config_flow.pyi +27 -0
- homeassistant-stubs/components/solarlog/const.pyi +4 -0
- homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
- homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
- homeassistant-stubs/components/solarlog/entity.pyi +23 -0
- homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
- homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
- homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
- homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
- homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
- homeassistant-stubs/components/squeezebox/const.pyi +29 -0
- homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
- homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
- homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
- homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
- homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
- homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
- homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
- homeassistant-stubs/components/stt/const.pyi +6 -2
- homeassistant-stubs/components/surepetcare/config_flow.pyi +2 -6
- homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
- homeassistant-stubs/components/switch/__init__.pyi +2 -0
- homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
- homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
- homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
- homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
- homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
- homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
- homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
- homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
- homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
- homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
- homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
- homeassistant-stubs/components/tailscale/entity.pyi +15 -0
- homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
- homeassistant-stubs/components/tailwind/cover.pyi +1 -1
- homeassistant-stubs/components/tami4/button.pyi +14 -1
- homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
- homeassistant-stubs/components/tautulli/entity.pyi +15 -0
- homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
- homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/tcp/common.pyi +0 -17
- homeassistant-stubs/components/tcp/entity.pyi +21 -0
- homeassistant-stubs/components/tcp/sensor.pyi +2 -1
- homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
- homeassistant-stubs/components/threshold/const.pyi +20 -5
- homeassistant-stubs/components/tibber/services.pyi +2 -2
- homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
- homeassistant-stubs/components/todo/__init__.pyi +1 -1
- homeassistant-stubs/components/todo/const.pyi +4 -0
- homeassistant-stubs/components/todo/intent.pyi +2 -2
- homeassistant-stubs/components/tolo/__init__.pyi +3 -22
- homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/tolo/button.pyi +2 -1
- homeassistant-stubs/components/tolo/climate.pyi +2 -1
- homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
- homeassistant-stubs/components/tolo/entity.pyi +11 -0
- homeassistant-stubs/components/tolo/fan.pyi +2 -1
- homeassistant-stubs/components/tolo/light.pyi +2 -1
- homeassistant-stubs/components/tolo/number.pyi +2 -1
- homeassistant-stubs/components/tolo/select.pyi +2 -1
- homeassistant-stubs/components/tolo/sensor.pyi +2 -1
- homeassistant-stubs/components/tolo/switch.pyi +2 -1
- homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/tplink/button.pyi +2 -1
- homeassistant-stubs/components/tplink/deprecate.pyi +18 -0
- homeassistant-stubs/components/tplink/entity.pyi +8 -4
- homeassistant-stubs/components/tplink/number.pyi +3 -1
- homeassistant-stubs/components/tplink/select.pyi +1 -1
- homeassistant-stubs/components/tplink/sensor.pyi +2 -1
- homeassistant-stubs/components/tplink/siren.pyi +22 -0
- homeassistant-stubs/components/tplink/switch.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
- homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
- homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
- homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
- homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
- homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
- homeassistant-stubs/components/trace/__init__.pyi +1 -2
- homeassistant-stubs/components/trace/const.pyi +7 -3
- homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
- homeassistant-stubs/components/tradfri/cover.pyi +1 -1
- homeassistant-stubs/components/tradfri/fan.pyi +1 -1
- homeassistant-stubs/components/tradfri/light.pyi +1 -1
- homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
- homeassistant-stubs/components/tradfri/switch.pyi +1 -1
- homeassistant-stubs/components/tts/__init__.pyi +2 -1
- homeassistant-stubs/components/tts/const.pyi +6 -1
- homeassistant-stubs/components/tts/helper.pyi +2 -3
- homeassistant-stubs/components/tts/legacy.pyi +0 -1
- homeassistant-stubs/components/tts/media_source.pyi +3 -3
- homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
- homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
- homeassistant-stubs/components/unifi/switch.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
- homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
- homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
- homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
- homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
- homeassistant-stubs/components/upcloud/const.pyi +1 -0
- homeassistant-stubs/components/upcloud/entity.pyi +38 -0
- homeassistant-stubs/components/upcloud/switch.pyi +4 -1
- homeassistant-stubs/components/update/__init__.pyi +1 -0
- homeassistant-stubs/components/uvc/__init__.pyi +0 -0
- homeassistant-stubs/components/uvc/camera.pyi +54 -0
- homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
- homeassistant-stubs/components/vallox/__init__.pyi +6 -9
- homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/vallox/config_flow.pyi +5 -2
- homeassistant-stubs/components/vallox/const.pyi +3 -3
- homeassistant-stubs/components/vallox/date.pyi +1 -1
- homeassistant-stubs/components/vallox/entity.pyi +12 -0
- homeassistant-stubs/components/vallox/fan.pyi +2 -2
- homeassistant-stubs/components/vallox/number.pyi +1 -1
- homeassistant-stubs/components/vallox/sensor.pyi +2 -2
- homeassistant-stubs/components/vallox/switch.pyi +1 -1
- homeassistant-stubs/components/valve/__init__.pyi +3 -1
- homeassistant-stubs/components/valve/const.pyi +9 -0
- homeassistant-stubs/components/velbus/climate.pyi +4 -1
- homeassistant-stubs/components/wallbox/const.pyi +4 -0
- homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
- homeassistant-stubs/components/wallbox/number.pyi +1 -1
- homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
- homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
- homeassistant-stubs/components/weather/__init__.pyi +1 -1
- homeassistant-stubs/components/weather/const.pyi +5 -0
- homeassistant-stubs/components/weather/intent.pyi +1 -3
- homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
- homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
- homeassistant-stubs/components/withings/config_flow.pyi +1 -1
- homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
- homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
- homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
- homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
- homeassistant-stubs/components/youtube/const.pyi +1 -0
- homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
- homeassistant-stubs/components/youtube/sensor.pyi +1 -1
- homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
- homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
- homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
- homeassistant-stubs/components/zwave_js/const.pyi +1 -0
- homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
- homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
- homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
- homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
- homeassistant-stubs/components/zwave_js/entity.pyi +1 -2
- homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
- homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
- homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
- homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +1 -1
- homeassistant-stubs/config_entries.pyi +9 -4
- homeassistant-stubs/const.pyi +19 -8
- homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
- homeassistant-stubs/helpers/condition.pyi +2 -0
- homeassistant-stubs/helpers/config_validation.pyi +5 -1
- homeassistant-stubs/helpers/discovery.pyi +1 -1
- homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
- homeassistant-stubs/helpers/frame.pyi +1 -1
- homeassistant-stubs/helpers/llm.pyi +5 -5
- homeassistant-stubs/helpers/script.pyi +1 -1
- homeassistant-stubs/helpers/state.pyi +2 -1
- homeassistant-stubs/helpers/template.pyi +5 -1
- homeassistant-stubs/util/aiohttp.pyi +10 -0
- homeassistant-stubs/util/package.pyi +3 -0
- homeassistant-stubs/util/ssl.pyi +8 -4
- homeassistant-stubs/util/unit_conversion.pyi +2 -0
- homeassistant-stubs/util/unit_system.pyi +1 -0
- {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/METADATA +14 -16
- {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/RECORD +904 -779
- {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/WHEEL +1 -1
- homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
- homeassistant-stubs/components/notion/model.pyi +0 -7
- homeassistant-stubs/components/overkiz/climate.pyi +0 -10
- homeassistant-stubs/components/overkiz/cover.pyi +0 -11
- homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
- homeassistant-stubs/components/rainmachine/model.pyi +0 -7
- homeassistant-stubs/components/recorder/history/common.pyi +0 -4
- homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
- /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
- /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
- /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
- /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
- {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info/licenses}/LICENSE +0 -0
@@ -1,13 +1,13 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from .discovery import ZwaveDiscoveryInfo as ZwaveDiscoveryInfo
|
3
|
-
from .helpers import get_unique_id as get_unique_id
|
3
|
+
from .helpers import get_unique_id as get_unique_id, get_valueless_base_unique_id as get_valueless_base_unique_id
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from dataclasses import dataclass
|
6
|
-
from homeassistant.const import STATE_UNAVAILABLE as STATE_UNAVAILABLE
|
6
|
+
from homeassistant.const import Platform as Platform, STATE_UNAVAILABLE as STATE_UNAVAILABLE
|
7
7
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
8
|
-
from homeassistant.helpers
|
9
|
-
from homeassistant.helpers.entity_registry import EntityRegistry as EntityRegistry, RegistryEntry as RegistryEntry, async_entries_for_device as async_entries_for_device
|
8
|
+
from homeassistant.helpers import device_registry as dr, entity_registry as er
|
10
9
|
from zwave_js_server.model.driver import Driver as Driver
|
10
|
+
from zwave_js_server.model.node import Node as Node
|
11
11
|
from zwave_js_server.model.value import Value as ZwaveValue
|
12
12
|
|
13
13
|
_LOGGER: Incomplete
|
@@ -25,7 +25,8 @@ class ValueID:
|
|
25
25
|
def is_same_value_different_endpoints(self, other: ValueID) -> bool: ...
|
26
26
|
def __init__(self, command_class, endpoint, property_, property_key=...) -> None: ...
|
27
27
|
|
28
|
-
def async_migrate_old_entity(hass: HomeAssistant, ent_reg: EntityRegistry, registered_unique_ids: set[str], platform:
|
29
|
-
def async_migrate_unique_id(ent_reg: EntityRegistry, platform:
|
30
|
-
def async_migrate_discovered_value(hass: HomeAssistant, ent_reg: EntityRegistry, registered_unique_ids: set[str], device: DeviceEntry, driver: Driver, disc_info: ZwaveDiscoveryInfo) -> None: ...
|
28
|
+
def async_migrate_old_entity(hass: HomeAssistant, ent_reg: er.EntityRegistry, registered_unique_ids: set[str], platform: Platform, device: dr.DeviceEntry, unique_id: str) -> None: ...
|
29
|
+
def async_migrate_unique_id(ent_reg: er.EntityRegistry, platform: Platform, old_unique_id: str, new_unique_id: str) -> None: ...
|
30
|
+
def async_migrate_discovered_value(hass: HomeAssistant, ent_reg: er.EntityRegistry, registered_unique_ids: set[str], device: dr.DeviceEntry, driver: Driver, disc_info: ZwaveDiscoveryInfo) -> None: ...
|
31
|
+
def async_migrate_statistics_sensors(hass: HomeAssistant, driver: Driver, node: Node, key_map: dict[str, str]) -> None: ...
|
31
32
|
def get_old_value_ids(value: ZwaveValue) -> list[str]: ...
|
@@ -1,8 +1,10 @@
|
|
1
|
+
from .binary_sensor import is_valid_notification_binary_sensor as is_valid_notification_binary_sensor
|
1
2
|
from .const import ATTR_METER_TYPE as ATTR_METER_TYPE, ATTR_METER_TYPE_NAME as ATTR_METER_TYPE_NAME, ATTR_VALUE as ATTR_VALUE, DATA_CLIENT as DATA_CLIENT, DOMAIN as DOMAIN, ENTITY_DESC_KEY_BATTERY as ENTITY_DESC_KEY_BATTERY, ENTITY_DESC_KEY_CO as ENTITY_DESC_KEY_CO, ENTITY_DESC_KEY_CO2 as ENTITY_DESC_KEY_CO2, ENTITY_DESC_KEY_CURRENT as ENTITY_DESC_KEY_CURRENT, ENTITY_DESC_KEY_ENERGY_MEASUREMENT as ENTITY_DESC_KEY_ENERGY_MEASUREMENT, ENTITY_DESC_KEY_ENERGY_PRODUCTION_POWER as ENTITY_DESC_KEY_ENERGY_PRODUCTION_POWER, ENTITY_DESC_KEY_ENERGY_PRODUCTION_TIME as ENTITY_DESC_KEY_ENERGY_PRODUCTION_TIME, ENTITY_DESC_KEY_ENERGY_PRODUCTION_TODAY as ENTITY_DESC_KEY_ENERGY_PRODUCTION_TODAY, ENTITY_DESC_KEY_ENERGY_PRODUCTION_TOTAL as ENTITY_DESC_KEY_ENERGY_PRODUCTION_TOTAL, ENTITY_DESC_KEY_ENERGY_TOTAL_INCREASING as ENTITY_DESC_KEY_ENERGY_TOTAL_INCREASING, ENTITY_DESC_KEY_HUMIDITY as ENTITY_DESC_KEY_HUMIDITY, ENTITY_DESC_KEY_ILLUMINANCE as ENTITY_DESC_KEY_ILLUMINANCE, ENTITY_DESC_KEY_MEASUREMENT as ENTITY_DESC_KEY_MEASUREMENT, ENTITY_DESC_KEY_POWER as ENTITY_DESC_KEY_POWER, ENTITY_DESC_KEY_POWER_FACTOR as ENTITY_DESC_KEY_POWER_FACTOR, ENTITY_DESC_KEY_PRESSURE as ENTITY_DESC_KEY_PRESSURE, ENTITY_DESC_KEY_SIGNAL_STRENGTH as ENTITY_DESC_KEY_SIGNAL_STRENGTH, ENTITY_DESC_KEY_TARGET_TEMPERATURE as ENTITY_DESC_KEY_TARGET_TEMPERATURE, ENTITY_DESC_KEY_TEMPERATURE as ENTITY_DESC_KEY_TEMPERATURE, ENTITY_DESC_KEY_TOTAL_INCREASING as ENTITY_DESC_KEY_TOTAL_INCREASING, ENTITY_DESC_KEY_UV_INDEX as ENTITY_DESC_KEY_UV_INDEX, ENTITY_DESC_KEY_VOLTAGE as ENTITY_DESC_KEY_VOLTAGE, LOGGER as LOGGER, SERVICE_RESET_METER as SERVICE_RESET_METER
|
2
3
|
from .discovery import ZwaveDiscoveryInfo as ZwaveDiscoveryInfo
|
3
4
|
from .discovery_data_template import NumericSensorDataTemplate as NumericSensorDataTemplate, NumericSensorDataTemplateData as NumericSensorDataTemplateData
|
4
5
|
from .entity import ZWaveBaseEntity as ZWaveBaseEntity
|
5
6
|
from .helpers import get_device_info as get_device_info, get_valueless_base_unique_id as get_valueless_base_unique_id
|
7
|
+
from .migrate import async_migrate_statistics_sensors as async_migrate_statistics_sensors
|
6
8
|
from _typeshed import Incomplete
|
7
9
|
from collections.abc import Callable as Callable, Mapping
|
8
10
|
from dataclasses import dataclass
|
@@ -17,25 +19,27 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
|
|
17
19
|
from homeassistant.helpers.typing import StateType as StateType, UNDEFINED as UNDEFINED
|
18
20
|
from typing import Any
|
19
21
|
from zwave_js_server.model.controller import Controller
|
20
|
-
from zwave_js_server.model.controller.statistics import
|
22
|
+
from zwave_js_server.model.controller.statistics import ControllerStatistics as ControllerStatistics
|
21
23
|
from zwave_js_server.model.driver import Driver as Driver
|
22
24
|
from zwave_js_server.model.node import Node as ZwaveNode
|
23
|
-
from zwave_js_server.model.node.statistics import
|
25
|
+
from zwave_js_server.model.node.statistics import NodeStatistics as NodeStatistics
|
24
26
|
|
25
27
|
PARALLEL_UPDATES: int
|
26
28
|
ENTITY_DESCRIPTION_KEY_DEVICE_CLASS_MAP: dict[tuple[str, str], SensorEntityDescription]
|
27
29
|
ENTITY_DESCRIPTION_KEY_MAP: Incomplete
|
28
30
|
|
29
|
-
def
|
31
|
+
def convert_nested_attr(statistics: ControllerStatistics | NodeStatistics, key: str) -> Any: ...
|
30
32
|
|
31
33
|
@dataclass(frozen=True, kw_only=True)
|
32
34
|
class ZWaveJSStatisticsSensorEntityDescription(SensorEntityDescription):
|
33
|
-
convert: Callable[[
|
35
|
+
convert: Callable[[ControllerStatistics | NodeStatistics, str], Any] = ...
|
34
36
|
entity_registry_enabled_default: bool = ...
|
35
37
|
def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., convert=...) -> None: ...
|
36
38
|
|
37
39
|
ENTITY_DESCRIPTION_CONTROLLER_STATISTICS_LIST: Incomplete
|
40
|
+
CONTROLLER_STATISTICS_KEY_MAP: dict[str, str]
|
38
41
|
ENTITY_DESCRIPTION_NODE_STATISTICS_LIST: Incomplete
|
42
|
+
NODE_STATISTICS_KEY_MAP: dict[str, str]
|
39
43
|
|
40
44
|
def get_entity_description(data: NumericSensorDataTemplateData) -> SensorEntityDescription: ...
|
41
45
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -1,5 +1,5 @@
|
|
1
1
|
from ..config_validation import VALUE_SCHEMA as VALUE_SCHEMA
|
2
|
-
from ..const import ATTR_COMMAND_CLASS as ATTR_COMMAND_CLASS, ATTR_COMMAND_CLASS_NAME as ATTR_COMMAND_CLASS_NAME, ATTR_CURRENT_VALUE as ATTR_CURRENT_VALUE, ATTR_CURRENT_VALUE_RAW as ATTR_CURRENT_VALUE_RAW, ATTR_ENDPOINT as ATTR_ENDPOINT, ATTR_NODE_ID as ATTR_NODE_ID, ATTR_PREVIOUS_VALUE as ATTR_PREVIOUS_VALUE, ATTR_PREVIOUS_VALUE_RAW as ATTR_PREVIOUS_VALUE_RAW, ATTR_PROPERTY as ATTR_PROPERTY, ATTR_PROPERTY_KEY as ATTR_PROPERTY_KEY, ATTR_PROPERTY_KEY_NAME as ATTR_PROPERTY_KEY_NAME, ATTR_PROPERTY_NAME as ATTR_PROPERTY_NAME, DOMAIN as DOMAIN
|
2
|
+
from ..const import ATTR_COMMAND_CLASS as ATTR_COMMAND_CLASS, ATTR_COMMAND_CLASS_NAME as ATTR_COMMAND_CLASS_NAME, ATTR_CURRENT_VALUE as ATTR_CURRENT_VALUE, ATTR_CURRENT_VALUE_RAW as ATTR_CURRENT_VALUE_RAW, ATTR_ENDPOINT as ATTR_ENDPOINT, ATTR_NODE_ID as ATTR_NODE_ID, ATTR_PREVIOUS_VALUE as ATTR_PREVIOUS_VALUE, ATTR_PREVIOUS_VALUE_RAW as ATTR_PREVIOUS_VALUE_RAW, ATTR_PROPERTY as ATTR_PROPERTY, ATTR_PROPERTY_KEY as ATTR_PROPERTY_KEY, ATTR_PROPERTY_KEY_NAME as ATTR_PROPERTY_KEY_NAME, ATTR_PROPERTY_NAME as ATTR_PROPERTY_NAME, DOMAIN as DOMAIN, EVENT_VALUE_UPDATED as EVENT_VALUE_UPDATED
|
3
3
|
from ..helpers import async_get_nodes_from_targets as async_get_nodes_from_targets, get_device_id as get_device_id
|
4
4
|
from .trigger_helpers import async_bypass_dynamic_config_validation as async_bypass_dynamic_config_validation
|
5
5
|
from _typeshed import Incomplete
|
@@ -13,6 +13,7 @@ from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS,
|
|
13
13
|
from .exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
14
14
|
from .helpers import device_registry as device_registry, entity_registry as entity_registry, storage as storage
|
15
15
|
from .helpers.debounce import Debouncer as Debouncer
|
16
|
+
from .helpers.discovery_flow import DiscoveryKey as DiscoveryKey
|
16
17
|
from .helpers.dispatcher import SignalType as SignalType, async_dispatcher_send_internal as async_dispatcher_send_internal
|
17
18
|
from .helpers.event import RANDOM_MICROSECOND_MAX as RANDOM_MICROSECOND_MAX, RANDOM_MICROSECOND_MIN as RANDOM_MICROSECOND_MIN, async_call_later as async_call_later
|
18
19
|
from .helpers.frame import report as report
|
@@ -52,7 +53,6 @@ SOURCE_USB: str
|
|
52
53
|
SOURCE_USER: str
|
53
54
|
SOURCE_ZEROCONF: str
|
54
55
|
SOURCE_IGNORE: str
|
55
|
-
SOURCE_UNIGNORE: str
|
56
56
|
SOURCE_REAUTH: str
|
57
57
|
SOURCE_RECONFIGURE: str
|
58
58
|
HANDLERS: Registry[str, type[ConfigFlow]]
|
@@ -82,6 +82,9 @@ DISCOVERY_SOURCES: Incomplete
|
|
82
82
|
RECONFIGURE_NOTIFICATION_ID: str
|
83
83
|
EVENT_FLOW_DISCOVERED: str
|
84
84
|
SIGNAL_CONFIG_ENTRY_CHANGED: Incomplete
|
85
|
+
|
86
|
+
def signal_discovered_config_entry_removed(discovery_domain: str) -> SignalType[ConfigEntry]: ...
|
87
|
+
|
85
88
|
NO_RESET_TRIES_STATES: Incomplete
|
86
89
|
|
87
90
|
class ConfigEntryChange(StrEnum):
|
@@ -113,6 +116,8 @@ class ConfigFlowResult(FlowResult, total=False):
|
|
113
116
|
options: Mapping[str, Any]
|
114
117
|
version: int
|
115
118
|
|
119
|
+
def _validate_item(*, disabled_by: ConfigEntryDisabler | Any | None = None) -> None: ...
|
120
|
+
|
116
121
|
class ConfigEntry(Generic[_DataT]):
|
117
122
|
entry_id: str
|
118
123
|
domain: str
|
@@ -147,7 +152,8 @@ class ConfigEntry(Generic[_DataT]):
|
|
147
152
|
_tries: int
|
148
153
|
created_at: datetime
|
149
154
|
modified_at: datetime
|
150
|
-
|
155
|
+
discovery_keys: MappingProxyType[str, tuple[DiscoveryKey, ...]]
|
156
|
+
def __init__(self, *, created_at: datetime | None = None, data: Mapping[str, Any], disabled_by: ConfigEntryDisabler | None = None, discovery_keys: MappingProxyType[str, tuple[DiscoveryKey, ...]], domain: str, entry_id: str | None = None, minor_version: int, modified_at: datetime | None = None, options: Mapping[str, Any] | None, pref_disable_new_entities: bool | None = None, pref_disable_polling: bool | None = None, source: str, state: ConfigEntryState = ..., title: str, unique_id: str | None, version: int) -> None: ...
|
151
157
|
def __repr__(self) -> str: ...
|
152
158
|
def __setattr__(self, key: str, value: Any) -> None: ...
|
153
159
|
@property
|
@@ -245,7 +251,7 @@ class ConfigEntries:
|
|
245
251
|
def async_schedule_reload(self, entry_id: str) -> None: ...
|
246
252
|
async def async_reload(self, entry_id: str) -> bool: ...
|
247
253
|
async def async_set_disabled_by(self, entry_id: str, disabled_by: ConfigEntryDisabler | None) -> bool: ...
|
248
|
-
def async_update_entry(self, entry: ConfigEntry, *, data: Mapping[str, Any] | UndefinedType = ..., minor_version: int | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., pref_disable_new_entities: bool | UndefinedType = ..., pref_disable_polling: bool | UndefinedType = ..., title: str | UndefinedType = ..., unique_id: str | None | UndefinedType = ..., version: int | UndefinedType = ...) -> bool: ...
|
254
|
+
def async_update_entry(self, entry: ConfigEntry, *, data: Mapping[str, Any] | UndefinedType = ..., discovery_keys: MappingProxyType[str, tuple[DiscoveryKey, ...]] | UndefinedType = ..., minor_version: int | UndefinedType = ..., options: Mapping[str, Any] | UndefinedType = ..., pref_disable_new_entities: bool | UndefinedType = ..., pref_disable_polling: bool | UndefinedType = ..., title: str | UndefinedType = ..., unique_id: str | None | UndefinedType = ..., version: int | UndefinedType = ...) -> bool: ...
|
249
255
|
def _async_dispatch(self, change_type: ConfigEntryChange, entry: ConfigEntry) -> None: ...
|
250
256
|
async def async_forward_entry_setups(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
|
251
257
|
async def _async_forward_entry_setups_locked(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
|
@@ -278,7 +284,6 @@ class ConfigFlow(ConfigEntryBaseFlow):
|
|
278
284
|
def _async_current_ids(self, include_ignore: bool = True) -> set[str | None]: ...
|
279
285
|
def _async_in_progress(self, include_uninitialized: bool = False, match_context: dict[str, Any] | None = None) -> list[ConfigFlowResult]: ...
|
280
286
|
async def async_step_ignore(self, user_input: dict[str, Any]) -> ConfigFlowResult: ...
|
281
|
-
async def async_step_unignore(self, user_input: dict[str, Any]) -> ConfigFlowResult: ...
|
282
287
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
283
288
|
async def _async_handle_discovery_without_unique_id(self) -> None: ...
|
284
289
|
async def _async_step_discovery_without_unique_id(self) -> ConfigFlowResult: ...
|
homeassistant-stubs/const.pyi
CHANGED
@@ -22,6 +22,7 @@ PLATFORM_FORMAT: Final[str]
|
|
22
22
|
class Platform(StrEnum):
|
23
23
|
AIR_QUALITY = 'air_quality'
|
24
24
|
ALARM_CONTROL_PANEL = 'alarm_control_panel'
|
25
|
+
ASSIST_SATELLITE = 'assist_satellite'
|
25
26
|
BINARY_SENSOR = 'binary_sensor'
|
26
27
|
BUTTON = 'button'
|
27
28
|
CALENDAR = 'calendar'
|
@@ -55,9 +56,9 @@ class Platform(StrEnum):
|
|
55
56
|
TIME = 'time'
|
56
57
|
TODO = 'todo'
|
57
58
|
TTS = 'tts'
|
59
|
+
UPDATE = 'update'
|
58
60
|
VACUUM = 'vacuum'
|
59
61
|
VALVE = 'valve'
|
60
|
-
UPDATE = 'update'
|
61
62
|
WAKE_WORD = 'wake_word'
|
62
63
|
WATER_HEATER = 'water_heater'
|
63
64
|
WEATHER = 'weather'
|
@@ -247,6 +248,8 @@ CONF_THEN: Final[str]
|
|
247
248
|
CONF_TIMEOUT: Final[str]
|
248
249
|
CONF_TIME_ZONE: Final[str]
|
249
250
|
CONF_TOKEN: Final[str]
|
251
|
+
CONF_TRIGGER: Final[str]
|
252
|
+
CONF_TRIGGERS: Final[str]
|
250
253
|
CONF_TRIGGER_TIME: Final[str]
|
251
254
|
CONF_TTL: Final[str]
|
252
255
|
CONF_TYPE: Final[str]
|
@@ -343,14 +346,14 @@ STATE_ALARM_PENDING: Final[str]
|
|
343
346
|
STATE_ALARM_ARMING: Final[str]
|
344
347
|
STATE_ALARM_DISARMING: Final[str]
|
345
348
|
STATE_ALARM_TRIGGERED: Final[str]
|
346
|
-
STATE_LOCKED: Final[str]
|
347
|
-
STATE_UNLOCKED: Final[str]
|
348
|
-
STATE_LOCKING: Final[str]
|
349
|
-
STATE_UNLOCKING: Final[str]
|
350
|
-
STATE_JAMMED: Final[str]
|
351
349
|
STATE_UNAVAILABLE: Final[str]
|
352
350
|
STATE_OK: Final[str]
|
353
351
|
STATE_PROBLEM: Final[str]
|
352
|
+
_DEPRECATED_STATE_LOCKED: Final[Incomplete]
|
353
|
+
_DEPRECATED_STATE_UNLOCKED: Final[Incomplete]
|
354
|
+
_DEPRECATED_STATE_LOCKING: Final[Incomplete]
|
355
|
+
_DEPRECATED_STATE_UNLOCKING: Final[Incomplete]
|
356
|
+
_DEPRECATED_STATE_JAMMED: Final[Incomplete]
|
354
357
|
ATTR_ATTRIBUTION: Final[str]
|
355
358
|
ATTR_CREDENTIALS: Final[str]
|
356
359
|
ATTR_NOW: Final[str]
|
@@ -433,11 +436,17 @@ class UnitOfReactivePower(StrEnum):
|
|
433
436
|
_DEPRECATED_POWER_VOLT_AMPERE_REACTIVE: Final[Incomplete]
|
434
437
|
|
435
438
|
class UnitOfEnergy(StrEnum):
|
439
|
+
JOULE = 'J'
|
440
|
+
KILO_JOULE = 'kJ'
|
441
|
+
MEGA_JOULE = 'MJ'
|
436
442
|
GIGA_JOULE = 'GJ'
|
443
|
+
WATT_HOUR = 'Wh'
|
437
444
|
KILO_WATT_HOUR = 'kWh'
|
438
|
-
MEGA_JOULE = 'MJ'
|
439
445
|
MEGA_WATT_HOUR = 'MWh'
|
440
|
-
|
446
|
+
CALORIE = 'cal'
|
447
|
+
KILO_CALORIE = 'kcal'
|
448
|
+
MEGA_CALORIE = 'Mcal'
|
449
|
+
GIGA_CALORIE = 'Gcal'
|
441
450
|
|
442
451
|
_DEPRECATED_ENERGY_KILO_WATT_HOUR: Final[Incomplete]
|
443
452
|
_DEPRECATED_ENERGY_MEGA_WATT_HOUR: Final[Incomplete]
|
@@ -634,10 +643,12 @@ CONCENTRATION_PARTS_PER_BILLION: Final[str]
|
|
634
643
|
class UnitOfSpeed(StrEnum):
|
635
644
|
BEAUFORT = 'Beaufort'
|
636
645
|
FEET_PER_SECOND = 'ft/s'
|
646
|
+
INCHES_PER_SECOND = 'in/s'
|
637
647
|
METERS_PER_SECOND = 'm/s'
|
638
648
|
KILOMETERS_PER_HOUR = 'km/h'
|
639
649
|
KNOTS = 'kn'
|
640
650
|
MILES_PER_HOUR = 'mph'
|
651
|
+
MILLIMETERS_PER_SECOND = 'mm/s'
|
641
652
|
|
642
653
|
_DEPRECATED_SPEED_FEET_PER_SECOND: Final[Incomplete]
|
643
654
|
_DEPRECATED_SPEED_METERS_PER_SECOND: Final[Incomplete]
|
@@ -10,12 +10,13 @@ from homeassistant import config_entries as config_entries
|
|
10
10
|
from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, __version__ as __version__
|
11
11
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
12
12
|
from homeassistant.loader import bind_hass as bind_hass
|
13
|
+
from homeassistant.util import ssl as ssl_util
|
13
14
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
14
15
|
from homeassistant.util.json import json_loads as json_loads
|
15
16
|
from typing import Any
|
16
17
|
|
17
|
-
DATA_CONNECTOR: HassKey[dict[tuple[bool, int], aiohttp.BaseConnector]]
|
18
|
-
DATA_CLIENTSESSION: HassKey[dict[tuple[bool, int], aiohttp.ClientSession]]
|
18
|
+
DATA_CONNECTOR: HassKey[dict[tuple[bool, int, str], aiohttp.BaseConnector]]
|
19
|
+
DATA_CLIENTSESSION: HassKey[dict[tuple[bool, int, str], aiohttp.ClientSession]]
|
19
20
|
SERVER_SOFTWARE: Incomplete
|
20
21
|
ENABLE_CLEANUP_CLOSED: Incomplete
|
21
22
|
WARN_CLOSE_MSG: str
|
@@ -25,16 +26,16 @@ MAXIMUM_CONNECTIONS_PER_HOST: int
|
|
25
26
|
class HassClientResponse(aiohttp.ClientResponse):
|
26
27
|
async def json(self, *args: Any, loads: JSONDecoder = ..., **kwargs: Any) -> Any: ...
|
27
28
|
|
28
|
-
def async_get_clientsession(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ...) -> aiohttp.ClientSession: ...
|
29
|
-
def async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup: bool = True, family: socket.AddressFamily = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
|
30
|
-
def _async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup_method: Callable[[HomeAssistant, aiohttp.ClientSession], None] | None = None, family: socket.AddressFamily = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
|
29
|
+
def async_get_clientsession(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> aiohttp.ClientSession: ...
|
30
|
+
def async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
|
31
|
+
def _async_create_clientsession(hass: HomeAssistant, verify_ssl: bool = True, auto_cleanup_method: Callable[[HomeAssistant, aiohttp.ClientSession], None] | None = None, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ..., **kwargs: Any) -> aiohttp.ClientSession: ...
|
31
32
|
async def async_aiohttp_proxy_web(hass: HomeAssistant, request: web.BaseRequest, web_coro: Awaitable[aiohttp.ClientResponse], buffer_size: int = 102400, timeout: int = 10) -> web.StreamResponse | None: ...
|
32
33
|
async def async_aiohttp_proxy_stream(hass: HomeAssistant, request: web.BaseRequest, stream: aiohttp.StreamReader, content_type: str | None, buffer_size: int = 102400, timeout: int = 10) -> web.StreamResponse: ...
|
33
34
|
def _async_register_clientsession_shutdown(hass: HomeAssistant, clientsession: aiohttp.ClientSession) -> None: ...
|
34
35
|
def _async_register_default_clientsession_shutdown(hass: HomeAssistant, clientsession: aiohttp.ClientSession) -> None: ...
|
35
|
-
def _make_key(verify_ssl: bool = True, family: socket.AddressFamily = ...) -> tuple[bool, socket.AddressFamily]: ...
|
36
|
+
def _make_key(verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> tuple[bool, socket.AddressFamily, ssl_util.SSLCipherList]: ...
|
36
37
|
|
37
38
|
class HomeAssistantTCPConnector(aiohttp.TCPConnector):
|
38
39
|
_cleanup_closed_period: float
|
39
40
|
|
40
|
-
def _async_get_connector(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ...) -> aiohttp.BaseConnector: ...
|
41
|
+
def _async_get_connector(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> aiohttp.BaseConnector: ...
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import logging
|
1
2
|
import voluptuous as vol
|
2
3
|
from .sun import get_astral_event_date as get_astral_event_date
|
3
4
|
from .template import Template as Template, render_complex as render_complex
|
@@ -55,5 +56,6 @@ def numeric_state_validate_config(hass: HomeAssistant, config: ConfigType) -> Co
|
|
55
56
|
def state_validate_config(hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
|
56
57
|
async def async_validate_condition_config(hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
|
57
58
|
async def async_validate_conditions_config(hass: HomeAssistant, conditions: list[ConfigType]) -> list[ConfigType | Template]: ...
|
59
|
+
async def async_conditions_from_config(hass: HomeAssistant, condition_configs: list[ConfigType], logger: logging.Logger, name: str) -> Callable[[TemplateVarsType], bool]: ...
|
58
60
|
def async_extract_entities(config: ConfigType | Template) -> set[str]: ...
|
59
61
|
def async_extract_devices(config: ConfigType | Template) -> set[str]: ...
|
@@ -9,7 +9,7 @@ from collections.abc import Callable as Callable, Hashable
|
|
9
9
|
from contextvars import ContextVar
|
10
10
|
from datetime import date as date_sys, datetime as datetime_sys, time as time_sys, timedelta
|
11
11
|
from enum import Enum, StrEnum
|
12
|
-
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
|
12
|
+
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_TRIGGER as CONF_TRIGGER, CONF_TRIGGERS as CONF_TRIGGERS, 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
|
13
13
|
from homeassistant.core import HomeAssistant as HomeAssistant, 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
|
14
14
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, TemplateError as TemplateError
|
15
15
|
from homeassistant.generated import currencies as currencies
|
@@ -204,9 +204,13 @@ CONDITION_SHORTHAND_SCHEMA: Incomplete
|
|
204
204
|
CONDITION_SCHEMA: vol.Schema
|
205
205
|
CONDITIONS_SCHEMA: Incomplete
|
206
206
|
CONDITION_ACTION_SCHEMA: vol.Schema
|
207
|
+
|
208
|
+
def _trigger_pre_validator(value: Any | None) -> Any: ...
|
209
|
+
|
207
210
|
TRIGGER_BASE_SCHEMA: Incomplete
|
208
211
|
_base_trigger_validator_schema: Incomplete
|
209
212
|
|
213
|
+
def _base_trigger_list_flatten(triggers: list[Any]) -> list[Any]: ...
|
210
214
|
def _base_trigger_validator(value: Any) -> Any: ...
|
211
215
|
|
212
216
|
TRIGGER_SCHEMA: Incomplete
|
@@ -1,10 +1,10 @@
|
|
1
|
-
from ..util.signal_type import SignalTypeFormat as SignalTypeFormat
|
2
1
|
from .dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send_internal as async_dispatcher_send_internal
|
3
2
|
from .typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
|
4
3
|
from collections.abc import Callable as Callable, Coroutine
|
5
4
|
from homeassistant import core as core, setup as setup
|
6
5
|
from homeassistant.const import Platform as Platform
|
7
6
|
from homeassistant.loader import bind_hass as bind_hass
|
7
|
+
from homeassistant.util.signal_type import SignalTypeFormat as SignalTypeFormat
|
8
8
|
from typing import Any, TypedDict
|
9
9
|
|
10
10
|
SIGNAL_PLATFORM_DISCOVERED: SignalTypeFormat[DiscoveryDict]
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import dataclasses
|
1
2
|
from _typeshed import Incomplete
|
2
3
|
from collections.abc import Coroutine
|
3
4
|
from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult
|
@@ -6,12 +7,21 @@ from homeassistant.core import CoreState as CoreState, Event as Event, HomeAssis
|
|
6
7
|
from homeassistant.loader import bind_hass as bind_hass
|
7
8
|
from homeassistant.util.async_ import gather_with_limited_concurrency as gather_with_limited_concurrency
|
8
9
|
from homeassistant.util.hass_dict import HassKey as HassKey
|
9
|
-
from typing import Any, NamedTuple
|
10
|
+
from typing import Any, NamedTuple, Self
|
10
11
|
|
11
12
|
FLOW_INIT_LIMIT: int
|
12
13
|
DISCOVERY_FLOW_DISPATCHER: HassKey[FlowDispatcher]
|
13
14
|
|
14
|
-
|
15
|
+
@dataclasses.dataclass(kw_only=True, slots=True)
|
16
|
+
class DiscoveryKey:
|
17
|
+
domain: str
|
18
|
+
key: str | tuple[str, ...]
|
19
|
+
version: int
|
20
|
+
@classmethod
|
21
|
+
def from_json_dict(cls, json_dict: dict[str, Any]) -> Self: ...
|
22
|
+
def __init__(self, *, domain, key, version) -> None: ...
|
23
|
+
|
24
|
+
def async_create_flow(hass: HomeAssistant, domain: str, context: dict[str, Any], data: Any, *, discovery_key: DiscoveryKey | None = None) -> None: ...
|
15
25
|
def _async_init_flow(hass: HomeAssistant, domain: str, context: dict[str, Any], data: Any) -> Coroutine[None, None, ConfigFlowResult] | None: ...
|
16
26
|
|
17
27
|
class PendingFlowKey(NamedTuple):
|
@@ -32,7 +32,7 @@ def get_integration_frame(exclude_integrations: set | None = None) -> Integratio
|
|
32
32
|
|
33
33
|
class MissingIntegrationFrame(HomeAssistantError): ...
|
34
34
|
|
35
|
-
def report(what: str, exclude_integrations: set | None = None, error_if_core: bool = True,
|
35
|
+
def report(what: str, *, exclude_integrations: set[str] | None = None, error_if_core: bool = True, error_if_integration: bool = False, level: int = ..., log_custom_component_only: bool = False) -> None: ...
|
36
36
|
def _report_integration(what: str, integration_frame: IntegrationFrame, level: int = ..., error: bool = False) -> None: ...
|
37
37
|
def warn_use(func: _CallableT, what: str) -> _CallableT: ...
|
38
38
|
def report_non_thread_safe_operation(what: str) -> None: ...
|
@@ -6,13 +6,13 @@ from _typeshed import Incomplete
|
|
6
6
|
from abc import ABC, abstractmethod
|
7
7
|
from collections.abc import Callable as Callable
|
8
8
|
from dataclasses import dataclass
|
9
|
-
from homeassistant.components.climate
|
10
|
-
from homeassistant.components.conversation
|
11
|
-
from homeassistant.components.cover
|
12
|
-
from homeassistant.components.homeassistant
|
9
|
+
from homeassistant.components.climate import INTENT_GET_TEMPERATURE as INTENT_GET_TEMPERATURE
|
10
|
+
from homeassistant.components.conversation import ConversationTraceEventType as ConversationTraceEventType, async_conversation_trace_append as async_conversation_trace_append
|
11
|
+
from homeassistant.components.cover import INTENT_CLOSE_COVER as INTENT_CLOSE_COVER, INTENT_OPEN_COVER as INTENT_OPEN_COVER
|
12
|
+
from homeassistant.components.homeassistant import async_should_expose as async_should_expose
|
13
13
|
from homeassistant.components.intent import async_device_supports_timers as async_device_supports_timers
|
14
14
|
from homeassistant.components.script import ATTR_VARIABLES as ATTR_VARIABLES
|
15
|
-
from homeassistant.components.weather
|
15
|
+
from homeassistant.components.weather import INTENT_GET_WEATHER as INTENT_GET_WEATHER
|
16
16
|
from homeassistant.const import ATTR_DOMAIN as ATTR_DOMAIN, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SERVICE as ATTR_SERVICE, EVENT_HOMEASSISTANT_CLOSE as EVENT_HOMEASSISTANT_CLOSE, EVENT_SERVICE_REMOVED as EVENT_SERVICE_REMOVED, SERVICE_TURN_ON as SERVICE_TURN_ON
|
17
17
|
from homeassistant.core import Context as Context, Event as Event, HomeAssistant as HomeAssistant, callback as callback, split_entity_id as split_entity_id
|
18
18
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
@@ -143,7 +143,7 @@ class _QueuedScriptRun(_ScriptRun):
|
|
143
143
|
def _schedule_stop_scripts_after_shutdown(hass: HomeAssistant) -> None: ...
|
144
144
|
async def _async_stop_scripts_after_shutdown(hass: HomeAssistant, point_in_time: datetime) -> None: ...
|
145
145
|
async def _async_stop_scripts_at_shutdown(hass: HomeAssistant, event: Event) -> None: ...
|
146
|
-
_VarsType = dict[str, Any] | MappingProxyType[str, Any]
|
146
|
+
_VarsType = dict[str, Any] | Mapping[str, Any] | MappingProxyType[str, Any]
|
147
147
|
|
148
148
|
def _referenced_extract_ids(data: Any, key: str, found: set[str]) -> None: ...
|
149
149
|
|
@@ -1,7 +1,8 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from collections.abc import Iterable
|
3
|
+
from homeassistant.components.lock import LockState as LockState
|
3
4
|
from homeassistant.components.sun import STATE_ABOVE_HORIZON as STATE_ABOVE_HORIZON, STATE_BELOW_HORIZON as STATE_BELOW_HORIZON
|
4
|
-
from homeassistant.const import STATE_CLOSED as STATE_CLOSED, STATE_HOME as STATE_HOME,
|
5
|
+
from homeassistant.const import STATE_CLOSED as STATE_CLOSED, STATE_HOME as STATE_HOME, STATE_NOT_HOME as STATE_NOT_HOME, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, STATE_OPEN as STATE_OPEN, STATE_UNKNOWN as STATE_UNKNOWN
|
5
6
|
from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant, State as State
|
6
7
|
from homeassistant.loader import IntegrationNotFound as IntegrationNotFound, async_get_integration as async_get_integration, bind_hass as bind_hass
|
7
8
|
from typing import Any
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import jinja2
|
2
2
|
from . import area_registry as area_registry, device_registry as device_registry, entity_registry as entity_registry, issue_registry as issue_registry, label_registry as label_registry
|
3
|
+
from .deprecation import deprecated_function as deprecated_function
|
3
4
|
from .singleton import singleton as singleton
|
4
5
|
from .translation import async_translate_state as async_translate_state
|
5
6
|
from .typing import TemplateVarsType as TemplateVarsType
|
@@ -10,7 +11,7 @@ from contextvars import ContextVar
|
|
10
11
|
from datetime import datetime, timedelta
|
11
12
|
from functools import cached_property as cached_property
|
12
13
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, ATTR_PERSONS as ATTR_PERSONS, ATTR_UNIT_OF_MEASUREMENT as ATTR_UNIT_OF_MEASUREMENT, EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfLength as UnitOfLength
|
13
|
-
from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant, State as State, callback as callback, split_entity_id as split_entity_id, valid_domain as valid_domain, valid_entity_id as valid_entity_id
|
14
|
+
from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant, ServiceResponse as ServiceResponse, State as State, callback as callback, split_entity_id as split_entity_id, valid_domain as valid_domain, valid_entity_id as valid_entity_id
|
14
15
|
from homeassistant.exceptions import TemplateError as TemplateError
|
15
16
|
from homeassistant.loader import bind_hass as bind_hass
|
16
17
|
from homeassistant.util import convert as convert
|
@@ -41,6 +42,7 @@ template_cv: ContextVar[tuple[str, str] | None]
|
|
41
42
|
CACHED_TEMPLATE_STATES: int
|
42
43
|
EVAL_CACHE_SIZE: int
|
43
44
|
MAX_CUSTOM_TEMPLATE_SIZE: Incomplete
|
45
|
+
MAX_TEMPLATE_OUTPUT: Incomplete
|
44
46
|
CACHED_TEMPLATE_LRU: LRU[State, TemplateState]
|
45
47
|
CACHED_TEMPLATE_NO_COLLECT_LRU: LRU[State, TemplateState]
|
46
48
|
ENTITY_COUNT_GROWTH_FACTOR: float
|
@@ -50,6 +52,7 @@ def _template_state_no_collect(hass: HomeAssistant, state: State) -> TemplateSta
|
|
50
52
|
def _template_state(hass: HomeAssistant, state: State) -> TemplateState: ...
|
51
53
|
def async_setup(hass: HomeAssistant) -> bool: ...
|
52
54
|
def attach(hass: HomeAssistant, obj: Any) -> None: ...
|
55
|
+
def _attach(hass: HomeAssistant, obj: Any) -> None: ...
|
53
56
|
def render_complex(value: Any, variables: TemplateVarsType = None, limited: bool = False, parse_result: bool = True) -> Any: ...
|
54
57
|
def is_complex(value: Any) -> bool: ...
|
55
58
|
def is_template_string(maybe_template: str) -> bool: ...
|
@@ -283,6 +286,7 @@ def timestamp_utc(value, default=...): ...
|
|
283
286
|
def forgiving_as_timestamp(value, default=...): ...
|
284
287
|
def as_datetime(value: Any, default: Any = ...) -> Any: ...
|
285
288
|
def as_timedelta(value: str) -> timedelta | None: ...
|
289
|
+
def merge_response(value: ServiceResponse) -> list[Any]: ...
|
286
290
|
def strptime(string, fmt, default=...): ...
|
287
291
|
def fail_when_undefined(value): ...
|
288
292
|
def min_max_from_filter(builtin_filter: Any, name: str) -> Any: ...
|
@@ -10,6 +10,12 @@ class MockStreamReader:
|
|
10
10
|
def __init__(self, content: bytes) -> None: ...
|
11
11
|
async def read(self, byte_count: int = -1) -> bytes: ...
|
12
12
|
|
13
|
+
class MockPayloadWriter:
|
14
|
+
def enable_chunking(self) -> None: ...
|
15
|
+
async def write_headers(self, *args: Any, **kwargs: Any) -> None: ...
|
16
|
+
|
17
|
+
_MOCK_PAYLOAD_WRITER: Incomplete
|
18
|
+
|
13
19
|
class MockRequest:
|
14
20
|
mock_source: str | None
|
15
21
|
method: Incomplete
|
@@ -17,8 +23,12 @@ class MockRequest:
|
|
17
23
|
status: Incomplete
|
18
24
|
headers: Incomplete
|
19
25
|
query_string: Incomplete
|
26
|
+
keep_alive: bool
|
27
|
+
version: Incomplete
|
20
28
|
_content: Incomplete
|
29
|
+
_payload_writer: Incomplete
|
21
30
|
def __init__(self, content: bytes, mock_source: str, method: str = 'GET', status: int = ..., headers: dict[str, str] | None = None, query_string: str | None = None, url: str = '') -> None: ...
|
31
|
+
async def _prepare_hook(self, response: Any) -> None: ...
|
22
32
|
@property
|
23
33
|
def query(self) -> MultiDict[str]: ...
|
24
34
|
@property
|
@@ -6,5 +6,8 @@ def is_virtual_env() -> bool: ...
|
|
6
6
|
def is_docker_env() -> bool: ...
|
7
7
|
def get_installed_versions(specifiers: set[str]) -> set[str]: ...
|
8
8
|
def is_installed(requirement_str: str) -> bool: ...
|
9
|
+
|
10
|
+
_UV_ENV_PYTHON_VARS: Incomplete
|
11
|
+
|
9
12
|
def install_package(package: str, upgrade: bool = True, target: str | None = None, constraints: str | None = None, timeout: int | None = None) -> bool: ...
|
10
13
|
async def async_get_user_site(deps_dir: str) -> str: ...
|
homeassistant-stubs/util/ssl.pyi
CHANGED
@@ -6,18 +6,22 @@ class SSLCipherList(StrEnum):
|
|
6
6
|
PYTHON_DEFAULT = 'python_default'
|
7
7
|
INTERMEDIATE = 'intermediate'
|
8
8
|
MODERN = 'modern'
|
9
|
+
INSECURE = 'insecure'
|
9
10
|
|
10
11
|
SSL_CIPHER_LISTS: Incomplete
|
11
12
|
|
12
|
-
def
|
13
|
-
def
|
14
|
-
def _client_context(ssl_cipher_list: SSLCipherList) -> ssl.SSLContext: ...
|
15
|
-
def client_context(ssl_cipher_list: SSLCipherList = ...) -> ssl.SSLContext: ...
|
13
|
+
def _client_context_no_verify(ssl_cipher_list: SSLCipherList) -> ssl.SSLContext: ...
|
14
|
+
def _client_context(ssl_cipher_list: SSLCipherList = ...) -> ssl.SSLContext: ...
|
16
15
|
|
17
16
|
_DEFAULT_SSL_CONTEXT: Incomplete
|
18
17
|
_DEFAULT_NO_VERIFY_SSL_CONTEXT: Incomplete
|
18
|
+
_NO_VERIFY_SSL_CONTEXTS: Incomplete
|
19
|
+
_SSL_CONTEXTS: Incomplete
|
19
20
|
|
20
21
|
def get_default_context() -> ssl.SSLContext: ...
|
21
22
|
def get_default_no_verify_context() -> ssl.SSLContext: ...
|
23
|
+
def client_context_no_verify(ssl_cipher_list: SSLCipherList = ...) -> ssl.SSLContext: ...
|
24
|
+
def client_context(ssl_cipher_list: SSLCipherList = ...) -> ssl.SSLContext: ...
|
25
|
+
def create_no_verify_ssl_context(ssl_cipher_list: SSLCipherList = ...) -> ssl.SSLContext: ...
|
22
26
|
def server_context_modern() -> ssl.SSLContext: ...
|
23
27
|
def server_context_intermediate() -> ssl.SSLContext: ...
|
@@ -1,25 +1,24 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.3
|
2
2
|
Name: homeassistant-stubs
|
3
|
-
Version: 2024.
|
3
|
+
Version: 2024.10.0
|
4
4
|
Summary: PEP 484 typing stubs for Home Assistant Core
|
5
|
-
|
5
|
+
Project-URL: Homepage, https://github.com/KapJI/homeassistant-stubs
|
6
|
+
Project-URL: Bug Tracker, https://github.com/KapJI/homeassistant-stubs/issues
|
7
|
+
Project-URL: Release Notes, https://github.com/KapJI/homeassistant-stubs/releases
|
8
|
+
Author-email: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
|
6
9
|
License: MIT
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
Requires-Python: >=3.12,<3.13
|
11
|
-
Classifier: Development Status :: 3 - Alpha
|
10
|
+
License-File: LICENSE
|
11
|
+
Keywords: homeassistant,pep484,typing
|
12
|
+
Classifier: Development Status :: 5 - Production/Stable
|
12
13
|
Classifier: Intended Audience :: Developers
|
13
14
|
Classifier: License :: OSI Approved :: MIT License
|
14
15
|
Classifier: Operating System :: OS Independent
|
15
|
-
Classifier: Programming Language :: Python :: 3
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
17
|
+
Classifier: Topic :: Home Automation
|
17
18
|
Classifier: Topic :: Software Development
|
18
19
|
Classifier: Typing :: Typed
|
19
|
-
Requires-
|
20
|
-
|
21
|
-
Project-URL: Repository, https://github.com/KapJI/homeassistant-stubs
|
22
|
-
Project-URL: Release Notes, https://github.com/KapJI/homeassistant-stubs/releases
|
20
|
+
Requires-Python: <3.13,>=3.12
|
21
|
+
Requires-Dist: homeassistant==2024.10.0
|
23
22
|
Description-Content-Type: text/markdown
|
24
23
|
|
25
24
|
[](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
|
@@ -33,10 +32,10 @@ You can use it to enable type checks against Home Assistant code in your custom
|
|
33
32
|
## How to use
|
34
33
|
|
35
34
|
Add it to dev dependencies of your project.
|
36
|
-
I recommend to use [
|
35
|
+
I recommend to use [uv](https://docs.astral.sh/uv/) for managing dependencies:
|
37
36
|
|
38
37
|
```shell
|
39
|
-
|
38
|
+
uv add --dev homeassistant-stubs
|
40
39
|
```
|
41
40
|
|
42
41
|
Please note that only stubs from strictly typed modules are added in this package.
|
@@ -61,4 +60,3 @@ But many of the Home Assistant components are currently not type checked.
|
|
61
60
|
- `update_stubs.py` script extracts list of strictly typed modules from Home Assistant configs.
|
62
61
|
- Then it runs `stubgen` which is shipped with `mypy` to generate typing stubs.
|
63
62
|
- New versions are generated and published automatically every 12 hours.
|
64
|
-
|