homeassistant-stubs 2024.11.0b9__py3-none-any.whl → 2024.11.2__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.
Files changed (23) hide show
  1. homeassistant-stubs/components/go2rtc/__init__.pyi +1 -1
  2. homeassistant-stubs/components/go2rtc/const.pyi +1 -0
  3. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  4. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +3 -1
  5. homeassistant-stubs/components/hydrawise/__init__.pyi +2 -2
  6. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
  7. homeassistant-stubs/components/hydrawise/const.pyi +2 -1
  8. homeassistant-stubs/components/hydrawise/coordinator.pyi +23 -8
  9. homeassistant-stubs/components/hydrawise/sensor.pyi +3 -2
  10. homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
  11. homeassistant-stubs/components/hydrawise/valve.pyi +1 -1
  12. homeassistant-stubs/components/linkplay/media_player.pyi +1 -0
  13. homeassistant-stubs/components/myuplink/binary_sensor.pyi +2 -1
  14. homeassistant-stubs/components/myuplink/const.pyi +1 -0
  15. homeassistant-stubs/components/myuplink/helpers.pyi +2 -0
  16. homeassistant-stubs/components/myuplink/number.pyi +2 -1
  17. homeassistant-stubs/components/myuplink/sensor.pyi +2 -1
  18. homeassistant-stubs/components/myuplink/switch.pyi +2 -1
  19. homeassistant-stubs/components/nest/camera.pyi +22 -16
  20. {homeassistant_stubs-2024.11.0b9.dist-info → homeassistant_stubs-2024.11.2.dist-info}/METADATA +2 -3
  21. {homeassistant_stubs-2024.11.0b9.dist-info → homeassistant_stubs-2024.11.2.dist-info}/RECORD +23 -23
  22. {homeassistant_stubs-2024.11.0b9.dist-info → homeassistant_stubs-2024.11.2.dist-info}/WHEEL +1 -1
  23. {homeassistant_stubs-2024.11.0b9.dist-info → homeassistant_stubs-2024.11.2.dist-info}/licenses/LICENSE +0 -0
@@ -1,4 +1,4 @@
1
- from .const import CONF_DEBUG_UI as CONF_DEBUG_UI, DEBUG_UI_URL_MESSAGE as DEBUG_UI_URL_MESSAGE, DOMAIN as DOMAIN, HA_MANAGED_URL as HA_MANAGED_URL
1
+ from .const import CONF_DEBUG_UI as CONF_DEBUG_UI, DEBUG_UI_URL_MESSAGE as DEBUG_UI_URL_MESSAGE, DOMAIN as DOMAIN, HA_MANAGED_URL as HA_MANAGED_URL, RECOMMENDED_VERSION as RECOMMENDED_VERSION
2
2
  from .server import Server as Server
3
3
  from _typeshed import Incomplete
4
4
  from go2rtc_client.ws import ReceiveMessages as ReceiveMessages
@@ -5,3 +5,4 @@ CONF_DEBUG_UI: str
5
5
  DEBUG_UI_URL_MESSAGE: str
6
6
  HA_MANAGED_API_PORT: int
7
7
  HA_MANAGED_URL: Incomplete
8
+ RECOMMENDED_VERSION: str
@@ -2,7 +2,7 @@ from .accessories import HomeAccessory as HomeAccessory, TYPES as TYPES
2
2
  from .const import CHAR_CURRENT_SECURITY_STATE as CHAR_CURRENT_SECURITY_STATE, CHAR_TARGET_SECURITY_STATE as CHAR_TARGET_SECURITY_STATE, SERV_SECURITY_SYSTEM as SERV_SECURITY_SYSTEM
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.alarm_control_panel import AlarmControlPanelEntityFeature as AlarmControlPanelEntityFeature, AlarmControlPanelState as AlarmControlPanelState
5
- from homeassistant.const import ATTR_CODE as ATTR_CODE, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, SERVICE_ALARM_ARM_AWAY as SERVICE_ALARM_ARM_AWAY, SERVICE_ALARM_ARM_HOME as SERVICE_ALARM_ARM_HOME, SERVICE_ALARM_ARM_NIGHT as SERVICE_ALARM_ARM_NIGHT, SERVICE_ALARM_DISARM as SERVICE_ALARM_DISARM
5
+ from homeassistant.const import ATTR_CODE as ATTR_CODE, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_SUPPORTED_FEATURES as ATTR_SUPPORTED_FEATURES, SERVICE_ALARM_ARM_AWAY as SERVICE_ALARM_ARM_AWAY, SERVICE_ALARM_ARM_HOME as SERVICE_ALARM_ARM_HOME, SERVICE_ALARM_ARM_NIGHT as SERVICE_ALARM_ARM_NIGHT, SERVICE_ALARM_DISARM as SERVICE_ALARM_DISARM, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
6
6
  from homeassistant.core import State as State, callback as callback
7
7
  from typing import Any
8
8
 
@@ -10,12 +10,14 @@ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as Da
10
10
  _LOGGER: Incomplete
11
11
  MAX_WS_RECONNECT_TIME: int
12
12
  SCAN_INTERVAL: Incomplete
13
+ DEFAULT_RECONNECT_TIME: int
13
14
 
14
15
  class AutomowerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, MowerAttributes]]):
15
16
  config_entry: ConfigEntry
16
17
  api: Incomplete
17
18
  ws_connected: bool
