homeassistant-stubs 2024.2.5__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.5.dist-info → homeassistant_stubs-2024.3.0.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2024.2.5.dist-info → homeassistant_stubs-2024.3.0.dist-info}/RECORD +302 -264
- {homeassistant_stubs-2024.2.5.dist-info → homeassistant_stubs-2024.3.0.dist-info}/LICENSE +0 -0
- {homeassistant_stubs-2024.2.5.dist-info → homeassistant_stubs-2024.3.0.dist-info}/WHEEL +0 -0
@@ -5,4 +5,4 @@ from homeassistant.components.bluetooth import async_register_scanner as async_r
|
|
5
5
|
from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant
|
6
6
|
|
7
7
|
def _async_unload(unload_callbacks: list[CALLBACK_TYPE]) -> None: ...
|
8
|
-
|
8
|
+
def async_connect_scanner(hass: HomeAssistant, entry_data: RuntimeEntryData, cli: APIClient, device_info: DeviceInfo, cache: ESPHomeBluetoothCache) -> CALLBACK_TYPE: ...
|
@@ -2,7 +2,7 @@ from .entity import EsphomeEntity as EsphomeEntity, platform_async_setup_entry a
|
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from aioesphomeapi import CameraInfo, CameraState
|
4
4
|
from aiohttp import web as web
|
5
|
-
from collections.abc import Callable as Callable
|
5
|
+
from collections.abc import Callable as Callable
|
6
6
|
from homeassistant.components import camera as camera
|
7
7
|
from homeassistant.components.camera import Camera as Camera
|
8
8
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -20,5 +20,5 @@ class EsphomeCamera(Camera, EsphomeEntity[CameraInfo, CameraState]):
|
|
20
20
|
def _on_device_update(self) -> None: ...
|
21
21
|
def _on_state_update(self) -> None: ...
|
22
22
|
async def async_camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
|
23
|
-
async def _async_request_image(self, request_method: Callable[[],
|
23
|
+
async def _async_request_image(self, request_method: Callable[[], None]) -> bytes | None: ...
|
24
24
|
async def handle_async_mjpeg_stream(self, request: web.Request) -> web.StreamResponse: ...
|
@@ -51,7 +51,6 @@ class RuntimeEntryData:
|
|
51
51
|
assist_pipeline_update_callbacks: list[Callable[[], None]] = ...
|
52
52
|
assist_pipeline_state: bool = ...
|
53
53
|
entity_info_callbacks: dict[type[EntityInfo], list[Callable[[list[EntityInfo]], None]]] = ...
|
54
|
-
entity_info_key_remove_callbacks: dict[tuple[type[EntityInfo], int], list[Callable[[], Coroutine[Any, Any, None]]]] = ...
|
55
54
|
entity_info_key_updated_callbacks: dict[tuple[type[EntityInfo], int], list[Callable[[EntityInfo], None]]] = ...
|
56
55
|
original_options: dict[str, Any] = ...
|
57
56
|
@property
|
@@ -64,14 +63,13 @@ class RuntimeEntryData:
|
|
64
63
|
def signal_static_info_updated(self) -> str: ...
|
65
64
|
def async_register_static_info_callback(self, entity_info_type: type[EntityInfo], callback_: Callable[[list[EntityInfo]], None]) -> CALLBACK_TYPE: ...
|
66
65
|
def _async_unsubscribe_register_static_info(self, callbacks: list[Callable[[list[EntityInfo]], None]], callback_: Callable[[list[EntityInfo]], None]) -> None: ...
|
67
|
-
def async_register_key_static_info_remove_callback(self, static_info: EntityInfo, callback_: Callable[[], Coroutine[Any, Any, None]]) -> CALLBACK_TYPE: ...
|
68
66
|
def _async_unsubscribe_static_key_remove(self, callbacks: list[Callable[[], Coroutine[Any, Any, None]]], callback_: Callable[[], Coroutine[Any, Any, None]]) -> None: ...
|
69
67
|
def async_register_key_static_info_updated_callback(self, static_info: EntityInfo, callback_: Callable[[EntityInfo], None]) -> CALLBACK_TYPE: ...
|
70
68
|
def _async_unsubscribe_static_key_info_updated(self, callbacks: list[Callable[[EntityInfo], None]], callback_: Callable[[EntityInfo], None]) -> None: ...
|
71
69
|
def async_set_assist_pipeline_state(self, state: bool) -> None: ...
|
72
70
|
def async_subscribe_assist_pipeline_update(self, update_callback: Callable[[], None]) -> Callable[[], None]: ...
|
73
71
|
def _async_unsubscribe_assist_pipeline_update(self, update_callback: Callable[[], None]) -> None: ...
|
74
|
-
|
72
|
+
def async_remove_entities(self, hass: HomeAssistant, static_infos: Iterable[EntityInfo], mac: str) -> None: ...
|
75
73
|
def async_update_entity_infos(self, static_infos: Iterable[EntityInfo]) -> None: ...
|
76
74
|
async def _ensure_platforms_loaded(self, hass: HomeAssistant, entry: ConfigEntry, platforms: set[Platform]) -> None: ...
|
77
75
|
async def async_update_static_infos(self, hass: HomeAssistant, entry: ConfigEntry, infos: list[EntityInfo], mac: str) -> None: ...
|
@@ -80,9 +78,9 @@ class RuntimeEntryData:
|
|
80
78
|
def async_update_state(self, state: EntityState) -> None: ...
|
81
79
|
def async_update_device_state(self, hass: HomeAssistant) -> None: ...
|
82
80
|
async def async_load_from_store(self) -> tuple[list[EntityInfo], list[UserService]]: ...
|
83
|
-
|
81
|
+
def async_save_to_store(self) -> None: ...
|
84
82
|
async def async_cleanup(self) -> None: ...
|
85
83
|
async def async_update_listener(self, hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
86
84
|
def async_on_disconnect(self) -> None: ...
|
87
85
|
def async_on_connect(self, device_info: DeviceInfo, api_version: APIVersion) -> None: ...
|
88
|
-
def __init__(self, entry_id, title, client, store, state, stale_state, info, services, available, expected_disconnect, device_info, bluetooth_device, api_version, cleanup_callbacks, disconnect_callbacks, state_subscriptions, loaded_platforms, platform_load_lock, _storage_contents, _pending_storage, assist_pipeline_update_callbacks, assist_pipeline_state, entity_info_callbacks,
|
86
|
+
def __init__(self, entry_id, title, client, store, state, stale_state, info, services, available, expected_disconnect, device_info, bluetooth_device, api_version, cleanup_callbacks, disconnect_callbacks, state_subscriptions, loaded_platforms, platform_load_lock, _storage_contents, _pending_storage, assist_pipeline_update_callbacks, assist_pipeline_state, entity_info_callbacks, entity_info_key_updated_callbacks, original_options) -> None: ...
|
@@ -5,11 +5,11 @@ from .domain_data import DomainData as DomainData
|
|
5
5
|
from .entry_data import RuntimeEntryData as RuntimeEntryData
|
6
6
|
from .voice_assistant import VoiceAssistantUDPServer as VoiceAssistantUDPServer
|
7
7
|
from _typeshed import Incomplete
|
8
|
-
from aioesphomeapi import APIClient as APIClient, APIVersion as APIVersion, DeviceInfo as EsphomeDeviceInfo, EntityInfo as EntityInfo, HomeassistantServiceCall as HomeassistantServiceCall, UserService as UserService, VoiceAssistantAudioSettings as VoiceAssistantAudioSettings
|
8
|
+
from aioesphomeapi import APIClient as APIClient, APIVersion as APIVersion, DeviceInfo as EsphomeDeviceInfo, EntityInfo as EntityInfo, HomeassistantServiceCall as HomeassistantServiceCall, UserService as UserService, VoiceAssistantAudioSettings as VoiceAssistantAudioSettings
|
9
9
|
from homeassistant.components import tag as tag, zeroconf as zeroconf
|
10
10
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
11
11
|
from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_MODE as CONF_MODE, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EVENT_LOGGING_CHANGED as EVENT_LOGGING_CHANGED
|
12
|
-
from homeassistant.core import
|
12
|
+
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, State as State, callback as callback
|
13
13
|
from homeassistant.exceptions import TemplateError as TemplateError
|
14
14
|
from homeassistant.helpers import template as template
|
15
15
|
from homeassistant.helpers.device_registry import format_mac as format_mac
|
@@ -43,12 +43,11 @@ class ESPHomeManager:
|
|
43
43
|
@property
|
44
44
|
def services_issue(self) -> str: ...
|
45
45
|
def async_on_service_call(self, service: HomeassistantServiceCall) -> None: ...
|
46
|
-
|
47
|
-
|
46
|
+
def _send_home_assistant_state(self, entity_id: str, attribute: str | None, state: State | None) -> None: ...
|
47
|
+
def _send_home_assistant_state_event(self, attribute: str | None, event: EventType[EventStateChangedData]) -> None: ...
|
48
48
|
def async_on_state_subscription(self, entity_id: str, attribute: str | None = None) -> None: ...
|
49
|
-
def _handle_pipeline_event(self, event_type: VoiceAssistantEventType, data: dict[str, str] | None) -> None: ...
|
50
49
|
def _handle_pipeline_finished(self) -> None: ...
|
51
|
-
async def _handle_pipeline_start(self, conversation_id: str, flags: int, audio_settings: VoiceAssistantAudioSettings) -> int | None: ...
|
50
|
+
async def _handle_pipeline_start(self, conversation_id: str, flags: int, audio_settings: VoiceAssistantAudioSettings, wake_word_phrase: str | None) -> int | None: ...
|
52
51
|
async def _handle_pipeline_stop(self) -> None: ...
|
53
52
|
async def on_connect(self) -> None: ...
|
54
53
|
async def _on_connnect(self) -> None: ...
|
@@ -67,7 +66,7 @@ class ServiceMetadata(NamedTuple):
|
|
67
66
|
|
68
67
|
ARG_TYPE_METADATA: Incomplete
|
69
68
|
|
70
|
-
|
69
|
+
def execute_service(entry_data: RuntimeEntryData, service: UserService, call: ServiceCall) -> None: ...
|
71
70
|
def build_service_name(device_info: EsphomeDeviceInfo, service: UserService) -> str: ...
|
72
71
|
def _async_register_service(hass: HomeAssistant, entry_data: RuntimeEntryData, device_info: EsphomeDeviceInfo, service: UserService) -> None: ...
|
73
72
|
def _setup_services(hass: HomeAssistant, entry_data: RuntimeEntryData, services: list[UserService]) -> None: ...
|
@@ -2,7 +2,7 @@ from .entity import EsphomeEntity as EsphomeEntity, esphome_state_property as es
|
|
2
2
|
from .enum_mapper import EsphomeEnumMapper as EsphomeEnumMapper
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from aioesphomeapi import EntityInfo as EntityInfo, SensorInfo, SensorState, SensorStateClass as EsphomeSensorStateClass, TextSensorInfo, TextSensorState
|
5
|
-
from datetime import datetime
|
5
|
+
from datetime import date, datetime
|
6
6
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -23,5 +23,7 @@ class EsphomeSensor(EsphomeEntity[SensorInfo, SensorState], SensorEntity):
|
|
23
23
|
def native_value(self) -> datetime | str | None: ...
|
24
24
|
|
25
25
|
class EsphomeTextSensor(EsphomeEntity[TextSensorInfo, TextSensorState], SensorEntity):
|
26
|
+
_attr_device_class: Incomplete
|
27
|
+
def _on_static_info_update(self, static_info: EntityInfo) -> None: ...
|
26
28
|
@property
|
27
|
-
def native_value(self) -> str | None: ...
|
29
|
+
def native_value(self) -> str | datetime | date | None: ...
|
@@ -41,5 +41,5 @@ class VoiceAssistantUDPServer(asyncio.DatagramProtocol):
|
|
41
41
|
def close(self) -> None: ...
|
42
42
|
async def _iterate_packets(self) -> AsyncIterable[bytes]: ...
|
43
43
|
def _event_callback(self, event: PipelineEvent) -> None: ...
|
44
|
-
async def run_pipeline(self, device_id: str, conversation_id: str | None, flags: int = 0, audio_settings: VoiceAssistantAudioSettings | None = None) -> None: ...
|
44
|
+
async def run_pipeline(self, device_id: str, conversation_id: str | None, flags: int = 0, audio_settings: VoiceAssistantAudioSettings | None = None, wake_word_phrase: str | None = None) -> None: ...
|
45
45
|
async def _send_tts(self, media_id: str) -> None: ...
|
@@ -16,7 +16,6 @@ class SpeedtestSensor(CoordinatorEntity[FastdotcomDataUpdateCoordindator], Senso
|
|
16
16
|
_attr_device_class: Incomplete
|
17
17
|
_attr_native_unit_of_measurement: Incomplete
|
18
18
|
_attr_state_class: Incomplete
|
19
|
-
_attr_icon: str
|
20
19
|
_attr_should_poll: bool
|
21
20
|
_attr_has_entity_name: bool
|
22
21
|
_attr_unique_id: Incomplete
|
@@ -11,7 +11,6 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
|
|
11
11
|
from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
|
12
12
|
|
13
13
|
_LOGGER: Incomplete
|
14
|
-
ICON: str
|
15
14
|
SENSOR_TYPES: Incomplete
|
16
15
|
|
17
16
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
@@ -2,7 +2,7 @@ from .const import DOMAIN as DOMAIN, MAX_TEMP as MAX_TEMP, MIN_TEMP as MIN_TEMP,
|
|
2
2
|
from .coordinator import FlexitCoordinator as FlexitCoordinator
|
3
3
|
from .entity import FlexitEntity as FlexitEntity
|
4
4
|
from _typeshed import Incomplete
|
5
|
-
from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACMode as HVACMode, PRESET_AWAY as PRESET_AWAY, PRESET_BOOST as PRESET_BOOST, PRESET_HOME as PRESET_HOME
|
5
|
+
from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode, PRESET_AWAY as PRESET_AWAY, PRESET_BOOST as PRESET_BOOST, PRESET_HOME as PRESET_HOME
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, PRECISION_HALVES as PRECISION_HALVES, UnitOfTemperature as UnitOfTemperature
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
@@ -10,7 +10,7 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
|
10
10
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
11
11
|
from typing import Any
|
12
12
|
|
13
|
-
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry,
|
13
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
14
14
|
|
15
15
|
class FlexitClimateEntity(FlexitEntity, ClimateEntity):
|
16
16
|
_attr_name: Incomplete
|
@@ -26,6 +26,8 @@ class FlexitClimateEntity(FlexitEntity, ClimateEntity):
|
|
26
26
|
def __init__(self, coordinator: FlexitCoordinator) -> None: ...
|
27
27
|
async def async_update(self) -> None: ...
|
28
28
|
@property
|
29
|
+
def hvac_action(self) -> HVACAction | None: ...
|
30
|
+
@property
|
29
31
|
def current_temperature(self) -> float: ...
|
30
32
|
@property
|
31
33
|
def target_temperature(self) -> float: ...
|
@@ -0,0 +1,31 @@
|
|
1
|
+
from . import FlexitCoordinator as FlexitCoordinator
|
2
|
+
from .const import DOMAIN as DOMAIN
|
3
|
+
from .entity import FlexitEntity as FlexitEntity
|
4
|
+
from _typeshed import Incomplete
|
5
|
+
from collections.abc import Awaitable, Callable as Callable
|
6
|
+
from dataclasses import dataclass
|
7
|
+
from flexit_bacnet import FlexitBACnet as FlexitBACnet
|
8
|
+
from homeassistant.components.number import NumberDeviceClass as NumberDeviceClass, NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription, NumberMode as NumberMode
|
9
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
10
|
+
from homeassistant.const import PERCENTAGE as PERCENTAGE
|
11
|
+
from homeassistant.core import HomeAssistant as HomeAssistant
|
12
|
+
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
13
|
+
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
14
|
+
|
15
|
+
@dataclass(kw_only=True, frozen=True)
|
16
|
+
class FlexitNumberEntityDescription(NumberEntityDescription):
|
17
|
+
native_value_fn: Callable[[FlexitBACnet], float]
|
18
|
+
set_native_value_fn: Callable[[FlexitBACnet], Callable[[int], Awaitable[None]]]
|
19
|
+
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, max_value, min_value, mode, native_max_value, native_min_value, native_step, native_unit_of_measurement, step, native_value_fn, set_native_value_fn) -> None: ...
|
20
|
+
|
21
|
+
NUMBERS: tuple[FlexitNumberEntityDescription, ...]
|
22
|
+
|
23
|
+
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
|
+
|
25
|
+
class FlexitNumber(FlexitEntity, NumberEntity):
|
26
|
+
entity_description: FlexitNumberEntityDescription
|
27
|
+
_attr_unique_id: Incomplete
|
28
|
+
def __init__(self, coordinator: FlexitCoordinator, entity_description: FlexitNumberEntityDescription) -> None: ...
|
29
|
+
@property
|
30
|
+
def native_value(self) -> float: ...
|
31
|
+
async def async_set_native_value(self, value: float) -> None: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from .const import CONF_WHITE_CHANNEL_TYPE as CONF_WHITE_CHANNEL_TYPE, DISCOVER_SCAN_TIMEOUT as DISCOVER_SCAN_TIMEOUT, DOMAIN as DOMAIN, FLUX_LED_DISCOVERY as FLUX_LED_DISCOVERY, FLUX_LED_DISCOVERY_SIGNAL as FLUX_LED_DISCOVERY_SIGNAL, FLUX_LED_EXCEPTIONS as FLUX_LED_EXCEPTIONS, SIGNAL_STATE_UPDATED as SIGNAL_STATE_UPDATED
|
1
|
+
from .const import CONF_WHITE_CHANNEL_TYPE as CONF_WHITE_CHANNEL_TYPE, DISCOVER_SCAN_TIMEOUT as DISCOVER_SCAN_TIMEOUT, DOMAIN as DOMAIN, FLUX_LED_DISCOVERY as FLUX_LED_DISCOVERY, FLUX_LED_DISCOVERY_SIGNAL as FLUX_LED_DISCOVERY_SIGNAL, FLUX_LED_EXCEPTIONS as FLUX_LED_EXCEPTIONS, SIGNAL_STATE_UPDATED as SIGNAL_STATE_UPDATED
|
2
2
|
from .coordinator import FluxLedUpdateCoordinator as FluxLedUpdateCoordinator
|
3
3
|
from .discovery import async_build_cached_discovery as async_build_cached_discovery, async_clear_discovery_cache as async_clear_discovery_cache, async_discover_device as async_discover_device, async_discover_devices as async_discover_devices, async_get_discovery as async_get_discovery, async_trigger_discovery as async_trigger_discovery, async_update_entry_from_discovery as async_update_entry_from_discovery
|
4
4
|
from .util import mac_matches_by_one as mac_matches_by_one
|
@@ -6,7 +6,7 @@ from _typeshed import Incomplete
|
|
6
6
|
from flux_led.aio import AIOWifiLedBulb
|
7
7
|
from flux_led.scanner import FluxLEDDiscovery as FluxLEDDiscovery
|
8
8
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
9
|
-
from homeassistant.const import CONF_HOST as CONF_HOST,
|
9
|
+
from homeassistant.const import CONF_HOST as CONF_HOST, Platform as Platform
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
11
11
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
12
12
|
from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
|
@@ -82,7 +82,7 @@ class FritzBoxTools(update_coordinator.DataUpdateCoordinator[UpdateCoordinatorDa
|
|
82
82
|
def __init__(self, hass: HomeAssistant, password: str, username: str = ..., host: str = ..., port: int = ...) -> None: ...
|
83
83
|
async def async_setup(self, options: MappingProxyType[str, Any] | None = None) -> None: ...
|
84
84
|
def setup(self) -> None: ...
|
85
|
-
def
|
85
|
+
async def async_register_entity_updates(self, key: str, update_fn: Callable[[FritzStatus, StateType], Any]) -> Callable[[], None]: ...
|
86
86
|
async def _async_update_data(self) -> UpdateCoordinatorDataType: ...
|
87
87
|
@property
|
88
88
|
def unique_id(self) -> str: ...
|
@@ -220,6 +220,7 @@ class FritzBoxBaseCoordinatorEntity(update_coordinator.CoordinatorEntity[AvmWrap
|
|
220
220
|
_device_name: Incomplete
|
221
221
|
_attr_unique_id: Incomplete
|
222
222
|
def __init__(self, avm_wrapper: AvmWrapper, device_name: str, description: FritzEntityDescription) -> None: ...
|
223
|
+
async def async_added_to_hass(self) -> None: ...
|
223
224
|
@property
|
224
225
|
def device_info(self) -> DeviceInfo: ...
|
225
226
|
|
@@ -5,7 +5,7 @@ from _typeshed import Incomplete
|
|
5
5
|
from homeassistant.components import media_source as media_source
|
6
6
|
from homeassistant.components.media_player import BrowseMedia as BrowseMedia, MediaPlayerEntity as MediaPlayerEntity, MediaPlayerState as MediaPlayerState, MediaType as MediaType, async_process_play_media_url as async_process_play_media_url
|
7
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
8
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
8
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
10
10
|
from typing import Any
|
11
11
|
|
@@ -23,3 +23,4 @@ class FullyMediaPlayer(FullyKioskEntity, MediaPlayerEntity):
|
|
23
23
|
_attr_volume_level: Incomplete
|
24
24
|
async def async_set_volume_level(self, volume: float) -> None: ...
|
25
25
|
async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
|
26
|
+
def _handle_coordinator_update(self) -> None: ...
|
@@ -1,7 +1,7 @@
|
|
1
1
|
from . import DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
|
2
2
|
from _typeshed import Incomplete
|
3
3
|
from datetime import datetime, timedelta
|
4
|
-
from homeassistant.components.climate import ATTR_PRESET_MODE as ATTR_PRESET_MODE, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode, PLATFORM_SCHEMA as PLATFORM_SCHEMA, PRESET_ACTIVITY as PRESET_ACTIVITY, PRESET_AWAY as PRESET_AWAY, PRESET_COMFORT as PRESET_COMFORT, PRESET_HOME as PRESET_HOME, PRESET_NONE as PRESET_NONE, PRESET_SLEEP as PRESET_SLEEP
|
4
|
+
from homeassistant.components.climate import ATTR_PRESET_MODE as ATTR_PRESET_MODE, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode, PLATFORM_SCHEMA as PLATFORM_SCHEMA, PRESET_ACTIVITY as PRESET_ACTIVITY, PRESET_AWAY as PRESET_AWAY, PRESET_COMFORT as PRESET_COMFORT, PRESET_ECO as PRESET_ECO, PRESET_HOME as PRESET_HOME, PRESET_NONE as PRESET_NONE, PRESET_SLEEP as PRESET_SLEEP
|
5
5
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_TEMPERATURE as ATTR_TEMPERATURE, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, PRECISION_HALVES as PRECISION_HALVES, PRECISION_TENTHS as PRECISION_TENTHS, PRECISION_WHOLE as PRECISION_WHOLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfTemperature as UnitOfTemperature
|
6
6
|
from homeassistant.core import CoreState as CoreState, Event as Event, HomeAssistant as HomeAssistant, State as State, callback as callback
|
7
7
|
from homeassistant.exceptions import ConditionError as ConditionError
|
@@ -6,6 +6,7 @@ from homeassistant.const import CONF_HOST as CONF_HOST, Platform as Platform
|
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
7
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
8
8
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
9
|
+
from homeassistant.helpers.device_registry import format_mac as format_mac
|
9
10
|
|
10
11
|
PLATFORMS: Incomplete
|
11
12
|
|
@@ -1,8 +1,11 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from _typeshed import Incomplete
|
3
|
-
from
|
3
|
+
from collections.abc import Callable as Callable
|
4
|
+
from dataclasses import dataclass
|
5
|
+
from gps3.agps3threaded import AGPS3mechanism
|
6
|
+
from homeassistant.components.sensor import PLATFORM_SCHEMA as PLATFORM_SCHEMA, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
|
4
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
|
5
|
-
from homeassistant.const import ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, ATTR_MODE as ATTR_MODE, CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PORT as CONF_PORT
|
8
|
+
from homeassistant.const import ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, ATTR_MODE as ATTR_MODE, CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PORT as CONF_PORT, EntityCategory as EntityCategory
|
6
9
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
7
10
|
from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
|
8
11
|
from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
|
@@ -16,23 +19,26 @@ ATTR_ELEVATION: str
|
|
16
19
|
ATTR_GPS_TIME: str
|
17
20
|
ATTR_SPEED: str
|
18
21
|
DEFAULT_NAME: str
|
22
|
+
_MODE_VALUES: Incomplete
|
23
|
+
|
24
|
+
@dataclass(frozen=True, kw_only=True)
|
25
|
+
class GpsdSensorDescription(SensorEntityDescription):
|
26
|
+
value_fn: Callable[[AGPS3mechanism], str | None]
|
27
|
+
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, value_fn) -> None: ...
|
28
|
+
|
29
|
+
SENSOR_TYPES: tuple[GpsdSensorDescription, ...]
|
19
30
|
|
20
31
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
21
32
|
async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
|
22
33
|
|
23
34
|
class GpsdSensor(SensorEntity):
|
24
35
|
_attr_has_entity_name: bool
|
25
|
-
|
26
|
-
_attr_translation_key: str
|
27
|
-
_attr_device_class: Incomplete
|
28
|
-
_attr_options: Incomplete
|
36
|
+
entity_description: GpsdSensorDescription
|
29
37
|
_attr_device_info: Incomplete
|
30
38
|
_attr_unique_id: Incomplete
|
31
39
|
agps_thread: Incomplete
|
32
|
-
def __init__(self, host: str, port: int, unique_id: str) -> None: ...
|
40
|
+
def __init__(self, host: str, port: int, unique_id: str, description: GpsdSensorDescription) -> None: ...
|
33
41
|
@property
|
34
42
|
def native_value(self) -> str | None: ...
|
35
43
|
@property
|
36
44
|
def extra_state_attributes(self) -> dict[str, Any]: ...
|
37
|
-
@property
|
38
|
-
def icon(self) -> str: ...
|
@@ -65,7 +65,7 @@ async def config_entry_update_listener(hass: HomeAssistant, entry: ConfigEntry)
|
|
65
65
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
66
66
|
async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
67
67
|
async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
|
68
|
-
|
68
|
+
def _process_group_platform(hass: HomeAssistant, domain: str, platform: GroupProtocol) -> None: ...
|
69
69
|
async def _async_process_config(hass: HomeAssistant, config: ConfigType) -> None: ...
|
70
70
|
|
71
71
|
class GroupEntity(Entity, metaclass=abc.ABCMeta):
|
@@ -2,7 +2,7 @@ from . import GroupEntity as GroupEntity
|
|
2
2
|
from .util import find_state_attributes as find_state_attributes, mean_tuple as mean_tuple, reduce_attribute as reduce_attribute
|
3
3
|
from _typeshed import Incomplete
|
4
4
|
from homeassistant.components import light as light
|
5
|
-
from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_EFFECT_LIST as ATTR_EFFECT_LIST, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_MAX_COLOR_TEMP_KELVIN as ATTR_MAX_COLOR_TEMP_KELVIN, ATTR_MIN_COLOR_TEMP_KELVIN as ATTR_MIN_COLOR_TEMP_KELVIN, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_SUPPORTED_COLOR_MODES as ATTR_SUPPORTED_COLOR_MODES, ATTR_TRANSITION as ATTR_TRANSITION, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, PLATFORM_SCHEMA as PLATFORM_SCHEMA
|
5
|
+
from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_MODE as ATTR_COLOR_MODE, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_EFFECT as ATTR_EFFECT, ATTR_EFFECT_LIST as ATTR_EFFECT_LIST, ATTR_FLASH as ATTR_FLASH, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_MAX_COLOR_TEMP_KELVIN as ATTR_MAX_COLOR_TEMP_KELVIN, ATTR_MIN_COLOR_TEMP_KELVIN as ATTR_MIN_COLOR_TEMP_KELVIN, ATTR_RGBWW_COLOR as ATTR_RGBWW_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_SUPPORTED_COLOR_MODES as ATTR_SUPPORTED_COLOR_MODES, ATTR_TRANSITION as ATTR_TRANSITION, ATTR_WHITE as ATTR_WHITE, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, LightEntity as LightEntity, LightEntityFeature as LightEntityFeature, PLATFORM_SCHEMA as PLATFORM_SCHEMA, filter_supported_color_modes as filter_supported_color_modes
|
6
6
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
7
|
from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, CONF_ENTITIES as CONF_ENTITIES, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -33,6 +33,8 @@ class LightGroup(GroupEntity, LightEntity):
|
|
33
33
|
_attr_extra_state_attributes: Incomplete
|
34
34
|
_attr_unique_id: Incomplete
|
35
35
|
mode: Incomplete
|
36
|
+
_attr_color_mode: Incomplete
|
37
|
+
_attr_supported_color_modes: Incomplete
|
36
38
|
def __init__(self, unique_id: str | None, name: str, entity_ids: list[str], mode: bool | None) -> None: ...
|
37
39
|
async def async_turn_on(self, **kwargs: Any) -> None: ...
|
38
40
|
async def async_turn_off(self, **kwargs: Any) -> None: ...
|
@@ -46,7 +48,5 @@ class LightGroup(GroupEntity, LightEntity):
|
|
46
48
|
_attr_color_temp_kelvin: Incomplete
|
47
49
|
_attr_effect_list: Incomplete
|
48
50
|
_attr_effect: Incomplete
|
49
|
-
_attr_color_mode: Incomplete
|
50
|
-
_attr_supported_color_modes: Incomplete
|
51
51
|
_attr_supported_features: Incomplete
|
52
52
|
def async_update_group_state(self) -> None: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from homeassistant.components.hassio import get_os_info as get_os_info
|
1
|
+
from homeassistant.components.hassio import get_os_info as get_os_info, is_hassio as is_hassio
|
2
2
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
3
3
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
4
4
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
@@ -1,8 +1,8 @@
|
|
1
1
|
from .const import DOMAIN as DOMAIN
|
2
2
|
from .models import HardwareProtocol as HardwareProtocol
|
3
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
3
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
4
4
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
5
5
|
from homeassistant.helpers.integration_platform import async_process_integration_platforms as async_process_integration_platforms
|
6
6
|
|
7
7
|
async def async_process_hardware_platforms(hass: HomeAssistant) -> None: ...
|
8
|
-
|
8
|
+
def _register_hardware_platform(hass: HomeAssistant, integration_domain: str, platform: HardwareProtocol) -> None: ...
|
@@ -18,4 +18,4 @@ class SystemStatus:
|
|
18
18
|
|
19
19
|
async def async_setup(hass: HomeAssistant) -> None: ...
|
20
20
|
async def ws_info(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
21
|
-
|
21
|
+
def ws_subscribe_system_status(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
|
@@ -1,4 +1,4 @@
|
|
1
|
-
from homeassistant.components.hassio import get_os_info as get_os_info
|
1
|
+
from homeassistant.components.hassio import get_os_info as get_os_info, is_hassio as is_hassio
|
2
2
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
3
3
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
4
4
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
|
@@ -2,9 +2,10 @@ from .const import DOMAIN as DOMAIN
|
|
2
2
|
from .util import get_usb_service_info as get_usb_service_info
|
3
3
|
from homeassistant.components import usb as usb
|
4
4
|
from homeassistant.components.homeassistant_hardware.silabs_multiprotocol_addon import check_multi_pan_addon as check_multi_pan_addon, get_zigbee_socket as get_zigbee_socket, multi_pan_addon_using_device as multi_pan_addon_using_device
|
5
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
5
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_HARDWARE as SOURCE_HARDWARE
|
6
6
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
7
7
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
8
|
+
from homeassistant.helpers import discovery_flow as discovery_flow
|
8
9
|
|
9
10
|
async def _async_usb_scan_done(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
|
10
11
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -1,9 +1,10 @@
|
|
1
1
|
from .const import RADIO_DEVICE as RADIO_DEVICE, ZHA_HW_DISCOVERY_DATA as ZHA_HW_DISCOVERY_DATA
|
2
|
-
from homeassistant.components.hassio import get_os_info as get_os_info
|
2
|
+
from homeassistant.components.hassio import get_os_info as get_os_info, is_hassio as is_hassio
|
3
3
|
from homeassistant.components.homeassistant_hardware.silabs_multiprotocol_addon import check_multi_pan_addon as check_multi_pan_addon, get_zigbee_socket as get_zigbee_socket, multi_pan_addon_using_device as multi_pan_addon_using_device
|
4
|
-
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
4
|
+
from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_HARDWARE as SOURCE_HARDWARE
|
5
5
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
6
6
|
from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
|
7
|
+
from homeassistant.helpers import discovery_flow as discovery_flow
|
7
8
|
|
8
9
|
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
9
10
|
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
|
@@ -90,7 +90,7 @@ class HomeKit:
|
|
90
90
|
def _async_update_accessories_hash(self) -> bool: ...
|
91
91
|
def add_bridge_accessory(self, state: State) -> HomeAccessory | None: ...
|
92
92
|
def _would_exceed_max_devices(self, name: str | None) -> bool: ...
|
93
|
-
def add_bridge_triggers_accessory(self, device: dr.DeviceEntry, device_triggers: list[dict[str, Any]]) -> None: ...
|
93
|
+
async def add_bridge_triggers_accessory(self, device: dr.DeviceEntry, device_triggers: list[dict[str, Any]]) -> None: ...
|
94
94
|
def async_remove_bridge_accessory(self, aid: int) -> HomeAccessory | None: ...
|
95
95
|
async def async_configure_accessories(self) -> list[State]: ...
|
96
96
|
async def async_start(self, *args: Any) -> None: ...
|
@@ -48,7 +48,7 @@ class HomeAccessory(Accessory):
|
|
48
48
|
def _update_available_from_state(self, new_state: State | None) -> None: ...
|
49
49
|
@property
|
50
50
|
def available(self) -> bool: ...
|
51
|
-
|
51
|
+
def run(self) -> None: ...
|
52
52
|
def async_update_event_state_callback(self, event: EventType[EventStateChangedData]) -> None: ...
|
53
53
|
def async_update_state_callback(self, new_state: State | None) -> None: ...
|
54
54
|
def async_update_linked_battery_callback(self, event: EventType[EventStateChangedData]) -> None: ...
|
@@ -9,9 +9,8 @@ from homeassistant.const import ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, CONF_D
|
|
9
9
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback, split_entity_id as split_entity_id
|
10
10
|
from homeassistant.data_entry_flow import FlowResult as FlowResult
|
11
11
|
from homeassistant.helpers import entity_registry as er
|
12
|
-
from homeassistant.helpers.entityfilter import CONF_EXCLUDE_DOMAINS as CONF_EXCLUDE_DOMAINS, CONF_EXCLUDE_ENTITIES as CONF_EXCLUDE_ENTITIES, CONF_INCLUDE_DOMAINS as CONF_INCLUDE_DOMAINS, CONF_INCLUDE_ENTITIES as CONF_INCLUDE_ENTITIES
|
13
12
|
from homeassistant.loader import async_get_integrations as async_get_integrations
|
14
|
-
from typing import Any
|
13
|
+
from typing import Any, Final, TypedDict
|
15
14
|
|
16
15
|
CONF_CAMERA_AUDIO: str
|
17
16
|
CONF_CAMERA_COPY: str
|
@@ -24,10 +23,20 @@ NEVER_BRIDGED_DOMAINS: Incomplete
|
|
24
23
|
CAMERA_ENTITY_PREFIX: Incomplete
|
25
24
|
SUPPORTED_DOMAINS: Incomplete
|
26
25
|
DEFAULT_DOMAINS: Incomplete
|
27
|
-
|
26
|
+
CONF_INCLUDE_DOMAINS: Final[str]
|
27
|
+
CONF_INCLUDE_ENTITIES: Final[str]
|
28
|
+
CONF_EXCLUDE_DOMAINS: Final[str]
|
29
|
+
CONF_EXCLUDE_ENTITIES: Final[str]
|
28
30
|
|
31
|
+
class EntityFilterDict(TypedDict, total=False):
|
32
|
+
include_domains: list[str]
|
33
|
+
include_entities: list[str]
|
34
|
+
exclude_domains: list[str]
|
35
|
+
exclude_entities: list[str]
|
36
|
+
|
37
|
+
def _make_entity_filter(include_domains: list[str] | None = None, include_entities: list[str] | None = None, exclude_domains: list[str] | None = None, exclude_entities: list[str] | None = None) -> EntityFilterDict: ...
|
29
38
|
async def _async_domain_names(hass: HomeAssistant, domains: list[str]) -> str: ...
|
30
|
-
def
|
39
|
+
def _async_build_entities_filter(domains: list[str], entities: list[str]) -> EntityFilterDict: ...
|
31
40
|
def _async_cameras_from_entities(entities: list[str]) -> dict[str, str]: ...
|
32
41
|
async def _async_name_to_type_map(hass: HomeAssistant) -> dict[str, str]: ...
|
33
42
|
|
@@ -35,7 +35,7 @@ class Camera(HomeAccessory, PyhapCamera):
|
|
35
35
|
_char_doorbell_detected_switch: Incomplete
|
36
36
|
linked_doorbell_sensor: Incomplete
|
37
37
|
def __init__(self, hass: HomeAssistant, driver: HomeDriver, name: str, entity_id: str, aid: int, config: dict[str, Any]) -> None: ...
|
38
|
-
|
38
|
+
def run(self) -> None: ...
|
39
39
|
def _async_update_motion_state_event(self, event: EventType[EventStateChangedData]) -> None: ...
|
40
40
|
def _async_update_motion_state(self, new_state: State | None) -> None: ...
|
41
41
|
def _async_update_doorbell_state_event(self, event: EventType[EventStateChangedData]) -> None: ...
|
@@ -20,7 +20,7 @@ class GarageDoorOpener(HomeAccessory):
|
|
20
20
|
char_obstruction_detected: Incomplete
|
21
21
|
linked_obstruction_sensor: Incomplete
|
22
22
|
def __init__(self, *args: Any) -> None: ...
|
23
|
-
|
23
|
+
def run(self) -> None: ...
|
24
24
|
def _async_update_obstruction_event(self, event: EventType[EventStateChangedData]) -> None: ...
|
25
25
|
def _async_update_obstruction_state(self, new_state: State | None) -> None: ...
|
26
26
|
def set_state(self, value: int) -> None: ...
|
@@ -32,7 +32,7 @@ class HumidifierDehumidifier(HomeAccessory):
|
|
32
32
|
char_active: Incomplete
|
33
33
|
linked_humidity_sensor: Incomplete
|
34
34
|
def __init__(self, *args: Any) -> None: ...
|
35
|
-
|
35
|
+
def run(self) -> None: ...
|
36
36
|
def async_update_current_humidity_event(self, event: EventType[EventStateChangedData]) -> None: ...
|
37
37
|
def _async_update_current_humidity(self, new_state: State | None) -> None: ...
|
38
38
|
def _async_update_current_humidity_value(self, current_humidity: float) -> None: ...
|
@@ -14,8 +14,10 @@ class DeviceTriggerAccessory(HomeAccessory):
|
|
14
14
|
_remove_triggers: Incomplete
|
15
15
|
triggers: Incomplete
|
16
16
|
def __init__(self, *args: Any, device_triggers: list[dict[str, Any]] | None = None, device_id: str | None = None) -> None: ...
|
17
|
+
def _remove_triggers_if_configured(self) -> None: ...
|
18
|
+
async def async_attach(self) -> None: ...
|
19
|
+
def run(self) -> None: ...
|
17
20
|
async def async_trigger(self, run_variables: dict[str, Any], context: Context | None = None, skip_condition: bool = False) -> None: ...
|
18
|
-
async def run(self) -> None: ...
|
19
21
|
def async_stop(self) -> None: ...
|
20
22
|
@property
|
21
23
|
def available(self) -> bool: ...
|
@@ -3,6 +3,7 @@ from .connection import HKDevice as HKDevice
|
|
3
3
|
from .const import DOMAIN as DOMAIN, KNOWN_DEVICES as KNOWN_DEVICES
|
4
4
|
from .utils import async_get_controller as async_get_controller
|
5
5
|
from _typeshed import Incomplete
|
6
|
+
from aiohomekit.controller import ble as ble, coap as coap, ip as ip
|
6
7
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
7
8
|
from homeassistant.const import ATTR_IDENTIFIERS as ATTR_IDENTIFIERS, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
|
8
9
|
from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant
|
@@ -16,7 +16,6 @@ TARGET_STATE_MAP: Incomplete
|
|
16
16
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
17
17
|
|
18
18
|
class HomeKitAlarmControlPanelEntity(HomeKitEntity, AlarmControlPanelEntity):
|
19
|
-
_attr_icon: str
|
20
19
|
_attr_supported_features: Incomplete
|
21
20
|
def get_characteristic_types(self) -> list[str]: ...
|
22
21
|
@property
|
@@ -3,6 +3,7 @@ from .connection import HKDevice as HKDevice
|
|
3
3
|
from .entity import CharacteristicEntity as CharacteristicEntity
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from aiohomekit.model.characteristics import Characteristic as Characteristic
|
6
|
+
from collections.abc import Callable as Callable
|
6
7
|
from dataclasses import dataclass
|
7
8
|
from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceClass, ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
|
8
9
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry
|
@@ -15,14 +16,17 @@ _LOGGER: Incomplete
|
|
15
16
|
|
16
17
|
@dataclass(frozen=True)
|
17
18
|
class HomeKitButtonEntityDescription(ButtonEntityDescription):
|
19
|
+
probe: Callable[[Characteristic], bool] | None = ...
|
18
20
|
write_value: int | str | None = ...
|
19
|
-
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, write_value) -> None: ...
|
21
|
+
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, probe, write_value) -> None: ...
|
20
22
|
|
21
23
|
BUTTON_ENTITIES: dict[str, HomeKitButtonEntityDescription]
|
22
24
|
|
23
25
|
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
|
24
26
|
|
25
|
-
class
|
27
|
+
class BaseHomeKitButton(CharacteristicEntity, ButtonEntity): ...
|
28
|
+
|
29
|
+
class HomeKitButton(BaseHomeKitButton):
|
26
30
|
entity_description: HomeKitButtonEntityDescription
|
27
31
|
def __init__(self, conn: HKDevice, info: ConfigType, char: Characteristic, description: HomeKitButtonEntityDescription) -> None: ...
|
28
32
|
def get_characteristic_types(self) -> list[str]: ...
|
@@ -30,13 +34,13 @@ class HomeKitButton(CharacteristicEntity, ButtonEntity):
|
|
30
34
|
def name(self) -> str: ...
|
31
35
|
async def async_press(self) -> None: ...
|
32
36
|
|
33
|
-
class HomeKitEcobeeClearHoldButton(
|
37
|
+
class HomeKitEcobeeClearHoldButton(BaseHomeKitButton):
|
34
38
|
def get_characteristic_types(self) -> list[str]: ...
|
35
39
|
@property
|
36
40
|
def name(self) -> str: ...
|
37
41
|
async def async_press(self) -> None: ...
|
38
42
|
|
39
|
-
class HomeKitProvisionPreferredThreadCredentials(
|
43
|
+
class HomeKitProvisionPreferredThreadCredentials(BaseHomeKitButton):
|
40
44
|
_attr_entity_category: Incomplete
|
41
45
|
def get_characteristic_types(self) -> list[str]: ...
|
42
46
|
@property
|