homeassistant-stubs 2025.5.0b10__py3-none-any.whl → 2025.5.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.
- homeassistant-stubs/components/azure_storage/config_flow.pyi +1 -1
- homeassistant-stubs/components/backup/http.pyi +2 -2
- homeassistant-stubs/components/backup/util.pyi +12 -8
- homeassistant-stubs/components/ecovacs/sensor.pyi +10 -3
- homeassistant-stubs/components/esphome/entity.pyi +1 -1
- homeassistant-stubs/components/homekit/type_air_purifiers.pyi +2 -2
- homeassistant-stubs/components/reolink/__init__.pyi +1 -1
- homeassistant-stubs/components/reolink/util.pyi +1 -1
- homeassistant-stubs/components/sensibo/climate.pyi +1 -1
- homeassistant-stubs/components/sensibo/sensor.pyi +4 -1
- homeassistant-stubs/components/zwave_js/api.pyi +3 -2
- homeassistant-stubs/components/zwave_js/config_flow.pyi +2 -7
- homeassistant-stubs/components/zwave_js/const.pyi +1 -0
- homeassistant-stubs/components/zwave_js/helpers.pyi +7 -0
- homeassistant-stubs/components/zwave_js/repairs.pyi +7 -0
- {homeassistant_stubs-2025.5.0b10.dist-info → homeassistant_stubs-2025.5.2.dist-info}/METADATA +2 -2
- {homeassistant_stubs-2025.5.0b10.dist-info → homeassistant_stubs-2025.5.2.dist-info}/RECORD +19 -19
- {homeassistant_stubs-2025.5.0b10.dist-info → homeassistant_stubs-2025.5.2.dist-info}/WHEEL +0 -0
- {homeassistant_stubs-2025.5.0b10.dist-info → homeassistant_stubs-2025.5.2.dist-info}/licenses/LICENSE +0 -0
@@ -9,7 +9,7 @@ from typing import Any
|
|
9
9
|
_LOGGER: Incomplete
|
10
10
|
|
11
11
|
class AzureStorageConfigFlow(ConfigFlow, domain=DOMAIN):
|
12
|
-
def
|
12
|
+
async def get_container_client(self, account_name: str, container_name: str, storage_account_key: str) -> ContainerClient: ...
|
13
13
|
async def validate_config(self, container_client: ContainerClient) -> dict[str, str]: ...
|
14
14
|
async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
|
15
15
|
async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
|
@@ -2,7 +2,7 @@ from . import util as util
|
|
2
2
|
from .agent import BackupAgent as BackupAgent
|
3
3
|
from .const import DATA_MANAGER as DATA_MANAGER
|
4
4
|
from .manager import BackupManager as BackupManager
|
5
|
-
from .models import BackupNotFound as BackupNotFound
|
5
|
+
from .models import AgentBackup as AgentBackup, BackupNotFound as BackupNotFound
|
6
6
|
from aiohttp.web import FileResponse, Request as Request, Response, StreamResponse
|
7
7
|
from homeassistant.components.http import HomeAssistantView as HomeAssistantView, KEY_HASS as KEY_HASS, require_admin as require_admin
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
@@ -19,7 +19,7 @@ class DownloadBackupView(HomeAssistantView):
|
|
19
19
|
name: str
|
20
20
|
async def get(self, request: Request, backup_id: str) -> StreamResponse | FileResponse | Response: ...
|
21
21
|
async def _send_backup_no_password(self, request: Request, headers: dict[istr, str], backup_id: str, agent_id: str, agent: BackupAgent, manager: BackupManager) -> StreamResponse | FileResponse | Response: ...
|
22
|
-
async def _send_backup_with_password(self, hass: HomeAssistant, request: Request, headers: dict[istr, str], backup_id: str, agent_id: str, password: str, agent: BackupAgent, manager: BackupManager) -> StreamResponse | FileResponse | Response: ...
|
22
|
+
async def _send_backup_with_password(self, hass: HomeAssistant, backup: AgentBackup, request: Request, headers: dict[istr, str], backup_id: str, agent_id: str, password: str, agent: BackupAgent, manager: BackupManager) -> StreamResponse | FileResponse | Response: ...
|
23
23
|
|
24
24
|
class UploadBackupView(HomeAssistantView):
|
25
25
|
url: str
|
@@ -66,10 +66,11 @@ class AsyncIteratorWriter:
|
|
66
66
|
def write(self, s: bytes, /) -> int: ...
|
67
67
|
|
68
68
|
def validate_password_stream(input_stream: IO[bytes], password: str | None) -> None: ...
|
69
|
-
def
|
70
|
-
def
|
71
|
-
def
|
72
|
-
def
|
69
|
+
def _get_expected_archives(backup: AgentBackup) -> set[str]: ...
|
70
|
+
def decrypt_backup(backup: AgentBackup, input_stream: IO[bytes], output_stream: IO[bytes], password: str | None, on_done: Callable[[Exception | None], None], minimum_size: int, nonces: NonceGenerator) -> None: ...
|
71
|
+
def _decrypt_backup(backup: AgentBackup, input_tar: tarfile.TarFile, output_tar: tarfile.TarFile, password: str | None) -> None: ...
|
72
|
+
def encrypt_backup(backup: AgentBackup, input_stream: IO[bytes], output_stream: IO[bytes], password: str | None, on_done: Callable[[Exception | None], None], minimum_size: int, nonces: NonceGenerator) -> None: ...
|
73
|
+
def _encrypt_backup(backup: AgentBackup, input_tar: tarfile.TarFile, output_tar: tarfile.TarFile, password: str | None, nonces: NonceGenerator) -> None: ...
|
73
74
|
|
74
75
|
@dataclass(kw_only=True)
|
75
76
|
class _CipherWorkerStatus:
|
@@ -79,14 +80,19 @@ class _CipherWorkerStatus:
|
|
79
80
|
thread: threading.Thread
|
80
81
|
writer: AsyncIteratorWriter
|
81
82
|
|
83
|
+
class NonceGenerator:
|
84
|
+
_nonces: dict[int, bytes]
|
85
|
+
def __init__(self) -> None: ...
|
86
|
+
def get(self, index: int) -> bytes: ...
|
87
|
+
|
82
88
|
class _CipherBackupStreamer:
|
83
|
-
_cipher_func: Callable[[IO[bytes], IO[bytes], str | None, Callable[[Exception | None], None], int,
|
89
|
+
_cipher_func: Callable[[AgentBackup, IO[bytes], IO[bytes], str | None, Callable[[Exception | None], None], int, NonceGenerator], None]
|
84
90
|
_workers: list[_CipherWorkerStatus]
|
85
91
|
_backup: Incomplete
|
86
92
|
_hass: Incomplete
|
87
93
|
_open_stream: Incomplete
|
88
94
|
_password: Incomplete
|
89
|
-
_nonces:
|
95
|
+
_nonces: Incomplete
|
90
96
|
def __init__(self, hass: HomeAssistant, backup: AgentBackup, open_stream: Callable[[], Coroutine[Any, Any, AsyncIterator[bytes]]], password: str | None) -> None: ...
|
91
97
|
def size(self) -> int: ...
|
92
98
|
def _num_tar_files(self) -> int: ...
|
@@ -98,8 +104,6 @@ class DecryptedBackupStreamer(_CipherBackupStreamer):
|
|
98
104
|
def backup(self) -> AgentBackup: ...
|
99
105
|
|
100
106
|
class EncryptedBackupStreamer(_CipherBackupStreamer):
|
101
|
-
_nonces: Incomplete
|
102
|
-
def __init__(self, hass: HomeAssistant, backup: AgentBackup, open_stream: Callable[[], Coroutine[Any, Any, AsyncIterator[bytes]]], password: str | None) -> None: ...
|
103
107
|
_cipher_func: Incomplete
|
104
108
|
def backup(self) -> AgentBackup: ...
|
105
109
|
|
@@ -5,19 +5,24 @@ from .util import get_name_key as get_name_key, get_options as get_options, get_
|
|
5
5
|
from _typeshed import Incomplete
|
6
6
|
from collections.abc import Callable as Callable
|
7
7
|
from dataclasses import dataclass
|
8
|
-
from deebot_client.capabilities import CapabilityEvent, CapabilityLifeSpan
|
8
|
+
from deebot_client.capabilities import CapabilityEvent, CapabilityLifeSpan, DeviceType
|
9
|
+
from deebot_client.device import Device as Device
|
9
10
|
from deebot_client.events import ErrorEvent, Event as Event, LifeSpan as LifeSpan, LifeSpanEvent as LifeSpanEvent
|
10
11
|
from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
|
11
12
|
from homeassistant.const import ATTR_BATTERY_LEVEL as ATTR_BATTERY_LEVEL, CONF_DESCRIPTION as CONF_DESCRIPTION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfArea as UnitOfArea, UnitOfTime as UnitOfTime
|
12
|
-
from homeassistant.core import HomeAssistant as HomeAssistant
|
13
|
+
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
13
14
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
14
15
|
from homeassistant.helpers.typing import StateType as StateType
|
15
16
|
from sucks import VacBot as VacBot
|
16
|
-
from typing import Generic
|
17
|
+
from typing import Any, Generic
|
17
18
|
|
18
19
|
@dataclass(kw_only=True, frozen=True)
|
19
20
|
class EcovacsSensorEntityDescription(EcovacsCapabilityEntityDescription, SensorEntityDescription, Generic[EventT]):
|
20
21
|
value_fn: Callable[[EventT], StateType]
|
22
|
+
native_unit_of_measurement_fn: Callable[[DeviceType], str | None] | None = ...
|
23
|
+
|
24
|
+
@callback
|
25
|
+
def get_area_native_unit_of_measurement(device_type: DeviceType) -> str | None: ...
|
21
26
|
|
22
27
|
ENTITY_DESCRIPTIONS: tuple[EcovacsSensorEntityDescription, ...]
|
23
28
|
|
@@ -38,6 +43,8 @@ async def async_setup_entry(hass: HomeAssistant, config_entry: EcovacsConfigEntr
|
|
38
43
|
|
39
44
|
class EcovacsSensor(EcovacsDescriptionEntity[CapabilityEvent], SensorEntity):
|
40
45
|
entity_description: EcovacsSensorEntityDescription
|
46
|
+
_attr_native_unit_of_measurement: Incomplete
|
47
|
+
def __init__(self, device: Device, capability: CapabilityEvent, entity_description: EcovacsSensorEntityDescription, **kwargs: Any) -> None: ...
|
41
48
|
_attr_native_value: Incomplete
|
42
49
|
async def async_added_to_hass(self) -> None: ...
|
43
50
|
|
@@ -39,7 +39,6 @@ class EsphomeEntity(EsphomeBaseEntity, Generic[_InfoT, _StateT]):
|
|
39
39
|
_has_state: bool
|
40
40
|
_entry_data: Incomplete
|
41
41
|
_states: Incomplete
|
42
|
-
_device_info: Incomplete
|
43
42
|
_key: Incomplete
|
44
43
|
_state_type: Incomplete
|
45
44
|
_attr_device_info: Incomplete
|
@@ -57,6 +56,7 @@ class EsphomeEntity(EsphomeBaseEntity, Generic[_InfoT, _StateT]):
|
|
57
56
|
def _update_state_from_entry_data(self) -> None: ...
|
58
57
|
@callback
|
59
58
|
def _on_state_update(self) -> None: ...
|
59
|
+
_device_info: Incomplete
|
60
60
|
_api_version: Incomplete
|
61
61
|
_client: Incomplete
|
62
62
|
_attr_available: Incomplete
|
@@ -1,9 +1,9 @@
|
|
1
1
|
from .accessories import TYPES as TYPES
|
2
2
|
from .const import CHAR_ACTIVE as CHAR_ACTIVE, CHAR_AIR_QUALITY as CHAR_AIR_QUALITY, CHAR_CURRENT_AIR_PURIFIER_STATE as CHAR_CURRENT_AIR_PURIFIER_STATE, CHAR_CURRENT_HUMIDITY as CHAR_CURRENT_HUMIDITY, CHAR_CURRENT_TEMPERATURE as CHAR_CURRENT_TEMPERATURE, CHAR_FILTER_CHANGE_INDICATION as CHAR_FILTER_CHANGE_INDICATION, CHAR_FILTER_LIFE_LEVEL as CHAR_FILTER_LIFE_LEVEL, CHAR_NAME as CHAR_NAME, CHAR_PM25_DENSITY as CHAR_PM25_DENSITY, CHAR_TARGET_AIR_PURIFIER_STATE as CHAR_TARGET_AIR_PURIFIER_STATE, CONF_LINKED_FILTER_CHANGE_INDICATION as CONF_LINKED_FILTER_CHANGE_INDICATION, CONF_LINKED_FILTER_LIFE_LEVEL as CONF_LINKED_FILTER_LIFE_LEVEL, CONF_LINKED_HUMIDITY_SENSOR as CONF_LINKED_HUMIDITY_SENSOR, CONF_LINKED_PM25_SENSOR as CONF_LINKED_PM25_SENSOR, CONF_LINKED_TEMPERATURE_SENSOR as CONF_LINKED_TEMPERATURE_SENSOR, SERV_AIR_PURIFIER as SERV_AIR_PURIFIER, SERV_AIR_QUALITY_SENSOR as SERV_AIR_QUALITY_SENSOR, SERV_FILTER_MAINTENANCE as SERV_FILTER_MAINTENANCE, SERV_HUMIDITY_SENSOR as SERV_HUMIDITY_SENSOR, SERV_TEMPERATURE_SENSOR as SERV_TEMPERATURE_SENSOR, THRESHOLD_FILTER_CHANGE_NEEDED as THRESHOLD_FILTER_CHANGE_NEEDED
|
3
3
|
from .type_fans import ATTR_PRESET_MODE as ATTR_PRESET_MODE, CHAR_ROTATION_SPEED as CHAR_ROTATION_SPEED, Fan as Fan
|
4
|
-
from .util import cleanup_name_for_homekit as cleanup_name_for_homekit, convert_to_float as convert_to_float, density_to_air_quality as density_to_air_quality
|
4
|
+
from .util import cleanup_name_for_homekit as cleanup_name_for_homekit, convert_to_float as convert_to_float, density_to_air_quality as density_to_air_quality, temperature_to_homekit as temperature_to_homekit
|
5
5
|
from _typeshed import Incomplete
|
6
|
-
from homeassistant.const import STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
|
6
|
+
from homeassistant.const import ATTR_UNIT_OF_MEASUREMENT as ATTR_UNIT_OF_MEASUREMENT, STATE_ON as STATE_ON, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, UnitOfTemperature as UnitOfTemperature
|
7
7
|
from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HassJobType as HassJobType, State as State, callback as callback
|
8
8
|
from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
|
9
9
|
from pyhap.characteristic import Characteristic as Characteristic
|
@@ -10,7 +10,7 @@ from homeassistant.const import CONF_PORT as CONF_PORT, EVENT_HOMEASSISTANT_STOP
|
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
11
|
from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
|
12
12
|
from homeassistant.helpers import device_registry as dr
|
13
|
-
from homeassistant.helpers.device_registry import format_mac as format_mac
|
13
|
+
from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, format_mac as format_mac
|
14
14
|
from homeassistant.helpers.event import async_call_later as async_call_later
|
15
15
|
from homeassistant.helpers.typing import ConfigType as ConfigType
|
16
16
|
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
|
@@ -26,7 +26,7 @@ class ReolinkData:
|
|
26
26
|
def is_connected(hass: HomeAssistant, config_entry: config_entries.ConfigEntry) -> bool: ...
|
27
27
|
def get_host(hass: HomeAssistant, config_entry_id: str) -> ReolinkHost: ...
|
28
28
|
def get_store(hass: HomeAssistant, config_entry_id: str) -> Store[str]: ...
|
29
|
-
def get_device_uid_and_ch(device: dr.DeviceEntry, host: ReolinkHost) -> tuple[list[str], int | None, bool]: ...
|
29
|
+
def get_device_uid_and_ch(device: dr.DeviceEntry | tuple[str, str], host: ReolinkHost) -> tuple[list[str], int | None, bool]: ...
|
30
30
|
def check_translation_key(err: ReolinkError) -> str | None: ...
|
31
31
|
|
32
32
|
_EXCEPTION_TO_TRANSLATION_KEY: Incomplete
|
@@ -56,7 +56,7 @@ class SensiboClimate(SensiboDeviceBaseEntity, ClimateEntity):
|
|
56
56
|
@property
|
57
57
|
def supported_features(self) -> ClimateEntityFeature: ...
|
58
58
|
@property
|
59
|
-
def current_humidity(self) ->
|
59
|
+
def current_humidity(self) -> float | None: ...
|
60
60
|
@property
|
61
61
|
def hvac_mode(self) -> HVACMode: ...
|
62
62
|
@property
|
@@ -10,7 +10,7 @@ from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONC
|
|
10
10
|
from homeassistant.core import HomeAssistant as HomeAssistant
|
11
11
|
from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
|
12
12
|
from homeassistant.helpers.typing import StateType as StateType
|
13
|
-
from pysensibo.model import MotionSensor as MotionSensor, SensiboDevice as SensiboDevice
|
13
|
+
from pysensibo.model import MotionSensor as MotionSensor, PureAQI, SensiboDevice as SensiboDevice
|
14
14
|
from typing import Any
|
15
15
|
|
16
16
|
PARALLEL_UPDATES: int
|
@@ -28,6 +28,9 @@ class SensiboDeviceSensorEntityDescription(SensorEntityDescription):
|
|
28
28
|
|
29
29
|
FILTER_LAST_RESET_DESCRIPTION: Incomplete
|
30
30
|
MOTION_SENSOR_TYPES: tuple[SensiboMotionSensorEntityDescription, ...]
|
31
|
+
|
32
|
+
def _pure_aqi(pm25_pure: PureAQI | None) -> str | None: ...
|
33
|
+
|
31
34
|
PURE_SENSOR_TYPES: tuple[SensiboDeviceSensorEntityDescription, ...]
|
32
35
|
DEVICE_SENSOR_TYPES: tuple[SensiboDeviceSensorEntityDescription, ...]
|
33
36
|
AIRQ_SENSOR_TYPES: tuple[SensiboDeviceSensorEntityDescription, ...]
|
@@ -1,6 +1,6 @@
|
|
1
1
|
from .config_validation import BITMASK_SCHEMA as BITMASK_SCHEMA
|
2
|
-
from .const import ATTR_COMMAND_CLASS as ATTR_COMMAND_CLASS, ATTR_ENDPOINT as ATTR_ENDPOINT, ATTR_METHOD_NAME as ATTR_METHOD_NAME, ATTR_PARAMETERS as ATTR_PARAMETERS, ATTR_WAIT_FOR_RESULT as ATTR_WAIT_FOR_RESULT, CONF_DATA_COLLECTION_OPTED_IN as CONF_DATA_COLLECTION_OPTED_IN, CONF_INSTALLER_MODE as CONF_INSTALLER_MODE, DATA_CLIENT as DATA_CLIENT, DOMAIN as DOMAIN, EVENT_DEVICE_ADDED_TO_REGISTRY as EVENT_DEVICE_ADDED_TO_REGISTRY, USER_AGENT as USER_AGENT
|
3
|
-
from .helpers import async_enable_statistics as async_enable_statistics, async_get_node_from_device_id as async_get_node_from_device_id, async_get_provisioning_entry_from_device_id as async_get_provisioning_entry_from_device_id, get_device_id as get_device_id
|
2
|
+
from .const import ATTR_COMMAND_CLASS as ATTR_COMMAND_CLASS, ATTR_ENDPOINT as ATTR_ENDPOINT, ATTR_METHOD_NAME as ATTR_METHOD_NAME, ATTR_PARAMETERS as ATTR_PARAMETERS, ATTR_WAIT_FOR_RESULT as ATTR_WAIT_FOR_RESULT, CONF_DATA_COLLECTION_OPTED_IN as CONF_DATA_COLLECTION_OPTED_IN, CONF_INSTALLER_MODE as CONF_INSTALLER_MODE, DATA_CLIENT as DATA_CLIENT, DOMAIN as DOMAIN, EVENT_DEVICE_ADDED_TO_REGISTRY as EVENT_DEVICE_ADDED_TO_REGISTRY, LOGGER as LOGGER, RESTORE_NVM_DRIVER_READY_TIMEOUT as RESTORE_NVM_DRIVER_READY_TIMEOUT, USER_AGENT as USER_AGENT
|
3
|
+
from .helpers import CannotConnect as CannotConnect, async_enable_statistics as async_enable_statistics, async_get_node_from_device_id as async_get_node_from_device_id, async_get_provisioning_entry_from_device_id as async_get_provisioning_entry_from_device_id, async_get_version_info as async_get_version_info, get_device_id as get_device_id
|
4
4
|
from _typeshed import Incomplete
|
5
5
|
from aiohttp import web as web
|
6
6
|
from collections.abc import Callable as Callable, Coroutine
|
@@ -8,6 +8,7 @@ from homeassistant.components import websocket_api as websocket_api
|
|
8
8
|
from homeassistant.components.http import HomeAssistantView as HomeAssistantView, KEY_HASS as KEY_HASS, require_admin as require_admin
|
9
9
|
from homeassistant.components.websocket_api import ActiveConnection as ActiveConnection, ERR_INVALID_FORMAT as ERR_INVALID_FORMAT, ERR_NOT_FOUND as ERR_NOT_FOUND, ERR_NOT_SUPPORTED as ERR_NOT_SUPPORTED, ERR_UNKNOWN_ERROR as ERR_UNKNOWN_ERROR
|
10
10
|
from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigEntryState as ConfigEntryState
|
11
|
+
from homeassistant.const import CONF_URL as CONF_URL
|
11
12
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
12
13
|
from homeassistant.helpers import device_registry as dr
|
13
14
|
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
@@ -1,7 +1,8 @@
|
|
1
1
|
import asyncio
|
2
2
|
import voluptuous as vol
|
3
3
|
from .addon import get_addon_manager as get_addon_manager
|
4
|
-
from .const import ADDON_SLUG as ADDON_SLUG, CONF_ADDON_DEVICE as CONF_ADDON_DEVICE, CONF_ADDON_EMULATE_HARDWARE as CONF_ADDON_EMULATE_HARDWARE, CONF_ADDON_LOG_LEVEL as CONF_ADDON_LOG_LEVEL, CONF_ADDON_LR_S2_ACCESS_CONTROL_KEY as CONF_ADDON_LR_S2_ACCESS_CONTROL_KEY, CONF_ADDON_LR_S2_AUTHENTICATED_KEY as CONF_ADDON_LR_S2_AUTHENTICATED_KEY, CONF_ADDON_NETWORK_KEY as CONF_ADDON_NETWORK_KEY, CONF_ADDON_S0_LEGACY_KEY as CONF_ADDON_S0_LEGACY_KEY, CONF_ADDON_S2_ACCESS_CONTROL_KEY as CONF_ADDON_S2_ACCESS_CONTROL_KEY, CONF_ADDON_S2_AUTHENTICATED_KEY as CONF_ADDON_S2_AUTHENTICATED_KEY, CONF_ADDON_S2_UNAUTHENTICATED_KEY as CONF_ADDON_S2_UNAUTHENTICATED_KEY, CONF_INTEGRATION_CREATED_ADDON as CONF_INTEGRATION_CREATED_ADDON, CONF_LR_S2_ACCESS_CONTROL_KEY as CONF_LR_S2_ACCESS_CONTROL_KEY, CONF_LR_S2_AUTHENTICATED_KEY as CONF_LR_S2_AUTHENTICATED_KEY, CONF_S0_LEGACY_KEY as CONF_S0_LEGACY_KEY, CONF_S2_ACCESS_CONTROL_KEY as CONF_S2_ACCESS_CONTROL_KEY, CONF_S2_AUTHENTICATED_KEY as CONF_S2_AUTHENTICATED_KEY, CONF_S2_UNAUTHENTICATED_KEY as CONF_S2_UNAUTHENTICATED_KEY, CONF_USB_PATH as CONF_USB_PATH, CONF_USE_ADDON as CONF_USE_ADDON, DATA_CLIENT as DATA_CLIENT, DOMAIN as DOMAIN
|
4
|
+
from .const import ADDON_SLUG as ADDON_SLUG, CONF_ADDON_DEVICE as CONF_ADDON_DEVICE, CONF_ADDON_EMULATE_HARDWARE as CONF_ADDON_EMULATE_HARDWARE, CONF_ADDON_LOG_LEVEL as CONF_ADDON_LOG_LEVEL, CONF_ADDON_LR_S2_ACCESS_CONTROL_KEY as CONF_ADDON_LR_S2_ACCESS_CONTROL_KEY, CONF_ADDON_LR_S2_AUTHENTICATED_KEY as CONF_ADDON_LR_S2_AUTHENTICATED_KEY, CONF_ADDON_NETWORK_KEY as CONF_ADDON_NETWORK_KEY, CONF_ADDON_S0_LEGACY_KEY as CONF_ADDON_S0_LEGACY_KEY, CONF_ADDON_S2_ACCESS_CONTROL_KEY as CONF_ADDON_S2_ACCESS_CONTROL_KEY, CONF_ADDON_S2_AUTHENTICATED_KEY as CONF_ADDON_S2_AUTHENTICATED_KEY, CONF_ADDON_S2_UNAUTHENTICATED_KEY as CONF_ADDON_S2_UNAUTHENTICATED_KEY, CONF_INTEGRATION_CREATED_ADDON as CONF_INTEGRATION_CREATED_ADDON, CONF_LR_S2_ACCESS_CONTROL_KEY as CONF_LR_S2_ACCESS_CONTROL_KEY, CONF_LR_S2_AUTHENTICATED_KEY as CONF_LR_S2_AUTHENTICATED_KEY, CONF_S0_LEGACY_KEY as CONF_S0_LEGACY_KEY, CONF_S2_ACCESS_CONTROL_KEY as CONF_S2_ACCESS_CONTROL_KEY, CONF_S2_AUTHENTICATED_KEY as CONF_S2_AUTHENTICATED_KEY, CONF_S2_UNAUTHENTICATED_KEY as CONF_S2_UNAUTHENTICATED_KEY, CONF_USB_PATH as CONF_USB_PATH, CONF_USE_ADDON as CONF_USE_ADDON, DATA_CLIENT as DATA_CLIENT, DOMAIN as DOMAIN, RESTORE_NVM_DRIVER_READY_TIMEOUT as RESTORE_NVM_DRIVER_READY_TIMEOUT
|
5
|
+
from .helpers import CannotConnect as CannotConnect, async_get_version_info as async_get_version_info
|
5
6
|
from _typeshed import Incomplete
|
6
7
|
from homeassistant.components import usb as usb
|
7
8
|
from homeassistant.components.hassio import AddonError as AddonError, AddonInfo as AddonInfo, AddonManager as AddonManager, AddonState as AddonState
|
@@ -10,7 +11,6 @@ from homeassistant.const import CONF_NAME as CONF_NAME, CONF_URL as CONF_URL
|
|
10
11
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
11
12
|
from homeassistant.data_entry_flow import AbortFlow as AbortFlow
|
12
13
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
13
|
-
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
14
14
|
from homeassistant.helpers.hassio import is_hassio as is_hassio
|
15
15
|
from homeassistant.helpers.service_info.hassio import HassioServiceInfo as HassioServiceInfo
|
16
16
|
from homeassistant.helpers.service_info.usb import UsbServiceInfo as UsbServiceInfo
|
@@ -28,8 +28,6 @@ ADDON_SETUP_TIMEOUT: int
|
|
28
28
|
ADDON_SETUP_TIMEOUT_ROUNDS: int
|
29
29
|
CONF_EMULATE_HARDWARE: str
|
30
30
|
CONF_LOG_LEVEL: str
|
31
|
-
RESTORE_NVM_DRIVER_READY_TIMEOUT: int
|
32
|
-
SERVER_VERSION_TIMEOUT: int
|
33
31
|
ADDON_LOG_LEVELS: Incomplete
|
34
32
|
ADDON_USER_INPUT_MAP: Incomplete
|
35
33
|
ON_SUPERVISOR_SCHEMA: Incomplete
|
@@ -38,7 +36,6 @@ MIN_MIGRATION_SDK_VERSION: Incomplete
|
|
38
36
|
def get_manual_schema(user_input: dict[str, Any]) -> vol.Schema: ...
|
39
37
|
def get_on_supervisor_schema(user_input: dict[str, Any]) -> vol.Schema: ...
|
40
38
|
async def validate_input(hass: HomeAssistant, user_input: dict) -> VersionInfo: ...
|
41
|
-
async def async_get_version_info(hass: HomeAssistant, ws_address: str) -> VersionInfo: ...
|
42
39
|
def get_usb_ports() -> dict[str, str]: ...
|
43
40
|
async def async_get_usb_ports(hass: HomeAssistant) -> dict[str, str]: ...
|
44
41
|
|
@@ -115,8 +112,6 @@ class ZWaveJSConfigFlow(ConfigFlow, domain=DOMAIN):
|
|
115
112
|
async def _async_restore_network_backup(self) -> None: ...
|
116
113
|
def _get_driver(self) -> Driver: ...
|
117
114
|
|
118
|
-
class CannotConnect(HomeAssistantError): ...
|
119
|
-
|
120
115
|
class InvalidInput(HomeAssistantError):
|
121
116
|
error: Incomplete
|
122
117
|
def __init__(self, error: str) -> None: ...
|
@@ -8,6 +8,7 @@ from homeassistant.const import ATTR_AREA_ID as ATTR_AREA_ID, ATTR_DEVICE_ID as
|
|
8
8
|
from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
|
9
9
|
from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
|
10
10
|
from homeassistant.helpers import device_registry as dr, entity_registry as er
|
11
|
+
from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
|
11
12
|
from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
|
12
13
|
from homeassistant.helpers.group import expand_entity_ids as expand_entity_ids
|
13
14
|
from homeassistant.helpers.typing import ConfigType as ConfigType, VolSchemaType as VolSchemaType
|
@@ -16,6 +17,9 @@ from zwave_js_server.model.controller import Controller as Controller, Provision
|
|
16
17
|
from zwave_js_server.model.driver import Driver as Driver
|
17
18
|
from zwave_js_server.model.node import Node as ZwaveNode
|
18
19
|
from zwave_js_server.model.value import Value as ZwaveValue, ValueDataType as ValueDataType
|
20
|
+
from zwave_js_server.version import VersionInfo as VersionInfo
|
21
|
+
|
22
|
+
SERVER_VERSION_TIMEOUT: int
|
19
23
|
|
20
24
|
@dataclass
|
21
25
|
class ZwaveValueID:
|
@@ -63,3 +67,6 @@ def copy_available_params(input_dict: dict[str, Any], output_dict: dict[str, Any
|
|
63
67
|
def get_value_state_schema(value: ZwaveValue) -> VolSchemaType | vol.Coerce | vol.In | None: ...
|
64
68
|
def get_device_info(driver: Driver, node: ZwaveNode) -> DeviceInfo: ...
|
65
69
|
def get_network_identifier_for_notification(hass: HomeAssistant, config_entry: ConfigEntry, controller: Controller) -> str: ...
|
70
|
+
async def async_get_version_info(hass: HomeAssistant, ws_address: str) -> VersionInfo: ...
|
71
|
+
|
72
|
+
class CannotConnect(HomeAssistantError): ...
|
@@ -12,4 +12,11 @@ class DeviceConfigFileChangedFlow(RepairsFlow):
|
|
12
12
|
async def async_step_confirm(self, user_input: dict[str, str] | None = None) -> data_entry_flow.FlowResult: ...
|
13
13
|
async def async_step_ignore(self, user_input: dict[str, str] | None = None) -> data_entry_flow.FlowResult: ...
|
14
14
|
|
15
|
+
class MigrateUniqueIDFlow(RepairsFlow):
|
16
|
+
description_placeholders: dict[str, str]
|
17
|
+
_config_entry_id: str
|
18
|
+
def __init__(self, data: dict[str, str]) -> None: ...
|
19
|
+
async def async_step_init(self, user_input: dict[str, str] | None = None) -> data_entry_flow.FlowResult: ...
|
20
|
+
async def async_step_confirm(self, user_input: dict[str, str] | None = None) -> data_entry_flow.FlowResult: ...
|
21
|
+
|
15
22
|
async def async_create_fix_flow(hass: HomeAssistant, issue_id: str, data: dict[str, str] | None) -> RepairsFlow: ...
|
{homeassistant_stubs-2025.5.0b10.dist-info → homeassistant_stubs-2025.5.2.dist-info}/METADATA
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: homeassistant-stubs
|
3
|
-
Version: 2025.5.
|
3
|
+
Version: 2025.5.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
|
@@ -18,7 +18,7 @@ Classifier: Topic :: Home Automation
|
|
18
18
|
Classifier: Topic :: Software Development
|
19
19
|
Classifier: Typing :: Typed
|
20
20
|
Requires-Python: >=3.13.2
|
21
|
-
Requires-Dist: homeassistant==2025.5.
|
21
|
+
Requires-Dist: homeassistant==2025.5.2
|
22
22
|
Description-Content-Type: text/markdown
|
23
23
|
|
24
24
|
[](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
|
@@ -413,7 +413,7 @@ homeassistant-stubs/components/axis/hub/event_source.pyi,sha256=2MWGaVgI5mHf_gEO
|
|
413
413
|
homeassistant-stubs/components/axis/hub/hub.pyi,sha256=mulaCc4i9ZIxA8la7aIObtE4AJtjQBsKzr61mj_CMqU,1544
|
414
414
|
homeassistant-stubs/components/azure_storage/__init__.pyi,sha256=MmjppNsYEm07bXjiNQcYASLF-HnsOGsfxVWcbQEvL4o,937
|
415
415
|
homeassistant-stubs/components/azure_storage/backup.pyi,sha256=JsW0suahh5bvl1vUNovXqcfNK5dU1UfM-W7Mk7V9IWk,2099
|
416
|
-
homeassistant-stubs/components/azure_storage/config_flow.pyi,sha256=
|
416
|
+
homeassistant-stubs/components/azure_storage/config_flow.pyi,sha256=bV18G2f2reAjQJ2wQrWxFe_sK3ivbq8hhjcrc0H5dkY,1245
|
417
417
|
homeassistant-stubs/components/azure_storage/const.pyi,sha256=H99btz8WxMUnurchmMwSL6c59rmtuVNaZGH9NfzEL0k,316
|
418
418
|
homeassistant-stubs/components/backup/__init__.pyi,sha256=2wSjpqBJ3fOwp6XY4zgFz6JO4n3Aq912db_FYa9Kj60,1856
|
419
419
|
homeassistant-stubs/components/backup/agent.pyi,sha256=-ouyIamQIxOopN9gQTjfkEa6FrNOetzlqlD_V3Hmnqo,1790
|
@@ -425,13 +425,13 @@ homeassistant-stubs/components/backup/const.pyi,sha256=N3Hb5USpEK0tHJxtqdrgroGNi
|
|
425
425
|
homeassistant-stubs/components/backup/coordinator.pyi,sha256=dzp3sBvWQ49jA77DjwyRRvqq9CFZ9xZwUyCGOC8Fd5s,1574
|
426
426
|
homeassistant-stubs/components/backup/diagnostics.pyi,sha256=yst1qTxZhDvfE8a--dgwmadGRjNbyIMd8SrvriKe_28,416
|
427
427
|
homeassistant-stubs/components/backup/entity.pyi,sha256=AxsYDnME3wHrtNVKSlPLev98rUi38kJF7bW8tL7w86Q,762
|
428
|
-
homeassistant-stubs/components/backup/http.pyi,sha256=
|
428
|
+
homeassistant-stubs/components/backup/http.pyi,sha256=43WTfykNan9XZ-ypeyAVwq5D2-yjf5F_v3qKioDT1Jo,1711
|
429
429
|
homeassistant-stubs/components/backup/manager.pyi,sha256=BIMl86ggY_5781wG83e0N32TM-nmUREJxAT5XeVn5co,14576
|
430
430
|
homeassistant-stubs/components/backup/models.pyi,sha256=mFvNpBmNQ3vOZ4ep4y-1TYDzll8QeQNCx3aYaX36lLg,1212
|
431
431
|
homeassistant-stubs/components/backup/onboarding.pyi,sha256=3Deao0Us0O1NywC7EmS0gNDHRKWus-DhYM4Rwuq5asg,1723
|
432
432
|
homeassistant-stubs/components/backup/sensor.pyi,sha256=fvat2UotaSYLIZL4XsTTLIL1wQVSn-GRHJ2WV8sdrMM,1274
|
433
433
|
homeassistant-stubs/components/backup/store.pyi,sha256=CTgV9bZqdqSFYc6xrwrWizFVQYOaraG9ZHWAIMnBKi8,1174
|
434
|
-
homeassistant-stubs/components/backup/util.pyi,sha256=
|
434
|
+
homeassistant-stubs/components/backup/util.pyi,sha256=hAC0OCXdBdynCrP6J00AN_7ZxtpPxBfT_DuK_t1thRY,4512
|
435
435
|
homeassistant-stubs/components/backup/websocket.pyi,sha256=rR-htdBfxq7d299b4zrP6zqq-q1STrqaLp4D4PrR4CE,2787
|
436
436
|
homeassistant-stubs/components/baf/__init__.pyi,sha256=Ylh2xJjcBgDaMmOK4Jf2dc6oFmekClLSl0IgZljcRVQ,670
|
437
437
|
homeassistant-stubs/components/baf/binary_sensor.pyi,sha256=RnvOAqVY9m-somjQ9Gz47Z4jD3MgaTD6t-Efhfl0ovw,1198
|
@@ -950,7 +950,7 @@ homeassistant-stubs/components/ecovacs/image.pyi,sha256=T4cjZnXFdWyNfgqmvu66WmOs
|
|
950
950
|
homeassistant-stubs/components/ecovacs/lawn_mower.pyi,sha256=bymhhLp7eNaRl95Inofkpj8sM5I2q6NxbScJEogfAOg,1457
|
951
951
|
homeassistant-stubs/components/ecovacs/number.pyi,sha256=bgoOmdjt8mQhX_D55m-CHHFiGUXbvHTmYX8v5D4ldNk,1764
|
952
952
|
homeassistant-stubs/components/ecovacs/select.pyi,sha256=a8U15e7KXVA7GVkIp-8JTlAiJq8CbMxy63uIqnJrQHc,1943
|
953
|
-
homeassistant-stubs/components/ecovacs/sensor.pyi,sha256=
|
953
|
+
homeassistant-stubs/components/ecovacs/sensor.pyi,sha256=r9_y5YCuXMDn8S-AS_FuYcgrD_6OlvAFDVztMBz1sNk,4022
|
954
954
|
homeassistant-stubs/components/ecovacs/switch.pyi,sha256=ZsawAWAdtum9042g-PvYc7f7-ZfDcfFWD7-RhfDzUj8,1567
|
955
955
|
homeassistant-stubs/components/ecovacs/util.pyi,sha256=LShgVRLEXvu4KhvbPVpz-JOPPytD5zF1XhGcmhqYkkk,784
|
956
956
|
homeassistant-stubs/components/ecovacs/vacuum.pyi,sha256=nwToWlGaoaVCs08flPrEjWQMJs8ko2kYjjQL_b9wFPY,3906
|
@@ -1085,7 +1085,7 @@ homeassistant-stubs/components/esphome/date.pyi,sha256=5vZuKDQMtgOGk1FRZwlbgUewA
|
|
1085
1085
|
homeassistant-stubs/components/esphome/datetime.pyi,sha256=28W77mjdAuCLMsQHqZgzPkygMVdkIrhSszNynTmzATY,652
|
1086
1086
|
homeassistant-stubs/components/esphome/diagnostics.pyi,sha256=YTJeOA3Put-4MVcLFhv-mHSAocckIF-CtDg9zZ9VVeU,785
|
1087
1087
|
homeassistant-stubs/components/esphome/domain_data.pyi,sha256=y20yq3N7Fm8hnQL-hL31rJaZslcNGB_36U8o9De1QEY,792
|
1088
|
-
homeassistant-stubs/components/esphome/entity.pyi,sha256=
|
1088
|
+
homeassistant-stubs/components/esphome/entity.pyi,sha256=OljqfHYvMxfjwRnWmxvli0MYTOHHnZ24lXRmqBlYXpU,3867
|
1089
1089
|
homeassistant-stubs/components/esphome/entry_data.pyi,sha256=c-y9qTq1yd017lBVodJ5XXMt9ZToa3xrKWrY03dkfIc,7078
|
1090
1090
|
homeassistant-stubs/components/esphome/enum_mapper.pyi,sha256=CRAUBZSt527E45tK8uQCsax1jNs7jF55gg_PXaoZPS4,497
|
1091
1091
|
homeassistant-stubs/components/esphome/event.pyi,sha256=hc-QZK10dc0odbjMLTo2FcUGlvuN3sKpyvmLuf0PilY,836
|
@@ -1531,7 +1531,7 @@ homeassistant-stubs/components/homekit/doorbell.pyi,sha256=Dz667uwIylmNYHCF2eY0E
|
|
1531
1531
|
homeassistant-stubs/components/homekit/iidmanager.pyi,sha256=bf0EasOJ5pq6wfEQ95JZUz33MCKKHq8VpDzIA8t-CbM,1241
|
1532
1532
|
homeassistant-stubs/components/homekit/logbook.pyi,sha256=lTlwQ_xYJ8sa77KNy69Lxt4yfThqqY0TFroqCnE__eM,759
|
1533
1533
|
homeassistant-stubs/components/homekit/models.pyi,sha256=AMmjsr9lEqnTa5-sb2DoKV_B79pGeh5WjCL1dvqCjhI,323
|
1534
|
-
homeassistant-stubs/components/homekit/type_air_purifiers.pyi,sha256=
|
1534
|
+
homeassistant-stubs/components/homekit/type_air_purifiers.pyi,sha256=Fy8c77Mv2Vt5aCkGMhMq8TE6FKUkrm8j7h03sLSTcEc,4614
|
1535
1535
|
homeassistant-stubs/components/homekit/type_cameras.pyi,sha256=H2DRlI_9PUNVJcF_ZE457NeW0KpoFM4lznodurgHkFY,4065
|
1536
1536
|
homeassistant-stubs/components/homekit/type_covers.pyi,sha256=hfgEnVgJtUo7Yz30YfNbBiO7IKLj9Og-mSTxZSj3CV0,4569
|
1537
1537
|
homeassistant-stubs/components/homekit/type_fans.pyi,sha256=vgN4_qsnJ-0SKt_Ys6fdikyPqcr0acm71QLHaE9xG6Q,2525
|
@@ -2927,7 +2927,7 @@ homeassistant-stubs/components/renault/renault_vehicle.pyi,sha256=9XWnTAs5QAk5SS
|
|
2927
2927
|
homeassistant-stubs/components/renault/select.pyi,sha256=OKpVcLXxvADiGdVXex-zNycr7nYvNXQsuGRpIw8goFo,1358
|
2928
2928
|
homeassistant-stubs/components/renault/sensor.pyi,sha256=1eSeJYTQ4N5TeVzK3s42JyhDdqLls8BqMVtt6XRvIro,2401
|
2929
2929
|
homeassistant-stubs/components/renault/services.pyi,sha256=BKqA3qrBtIpKvdXgpkL3UubK92bIOWcEYY9tZxNDxn4,1336
|
2930
|
-
homeassistant-stubs/components/reolink/__init__.pyi,sha256=
|
2930
|
+
homeassistant-stubs/components/reolink/__init__.pyi,sha256=S9Bs7IeMuIeWSQHE6BXCLt2XWuMtPukn4U25wLwCii8,2372
|
2931
2931
|
homeassistant-stubs/components/reolink/binary_sensor.pyi,sha256=HXOLE2C9RWkTMpE0awTAmrv9-gcH3H2vkFtatbmyKmM,2742
|
2932
2932
|
homeassistant-stubs/components/reolink/button.pyi,sha256=MUXp3o0n8ak82iOcu1SpwOSVBqhd8Tc_mdsqQq7nMik,2731
|
2933
2933
|
homeassistant-stubs/components/reolink/camera.pyi,sha256=ln4pA_rcRIrSBLYtdjTG58DC89ku29ZMEl_iegOdhCo,1585
|
@@ -2946,7 +2946,7 @@ homeassistant-stubs/components/reolink/services.pyi,sha256=5MlkkniNxRTS5rP0gA-I-
|
|
2946
2946
|
homeassistant-stubs/components/reolink/siren.pyi,sha256=gc7ZVAvk00SqByirdrhQgGFb9SJqEp_479vTq_Xl03Q,1593
|
2947
2947
|
homeassistant-stubs/components/reolink/switch.pyi,sha256=9kEFCDvlUv_Wi0LhI4U_UY1J7nub4UEKgf8TeOzGtjk,3582
|
2948
2948
|
homeassistant-stubs/components/reolink/update.pyi,sha256=hUpGXE_1BBVGEqUBipOTKqWtEVYoP1pcStnw1eRw_f0,3939
|
2949
|
-
homeassistant-stubs/components/reolink/util.pyi,sha256=
|
2949
|
+
homeassistant-stubs/components/reolink/util.pyi,sha256=xa5B4RxLz2GPKIXYskRM9zWX0Cgs6MXn3u7VA7pd-Ok,1779
|
2950
2950
|
homeassistant-stubs/components/reolink/views.pyi,sha256=4HVI42z48HK0n4N3i6O7iO4nZlJppvwuyM1xetvrJLU,1041
|
2951
2951
|
homeassistant-stubs/components/repairs/__init__.pyi,sha256=rP2wDUxLdI5jElaCv55gBOyLl43X4KtQXwaCD2BFXeU,421
|
2952
2952
|
homeassistant-stubs/components/repairs/const.pyi,sha256=khiPPfo2eMEa2_FD5EaWMNBjEj5lrRekpLiGQofynn8,12
|
@@ -3130,7 +3130,7 @@ homeassistant-stubs/components/select/significant_change.pyi,sha256=Kse-ASQyzaZU
|
|
3130
3130
|
homeassistant-stubs/components/sensibo/__init__.pyi,sha256=FcQ5grd9B-iKr-_hIa5EGLBPFy8UEB4oFgWn1gsWBEg,1025
|
3131
3131
|
homeassistant-stubs/components/sensibo/binary_sensor.pyi,sha256=Ww2AJWaTVLiYiJtIngkyzdgfQmF-OLX0ImzL4VgYYvM,2668
|
3132
3132
|
homeassistant-stubs/components/sensibo/button.pyi,sha256=ekQJoCF5prYu3Pqmo7ME8oZyZ3lIJyRobGA8gniXZlQ,1483
|
3133
|
-
homeassistant-stubs/components/sensibo/climate.pyi,sha256=
|
3133
|
+
homeassistant-stubs/components/sensibo/climate.pyi,sha256=n4sm-KsumVHgc9lqwyW0XLEey1lgNUhM88hqoaACIgg,5809
|
3134
3134
|
homeassistant-stubs/components/sensibo/config_flow.pyi,sha256=y73QEKhs2MCF-S6oiQUKdcpnFsJWcQroCbHJMXisleo,1172
|
3135
3135
|
homeassistant-stubs/components/sensibo/const.pyi,sha256=DuWtkuU0cvZdAQDP2lH-gw1ylmINyZ_hJPqtcphQccE,225
|
3136
3136
|
homeassistant-stubs/components/sensibo/coordinator.pyi,sha256=ysQs7zwymkfvSvLbAaFuki7W9dWJabtJRszM1QsPFeE,1192
|
@@ -3138,7 +3138,7 @@ homeassistant-stubs/components/sensibo/diagnostics.pyi,sha256=Z8zmKxFw3JMOoo0h8R
|
|
3138
3138
|
homeassistant-stubs/components/sensibo/entity.pyi,sha256=3ixKG5NVbqH51BWRkPoqYsa-w0u2sLmG-VV6xLZfb4o,1808
|
3139
3139
|
homeassistant-stubs/components/sensibo/number.pyi,sha256=dx9BfiDcjRyn3xHMEK8BnMyy_Fr1v-fnYUyAQ4SQ5SI,1834
|
3140
3140
|
homeassistant-stubs/components/sensibo/select.pyi,sha256=uxiAOsfiE6ZUVxzrJwDjv6VZ8gGccyojtoMgzVbhRkA,2304
|
3141
|
-
homeassistant-stubs/components/sensibo/sensor.pyi,sha256=
|
3141
|
+
homeassistant-stubs/components/sensibo/sensor.pyi,sha256=mceg6pXQ7jVThjIBeiyAozxo0VWAQU779YDyAFZhrUc,3468
|
3142
3142
|
homeassistant-stubs/components/sensibo/switch.pyi,sha256=XPDkrHIONTg1pgEzqLvI4Onle5I9W5K4T23hHv2uSCs,2560
|
3143
3143
|
homeassistant-stubs/components/sensibo/update.pyi,sha256=1-COXZCoWPhIEnOfmlPe9KgssbUJhijqA6NTi1UPsZU,1722
|
3144
3144
|
homeassistant-stubs/components/sensibo/util.pyi,sha256=xprtCmdDrdUzqTXY2Yd84woblrwerslxtWK_oZ7EB6w,405
|
@@ -4017,13 +4017,13 @@ homeassistant-stubs/components/zone/const.pyi,sha256=rVGPU8EQLdTz2cDuYqG_5JV1ROW
|
|
4017
4017
|
homeassistant-stubs/components/zone/trigger.pyi,sha256=vyWWVMOw4lMGlyVMxweJzqB-nvmSbRwqtTu1IZO65e4,1204
|
4018
4018
|
homeassistant-stubs/components/zwave_js/__init__.pyi,sha256=z6PoB7RdBnAEqYeoy200H0-C9YWlj19YkrXHHQkbEpQ,8110
|
4019
4019
|
homeassistant-stubs/components/zwave_js/addon.pyi,sha256=6QRtRubMXA0j6e20eSGaWqXoKYhQMsqfMQs6U_Y5mIk,444
|
4020
|
-
homeassistant-stubs/components/zwave_js/api.pyi,sha256=
|
4020
|
+
homeassistant-stubs/components/zwave_js/api.pyi,sha256=HgT-ZAxsRmo3pqqtTkg60IertkBzUxewvBQK23xd-68,19782
|
4021
4021
|
homeassistant-stubs/components/zwave_js/binary_sensor.pyi,sha256=XhzvV0tVnnLSb-I4UlnaRaGIdGm327WqRSMmLJscU9E,3597
|
4022
4022
|
homeassistant-stubs/components/zwave_js/button.pyi,sha256=2d5ilViWUTQGzjrIgD7IWz_biTKH7r2ZkKv_ngxwLCQ,2204
|
4023
4023
|
homeassistant-stubs/components/zwave_js/climate.pyi,sha256=4ZLhK_wk3guJPjzF22I23hicZyZPp7xmAEL5sYIk1lI,4472
|
4024
|
-
homeassistant-stubs/components/zwave_js/config_flow.pyi,sha256=
|
4024
|
+
homeassistant-stubs/components/zwave_js/config_flow.pyi,sha256=q4QpKLnrAwjJHypuxGuHL3d3cRVJqc_pud2s4hZ-Hc4,8793
|
4025
4025
|
homeassistant-stubs/components/zwave_js/config_validation.pyi,sha256=i0l2VLc5E1-pW3oHZjxqeKJ1FJg7h4nwcDv02KtGHzU,148
|
4026
|
-
homeassistant-stubs/components/zwave_js/const.pyi,sha256=
|
4026
|
+
homeassistant-stubs/components/zwave_js/const.pyi,sha256=SSClzIczIYZx4vx_spXZ7DD-aoHzEam8xZwQFVnZWJc,3780
|
4027
4027
|
homeassistant-stubs/components/zwave_js/cover.pyi,sha256=wUuou3PgEVq45VUYOjCy1re39GWZIekzY92ueXmjlS0,5018
|
4028
4028
|
homeassistant-stubs/components/zwave_js/device_action.pyi,sha256=W6rs2mJn0xY9KA_ICiHcYQa4sxeuuzM02M6FLxhMSDA,2615
|
4029
4029
|
homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi,sha256=r2uOE9m6UtRsElpP1De3iskTlU8qsmLYu-_8XJ9UGws,612
|
@@ -4035,14 +4035,14 @@ homeassistant-stubs/components/zwave_js/discovery_data_template.pyi,sha256=eagpi
|
|
4035
4035
|
homeassistant-stubs/components/zwave_js/entity.pyi,sha256=mDWbW0-wMr7YsK_5f4Mf9Vi-nFWMzasM6cwCDoN23Kk,2818
|
4036
4036
|
homeassistant-stubs/components/zwave_js/event.pyi,sha256=xHbJS_NV-4RaiSkB1fqhUE8GqHpEdkFCQSfuVmo-to4,1440
|
4037
4037
|
homeassistant-stubs/components/zwave_js/fan.pyi,sha256=Ti3XWVPh484sFzKu_lSZBBwSNH_G1QM0v8PdTJai__4,4065
|
4038
|
-
homeassistant-stubs/components/zwave_js/helpers.pyi,sha256=
|
4038
|
+
homeassistant-stubs/components/zwave_js/helpers.pyi,sha256=PYGcZbMOYk9ODQhraSssIAm94i0haX0bjrt2PX363g4,5054
|
4039
4039
|
homeassistant-stubs/components/zwave_js/humidifier.pyi,sha256=ZuqMk90jCiS6VvyZARj_wWqa4lx8pyxUR4gh5rtf97I,2488
|
4040
4040
|
homeassistant-stubs/components/zwave_js/light.pyi,sha256=yUioYgGKTYxYn7ZmHxNYDvCqwkpK2AQbR1TQSVv3LtU,3938
|
4041
4041
|
homeassistant-stubs/components/zwave_js/lock.pyi,sha256=0ARbYY3vGcHi_RId4z-YPDCcNmcIQ4avQ2XDcOGgZpw,2379
|
4042
4042
|
homeassistant-stubs/components/zwave_js/logbook.pyi,sha256=7XLy6oslRdbMU1p1PP_tN5pDFGgxCg8z328tkfO6kns,960
|
4043
4043
|
homeassistant-stubs/components/zwave_js/migrate.pyi,sha256=0QcGhGnFESGgMoco84lYohi0CLWu29aN-fUz2phg4ZQ,1824
|
4044
4044
|
homeassistant-stubs/components/zwave_js/number.pyi,sha256=LHfHEZOstsiabCmjSPbwuM30vR1HhXSZUQ2LVCzxLrs,2493
|
4045
|
-
homeassistant-stubs/components/zwave_js/repairs.pyi,sha256=
|
4045
|
+
homeassistant-stubs/components/zwave_js/repairs.pyi,sha256=bBBXgcLwzFW9fILIGFUkRqmhVTEiHI7C9HhNetN7Oyk,1387
|
4046
4046
|
homeassistant-stubs/components/zwave_js/select.pyi,sha256=8P57p8vdwWpVIoDywDn-tE6ipweSvNNJzva6geWgeIg,2654
|
4047
4047
|
homeassistant-stubs/components/zwave_js/sensor.pyi,sha256=LmVQZ5VxsmI6vVsg7zE6V3-bqSosOSzGpUwIdwMTg0s,8999
|
4048
4048
|
homeassistant-stubs/components/zwave_js/services.pyi,sha256=rub3lpkjNq8PVQjnfjbvtGcCLIP2Nj4vE4xCCmCb88k,2934
|
@@ -4198,7 +4198,7 @@ homeassistant-stubs/util/yaml/dumper.pyi,sha256=vaIsOJB6hkwj7GLyo3YCNZCTwVgvvODy
|
|
4198
4198
|
homeassistant-stubs/util/yaml/input.pyi,sha256=j_ejvjaXDxeNYtA4hb9tNUPsQdi7wogbmTQXsqmt5xo,253
|
4199
4199
|
homeassistant-stubs/util/yaml/loader.pyi,sha256=cgUew76NjS7Q1Aml5sLBE2DB9JGrJS2fE-EDE92p-og,805
|
4200
4200
|
homeassistant-stubs/util/yaml/objects.pyi,sha256=Ynjx0JaWF3u82Pj8aXO-YeqrkzNO8t-Nn7G7rr_X-oI,206
|
4201
|
-
homeassistant_stubs-2025.5.
|
4202
|
-
homeassistant_stubs-2025.5.
|
4203
|
-
homeassistant_stubs-2025.5.
|
4204
|
-
homeassistant_stubs-2025.5.
|
4201
|
+
homeassistant_stubs-2025.5.2.dist-info/METADATA,sha256=oyvgXcwMM6dfyYB6Kh1VoY5dpcisyCjmFAcSePGCvS8,2948
|
4202
|
+
homeassistant_stubs-2025.5.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
4203
|
+
homeassistant_stubs-2025.5.2.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
|
4204
|
+
homeassistant_stubs-2025.5.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|