19
+ reconnect_time: Incomplete
18
20
  def __init__(self, hass: HomeAssistant, api: AutomowerSession, entry: ConfigEntry) -> None: ...
19
21
  async def _async_update_data(self) -> dict[str, MowerAttributes]: ...
20
22
  def callback(self, ws_data: dict[str, MowerAttributes]) -> None: ...
21
- async def client_listen(self, hass: HomeAssistant, entry: ConfigEntry, automower_client: AutomowerSession, reconnect_time: int = 2) -> None: ...
23
+ async def client_listen(self, hass: HomeAssistant, entry: ConfigEntry, automower_client: AutomowerSession) -> None: ...
@@ -1,5 +1,5 @@
1
- from .const import DOMAIN as DOMAIN, SCAN_INTERVAL as SCAN_INTERVAL
2
- from .coordinator import HydrawiseDataUpdateCoordinator as HydrawiseDataUpdateCoordinator
1
+ from .const import DOMAIN as DOMAIN
2
+ from .coordinator import HydrawiseMainDataUpdateCoordinator as HydrawiseMainDataUpdateCoordinator, HydrawiseUpdateCoordinators as HydrawiseUpdateCoordinators, HydrawiseWaterUseDataUpdateCoordinator as HydrawiseWaterUseDataUpdateCoordinator
3
3
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -1,5 +1,5 @@
1
1
  from .const import DOMAIN as DOMAIN, SERVICE_RESUME as SERVICE_RESUME, SERVICE_START_WATERING as SERVICE_START_WATERING, SERVICE_SUSPEND as SERVICE_SUSPEND
2
- from .coordinator import HydrawiseDataUpdateCoordinator as HydrawiseDataUpdateCoordinator
2
+ from .coordinator import HydrawiseUpdateCoordinators as HydrawiseUpdateCoordinators
3
3
  from .entity import HydrawiseEntity as HydrawiseEntity
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable
@@ -4,7 +4,8 @@ LOGGER: Incomplete
4
4
  DOMAIN: str
5
5
  DEFAULT_WATERING_TIME: Incomplete
6
6
  MANUFACTURER: str
7
- SCAN_INTERVAL: Incomplete
7
+ MAIN_SCAN_INTERVAL: Incomplete
8
+ WATER_USE_SCAN_INTERVAL: Incomplete
8
9
  SIGNAL_UPDATE_HYDRAWISE: str
9
10
  SERVICE_RESUME: str
10
11
  SERVICE_START_WATERING: str
@@ -1,6 +1,6 @@
1
- from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER, MAIN_SCAN_INTERVAL as MAIN_SCAN_INTERVAL, WATER_USE_SCAN_INTERVAL as WATER_USE_SCAN_INTERVAL
2
+ from _typeshed import Incomplete
2
3
  from dataclasses import dataclass
3
- from datetime import timedelta
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
6
6
  from homeassistant.util.dt import now as now
@@ -10,13 +10,28 @@ from pydrawise.schema import Controller as Controller, ControllerWaterUseSummary
10
10
  @dataclass
11
11
  class HydrawiseData:
12
12
  user: User
13
- controllers: dict[int, Controller]
14
- zones: dict[int, Zone]
15
- sensors: dict[int, Sensor]
16
- daily_water_summary: dict[int, ControllerWaterUseSummary]
17
- def __init__(self, user, controllers, zones, sensors, daily_water_summary) -> None: ...
13
+ controllers: dict[int, Controller] = ...
14
+ zones: dict[int, Zone] = ...
15
+ sensors: dict[int, Sensor] = ...
16
+ daily_water_summary: dict[int, ControllerWaterUseSummary] = ...
17
+ def __init__(self, user, controllers=..., zones=..., sensors=..., daily_water_summary=...) -> None: ...
18
+
19
+ @dataclass
20
+ class HydrawiseUpdateCoordinators:
21
+ main: HydrawiseMainDataUpdateCoordinator
22
+ water_use: HydrawiseWaterUseDataUpdateCoordinator
23
+ def __init__(self, main, water_use) -> None: ...
18
24
 
19
25
  class HydrawiseDataUpdateCoordinator(DataUpdateCoordinator[HydrawiseData]):
20
26
  api: Hydrawise
21
- def __init__(self, hass: HomeAssistant, api: Hydrawise, scan_interval: timedelta) -> None: ...
27
+
28
+ class HydrawiseMainDataUpdateCoordinator(HydrawiseDataUpdateCoordinator):
29
+ api: Incomplete
30
+ def __init__(self, hass: HomeAssistant, api: Hydrawise) -> None: ...
31
+ async def _async_update_data(self) -> HydrawiseData: ...
32
+
33
+ class HydrawiseWaterUseDataUpdateCoordinator(HydrawiseDataUpdateCoordinator):
34
+ _main_coordinator: HydrawiseMainDataUpdateCoordinator
35
+ api: Incomplete
36
+ def __init__(self, hass: HomeAssistant, api: Hydrawise, main_coordinator: HydrawiseMainDataUpdateCoordinator) -> None: ...
22
37
  async def _async_update_data(self) -> HydrawiseData: ...
@@ -1,5 +1,5 @@
1
1
  from .const import DOMAIN as DOMAIN
