homeassistant-stubs 2024.2.4__py3-none-any.whl → 2024.3.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/bootstrap.pyi +20 -5
- homeassistant-stubs/components/aftership/const.pyi +0 -1
- homeassistant-stubs/components/aftership/sensor.pyi +2 -2
- homeassistant-stubs/components/airthings_ble/config_flow.pyi +1 -0
- homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
- homeassistant-stubs/components/alexa/config.pyi +2 -0
- homeassistant-stubs/components/amberelectric/sensor.pyi +0 -1
- homeassistant-stubs/components/androidtv/entity.pyi +30 -0
- homeassistant-stubs/components/androidtv/media_player.pyi +5 -23
- homeassistant-stubs/components/anthemav/media_player.pyi +0 -1
- homeassistant-stubs/components/api/__init__.pyi +0 -1
- homeassistant-stubs/components/apple_tv/__init__.pyi +68 -0
- homeassistant-stubs/components/apple_tv/browse_media.pyi +5 -0
- homeassistant-stubs/components/apple_tv/config_flow.pyi +63 -0
- homeassistant-stubs/components/apple_tv/const.pyi +4 -0
- homeassistant-stubs/components/apple_tv/media_player.pyi +93 -0
- homeassistant-stubs/components/apple_tv/remote.pyi +23 -0
- homeassistant-stubs/components/assist_pipeline/__init__.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/const.pyi +1 -1
- homeassistant-stubs/components/assist_pipeline/error.pyi +4 -0
- homeassistant-stubs/components/assist_pipeline/pipeline.pyi +5 -5
- homeassistant-stubs/components/asterisk_mbox/__init__.pyi +1 -0
- homeassistant-stubs/components/asuswrt/router.pyi +1 -1
- homeassistant-stubs/components/auth/__init__.pyi +2 -2
- homeassistant-stubs/components/automation/__init__.pyi +2 -1
- homeassistant-stubs/components/axis/binary_sensor.pyi +4 -0
- homeassistant-stubs/components/backup/manager.pyi +5 -3
- homeassistant-stubs/components/backup/websocket.pyi +4 -2
- homeassistant-stubs/components/blue_current/__init__.pyi +4 -3
- homeassistant-stubs/components/blue_current/entity.pyi +5 -2
- homeassistant-stubs/components/bluetooth/manager.pyi +2 -2
- homeassistant-stubs/components/bluetooth/match.pyi +3 -0
- homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -0
- homeassistant-stubs/components/braviatv/coordinator.pyi +2 -0
- homeassistant-stubs/components/braviatv/media_player.pyi +5 -0
- homeassistant-stubs/components/brother/sensor.pyi +3 -3
- homeassistant-stubs/components/bthome/config_flow.pyi +4 -4
- homeassistant-stubs/components/calendar/trigger.pyi +2 -1
- homeassistant-stubs/components/camera/media_source.pyi +1 -0
- homeassistant-stubs/components/camera/prefs.pyi +2 -0
- homeassistant-stubs/components/cert_expiry/sensor.pyi +0 -1
- homeassistant-stubs/components/climate/__init__.pyi +3 -1
- homeassistant-stubs/components/cloud/const.pyi +2 -0
- homeassistant-stubs/components/cloud/google_config.pyi +7 -5
- homeassistant-stubs/components/cloud/http_api.pyi +1 -1
- homeassistant-stubs/components/cloud/prefs.pyi +6 -2
- homeassistant-stubs/components/cloud/tts.pyi +3 -2
- homeassistant-stubs/components/config/area_registry.pyi +1 -1
- homeassistant-stubs/components/config/auth.pyi +2 -2
- homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +2 -2
- homeassistant-stubs/components/config/automation.pyi +2 -2
- homeassistant-stubs/components/config/config_entries.pyi +5 -4
- homeassistant-stubs/components/config/core.pyi +2 -2
- homeassistant-stubs/components/config/device_registry.pyi +1 -1
- homeassistant-stubs/components/config/entity_registry.pyi +1 -1
- homeassistant-stubs/components/config/floor_registry.pyi +12 -0
- homeassistant-stubs/components/config/label_registry.pyi +12 -0
- homeassistant-stubs/components/config/scene.pyi +2 -2
- homeassistant-stubs/components/config/script.pyi +2 -2
- homeassistant-stubs/components/cpuspeed/sensor.pyi +0 -1
- homeassistant-stubs/components/crownstone/light.pyi +1 -1
- homeassistant-stubs/components/deconz/light.pyi +1 -1
- homeassistant-stubs/components/demo/fan.pyi +1 -0
- homeassistant-stubs/components/dhcp/__init__.pyi +24 -32
- homeassistant-stubs/components/dlna_dmr/media_player.pyi +8 -3
- homeassistant-stubs/components/dnsip/sensor.pyi +1 -1
- homeassistant-stubs/components/dunehd/media_player.pyi +5 -2
- homeassistant-stubs/components/ecovacs/binary_sensor.pyi +3 -3
- homeassistant-stubs/components/ecovacs/button.pyi +5 -5
- homeassistant-stubs/components/ecovacs/controller.pyi +6 -3
- homeassistant-stubs/components/ecovacs/entity.pyi +11 -9
- homeassistant-stubs/components/ecovacs/image.pyi +2 -2
- homeassistant-stubs/components/ecovacs/lawn_mower.pyi +28 -0
- homeassistant-stubs/components/ecovacs/number.pyi +3 -3
- homeassistant-stubs/components/ecovacs/select.pyi +3 -3
- homeassistant-stubs/components/ecovacs/sensor.pyi +6 -6
- homeassistant-stubs/components/ecovacs/switch.pyi +4 -4
- homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -3
- homeassistant-stubs/components/emulated_hue/config.pyi +1 -1
- homeassistant-stubs/components/enphase_envoy/sensor.pyi +39 -4
- homeassistant-stubs/components/esphome/bluetooth.pyi +1 -1
- homeassistant-stubs/components/esphome/camera.pyi +2 -2
- homeassistant-stubs/components/esphome/entry_data.pyi +3 -5
- homeassistant-stubs/components/esphome/manager.pyi +6 -7
- homeassistant-stubs/components/esphome/sensor.pyi +4 -2
- homeassistant-stubs/components/esphome/update.pyi +0 -1
- homeassistant-stubs/components/esphome/voice_assistant.pyi +1 -1
- homeassistant-stubs/components/fastdotcom/sensor.pyi +0 -1
- homeassistant-stubs/components/filesize/sensor.pyi +0 -1
- homeassistant-stubs/components/flexit_bacnet/climate.pyi +4 -2
- homeassistant-stubs/components/flexit_bacnet/number.pyi +31 -0
- homeassistant-stubs/components/flux_led/__init__.pyi +2 -2
- homeassistant-stubs/components/fritz/common.pyi +2 -1
- homeassistant-stubs/components/fully_kiosk/media_player.pyi +2 -1
- homeassistant-stubs/components/generic_thermostat/climate.pyi +1 -1
- homeassistant-stubs/components/goalzero/__init__.pyi +1 -0
- homeassistant-stubs/components/gpsd/sensor.pyi +15 -9
- homeassistant-stubs/components/group/__init__.pyi +1 -1
- homeassistant-stubs/components/group/light.pyi +3 -3
- homeassistant-stubs/components/hardkernel/__init__.pyi +1 -1
- homeassistant-stubs/components/hardware/hardware.pyi +2 -2
- homeassistant-stubs/components/hardware/websocket_api.pyi +1 -1
- homeassistant-stubs/components/homeassistant_green/__init__.pyi +1 -1
- homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +2 -1
- homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +3 -2
- homeassistant-stubs/components/homekit/__init__.pyi +1 -1
- homeassistant-stubs/components/homekit/accessories.pyi +1 -1
- homeassistant-stubs/components/homekit/config_flow.pyi +13 -4
- homeassistant-stubs/components/homekit/type_cameras.pyi +1 -1
- homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
- homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
- homeassistant-stubs/components/homekit/type_triggers.pyi +3 -1
- homeassistant-stubs/components/homekit_controller/__init__.pyi +1 -0
- homeassistant-stubs/components/homekit_controller/alarm_control_panel.pyi +0 -1
- homeassistant-stubs/components/homekit_controller/button.pyi +8 -4
- homeassistant-stubs/components/homekit_controller/utils.pyi +4 -0
- homeassistant-stubs/components/http/__init__.pyi +3 -3
- homeassistant-stubs/components/http/auth.pyi +1 -1
- homeassistant-stubs/components/http/ban.pyi +0 -1
- homeassistant-stubs/components/http/const.pyi +1 -1
- homeassistant-stubs/components/http/request_context.pyi +1 -2
- homeassistant-stubs/components/http/view.pyi +1 -29
- homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +0 -6
- homeassistant-stubs/components/huawei_lte/switch.pyi +0 -4
- homeassistant-stubs/components/idasen_desk/sensor.pyi +2 -1
- homeassistant-stubs/components/image/__init__.pyi +13 -3
- homeassistant-stubs/components/image/media_source.pyi +18 -0
- homeassistant-stubs/components/imap/coordinator.pyi +8 -0
- homeassistant-stubs/components/imap/diagnostics.pyi +13 -0
- homeassistant-stubs/components/intent/__init__.pyi +7 -2
- homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +1 -1
- homeassistant-stubs/components/knx/config_flow.pyi +1 -1
- homeassistant-stubs/components/knx/schema.pyi +3 -18
- homeassistant-stubs/components/knx/validation.pyi +19 -0
- homeassistant-stubs/components/lamarzocco/calendar.pyi +21 -0
- homeassistant-stubs/components/lamarzocco/entity.pyi +7 -4
- homeassistant-stubs/components/lamarzocco/number.pyi +26 -1
- homeassistant-stubs/components/light/__init__.pyi +3 -0
- homeassistant-stubs/components/local_todo/todo.pyi +3 -1
- homeassistant-stubs/components/logbook/__init__.pyi +1 -1
- homeassistant-stubs/components/logbook/helpers.pyi +2 -2
- homeassistant-stubs/components/logbook/models.pyi +2 -2
- homeassistant-stubs/components/mailbox/__init__.pyi +1 -0
- homeassistant-stubs/components/matter/light.pyi +6 -5
- homeassistant-stubs/components/media_player/intent.pyi +11 -0
- homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/__init__.pyi +1 -1
- homeassistant-stubs/components/modbus/climate.pyi +1 -0
- homeassistant-stubs/components/modbus/validators.pyi +4 -4
- homeassistant-stubs/components/mqtt/__init__.pyi +3 -3
- homeassistant-stubs/components/mqtt/climate.pyi +1 -8
- homeassistant-stubs/components/mqtt/const.pyi +2 -0
- homeassistant-stubs/components/mqtt/event.pyi +1 -1
- homeassistant-stubs/components/mqtt/image.pyi +1 -1
- homeassistant-stubs/components/mqtt/mixins.pyi +2 -2
- homeassistant-stubs/components/mqtt/models.pyi +10 -0
- homeassistant-stubs/components/mqtt/tag.pyi +1 -1
- homeassistant-stubs/components/myuplink/__init__.pyi +2 -1
- homeassistant-stubs/components/myuplink/binary_sensor.pyi +24 -0
- homeassistant-stubs/components/myuplink/config_flow.pyi +7 -0
- homeassistant-stubs/components/myuplink/coordinator.pyi +1 -2
- homeassistant-stubs/components/myuplink/diagnostics.pyi +11 -0
- homeassistant-stubs/components/myuplink/helpers.pyi +6 -0
- homeassistant-stubs/components/myuplink/number.pyi +30 -0
- homeassistant-stubs/components/myuplink/sensor.pyi +20 -3
- homeassistant-stubs/components/myuplink/switch.pyi +29 -0
- homeassistant-stubs/components/myuplink/update.pyi +20 -0
- homeassistant-stubs/components/notion/__init__.pyi +10 -6
- homeassistant-stubs/components/notion/config_flow.pyi +11 -3
- homeassistant-stubs/components/notion/const.pyi +2 -0
- homeassistant-stubs/components/notion/diagnostics.pyi +2 -2
- homeassistant-stubs/components/notion/model.pyi +1 -1
- homeassistant-stubs/components/notion/util.pyi +7 -0
- homeassistant-stubs/components/overkiz/climate.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate_entities/__init__.pyi +8 -0
- homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heating_zone.pyi +1 -1
- homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_zone_control.pyi +5 -1
- homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_zone_control_zone.pyi +33 -0
- homeassistant-stubs/components/overkiz/climate_entities/hitachi_air_to_air_heat_pump_ovp.pyi +61 -0
- homeassistant-stubs/components/overkiz/number.pyi +7 -1
- homeassistant-stubs/components/proximity/config_flow.pyi +1 -1
- homeassistant-stubs/components/rainmachine/util.pyi +1 -1
- homeassistant-stubs/components/raspberry_pi/__init__.pyi +1 -1
- homeassistant-stubs/components/recorder/__init__.pyi +1 -1
- homeassistant-stubs/components/recorder/core.pyi +1 -0
- homeassistant-stubs/components/recorder/websocket_api.pyi +1 -5
- homeassistant-stubs/components/repairs/issue_handler.pyi +1 -1
- homeassistant-stubs/components/rfxtrx/__init__.pyi +3 -1
- homeassistant-stubs/components/samsungtv/__init__.pyi +1 -1
- homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -0
- homeassistant-stubs/components/sensor/recorder.pyi +0 -2
- homeassistant-stubs/components/shelly/binary_sensor.pyi +1 -1
- homeassistant-stubs/components/shelly/button.pyi +1 -1
- homeassistant-stubs/components/shelly/climate.pyi +1 -3
- homeassistant-stubs/components/shelly/entity.pyi +1 -2
- homeassistant-stubs/components/shelly/number.pyi +1 -1
- homeassistant-stubs/components/shelly/sensor.pyi +2 -2
- homeassistant-stubs/components/shelly/switch.pyi +4 -5
- homeassistant-stubs/components/shelly/utils.pyi +2 -0
- homeassistant-stubs/components/shelly/valve.pyi +1 -1
- homeassistant-stubs/components/ssdp/__init__.pyi +1 -0
- homeassistant-stubs/components/statistics/sensor.pyi +4 -1
- homeassistant-stubs/components/steamist/__init__.pyi +1 -1
- homeassistant-stubs/components/system_health/__init__.pyi +1 -1
- homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -0
- homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +48 -0
- homeassistant-stubs/components/systemmonitor/config_flow.pyi +2 -0
- homeassistant-stubs/components/systemmonitor/const.pyi +1 -0
- homeassistant-stubs/components/systemmonitor/coordinator.pyi +14 -10
- homeassistant-stubs/components/systemmonitor/diagnostics.pyi +7 -0
- homeassistant-stubs/components/systemmonitor/repairs.pyi +15 -0
- homeassistant-stubs/components/systemmonitor/sensor.pyi +5 -4
- homeassistant-stubs/components/systemmonitor/util.pyi +6 -5
- homeassistant-stubs/components/technove/helpers.pyi +9 -0
- homeassistant-stubs/components/technove/switch.pyi +33 -0
- homeassistant-stubs/components/tedee/config_flow.pyi +1 -0
- homeassistant-stubs/components/tedee/sensor.pyi +1 -1
- homeassistant-stubs/components/tibber/sensor.pyi +7 -4
- homeassistant-stubs/components/tplink/__init__.pyi +1 -1
- homeassistant-stubs/components/tplink/config_flow.pyi +2 -2
- homeassistant-stubs/components/tplink/light.pyi +1 -0
- homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +2 -2
- homeassistant-stubs/components/tplink_omada/config_flow.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/controller.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/coordinator.pyi +1 -1
- homeassistant-stubs/components/tplink_omada/update.pyi +1 -1
- homeassistant-stubs/components/tractive/device_tracker.pyi +0 -1
- homeassistant-stubs/components/unifi/__init__.pyi +1 -1
- homeassistant-stubs/components/unifi/button.pyi +1 -1
- homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
- homeassistant-stubs/components/unifi/device_tracker.pyi +6 -6
- homeassistant-stubs/components/unifi/diagnostics.pyi +1 -1
- homeassistant-stubs/components/unifi/entity.pyi +13 -13
- homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
- homeassistant-stubs/components/unifi/hub/api.pyi +10 -0
- homeassistant-stubs/components/unifi/{controller.pyi → hub/hub.pyi} +9 -19
- homeassistant-stubs/components/unifi/hub/websocket.pyi +25 -0
- homeassistant-stubs/components/unifi/image.pyi +4 -4
- homeassistant-stubs/components/unifi/sensor.pyi +14 -14
- homeassistant-stubs/components/unifi/switch.pyi +14 -14
- homeassistant-stubs/components/unifi/update.pyi +1 -1
- homeassistant-stubs/components/unifiprotect/__init__.pyi +4 -2
- homeassistant-stubs/components/unifiprotect/const.pyi +1 -0
- homeassistant-stubs/components/unifiprotect/data.pyi +3 -2
- homeassistant-stubs/components/unifiprotect/media_source.pyi +6 -3
- homeassistant-stubs/components/unifiprotect/migrate.pyi +3 -5
- homeassistant-stubs/components/unifiprotect/repairs.pyi +8 -2
- homeassistant-stubs/components/usb/__init__.pyi +1 -1
- homeassistant-stubs/components/vacuum/intent.pyi +8 -0
- homeassistant-stubs/components/vallox/__init__.pyi +5 -23
- homeassistant-stubs/components/vallox/fan.pyi +1 -1
- homeassistant-stubs/components/wake_word/models.pyi +4 -2
- homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
- homeassistant-stubs/components/websocket_api/connection.pyi +1 -1
- homeassistant-stubs/components/websocket_api/http.pyi +1 -0
- homeassistant-stubs/components/wiz/light.pyi +3 -2
- homeassistant-stubs/components/xiaomi_ble/const.pyi +9 -0
- homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
- homeassistant-stubs/components/xiaomi_ble/event.pyi +1 -1
- homeassistant-stubs/components/yalexs_ble/__init__.pyi +1 -1
- homeassistant-stubs/components/yalexs_ble/config_flow.pyi +1 -1
- homeassistant-stubs/components/zwave_js/climate.pyi +4 -0
- homeassistant-stubs/components/zwave_js/sensor.pyi +0 -1
- homeassistant-stubs/config.pyi +4 -2
- homeassistant-stubs/config_entries.pyi +40 -26
- homeassistant-stubs/const.pyi +1 -0
- homeassistant-stubs/core.pyi +11 -7
- homeassistant-stubs/data_entry_flow.pyi +1 -0
- homeassistant-stubs/helpers/area_registry.pyi +9 -4
- homeassistant-stubs/helpers/collection.pyi +19 -0
- homeassistant-stubs/helpers/config_validation.pyi +5 -0
- homeassistant-stubs/helpers/data_entry_flow.pyi +2 -1
- homeassistant-stubs/helpers/debounce.pyi +3 -1
- homeassistant-stubs/helpers/device_registry.pyi +13 -6
- homeassistant-stubs/helpers/entity.pyi +4 -2
- homeassistant-stubs/helpers/entity_component.pyi +1 -1
- homeassistant-stubs/helpers/entity_platform.pyi +7 -3
- homeassistant-stubs/helpers/entity_registry.pyi +10 -4
- homeassistant-stubs/helpers/event.pyi +28 -2
- homeassistant-stubs/helpers/floor_registry.pyi +59 -0
- homeassistant-stubs/helpers/frame.pyi +3 -1
- homeassistant-stubs/helpers/http.pyi +32 -0
- homeassistant-stubs/helpers/icon.pyi +1 -1
- homeassistant-stubs/helpers/integration_platform.pyi +12 -8
- homeassistant-stubs/helpers/intent.pyi +20 -6
- homeassistant-stubs/helpers/json.pyi +1 -0
- homeassistant-stubs/helpers/label_registry.pyi +59 -0
- homeassistant-stubs/helpers/redact.pyi +13 -0
- homeassistant-stubs/helpers/service.pyi +1 -0
- homeassistant-stubs/helpers/storage.pyi +7 -3
- homeassistant-stubs/helpers/template.pyi +7 -0
- homeassistant-stubs/helpers/translation.pyi +18 -4
- homeassistant-stubs/helpers/update_coordinator.pyi +1 -0
- homeassistant-stubs/loader.pyi +35 -13
- homeassistant-stubs/setup.pyi +9 -3
- homeassistant-stubs/util/async_.pyi +3 -3
- homeassistant-stubs/util/file.pyi +2 -2
- homeassistant-stubs/util/yaml/loader.pyi +3 -0
- {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/RECORD +302 -264
- {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/LICENSE +0 -0
- {homeassistant_stubs-2024.2.4.dist-info → homeassistant_stubs-2024.3.0.dist-info}/WHEEL +0 -0
@@ -8,7 +8,7 @@ from .components.ssdp import SsdpServiceInfo as SsdpServiceInfo
|
|
8
8
|
from .components.usb import UsbServiceInfo as UsbServiceInfo
|
9
9
|
from .components.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
|
10
10
|
from .const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
|
11
|
-
from .core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as CoreState, Event as Event, HassJob as HassJob, HomeAssistant as HomeAssistant, callback as callback
|
11
|
+
from .core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as CoreState, Event as Event, HassJob as HassJob, HassJobType as HassJobType, HomeAssistant as HomeAssistant, callback as callback
|
12
12
|
from .data_entry_flow import FLOW_NOT_COMPLETE_STEPS as FLOW_NOT_COMPLETE_STEPS, FlowResult as FlowResult
|
13
13
|
from .exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryError as ConfigEntryError, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
14
14
|
from .helpers import device_registry as device_registry, entity_registry as entity_registry, storage as storage
|
@@ -16,22 +16,27 @@ from .helpers.debounce import Debouncer as Debouncer
|
|
16
16
|
from .helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
|
17
17
|
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
18
|
from .helpers.frame import report as report
|
19
|
+
from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
|
19
20
|
from .helpers.service_info.mqtt import MqttServiceInfo as MqttServiceInfo
|
20
21
|
from .helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
21
22
|
from .loader import async_suggest_report_issue as async_suggest_report_issue
|
22
23
|
from .setup import DATA_SETUP_DONE as DATA_SETUP_DONE, async_process_deps_reqs as async_process_deps_reqs, async_setup_component as async_setup_component
|
24
|
+
from .util.async_ import create_eager_task as create_eager_task
|
23
25
|
from .util.decorator import Registry as Registry
|
24
26
|
from _typeshed import Incomplete
|
25
27
|
from collections import UserDict
|
26
28
|
from collections.abc import Callable, Coroutine, Generator, Iterable, Mapping, ValuesView
|
27
29
|
from contextvars import ContextVar
|
28
30
|
from enum import Enum, StrEnum
|
31
|
+
from functools import cached_property as cached_property
|
32
|
+
from types import MappingProxyType
|
29
33
|
from typing import Any, Self, TypeVar
|
30
34
|
|
31
35
|
_LOGGER: Incomplete
|
32
36
|
SOURCE_BLUETOOTH: str
|
33
37
|
SOURCE_DHCP: str
|
34
38
|
SOURCE_DISCOVERY: str
|
39
|
+
SOURCE_HARDWARE: str
|
35
40
|
SOURCE_HASSIO: str
|
36
41
|
SOURCE_HOMEKIT: str
|
37
42
|
SOURCE_IMPORT: str
|
@@ -95,27 +100,28 @@ class UnknownEntry(ConfigError): ...
|
|
95
100
|
class OperationNotAllowed(ConfigError): ...
|
96
101
|
|
97
102
|
UpdateListenerType: Incomplete
|
103
|
+
FROZEN_CONFIG_ENTRY_ATTRS: Incomplete
|
104
|
+
UPDATE_ENTRY_CONFIG_ENTRY_ATTRS: Incomplete
|
98
105
|
|
99
106
|
class ConfigEntry:
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
pref_disable_new_entities:
|
109
|
-
pref_disable_polling:
|
107
|
+
entry_id: str
|
108
|
+
domain: str
|
109
|
+
title: str
|
110
|
+
data: MappingProxyType[str, Any]
|
111
|
+
options: MappingProxyType[str, Any]
|
112
|
+
unique_id: str | None
|
113
|
+
state: ConfigEntryState
|
114
|
+
reason: str | None
|
115
|
+
pref_disable_new_entities: bool
|
116
|
+
pref_disable_polling: bool
|
117
|
+
version: int
|
118
|
+
minor_version: int
|
110
119
|
source: Incomplete
|
111
|
-
state: Incomplete
|
112
|
-
unique_id: Incomplete
|
113
120
|
disabled_by: Incomplete
|
114
121
|
supports_unload: Incomplete
|
115
122
|
supports_remove_device: Incomplete
|
116
123
|
_supports_options: Incomplete
|
117
124
|
update_listeners: Incomplete
|
118
|
-
reason: Incomplete
|
119
125
|
_async_cancel_retry_setup: Incomplete
|
120
126
|
_on_unload: Incomplete
|
121
127
|
reload_lock: Incomplete
|
@@ -124,15 +130,17 @@ class ConfigEntry:
|
|
124
130
|
_background_tasks: Incomplete
|
125
131
|
_integration_for_domain: Incomplete
|
126
132
|
_tries: int
|
127
|
-
_setup_again_job: Incomplete
|
128
133
|
def __init__(self, *, version: int, minor_version: int, domain: str, title: str, data: Mapping[str, Any], source: str, pref_disable_new_entities: bool | None = None, pref_disable_polling: bool | None = None, options: Mapping[str, Any] | None = None, unique_id: str | None = None, entry_id: str | None = None, state: ConfigEntryState = ..., disabled_by: ConfigEntryDisabler | None = None) -> None: ...
|
129
134
|
def __repr__(self) -> str: ...
|
135
|
+
def __setattr__(self, key: str, value: Any) -> None: ...
|
130
136
|
@property
|
131
137
|
def supports_options(self) -> bool: ...
|
138
|
+
def clear_cache(self) -> None: ...
|
139
|
+
@cached_property
|
140
|
+
def as_json_fragment(self) -> json_fragment: ...
|
132
141
|
async def async_setup(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> None: ...
|
133
|
-
|
134
|
-
def
|
135
|
-
async def async_shutdown(self) -> None: ...
|
142
|
+
def _async_setup_again(self, hass: HomeAssistant, *_: Any) -> None: ...
|
143
|
+
def async_shutdown(self) -> None: ...
|
136
144
|
def async_cancel_retry_setup(self) -> None: ...
|
137
145
|
async def async_unload(self, hass: HomeAssistant, *, integration: loader.Integration | None = None) -> bool: ...
|
138
146
|
async def async_remove(self, hass: HomeAssistant) -> None: ...
|
@@ -145,23 +153,25 @@ class ConfigEntry:
|
|
145
153
|
def async_start_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
|
146
154
|
async def _async_init_reauth(self, hass: HomeAssistant, context: dict[str, Any] | None = None, data: dict[str, Any] | None = None) -> None: ...
|
147
155
|
def async_get_active_flows(self, hass: HomeAssistant, sources: set[str]) -> Generator[FlowResult, None, None]: ...
|
148
|
-
def async_create_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None) -> asyncio.Task[_R]: ...
|
149
|
-
def async_create_background_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str) -> asyncio.Task[_R]: ...
|
156
|
+
def async_create_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = False) -> asyncio.Task[_R]: ...
|
157
|
+
def async_create_background_task(self, hass: HomeAssistant, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = False) -> asyncio.Task[_R]: ...
|
150
158
|
|
151
159
|
current_entry: ContextVar[ConfigEntry | None]
|
152
160
|
|
161
|
+
class FlowCancelledError(Exception): ...
|
162
|
+
|
153
163
|
class ConfigEntriesFlowManager(data_entry_flow.FlowManager):
|
154
164
|
config_entries: Incomplete
|
155
165
|
_hass_config: Incomplete
|
156
166
|
_pending_import_flows: Incomplete
|
157
|
-
|
167
|
+
_initialize_futures: Incomplete
|
158
168
|
_discovery_debouncer: Incomplete
|
159
169
|
def __init__(self, hass: HomeAssistant, config_entries: ConfigEntries, hass_config: ConfigType) -> None: ...
|
160
170
|
async def async_wait_import_flow_initialized(self, handler: str) -> None: ...
|
161
171
|
def _async_has_other_discovery_flows(self, flow_id: str) -> bool: ...
|
162
172
|
async def async_init(self, handler: str, *, context: dict[str, Any] | None = None, data: Any = None) -> FlowResult: ...
|
163
173
|
async def _async_init(self, flow_id: str, handler: str, context: dict, data: Any) -> tuple[data_entry_flow.FlowHandler, FlowResult]: ...
|
164
|
-
|
174
|
+
def async_shutdown(self) -> None: ...
|
165
175
|
async def async_finish_flow(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> data_entry_flow.FlowResult: ...
|
166
176
|
async def async_create_flow(self, handler_key: str, *, context: dict | None = None, data: Any = None) -> ConfigFlow: ...
|
167
177
|
async def async_post_init(self, flow: data_entry_flow.FlowHandler, result: data_entry_flow.FlowResult) -> None: ...
|
@@ -174,8 +184,10 @@ class ConfigEntryItems(UserDict[str, ConfigEntry]):
|
|
174
184
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
175
185
|
def values(self) -> ValuesView[ConfigEntry]: ...
|
176
186
|
def __setitem__(self, entry_id: str, entry: ConfigEntry) -> None: ...
|
187
|
+
def _index_entry(self, entry: ConfigEntry) -> None: ...
|
177
188
|
def _unindex_entry(self, entry_id: str) -> None: ...
|
178
189
|
def __delitem__(self, entry_id: str) -> None: ...
|
190
|
+
def update_unique_id(self, entry: ConfigEntry, new_unique_id: str | None) -> None: ...
|
179
191
|
def get_entries_for_domain(self, domain: str) -> list[ConfigEntry]: ...
|
180
192
|
def get_entry_by_domain_and_unique_id(self, domain: str, unique_id: str) -> ConfigEntry | None: ...
|
181
193
|
|
@@ -189,17 +201,18 @@ class ConfigEntries:
|
|
189
201
|
def __init__(self, hass: HomeAssistant, hass_config: ConfigType) -> None: ...
|
190
202
|
def async_domains(self, include_ignore: bool = False, include_disabled: bool = False) -> list[str]: ...
|
191
203
|
def async_get_entry(self, entry_id: str) -> ConfigEntry | None: ...
|
192
|
-
def async_entries(self, domain: str | None = None) -> list[ConfigEntry]: ...
|
204
|
+
def async_entries(self, domain: str | None = None, include_ignore: bool = True, include_disabled: bool = True) -> list[ConfigEntry]: ...
|
193
205
|
def async_entry_for_domain_unique_id(self, domain: str, unique_id: str) -> ConfigEntry | None: ...
|
194
206
|
async def async_add(self, entry: ConfigEntry) -> None: ...
|
195
207
|
async def async_remove(self, entry_id: str) -> dict[str, Any]: ...
|
196
|
-
|
208
|
+
def _async_shutdown(self, event: Event) -> None: ...
|
197
209
|
async def async_initialize(self) -> None: ...
|
198
210
|
async def async_setup(self, entry_id: str) -> bool: ...
|
199
211
|
async def async_unload(self, entry_id: str) -> bool: ...
|
212
|
+
def async_schedule_reload(self, entry_id: str) -> None: ...
|
200
213
|
async def async_reload(self, entry_id: str) -> bool: ...
|
201
214
|
async def async_set_disabled_by(self, entry_id: str, disabled_by: ConfigEntryDisabler | None) -> bool: ...
|
202
|
-
def async_update_entry(self, entry: ConfigEntry, *,
|
215
|
+
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: ...
|
203
216
|
def _async_dispatch(self, change_type: ConfigEntryChange, entry: ConfigEntry) -> None: ...
|
204
217
|
async def async_forward_entry_setups(self, entry: ConfigEntry, platforms: Iterable[Platform | str]) -> None: ...
|
205
218
|
async def async_forward_entry_setup(self, entry: ConfigEntry, domain: Platform | str) -> bool: ...
|
@@ -272,11 +285,12 @@ class EntityRegistryDisabledHandler:
|
|
272
285
|
_remove_call_later: Incomplete
|
273
286
|
def __init__(self, hass: HomeAssistant) -> None: ...
|
274
287
|
def async_setup(self) -> None: ...
|
275
|
-
|
288
|
+
def _handle_entry_updated(self, event: Event) -> None: ...
|
276
289
|
async def _handle_reload(self, _now: Any) -> None: ...
|
277
290
|
|
278
291
|
def _handle_entry_updated_filter(event: Event) -> bool: ...
|
279
292
|
async def support_entry_unload(hass: HomeAssistant, domain: str) -> bool: ...
|
280
293
|
async def support_remove_from_device(hass: HomeAssistant, domain: str) -> bool: ...
|
294
|
+
async def _support_single_config_entry_only(hass: HomeAssistant, domain: str) -> bool: ...
|
281
295
|
async def _load_integration(hass: HomeAssistant, domain: str, hass_config: ConfigType) -> None: ...
|
282
296
|
async def _async_get_flow_handler(hass: HomeAssistant, domain: str, hass_config: ConfigType) -> type[ConfigFlow]: ...
|
homeassistant-stubs/const.pyi
CHANGED
@@ -793,6 +793,7 @@ CAST_APP_ID_HOMEASSISTANT_MEDIA: Final[str]
|
|
793
793
|
CAST_APP_ID_HOMEASSISTANT_LOVELACE: Final[str]
|
794
794
|
HASSIO_USER_NAME: str
|
795
795
|
SIGNAL_BOOTSTRAP_INTEGRATIONS: str
|
796
|
+
KEY_DATA_LOGGING: str
|
796
797
|
FORMAT_DATE: Final[str]
|
797
798
|
FORMAT_TIME: Final[str]
|
798
799
|
FORMAT_DATETIME: Final[Incomplete]
|
homeassistant-stubs/core.pyi
CHANGED
@@ -14,7 +14,8 @@ from .helpers.entity import StateInfo as StateInfo
|
|
14
14
|
from .helpers.json import json_bytes as json_bytes, json_fragment as json_fragment
|
15
15
|
from .helpers.storage import Store as Store
|
16
16
|
from .util import location as location
|
17
|
-
from .util.async_ import cancelling as cancelling, run_callback_threadsafe as run_callback_threadsafe, shutdown_run_callback_threadsafe as shutdown_run_callback_threadsafe
|
17
|
+
from .util.async_ import cancelling as cancelling, create_eager_task as create_eager_task, run_callback_threadsafe as run_callback_threadsafe, shutdown_run_callback_threadsafe as shutdown_run_callback_threadsafe
|
18
|
+
from .util.executor import InterruptibleThreadPoolExecutor as InterruptibleThreadPoolExecutor
|
18
19
|
from .util.json import JsonObjectType as JsonObjectType
|
19
20
|
from .util.read_only_dict import ReadOnlyDict as ReadOnlyDict
|
20
21
|
from .util.timeout import TimeoutManager as TimeoutManager
|
@@ -136,6 +137,7 @@ class HomeAssistant:
|
|
136
137
|
timeout: Incomplete
|
137
138
|
_stop_future: Incomplete
|
138
139
|
_shutdown_jobs: Incomplete
|
140
|
+
import_executor: Incomplete
|
139
141
|
def __init__(self, config_dir: str) -> None: ...
|
140
142
|
@cached_property
|
141
143
|
def is_running(self) -> bool: ...
|
@@ -157,9 +159,10 @@ class HomeAssistant:
|
|
157
159
|
@overload
|
158
160
|
def async_add_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R] | _R], *args: Any) -> asyncio.Future[_R] | None: ...
|
159
161
|
def create_task(self, target: Coroutine[Any, Any, Any], name: str | None = None) -> None: ...
|
160
|
-
def async_create_task(self, target: Coroutine[Any, Any, _R], name: str | None = None) -> asyncio.Task[_R]: ...
|
161
|
-
def async_create_background_task(self, target: Coroutine[Any, Any, _R], name: str) -> asyncio.Task[_R]: ...
|
162
|
+
def async_create_task(self, target: Coroutine[Any, Any, _R], name: str | None = None, eager_start: bool = False) -> asyncio.Task[_R]: ...
|
163
|
+
def async_create_background_task(self, target: Coroutine[Any, Any, _R], name: str, eager_start: bool = False) -> asyncio.Task[_R]: ...
|
162
164
|
def async_add_executor_job(self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
|
165
|
+
def async_add_import_executor_job(self, target: Callable[..., _T], *args: Any) -> asyncio.Future[_T]: ...
|
163
166
|
@overload
|
164
167
|
def async_run_hass_job(self, hassjob: HassJob[..., Coroutine[Any, Any, _R]], *args: Any) -> asyncio.Future[_R] | None: ...
|
165
168
|
@overload
|
@@ -208,7 +211,7 @@ class Event:
|
|
208
211
|
origin: Incomplete
|
209
212
|
time_fired: Incomplete
|
210
213
|
context: Incomplete
|
211
|
-
def __init__(self, event_type: str, data:
|
214
|
+
def __init__(self, event_type: str, data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., time_fired: datetime.datetime | None = None, context: Context | None = None) -> None: ...
|
212
215
|
@cached_property
|
213
216
|
def time_fired_timestamp(self) -> float: ...
|
214
217
|
@cached_property
|
@@ -227,7 +230,8 @@ class _OneTimeListener:
|
|
227
230
|
hass: HomeAssistant
|
228
231
|
listener: Callable[[Event], Coroutine[Any, Any, None] | None]
|
229
232
|
remove: CALLBACK_TYPE | None = ...
|
230
|
-
def
|
233
|
+
def __call__(self, event: Event) -> None: ...
|
234
|
+
def __repr__(self) -> str: ...
|
231
235
|
def __init__(self, hass, listener, remove) -> None: ...
|
232
236
|
|
233
237
|
class EventBus:
|
@@ -239,8 +243,8 @@ class EventBus:
|
|
239
243
|
def async_listeners(self) -> dict[str, int]: ...
|
240
244
|
@property
|
241
245
|
def listeners(self) -> dict[str, int]: ...
|
242
|
-
def fire(self, event_type: str, event_data:
|
243
|
-
def async_fire(self, event_type: str, event_data:
|
246
|
+
def fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None) -> None: ...
|
247
|
+
def async_fire(self, event_type: str, event_data: Mapping[str, Any] | None = None, origin: EventOrigin = ..., context: Context | None = None, time_fired: datetime.datetime | None = None) -> None: ...
|
244
248
|
def listen(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None]) -> CALLBACK_TYPE: ...
|
245
249
|
def async_listen(self, event_type: str, listener: Callable[[Event], Coroutine[Any, Any, None] | None], event_filter: Callable[[Event], bool] | None = None, run_immediately: bool = False) -> CALLBACK_TYPE: ...
|
246
250
|
def _async_listen_filterable_job(self, event_type: str, filterable_job: _FilterableJobType) -> CALLBACK_TYPE: ...
|
@@ -22,12 +22,14 @@ class EventAreaRegistryUpdatedData(TypedDict):
|
|
22
22
|
@dataclasses.dataclass(frozen=True, kw_only=True, slots=True)
|
23
23
|
class AreaEntry:
|
24
24
|
aliases: set[str]
|
25
|
+
floor_id: str | None
|
25
26
|
icon: str | None
|
26
27
|
id: str
|
28
|
+
labels: set[str] = ...
|
27
29
|
name: str
|
28
30
|
normalized_name: str
|
29
31
|
picture: str | None
|
30
|
-
def __init__(self, *, aliases, icon, id, name, normalized_name, picture) -> None: ...
|
32
|
+
def __init__(self, *, aliases, floor_id, icon, id, labels, name, normalized_name, picture) -> None: ...
|
31
33
|
|
32
34
|
class AreaRegistryItems(UserDict[str, AreaEntry]):
|
33
35
|
_normalized_names: Incomplete
|
@@ -50,15 +52,18 @@ class AreaRegistry:
|
|
50
52
|
def async_get_area_by_name(self, name: str) -> AreaEntry | None: ...
|
51
53
|
def async_list_areas(self) -> Iterable[AreaEntry]: ...
|
52
54
|
def async_get_or_create(self, name: str) -> AreaEntry: ...
|
53
|
-
def async_create(self, name: str, *, aliases: set[str] | None = None, icon: str | None = None, picture: str | None = None) -> AreaEntry: ...
|
55
|
+
def async_create(self, name: str, *, aliases: set[str] | None = None, floor_id: str | None = None, icon: str | None = None, labels: set[str] | None = None, picture: str | None = None) -> AreaEntry: ...
|
54
56
|
def async_delete(self, area_id: str) -> None: ...
|
55
|
-
def async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., icon: str | None | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
|
56
|
-
def _async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., icon: str | None | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
|
57
|
+
def async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., floor_id: str | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
|
58
|
+
def _async_update(self, area_id: str, *, aliases: set[str] | UndefinedType = ..., floor_id: str | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | UndefinedType = ..., picture: str | None | UndefinedType = ...) -> AreaEntry: ...
|
57
59
|
async def async_load(self) -> None: ...
|
58
60
|
def async_schedule_save(self) -> None: ...
|
59
61
|
def _data_to_save(self) -> dict[str, list[dict[str, Any]]]: ...
|
60
62
|
def _generate_area_id(self, name: str) -> str: ...
|
63
|
+
def _async_setup_cleanup(self) -> None: ...
|
61
64
|
|
62
65
|
def async_get(hass: HomeAssistant) -> AreaRegistry: ...
|
63
66
|
async def async_load(hass: HomeAssistant) -> None: ...
|
67
|
+
def async_entries_for_floor(registry: AreaRegistry, floor_id: str) -> list[AreaEntry]: ...
|
68
|
+
def async_entries_for_label(registry: AreaRegistry, label_id: str) -> list[AreaEntry]: ...
|
64
69
|
def normalize_area_name(area_name: str) -> str: ...
|
@@ -119,6 +119,25 @@ class IDLessCollection(YamlCollection):
|
|
119
119
|
counter: int
|
120
120
|
async def async_load(self, data: list[dict]) -> None: ...
|
121
121
|
|
122
|
+
_GROUP_BY_KEY: Incomplete
|
123
|
+
|
124
|
+
@dataclass(slots=True, frozen=True)
|
125
|
+
class _CollectionLifeCycle(Generic[_EntityT]):
|
126
|
+
domain: str
|
127
|
+
platform: str
|
128
|
+
entity_component: EntityComponent[_EntityT]
|
129
|
+
collection: StorageCollection | YamlCollection
|
130
|
+
entity_class: type[CollectionEntity]
|
131
|
+
ent_reg: entity_registry.EntityRegistry
|
132
|
+
entities: dict[str, CollectionEntity]
|
133
|
+
def async_setup(self) -> None: ...
|
134
|
+
def _entity_removed(self, item_id: str) -> None: ...
|
135
|
+
def _add_entity(self, change_set: CollectionChangeSet) -> CollectionEntity: ...
|
136
|
+
async def _remove_entity(self, change_set: CollectionChangeSet) -> None: ...
|
137
|
+
async def _update_entity(self, change_set: CollectionChangeSet) -> None: ...
|
138
|
+
async def _collection_changed(self, change_sets: Iterable[CollectionChangeSet]) -> None: ...
|
139
|
+
def __init__(self, domain, platform, entity_component, collection, entity_class, ent_reg, entities) -> None: ...
|
140
|
+
|
122
141
|
def sync_entity_lifecycle(hass: HomeAssistant, domain: str, platform: str, entity_component: EntityComponent[_EntityT], collection: StorageCollection | YamlCollection, entity_class: type[CollectionEntity]) -> None: ...
|
123
142
|
|
124
143
|
class StorageCollectionWebsocket(Generic[_StorageCollectionT]):
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import re
|
2
2
|
import voluptuous as vol
|
3
3
|
from . import template as template_helper
|
4
|
+
from .frame import get_integration_logger as get_integration_logger
|
4
5
|
from _typeshed import Incomplete
|
5
6
|
from collections.abc import Callable as Callable, Hashable
|
6
7
|
from datetime import date as date_sys, datetime as datetime_sys, time as time_sys, timedelta
|
@@ -66,6 +67,10 @@ def entities_domain(domain: str | list[str]) -> Callable[[str | list], list[str]
|
|
66
67
|
def enum(enumClass: type[Enum]) -> vol.All: ...
|
67
68
|
def icon(value: Any) -> str: ...
|
68
69
|
|
70
|
+
_COLOR_HEX: Incomplete
|
71
|
+
|
72
|
+
def color_hex(value: Any) -> str: ...
|
73
|
+
|
69
74
|
_TIME_PERIOD_DICT_KEYS: Incomplete
|
70
75
|
time_period_dict: Incomplete
|
71
76
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from _typeshed import Incomplete
|
2
2
|
from aiohttp import web as web
|
3
|
-
from homeassistant import
|
3
|
+
from homeassistant import data_entry_flow as data_entry_flow
|
4
4
|
from homeassistant.components.http import HomeAssistantView as HomeAssistantView
|
5
5
|
from homeassistant.components.http.data_validator import RequestDataValidator as RequestDataValidator
|
6
6
|
from typing import Any
|
@@ -12,6 +12,7 @@ class _BaseFlowManagerView(HomeAssistantView):
|
|
12
12
|
|
13
13
|
class FlowManagerIndexView(_BaseFlowManagerView):
|
14
14
|
async def post(self, request: web.Request, data: dict[str, Any]) -> web.Response: ...
|
15
|
+
def get_context(self, data: dict[str, Any]) -> dict[str, Any]: ...
|
15
16
|
|
16
17
|
class FlowManagerResourceView(_BaseFlowManagerView):
|
17
18
|
async def get(self, request: web.Request, flow_id: str) -> web.Response: ...
|
@@ -22,9 +22,11 @@ class Debouncer(Generic[_R_co]):
|
|
22
22
|
def function(self) -> Callable[[], _R_co] | None: ...
|
23
23
|
@function.setter
|
24
24
|
def function(self, function: Callable[[], _R_co]) -> None: ...
|
25
|
+
def async_schedule_call(self) -> None: ...
|
26
|
+
def _async_schedule_or_call_now(self) -> bool: ...
|
25
27
|
async def async_call(self) -> None: ...
|
26
28
|
async def _handle_timer_finish(self) -> None: ...
|
27
|
-
|
29
|
+
def async_shutdown(self) -> None: ...
|
28
30
|
def async_cancel(self) -> None: ...
|
29
31
|
def _on_debounce(self) -> None: ...
|
30
32
|
def _schedule_timer(self) -> None: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from . import entity_registry as entity_registry, storage as storage
|
1
|
+
from . import entity_registry as entity_registry, storage as storage, translation as translation
|
2
2
|
from .debounce import Debouncer as Debouncer
|
3
3
|
from .deprecation import DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
|
4
4
|
from .frame import report as report
|
@@ -6,13 +6,14 @@ from .json import JSON_DUMP as JSON_DUMP, find_paths_unserializable_data as find
|
|
6
6
|
from .typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
|
7
7
|
from _typeshed import Incomplete
|
8
8
|
from collections import UserDict
|
9
|
-
from collections.abc import ValuesView
|
9
|
+
from collections.abc import Mapping, ValuesView
|
10
10
|
from enum import StrEnum
|
11
11
|
from homeassistant.backports.functools import cached_property as cached_property
|
12
12
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
13
13
|
from homeassistant.const import EVENT_HOMEASSISTANT_STARTED as EVENT_HOMEASSISTANT_STARTED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
|
14
|
-
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
|
14
|
+
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback, get_release_channel as get_release_channel
|
15
15
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
16
|
+
from homeassistant.loader import async_suggest_report_issue as async_suggest_report_issue
|
16
17
|
from homeassistant.util.json import format_unserializable_data as format_unserializable_data
|
17
18
|
from typing import Any, Literal, TypeVar, TypedDict
|
18
19
|
from yarl import URL
|
@@ -57,6 +58,8 @@ class DeviceInfo(TypedDict, total=False):
|
|
57
58
|
suggested_area: str | None
|
58
59
|
sw_version: str | None
|
59
60
|
hw_version: str | None
|
61
|
+
translation_key: str | None
|
62
|
+
translation_placeholders: Mapping[str, str] | None
|
60
63
|
via_device: tuple[str, str]
|
61
64
|
|
62
65
|
DEVICE_INFO_TYPES: Incomplete
|
@@ -94,6 +97,7 @@ class DeviceEntry:
|
|
94
97
|
hw_version: str | None
|
95
98
|
id: str
|
96
99
|
identifiers: set[tuple[str, str]]
|
100
|
+
labels: set[str]
|
97
101
|
manufacturer: str | None
|
98
102
|
model: str | None
|
99
103
|
name_by_user: str | None
|
@@ -108,7 +112,7 @@ class DeviceEntry:
|
|
108
112
|
@property
|
109
113
|
def dict_repr(self) -> dict[str, Any]: ...
|
110
114
|
def json_repr(self) -> bytes | None: ...
|
111
|
-
def __init__(self, area_id, config_entries, configuration_url, connections, disabled_by, entry_type, hw_version, id, identifiers, manufacturer, model, name_by_user, name, serial_number, suggested_area, sw_version, via_device_id, is_new) -> None: ...
|
115
|
+
def __init__(self, area_id, config_entries, configuration_url, connections, disabled_by, entry_type, hw_version, id, identifiers, labels, manufacturer, model, name_by_user, name, serial_number, suggested_area, sw_version, via_device_id, is_new) -> None: ...
|
112
116
|
def __lt__(self, other): ...
|
113
117
|
def __le__(self, other): ...
|
114
118
|
def __gt__(self, other): ...
|
@@ -152,8 +156,9 @@ class DeviceRegistry:
|
|
152
156
|
def async_get(self, device_id: str) -> DeviceEntry | None: ...
|
153
157
|
def async_get_device(self, identifiers: set[tuple[str, str]] | None = None, connections: set[tuple[str, str]] | None = None) -> DeviceEntry | None: ...
|
154
158
|
def _async_get_deleted_device(self, identifiers: set[tuple[str, str]], connections: set[tuple[str, str]]) -> DeletedDeviceEntry | None: ...
|
155
|
-
def
|
156
|
-
def
|
159
|
+
def _substitute_name_placeholders(self, domain: str, name: str, translation_placeholders: Mapping[str, str]) -> str: ...
|
160
|
+
def async_get_or_create(self, *, config_entry_id: str, configuration_url: str | URL | None | UndefinedType = ..., connections: set[tuple[str, str]] | None | UndefinedType = ..., default_manufacturer: str | None | UndefinedType = ..., default_model: str | None | UndefinedType = ..., default_name: str | None | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., identifiers: set[tuple[str, str]] | None | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., model: str | None | UndefinedType = ..., name: str | None | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., translation_key: str | None = None, translation_placeholders: Mapping[str, str] | None = None, via_device: tuple[str, str] | None | UndefinedType = ...) -> DeviceEntry: ...
|
161
|
+
def async_update_device(self, device_id: str, *, add_config_entry_id: str | UndefinedType = ..., area_id: str | None | UndefinedType = ..., configuration_url: str | URL | None | UndefinedType = ..., disabled_by: DeviceEntryDisabler | None | UndefinedType = ..., entry_type: DeviceEntryType | None | UndefinedType = ..., hw_version: str | None | UndefinedType = ..., labels: set[str] | UndefinedType = ..., manufacturer: str | None | UndefinedType = ..., merge_connections: set[tuple[str, str]] | UndefinedType = ..., merge_identifiers: set[tuple[str, str]] | UndefinedType = ..., model: str | None | UndefinedType = ..., name_by_user: str | None | UndefinedType = ..., name: str | None | UndefinedType = ..., new_identifiers: set[tuple[str, str]] | UndefinedType = ..., remove_config_entry_id: str | UndefinedType = ..., serial_number: str | None | UndefinedType = ..., suggested_area: str | None | UndefinedType = ..., sw_version: str | None | UndefinedType = ..., via_device_id: str | None | UndefinedType = ...) -> DeviceEntry | None: ...
|
157
162
|
def async_remove_device(self, device_id: str) -> None: ...
|
158
163
|
async def async_load(self) -> None: ...
|
159
164
|
def async_schedule_save(self) -> None: ...
|
@@ -161,10 +166,12 @@ class DeviceRegistry:
|
|
161
166
|
def async_clear_config_entry(self, config_entry_id: str) -> None: ...
|
162
167
|
def async_purge_expired_orphaned_devices(self) -> None: ...
|
163
168
|
def async_clear_area_id(self, area_id: str) -> None: ...
|
169
|
+
def async_clear_label_id(self, label_id: str) -> None: ...
|
164
170
|
|
165
171
|
def async_get(hass: HomeAssistant) -> DeviceRegistry: ...
|
166
172
|
async def async_load(hass: HomeAssistant) -> None: ...
|
167
173
|
def async_entries_for_area(registry: DeviceRegistry, area_id: str) -> list[DeviceEntry]: ...
|
174
|
+
def async_entries_for_label(registry: DeviceRegistry, label_id: str) -> list[DeviceEntry]: ...
|
168
175
|
def async_entries_for_config_entry(registry: DeviceRegistry, config_entry_id: str) -> list[DeviceEntry]: ...
|
169
176
|
def async_config_entry_disabled_by_changed(registry: DeviceRegistry, config_entry: ConfigEntry) -> None: ...
|
170
177
|
def async_cleanup(hass: HomeAssistant, dev_reg: DeviceRegistry, ent_reg: entity_registry.EntityRegistry) -> None: ...
|
@@ -99,6 +99,7 @@ class Entity(cached_properties=CACHED_PROPERTIES_WITH_ATTR_, metaclass=ABCCached
|
|
99
99
|
_update_staged: bool
|
100
100
|
parallel_updates: asyncio.Semaphore | None
|
101
101
|
registry_entry: er.RegistryEntry | None
|
102
|
+
_removed_from_registry: bool
|
102
103
|
device_entry: dr.DeviceEntry | None
|
103
104
|
_on_remove: list[CALLBACK_TYPE] | None
|
104
105
|
_unsub_device_updates: CALLBACK_TYPE | None
|
@@ -111,7 +112,7 @@ class Entity(cached_properties=CACHED_PROPERTIES_WITH_ATTR_, metaclass=ABCCached
|
|
111
112
|
_state_info: StateInfo
|
112
113
|
__capabilities_updated_at: deque[float]
|
113
114
|
__capabilities_updated_at_reported: bool
|
114
|
-
|
115
|
+
__remove_future: asyncio.Future[None] | None
|
115
116
|
_attr_assumed_state: bool
|
116
117
|
_attr_attribution: str | None
|
117
118
|
_attr_available: bool
|
@@ -223,7 +224,8 @@ class Entity(cached_properties=CACHED_PROPERTIES_WITH_ATTR_, metaclass=ABCCached
|
|
223
224
|
def async_registry_entry_updated(self) -> None: ...
|
224
225
|
async def async_internal_added_to_hass(self) -> None: ...
|
225
226
|
async def async_internal_will_remove_from_hass(self) -> None: ...
|
226
|
-
|
227
|
+
def _async_registry_updated(self, event: EventType[er.EventEntityRegistryUpdatedData]) -> None: ...
|
228
|
+
async def _async_process_registry_update_or_remove(self, event: EventType[er.EventEntityRegistryUpdatedData]) -> None: ...
|
227
229
|
def _async_unsubscribe_device_updates(self) -> None: ...
|
228
230
|
def _async_device_registry_updated(self, event: EventType[EventDeviceRegistryUpdatedData]) -> None: ...
|
229
231
|
def _async_subscribe_device_updates(self) -> None: ...
|
@@ -49,4 +49,4 @@ class EntityComponent(Generic[_EntityT]):
|
|
49
49
|
async def async_remove_entity(self, entity_id: str) -> None: ...
|
50
50
|
async def async_prepare_reload(self, *, skip_reset: bool = False) -> ConfigType | None: ...
|
51
51
|
def _async_init_entity_platform(self, platform_type: str, platform: ModuleType | None, scan_interval: timedelta | None = None, entity_namespace: str | None = None) -> EntityPlatform: ...
|
52
|
-
|
52
|
+
def _async_shutdown(self, event: Event) -> None: ...
|
@@ -7,7 +7,7 @@ from .event import async_call_later as async_call_later, async_track_time_interv
|
|
7
7
|
from .issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
|
8
8
|
from .typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, UNDEFINED as UNDEFINED
|
9
9
|
from _typeshed import Incomplete
|
10
|
-
from collections.abc import Awaitable, Callable as Callable, Iterable
|
10
|
+
from collections.abc import Awaitable, Callable as Callable, Coroutine, Iterable
|
11
11
|
from contextvars import ContextVar
|
12
12
|
from datetime import datetime, timedelta
|
13
13
|
from homeassistant import config_entries as config_entries
|
@@ -16,6 +16,7 @@ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, CoreState as Core
|
|
16
16
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, PlatformNotReady as PlatformNotReady
|
17
17
|
from homeassistant.generated import languages as languages
|
18
18
|
from homeassistant.setup import async_start_setup as async_start_setup
|
19
|
+
from homeassistant.util.async_ import create_eager_task as create_eager_task
|
19
20
|
from logging import Logger
|
20
21
|
from typing import Any, Protocol
|
21
22
|
|
@@ -66,17 +67,20 @@ class EntityPlatform:
|
|
66
67
|
def __repr__(self) -> str: ...
|
67
68
|
def _get_parallel_updates_semaphore(self, entity_has_sync_update: bool) -> asyncio.Semaphore | None: ...
|
68
69
|
async def async_setup(self, platform_config: ConfigType, discovery_info: DiscoveryInfoType | None = None) -> None: ...
|
69
|
-
|
70
|
+
def async_shutdown(self) -> None: ...
|
70
71
|
def async_cancel_retry_setup(self) -> None: ...
|
71
72
|
async def async_setup_entry(self, config_entry: config_entries.ConfigEntry) -> bool: ...
|
72
|
-
async def _async_setup_platform(self,
|
73
|
+
async def _async_setup_platform(self, async_create_setup_awaitable: Callable[[], Awaitable[None]], tries: int = 0) -> bool: ...
|
73
74
|
async def _async_get_translations(self, language: str, category: str, integration: str) -> dict[str, Any]: ...
|
74
75
|
async def async_load_translations(self) -> None: ...
|
75
76
|
def _schedule_add_entities(self, new_entities: Iterable[Entity], update_before_add: bool = False) -> None: ...
|
76
77
|
def _async_schedule_add_entities(self, new_entities: Iterable[Entity], update_before_add: bool = False) -> None: ...
|
77
78
|
def _async_schedule_add_entities_for_entry(self, new_entities: Iterable[Entity], update_before_add: bool = False) -> None: ...
|
78
79
|
def add_entities(self, new_entities: Iterable[Entity], update_before_add: bool = False) -> None: ...
|
80
|
+
async def _async_add_and_update_entities(self, coros: list[Coroutine[Any, Any, None]], entities: list[Entity], timeout: float) -> None: ...
|
81
|
+
async def _async_add_entities(self, coros: list[Coroutine[Any, Any, None]], entities: list[Entity], timeout: float) -> None: ...
|
79
82
|
async def async_add_entities(self, new_entities: Iterable[Entity], update_before_add: bool = False) -> None: ...
|
83
|
+
def _async_handle_interval_callback(self, now: datetime) -> None: ...
|
80
84
|
def _entity_id_already_exists(self, entity_id: str) -> tuple[bool, bool]: ...
|
81
85
|
async def _async_add_entity(self, entity: Entity, update_before_add: bool, entity_registry: EntityRegistry) -> None: ...
|
82
86
|
async def async_reset(self) -> None: ...
|
@@ -76,6 +76,7 @@ class RegistryEntry:
|
|
76
76
|
icon: str | None
|
77
77
|
id: str
|
78
78
|
has_entity_name: bool
|
79
|
+
labels: set[str]
|
79
80
|
name: str | None
|
80
81
|
options: ReadOnlyEntityOptionsType
|
81
82
|
original_device_class: str | None
|
@@ -96,7 +97,7 @@ class RegistryEntry:
|
|
96
97
|
def extended_dict(self) -> dict[str, Any]: ...
|
97
98
|
def partial_json_repr(self) -> bytes | None: ...
|
98
99
|
def write_unavailable_state(self, hass: HomeAssistant) -> None: ...
|
99
|
-
def __init__(self, entity_id, unique_id, platform, previous_unique_id, aliases, area_id, capabilities, config_entry_id, device_class, device_id, domain, disabled_by, entity_category, hidden_by, icon, id, has_entity_name, name, options, original_device_class, original_icon, original_name, supported_features, translation_key, unit_of_measurement) -> None: ...
|
100
|
+
def __init__(self, entity_id, unique_id, platform, previous_unique_id, aliases, area_id, capabilities, config_entry_id, device_class, device_id, domain, disabled_by, entity_category, hidden_by, icon, id, has_entity_name, labels, name, options, original_device_class, original_icon, original_name, supported_features, translation_key, unit_of_measurement) -> None: ...
|
100
101
|
def __lt__(self, other): ...
|
101
102
|
def __le__(self, other): ...
|
102
103
|
def __gt__(self, other): ...
|
@@ -125,15 +126,18 @@ class EntityRegistryItems(UserDict[str, RegistryEntry]):
|
|
125
126
|
_index: Incomplete
|
126
127
|
_config_entry_id_index: Incomplete
|
127
128
|
_device_id_index: Incomplete
|
129
|
+
_area_id_index: Incomplete
|
128
130
|
def __init__(self) -> None: ...
|
129
131
|
def values(self) -> ValuesView[RegistryEntry]: ...
|
130
132
|
def __setitem__(self, key: str, entry: RegistryEntry) -> None: ...
|
133
|
+
def _unindex_entry_value(self, key: str, value: str, index: dict[str, dict[str, Literal[True]]]) -> None: ...
|
131
134
|
def _unindex_entry(self, key: str) -> None: ...
|
132
135
|
def __delitem__(self, key: str) -> None: ...
|
133
136
|
def get_entity_id(self, key: tuple[str, str, str]) -> str | None: ...
|
134
137
|
def get_entry(self, key: str) -> RegistryEntry | None: ...
|
135
|
-
def get_entries_for_device_id(self, device_id: str) -> list[RegistryEntry]: ...
|
138
|
+
def get_entries_for_device_id(self, device_id: str, include_disabled_entities: bool = False) -> list[RegistryEntry]: ...
|
136
139
|
def get_entries_for_config_entry_id(self, config_entry_id: str) -> list[RegistryEntry]: ...
|
140
|
+
def get_entries_for_area_id(self, area_id: str) -> list[RegistryEntry]: ...
|
137
141
|
|
138
142
|
class EntityRegistry:
|
139
143
|
deleted_entities: dict[tuple[str, str, str], DeletedRegistryEntry]
|
@@ -151,13 +155,14 @@ class EntityRegistry:
|
|
151
155
|
def async_get_or_create(self, domain: str, platform: str, unique_id: str, *, known_object_ids: Iterable[str] | None = None, suggested_object_id: str | None = None, disabled_by: RegistryEntryDisabler | None = None, hidden_by: RegistryEntryHider | None = None, get_initial_options: Callable[[], EntityOptionsType | None] | None = None, capabilities: Mapping[str, Any] | None | UndefinedType = ..., config_entry: ConfigEntry | None | UndefinedType = ..., device_id: str | None | UndefinedType = ..., entity_category: EntityCategory | UndefinedType | None = ..., has_entity_name: bool | UndefinedType = ..., original_device_class: str | None | UndefinedType = ..., original_icon: str | None | UndefinedType = ..., original_name: str | None | UndefinedType = ..., supported_features: int | None | UndefinedType = ..., translation_key: str | None | UndefinedType = ..., unit_of_measurement: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
152
156
|
def async_remove(self, entity_id: str) -> None: ...
|
153
157
|
def async_device_modified(self, event: Event) -> None: ...
|
154
|
-
def _async_update_entity(self, entity_id: str, *, aliases: set[str] | UndefinedType = ..., area_id: str | None | UndefinedType = ..., capabilities: Mapping[str, Any] | None | UndefinedType = ..., config_entry_id: str | None | UndefinedType = ..., device_class: str | None | UndefinedType = ..., device_id: str | None | UndefinedType = ..., disabled_by: RegistryEntryDisabler | None | UndefinedType = ..., entity_category: EntityCategory | None | UndefinedType = ..., hidden_by: RegistryEntryHider | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., has_entity_name: bool | UndefinedType = ..., name: str | None | UndefinedType = ..., new_entity_id: str | UndefinedType = ..., new_unique_id: str | UndefinedType = ..., options: EntityOptionsType | UndefinedType = ..., original_device_class: str | None | UndefinedType = ..., original_icon: str | None | UndefinedType = ..., original_name: str | None | UndefinedType = ..., platform: str | None | UndefinedType = ..., supported_features: int | UndefinedType = ..., translation_key: str | None | UndefinedType = ..., unit_of_measurement: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
155
|
-
def async_update_entity(self, entity_id: str, *, aliases: set[str] | UndefinedType = ..., area_id: str | None | UndefinedType = ..., capabilities: Mapping[str, Any] | None | UndefinedType = ..., config_entry_id: str | None | UndefinedType = ..., device_class: str | None | UndefinedType = ..., device_id: str | None | UndefinedType = ..., disabled_by: RegistryEntryDisabler | None | UndefinedType = ..., entity_category: EntityCategory | None | UndefinedType = ..., hidden_by: RegistryEntryHider | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., has_entity_name: bool | UndefinedType = ..., name: str | None | UndefinedType = ..., new_entity_id: str | UndefinedType = ..., new_unique_id: str | UndefinedType = ..., original_device_class: str | None | UndefinedType = ..., original_icon: str | None | UndefinedType = ..., original_name: str | None | UndefinedType = ..., supported_features: int | UndefinedType = ..., translation_key: str | None | UndefinedType = ..., unit_of_measurement: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
158
|
+
def _async_update_entity(self, entity_id: str, *, aliases: set[str] | UndefinedType = ..., area_id: str | None | UndefinedType = ..., capabilities: Mapping[str, Any] | None | UndefinedType = ..., config_entry_id: str | None | UndefinedType = ..., device_class: str | None | UndefinedType = ..., device_id: str | None | UndefinedType = ..., disabled_by: RegistryEntryDisabler | None | UndefinedType = ..., entity_category: EntityCategory | None | UndefinedType = ..., hidden_by: RegistryEntryHider | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., has_entity_name: bool | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | None | UndefinedType = ..., new_entity_id: str | UndefinedType = ..., new_unique_id: str | UndefinedType = ..., options: EntityOptionsType | UndefinedType = ..., original_device_class: str | None | UndefinedType = ..., original_icon: str | None | UndefinedType = ..., original_name: str | None | UndefinedType = ..., platform: str | None | UndefinedType = ..., supported_features: int | UndefinedType = ..., translation_key: str | None | UndefinedType = ..., unit_of_measurement: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
159
|
+
def async_update_entity(self, entity_id: str, *, aliases: set[str] | UndefinedType = ..., area_id: str | None | UndefinedType = ..., capabilities: Mapping[str, Any] | None | UndefinedType = ..., config_entry_id: str | None | UndefinedType = ..., device_class: str | None | UndefinedType = ..., device_id: str | None | UndefinedType = ..., disabled_by: RegistryEntryDisabler | None | UndefinedType = ..., entity_category: EntityCategory | None | UndefinedType = ..., hidden_by: RegistryEntryHider | None | UndefinedType = ..., icon: str | None | UndefinedType = ..., has_entity_name: bool | UndefinedType = ..., labels: set[str] | UndefinedType = ..., name: str | None | UndefinedType = ..., new_entity_id: str | UndefinedType = ..., new_unique_id: str | UndefinedType = ..., original_device_class: str | None | UndefinedType = ..., original_icon: str | None | UndefinedType = ..., original_name: str | None | UndefinedType = ..., supported_features: int | UndefinedType = ..., translation_key: str | None | UndefinedType = ..., unit_of_measurement: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
156
160
|
def async_update_entity_platform(self, entity_id: str, new_platform: str, *, new_config_entry_id: str | UndefinedType = ..., new_unique_id: str | UndefinedType = ..., new_device_id: str | None | UndefinedType = ...) -> RegistryEntry: ...
|
157
161
|
def async_update_entity_options(self, entity_id: str, domain: str, options: Mapping[str, Any] | None) -> RegistryEntry: ...
|
158
162
|
async def async_load(self) -> None: ...
|
159
163
|
def async_schedule_save(self) -> None: ...
|
160
164
|
def _data_to_save(self) -> dict[str, Any]: ...
|
165
|
+
def async_clear_label_id(self, label_id: str) -> None: ...
|
161
166
|
def async_clear_config_entry(self, config_entry_id: str) -> None: ...
|
162
167
|
def async_purge_expired_orphaned_entities(self) -> None: ...
|
163
168
|
def async_clear_area_id(self, area_id: str) -> None: ...
|
@@ -166,6 +171,7 @@ def async_get(hass: HomeAssistant) -> EntityRegistry: ...
|
|
166
171
|
async def async_load(hass: HomeAssistant) -> None: ...
|
167
172
|
def async_entries_for_device(registry: EntityRegistry, device_id: str, include_disabled_entities: bool = False) -> list[RegistryEntry]: ...
|
168
173
|
def async_entries_for_area(registry: EntityRegistry, area_id: str) -> list[RegistryEntry]: ...
|
174
|
+
def async_entries_for_label(registry: EntityRegistry, label_id: str) -> list[RegistryEntry]: ...
|
169
175
|
def async_entries_for_config_entry(registry: EntityRegistry, config_entry_id: str) -> list[RegistryEntry]: ...
|
170
176
|
def async_config_entry_disabled_by_changed(registry: EntityRegistry, config_entry: ConfigEntry) -> None: ...
|
171
177
|
def _async_setup_cleanup(hass: HomeAssistant, registry: EntityRegistry) -> None: ...
|