2
- from .coordinator import HydrawiseDataUpdateCoordinator as HydrawiseDataUpdateCoordinator
2
+ from .coordinator import HydrawiseUpdateCoordinators as HydrawiseUpdateCoordinators
3
3
  from .entity import HydrawiseEntity as HydrawiseEntity
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable
@@ -26,7 +26,8 @@ def _get_controller_daily_inactive_water_use(sensor: HydrawiseSensor) -> float |
26
26
  def _get_controller_daily_active_water_time(sensor: HydrawiseSensor) -> float: ...
27
27
  def _get_controller_daily_total_water_use(sensor: HydrawiseSensor) -> float | None: ...
28
28
 
29
- CONTROLLER_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
29
+ WATER_USE_CONTROLLER_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
30
+ WATER_USE_ZONE_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
30
31
  FLOW_CONTROLLER_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
31
32
  FLOW_ZONE_SENSORS: tuple[SensorEntityDescription, ...]
32
33
  ZONE_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
@@ -1,5 +1,5 @@
1
1
  from .const import DEFAULT_WATERING_TIME as DEFAULT_WATERING_TIME, DOMAIN as DOMAIN
2
- from .coordinator import HydrawiseDataUpdateCoordinator as HydrawiseDataUpdateCoordinator
2
+ from .coordinator import HydrawiseUpdateCoordinators as HydrawiseUpdateCoordinators
3
3
  from .entity import HydrawiseEntity as HydrawiseEntity
4
4
  from collections.abc import Callable as Callable, Coroutine
5
5
  from dataclasses import dataclass
@@ -1,5 +1,5 @@
1
1
  from .const import DOMAIN as DOMAIN
2
- from .coordinator import HydrawiseDataUpdateCoordinator as HydrawiseDataUpdateCoordinator
2
+ from .coordinator import HydrawiseUpdateCoordinators as HydrawiseUpdateCoordinators
3
3
  from .entity import HydrawiseEntity as HydrawiseEntity
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.valve import ValveDeviceClass as ValveDeviceClass, ValveEntity as ValveEntity, ValveEntityDescription as ValveEntityDescription, ValveEntityFeature as ValveEntityFeature
@@ -59,6 +59,7 @@ class LinkPlayMediaPlayerEntity(MediaPlayerEntity):
59
59
  async def async_browse_media(self, media_content_type: MediaType | str | None = None, media_content_id: str | None = None) -> BrowseMedia: ...
60
60
  async def async_play_media(self, media_type: MediaType | str, media_id: str, **kwargs: Any) -> None: ...
61
61
  async def async_play_preset(self, preset_number: int) -> None: ...
62
+ async def async_media_seek(self, position: float) -> None: ...
62
63
  async def async_join_players(self, group_members: list[str]) -> None: ...
63
64
  def _get_linkplay_bridge(self, entity_id: str) -> LinkPlayBridge: ...
64
65
  @property
@@ -1,6 +1,7 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
+ from .const import F_SERIES as F_SERIES
2
3
  from .entity import MyUplinkEntity as MyUplinkEntity, MyUplinkSystemEntity as MyUplinkSystemEntity
3
- from .helpers import find_matching_platform as find_matching_platform
4
+ from .helpers import find_matching_platform as find_matching_platform, transform_model_series as transform_model_series
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
6
7
  from homeassistant.const import Platform as Platform
@@ -5,3 +5,4 @@ API_ENDPOINT: str
5
5
  OAUTH2_AUTHORIZE: str
6
6
  OAUTH2_TOKEN: str
7
7
  OAUTH2_SCOPES: Incomplete
8
+ F_SERIES: str
@@ -1,3 +1,4 @@
1
+ from .const import F_SERIES as F_SERIES
1
2
  from _typeshed import Incomplete
2
3
  from homeassistant.components.number import NumberEntityDescription as NumberEntityDescription
3
4
  from homeassistant.components.sensor import SensorEntityDescription as SensorEntityDescription
@@ -11,3 +12,4 @@ PARAMETER_ID_TO_EXCLUDE_F730: Incomplete
11
12
  PARAMETER_ID_TO_INCLUDE_SMO20: Incomplete
12
13
 
13
14
  def skip_entity(model: str, device_point: DevicePoint) -> bool: ...
15
+ def transform_model_series(prefix: str) -> str: ...
@@ -1,6 +1,7 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
+ from .const import F_SERIES as F_SERIES
2
3
  from .entity import MyUplinkEntity as MyUplinkEntity
3
- from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity
4
+ from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity, transform_model_series as transform_model_series
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
6
7
  from homeassistant.const import Platform as Platform
@@ -1,6 +1,7 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
+ from .const import F_SERIES as F_SERIES
2
3
  from .entity import MyUplinkEntity as MyUplinkEntity
3
- from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity
4
+ from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity, transform_model_series as transform_model_series
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
6
7
  from homeassistant.const import Platform as Platform, REVOLUTIONS_PER_MINUTE as REVOLUTIONS_PER_MINUTE, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfEnergy as UnitOfEnergy, UnitOfFrequency as UnitOfFrequency, UnitOfPower as UnitOfPower, UnitOfPressure as UnitOfPressure, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate
@@ -1,6 +1,7 @@
1
1
  from . import MyUplinkConfigEntry as MyUplinkConfigEntry, MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
+ from .const import F_SERIES as F_SERIES
2
3
  from .entity import MyUplinkEntity as MyUplinkEntity
3
- from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity
4
+ from .helpers import find_matching_platform as find_matching_platform, skip_entity as skip_entity, transform_model_series as transform_model_series
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
6
7
  from homeassistant.const import Platform as Platform
@@ -1,10 +1,9 @@
1
- import abc
2
1
  import datetime
3
2
  from .const import DATA_DEVICE_MANAGER as DATA_DEVICE_MANAGER, DOMAIN as DOMAIN
4
3
  from .device_info import NestDeviceInfo as NestDeviceInfo
5
4
  from _typeshed import Incomplete
6
- from abc import ABC, abstractmethod
7
- from collections.abc import Callable as Callable
5
+ from abc import ABC
6
+ from collections.abc import Awaitable, Callable as Callable
8
7
  from google_nest_sdm.camera_traits import CameraLiveStreamTrait, RtspStream as RtspStream, WebRtcStream as WebRtcStream
9
8
  from google_nest_sdm.device import Device as Device
10
9
  from google_nest_sdm.device_manager import DeviceManager as DeviceManager
@@ -16,14 +15,28 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
16
15
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
17
16
  from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
18
17
  from homeassistant.util.dt import utcnow as utcnow
18
+ from webrtc_models import RTCIceCandidate as RTCIceCandidate
19
19
 
20
20
  _LOGGER: Incomplete
21
21
  PLACEHOLDER: Incomplete
22
22
  STREAM_EXPIRATION_BUFFER: Incomplete
23
+ MIN_REFRESH_BACKOFF_INTERVAL: Incomplete
24
+ MAX_REFRESH_BACKOFF_INTERVAL: Incomplete
25
+ BACKOFF_MULTIPLIER: float
23
26
 
24
27
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
25
28
 
26
- class NestCameraBaseEntity(Camera, ABC, metaclass=abc.ABCMeta):
29
+ class StreamRefresh:
30
+ _hass: Incomplete
31
+ _unsub: Incomplete
32
+ _min_refresh_interval: Incomplete
33
+ _refresh_cb: Incomplete
34
+ def __init__(self, hass: HomeAssistant, expires_at: datetime.datetime, refresh_cb: Callable[[], Awaitable[datetime.datetime | None]]) -> None: ...
35
+ def unsub(self) -> None: ...
36
+ async def _handle_refresh(self, _: datetime.datetime) -> None: ...
37
+ def _schedule_stream_refresh(self, refresh_time: datetime.datetime) -> None: ...
38
+
39
+ class NestCameraBaseEntity(Camera, ABC):
27
40
  _attr_has_entity_name: bool
28
41
  _attr_name: Incomplete
29
42
  _attr_is_streaming: bool
@@ -33,43 +46,36 @@ class NestCameraBaseEntity(Camera, ABC, metaclass=abc.ABCMeta):
33
46
  _attr_brand: Incomplete
34
47
  _attr_model: Incomplete
35
48
  _attr_unique_id: Incomplete
36
- _stream_refresh_unsub: Incomplete
37
49
  def __init__(self, device: Device) -> None: ...
38
- @abstractmethod
39
- def _stream_expires_at(self) -> datetime.datetime | None: ...
40
- @abstractmethod
41
- async def _async_refresh_stream(self) -> None: ...
42
- def _schedule_stream_refresh(self) -> None: ...
43
- async def _handle_stream_refresh(self, _: datetime.datetime) -> None: ...
44
50
  async def async_added_to_hass(self) -> None: ...
45
- async def async_will_remove_from_hass(self) -> None: ...
46
51
 
47
52
  class NestRTSPEntity(NestCameraBaseEntity):
48
53
  _rtsp_stream: RtspStream | None
49
54
  _rtsp_live_stream_trait: CameraLiveStreamTrait
50
55
  _create_stream_url_lock: Incomplete
56
+ _refresh_unsub: Incomplete
51
57
  def __init__(self, device: Device) -> None: ...
52
58
  @property
53
59
  def use_stream_for_stills(self) -> bool: ...
54
60
  @property
55
61
  def available(self) -> bool: ...
56
62
  async def stream_source(self) -> str | None: ...
57
- def _stream_expires_at(self) -> datetime.datetime | None: ...
58
63
  stream: Incomplete
59
- async def _async_refresh_stream(self) -> None: ...
64
+ async def _async_refresh_stream(self) -> datetime.datetime | None: ...
60
65
  async def async_will_remove_from_hass(self) -> None: ...
61
66
 
62
67
  class NestWebRTCEntity(NestCameraBaseEntity):
63
68
  _webrtc_sessions: Incomplete
69
+ _refresh_unsub: Incomplete
64
70
  def __init__(self, device: Device) -> None: ...
65
71
  @property
66
72
  def frontend_stream_type(self) -> StreamType | None: ...
67
- def _stream_expires_at(self) -> datetime.datetime | None: ...
68
- async def _async_refresh_stream(self) -> None: ...
73
+ async def _async_refresh_stream(self, session_id: str) -> datetime.datetime | None: ...
69
74
  async def async_camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
70
75
  @classmethod
71
76
  def placeholder_image(cls) -> bytes: ...
72
77
  async def async_handle_async_webrtc_offer(self, offer_sdp: str, session_id: str, send_message: WebRTCSendMessage) -> None: ...
78
+ async def async_on_webrtc_candidate(self, session_id: str, candidate: RTCIceCandidate) -> None: ...
73
79
  def close_webrtc_session(self, session_id: str) -> None: ...
74
80
  def _async_get_webrtc_client_configuration(self) -> WebRTCClientConfiguration: ...
75
81
  async def async_will_remove_from_hass(self) -> None: ...
@@ -1,13 +1,12 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: homeassistant-stubs
3
- Version: 2024.11.0b9
3
+ Version: 2024.11.2
4
4
  Summary: PEP 484 typing stubs for Home Assistant Core
5
5
  Project-URL: Homepage, https://github.com/KapJI/homeassistant-stubs
6
6
  Project-URL: Bug Tracker, https://github.com/KapJI/homeassistant-stubs/issues
7
7
  Project-URL: Release Notes, https://github.com/KapJI/homeassistant-stubs/releases
8
8
  Author-email: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
9
9
  License: MIT
10
- License-File: LICENSE
11
10
  Keywords: homeassistant,pep484,typing
12
11
  Classifier: Development Status :: 5 - Production/Stable
13
12
  Classifier: Intended Audience :: Developers
@@ -18,7 +17,7 @@ Classifier: Topic :: Home Automation
18
17
  Classifier: Topic :: Software Development
19
18
  Classifier: Typing :: Typed
20
19
  Requires-Python: <3.14,>=3.12
21
- Requires-Dist: homeassistant==2024.11.0b9
20
+ Requires-Dist: homeassistant==2024.11.2
22
21
  Description-Content-Type: text/markdown
23
22
 
24
23
  [![CI](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml/badge.svg)](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
@@ -1193,9 +1193,9 @@ homeassistant-stubs/components/glances/config_flow.pyi,sha256=9LFryGmnVNg15dQNth
1193
1193
  homeassistant-stubs/components/glances/const.pyi,sha256=bfttylfl1LkuE1doq8--8feKcQvBtgyt-lU59a6EUKg,155
1194
1194
  homeassistant-stubs/components/glances/coordinator.pyi,sha256=rht3P0VeXXngzYrFQer3jg1jH11lkz5k5frRAAwwhNQ,1009
1195
1195
  homeassistant-stubs/components/glances/sensor.pyi,sha256=lN9vtr3ZXfcHSifVyPCM-ZT9tXPg6awhpfQIyf5WX0Q,2453
1196
- homeassistant-stubs/components/go2rtc/__init__.pyi,sha256=jfH1gk961gkAMGj02i0Z8TkfDily4uzyNK1Ed8PNWIY,2516
1196
+ homeassistant-stubs/components/go2rtc/__init__.pyi,sha256=jAZtK-NB4vMjWjPLEFOHQ3RrNiOKx_yhgfcdlP-GpqY,2560
1197
1197
  homeassistant-stubs/components/go2rtc/config_flow.pyi,sha256=vm2mv28c3EqTWnBZ44h9BsVeFA6HkwcGRrkH-BDe9dA,336
1198
- homeassistant-stubs/components/go2rtc/const.pyi,sha256=D_MF01aCJXyEDA_iT78m2BwtXN69V__g2nwhnTMHvlY,143
1198
+ homeassistant-stubs/components/go2rtc/const.pyi,sha256=V0qsn3eGXcf-nwNcfgT9RbW3lirBzMb4jhy5U-ADq-c,168
1199
1199
  homeassistant-stubs/components/go2rtc/server.pyi,sha256=djyRt4YycXgZICQTw2fOageqDZJx2j0junB44H3sbxQ,1585
1200
1200
  homeassistant-stubs/components/goalzero/__init__.pyi,sha256=SewH2e3FxdXwaXOFXOr2DswVJMS2UzOHTk948U2P9eI,764
1201
1201
  homeassistant-stubs/components/goalzero/binary_sensor.pyi,sha256=XynzAbz3knRbNbeALSQT8Vkvj_u6VFtgmFvcMav1mdM,879
@@ -1368,7 +1368,7 @@ homeassistant-stubs/components/homekit/type_lights.pyi,sha256=g2lUN_iaGO_ZSznl-q
1368
1368
  homeassistant-stubs/components/homekit/type_locks.pyi,sha256=xdEFPQ-uWLj7hytNhs6xJlM7NxQG7SnOaBDZ1zXTU-0,987
1369
1369
  homeassistant-stubs/components/homekit/type_media_players.pyi,sha256=cG-c8Y9qtoiRsx9W82nlwwRJSVTbVbctlsmuczGYegI,3533
1370
1370
  homeassistant-stubs/components/homekit/type_remotes.pyi,sha256=7detJ0GlH8LtYUdbuiJIrok6wpXidfZxQbrQNpXnW9k,3159
1371
- homeassistant-stubs/components/homekit/type_security_systems.pyi,sha256=KN81bp6YdiZgEVjAWAqqtktnzvcZ9Uaj7IV5cO43vbM,1472
1371
+ homeassistant-stubs/components/homekit/type_security_systems.pyi,sha256=n71mXPm6X_LHI6YfOvZrzacVT7zUGpfJLw43DwXOuww,1544
1372
1372
  homeassistant-stubs/components/homekit/type_sensors.pyi,sha256=RMnKJTyPINTUJ9ZsM-TToKOkneS22OsC2A-yCsrOwQY,5342
1373
1373
  homeassistant-stubs/components/homekit/type_switches.pyi,sha256=HrqUwhrHq8pzn-LdZ-kyVioWXRLSjXpQ3SYuPkF4Pqg,3729
1374
1374
  homeassistant-stubs/components/homekit/type_thermostats.pyi,sha256=IvgnmVmszNrYbciMv2MvOw5pdNdBkFlIpVJ5pr9qd54,6391
@@ -1444,7 +1444,7 @@ homeassistant-stubs/components/husqvarna_automower/button.pyi,sha256=emAJrbV7S9i
1444
1444
  homeassistant-stubs/components/husqvarna_automower/calendar.pyi,sha256=EV_EQbf9oaKTVr9wWSNctOBGE5Qb1DTS-JNMT56p8wU,1133
1445
1445
  homeassistant-stubs/components/husqvarna_automower/config_flow.pyi,sha256=U3_BUYAI76hjzTkjeqAHBtx-VLJuF54axJqwYwI68Zo,1152
1446
1446
  homeassistant-stubs/components/husqvarna_automower/const.pyi,sha256=pB_yshRzHGZhhBWm33OAgDjR0ZOKWXCECioUDJ-O6RE,88
1447
- homeassistant-stubs/components/husqvarna_automower/coordinator.pyi,sha256=j1e5c_LT5FV-DSCvfzJKv-WBf93Qt484eNkmV93GsJA,1185
1447
+ homeassistant-stubs/components/husqvarna_automower/coordinator.pyi,sha256=cKchxxTXkM1jm8Hf4He7a7yx14I7WNWud51Bf4vFYJY,1219
1448
1448
  homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi,sha256=f0X9lYPZpfd7BWx6T9mz5CaGtYvo3B8fQw8dCbaLAgQ,947
1449
1449
  homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi,sha256=QWsdtpRLDhfVAs7xXNmlHnhuCfBiAA3z05eHdS3TJJM,842
1450
1450
  homeassistant-stubs/components/husqvarna_automower/entity.pyi,sha256=qPgrglpVEQBx_mFHAPA-_-u7tfkCjH5OJA8SkOW3GjA,2063
@@ -1453,15 +1453,15 @@ homeassistant-stubs/components/husqvarna_automower/number.pyi,sha256=nTN3WuRr0HI
1453
1453
  homeassistant-stubs/components/husqvarna_automower/select.pyi,sha256=yjGZKxxxBW1NYEpTTC1IhZoNJTKTyENDv00e_gTEMXk,1196
1454
1454
  homeassistant-stubs/components/husqvarna_automower/sensor.pyi,sha256=K7mBTg47RjQptVSzes0iYuCRCoSf_9m4eif5fSOJJIA,4554
1455
1455
  homeassistant-stubs/components/husqvarna_automower/switch.pyi,sha256=kwCdv_-HHRorL1__aUqXNE1dgQxpBrckiG4RcXp31Cw,2498
1456
- homeassistant-stubs/components/hydrawise/__init__.pyi,sha256=t2yqEt3ccdEF7_WOKibmnLc4PESDvHVRHRDluCI91Wk,689
1457
- homeassistant-stubs/components/hydrawise/binary_sensor.pyi,sha256=A5clCdO6OlKutr8jv9wEwfw5JzW_w6NHjlCZ5_cA6d4,2504
1456
+ homeassistant-stubs/components/hydrawise/__init__.pyi,sha256=4VF1fmJIRK6hazYMxfleWWLtl67by3sHEX84MH46iFE,807
1457
+ homeassistant-stubs/components/hydrawise/binary_sensor.pyi,sha256=fQch9mwF97o1C1fVhaJyWcAlmav5nbHNjibRI649LKk,2498
1458
1458
  homeassistant-stubs/components/hydrawise/config_flow.pyi,sha256=XeQlxTynp7bVojBesKLq4oxeQVx8-pqIYL8FlZMRgEI,865
1459
- homeassistant-stubs/components/hydrawise/const.pyi,sha256=pU-pbJs5btV5GgQTP2o6wGOEYHvgLvvgOX_NAgUm9-w,276
1460
- homeassistant-stubs/components/hydrawise/coordinator.pyi,sha256=orN5H8GxIVfqA5RPKvmXGvvFhaYsmgVjKIRVKgUOUZQ,1082
1459
+ homeassistant-stubs/components/hydrawise/const.pyi,sha256=uH6OwlCtwoikCZ94VG9_-BKXlq1kvc8ui4l3UaIHtUE,317
1460
+ homeassistant-stubs/components/hydrawise/coordinator.pyi,sha256=HzVyDZsVPGRRcYm6lY-htWGtPpU7W-hQvBL0fj6a5ho,1831
1461
1461
  homeassistant-stubs/components/hydrawise/entity.pyi,sha256=WXNnUobw9O-PWZndjscGtxgGOfZPNVfCAQtaQwD5XX4,1353
1462
- homeassistant-stubs/components/hydrawise/sensor.pyi,sha256=cNZnQFKBb7gP_CqOoKhzed7gc2F5sWSitGW9J7FXyZE,2804
1463
- homeassistant-stubs/components/hydrawise/switch.pyi,sha256=pYeYSx_-VoD1Y58UIQ6-hZDnYgkuto7ofJe7Mh1E81s,1933
1464
- homeassistant-stubs/components/hydrawise/valve.pyi,sha256=pjcg5MtmA9t3OO9wi-8XxtizUa2FZUO6OKSWAmk0jXw,1240
1462
+ homeassistant-stubs/components/hydrawise/sensor.pyi,sha256=f7FmVG6YAyTL0-QO3ukzeJkcs3kCCnRNgIpZKlZhMMw,2877
1463
+ homeassistant-stubs/components/hydrawise/switch.pyi,sha256=oT7LO4piF75yNQOfFx_f1eIhLtomUFhpoAAbv0ZjwVM,1927
1464
+ homeassistant-stubs/components/hydrawise/valve.pyi,sha256=IeCD9iVKBd3rW5ramCRUXughQeD9ophTykIowKToLzk,1234
1465
1465
  homeassistant-stubs/components/hyperion/__init__.pyi,sha256=uHHQZBah-0HVjfWu62lI54URzJ4yUsaMxfP9HyhqIa4,1947
1466
1466
  homeassistant-stubs/components/hyperion/camera.pyi,sha256=D6vais0nh2JMCZVvXgxmu17pZPm9Kqz7gMFEGtvu_WY,2723
1467
1467
  homeassistant-stubs/components/hyperion/config_flow.pyi,sha256=CejPgp214ysBAU95z-LTf24Ijawo1ekUde_PSlGlyIg,3030
@@ -1774,7 +1774,7 @@ homeassistant-stubs/components/linear_garage_door/light.pyi,sha256=V85q00IFJ78qz
1774
1774
  homeassistant-stubs/components/linkplay/__init__.pyi,sha256=mTDnj9TPSaTKsKufIkY6GQg8BmsFqy-f8dIDNAnMOyo,941
1775
1775
  homeassistant-stubs/components/linkplay/config_flow.pyi,sha256=Z5HWJZ5-i15lErj2byryN7JNtD-qAZb1lu0OmqUxn0c,981
1776
1776
  homeassistant-stubs/components/linkplay/const.pyi,sha256=k57iA2wnGZ-FpyvslegKYhHODCqQnBMRgGfXYiCQYhE,332
1777
- homeassistant-stubs/components/linkplay/media_player.pyi,sha256=4Lutw975tQVMlhP0ex8S0A9izZR4c6V4iLEEW5C2NWU,4573
1777
+ homeassistant-stubs/components/linkplay/media_player.pyi,sha256=Grw0LyPs-0OWUOq0-7S5ekIxwkfLunszuA5r2GICu_k,4640
1778
1778
  homeassistant-stubs/components/linkplay/utils.pyi,sha256=adYtQC3KQl_2ORKYvFEIgzjTNsVIPWq3Ef-MJMVcMTk,1001
1779
1779
  homeassistant-stubs/components/litejet/__init__.pyi,sha256=kjhUyHTWKn3vZrYmvjhfZZPRYhrX2CFS_k2st-gTf_Q,615
1780
1780
  homeassistant-stubs/components/litejet/config_flow.pyi,sha256=8eb8zahVh3L4-Ak-NBQUZn_dLPHHfEacfwtSD3duAGA,905
@@ -2070,17 +2070,17 @@ homeassistant-stubs/components/mysensors/text.pyi,sha256=319AoCj20Tbm_SVjJesMRj5
2070
2070
  homeassistant-stubs/components/myuplink/__init__.pyi,sha256=AbktuLtE5daepzi-rI4fD1qkRE0cEjYnL_XqLd0_bzI,1266
2071
2071
  homeassistant-stubs/components/myuplink/api.pyi,sha256=hQBBH0rdheGnZihOfuVwmyOtPfCy6dC-dZ4bY4IrYnI,514
2072
2072
  homeassistant-stubs/components/myuplink/application_credentials.pyi,sha256=OrYdSb46bXaF6HBKILRSWoS2rC0V9pPtFRe3bBwdsLM,450
2073
- homeassistant-stubs/components/myuplink/binary_sensor.pyi,sha256=izzi7CW4hHR-Okg8MNYDCJ7f3jQ7U4uTTNUO-3Di20E,2316
2073
+ homeassistant-stubs/components/myuplink/binary_sensor.pyi,sha256=IXCSQRaw6CxBTrgJSzr7sXnX5ceE2A0DTBgsF2qIjtk,2406
2074
2074
  homeassistant-stubs/components/myuplink/config_flow.pyi,sha256=Bj14s2bB5jm9jkLRw_rwkHLJFK-DrReNYwblv7yAzm8,874
2075
- homeassistant-stubs/components/myuplink/const.pyi,sha256=uPMaiYQw639M03cvc-f5-opJ4SEA9KgfV1cYf2xAa6Y,130
2075
+ homeassistant-stubs/components/myuplink/const.pyi,sha256=fNtOV0WnAq0AsgXR2LBIetHPZjmdp2FcCi8MkQog-pk,144
2076
2076
  homeassistant-stubs/components/myuplink/coordinator.pyi,sha256=6dOoyXfCGPd9I47kxpgJJ0sfCWMhvXZ34MS2G2Nw1W8,847
2077
2077
  homeassistant-stubs/components/myuplink/diagnostics.pyi,sha256=9lhtyI7LwgcY0Zs6IGQIQkRsEZARYYxMkvLWpJPT4Ho,411
2078
2078
  homeassistant-stubs/components/myuplink/entity.pyi,sha256=W0Uuq4l-CwDLoM84fy6DFTqHOLRj84v4cbxTRB13O9g,848
2079
- homeassistant-stubs/components/myuplink/helpers.pyi,sha256=EzV0LXLsjWKWkUAepOMzVIBDG5HJfQKYC3-GF18Mcxs,648
2080
- homeassistant-stubs/components/myuplink/number.pyi,sha256=4O5bMk8FSPYuA5-5LF1_hkf3Yfrs4pOI_hGXRZaz3g0,1688
2079
+ homeassistant-stubs/components/myuplink/helpers.pyi,sha256=_faT7_uCNTcmxdz3U966qNYL5_fto-hxmJBBTvThv8g,740
2080
+ homeassistant-stubs/components/myuplink/number.pyi,sha256=pD36JI9Q0yjcqbEDeTqAThPzlscCKL4sEw_urzv5DmM,1778
2081
2081
  homeassistant-stubs/components/myuplink/select.pyi,sha256=vfZA2d6C8fokeoXRYcbKJH_mkg-f8kh2IUuWnLTW-BM,1402
2082
- homeassistant-stubs/components/myuplink/sensor.pyi,sha256=4y8Gey23b4817NyAWK-7cJ-uUjE2ZCuOIoCHKRdg6rY,2719
2083
- homeassistant-stubs/components/myuplink/switch.pyi,sha256=BLrZekugV5Ohvnd52y8cNfKh6g82fBBmbqVOIQVPW1w,1654
2082
+ homeassistant-stubs/components/myuplink/sensor.pyi,sha256=XVUQK_ymdL5MtENig6YhK3J092qtNuPKVB3Tc2bsZNU,2809
2083
+ homeassistant-stubs/components/myuplink/switch.pyi,sha256=ko5pezj2ig5uzEm17cLYhpUYyOVDWrgiBVgNptJQeJY,1744
2084
2084
  homeassistant-stubs/components/myuplink/update.pyi,sha256=w6pBlEW1B9P2lYaKNeTeFkuPiY52aaQk5Ncqy_4T2A8,1065
2085
2085
  homeassistant-stubs/components/nam/__init__.pyi,sha256=L7OkhBC3KLhFdOZIwOuCzvqaV67hQshUejX3G3L1Rak,975
2086
2086
  homeassistant-stubs/components/nam/button.pyi,sha256=hRsoXsmti0UUV2SnZIUl_E1bed6ZOMQROUHHPY0F4mo,1189
@@ -2114,7 +2114,7 @@ homeassistant-stubs/components/neato/vacuum.pyi,sha256=kbM3yB04TMjnem0JRzmclNiAn
2114
2114
  homeassistant-stubs/components/nest/__init__.pyi,sha256=2hduKHlE-1RXu6gqGaoL7HIJrML25m_yiYBOAI5YXgI,4356
2115
2115
  homeassistant-stubs/components/nest/api.pyi,sha256=Ajp5Ws33oVifHhDcljQctwwW06kH-2hYcd46NrQdPrs,1826
2116
2116
  homeassistant-stubs/components/nest/application_credentials.pyi,sha256=6FJeSY56LumWCAyaIGYgl_lYqbkON3G4JRInkguyBsE,394
2117
- homeassistant-stubs/components/nest/camera.pyi,sha256=gkh7oTGHhzwnoS8WJClRfArfxFueC9nvVBA2xhUGnXM,3846
2117
+ homeassistant-stubs/components/nest/camera.pyi,sha256=SHnBU5-PRtUMsx97ibUFyirTtajXxjzIgMsbTceoUSA,4150
2118
2118
  homeassistant-stubs/components/nest/climate.pyi,sha256=NHC3rQdyyAE3Js2mpK8-arZmnr6kKhvExY1NeJ_t_-A,3458
2119
2119
  homeassistant-stubs/components/nest/config_flow.pyi,sha256=ou9XObZeU9KmVVIL7XiKrSKlGG3OsXeKEUW7ikMKeCs,3030
2120
2120
  homeassistant-stubs/components/nest/const.pyi,sha256=z7Zxyy-jXKF2Juk28QZWqibzNo0gANo9oRKCymBxbcc,451
@@ -3733,7 +3733,7 @@ homeassistant-stubs/util/yaml/dumper.pyi,sha256=uQjW0KuME-gXVWgYJLNLoRDwDzVhhhgg
3733
3733
  homeassistant-stubs/util/yaml/input.pyi,sha256=wuxpKYTXZL4MujFhqjHnRLv4VPYY6QPYd-Zji-Lz9Mo,383
3734
3734
  homeassistant-stubs/util/yaml/loader.pyi,sha256=QiGKfosJZpv3z8MePSrXiwF8SSxVnaHgMhYZQ351nBM,4692
3735
3735
  homeassistant-stubs/util/yaml/objects.pyi,sha256=YUlr0nf9ugzJT9J2YHaGV2fXu5opuyNvvHPqNW46m5I,707
3736
- homeassistant_stubs-2024.11.0b9.dist-info/METADATA,sha256=flQQDbyvGgKvyImPp5rD0Ks92ZlCuLwStwC8bmnpBEA,2958
3737
- homeassistant_stubs-2024.11.0b9.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
3738
- homeassistant_stubs-2024.11.0b9.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
3739
- homeassistant_stubs-2024.11.0b9.dist-info/RECORD,,
3736
+ homeassistant_stubs-2024.11.2.dist-info/METADATA,sha256=Ca6JLXbUu0eQSi-bToFTFBsYUgJGPvBn6IYunXJaxrY,2932
3737
+ homeassistant_stubs-2024.11.2.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
3738
+ homeassistant_stubs-2024.11.2.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
3739
+ homeassistant_stubs-2024.11.2.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: hatchling 1.25.0
2
+ Generator: hatchling 1.26.3
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any