homeassistant-stubs 2024.10.0b12__py3-none-any.whl → 2024.10.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.
@@ -3,9 +3,9 @@ from .coordinator import RingDataCoordinator as RingDataCoordinator, RingListenC
3
3
  from _typeshed import Incomplete
4
4
  from dataclasses import dataclass
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
- from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, CONF_TOKEN as CONF_TOKEN
6
+ from homeassistant.const import APPLICATION_NAME as APPLICATION_NAME, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_TOKEN as CONF_TOKEN
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
- from homeassistant.helpers import device_registry as dr, instance_id as instance_id
8
+ from homeassistant.helpers import device_registry as dr
9
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
10
10
  from ring_doorbell import Ring, RingDevices as RingDevices
11
11
 
@@ -20,8 +20,9 @@ class RingData:
20
20
  def __init__(self, api, devices, devices_coordinator, listen_coordinator) -> None: ...
21
21
  RingConfigEntry = ConfigEntry[RingData]
22
22
 
23
- async def get_auth_agent_id(hass: HomeAssistant) -> tuple[str, str]: ...
23
+ def get_auth_user_agent() -> str: ...
24
24
  async def async_setup_entry(hass: HomeAssistant, entry: RingConfigEntry) -> bool: ...
25
25
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
26
26
  async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ConfigEntry, device_entry: dr.DeviceEntry) -> bool: ...
27
27
  async def _migrate_old_unique_ids(hass: HomeAssistant, entry_id: str) -> None: ...
28
+ async def async_migrate_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -1,9 +1,9 @@
1
- from . import get_auth_agent_id as get_auth_agent_id
2
- from .const import CONF_2FA as CONF_2FA, DOMAIN as DOMAIN
1
+ from . import get_auth_user_agent as get_auth_user_agent
2
+ from .const import CONF_2FA as CONF_2FA, CONF_CONFIG_ENTRY_MINOR_VERSION as CONF_CONFIG_ENTRY_MINOR_VERSION, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
- from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
6
+ from homeassistant.const import CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_TOKEN as CONF_TOKEN, CONF_USERNAME as CONF_USERNAME
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
@@ -12,12 +12,15 @@ from typing import Any
12
12
  _LOGGER: Incomplete
13
13
  STEP_USER_DATA_SCHEMA: Incomplete
14
14
  STEP_REAUTH_DATA_SCHEMA: Incomplete
15
+ STEP_RECONFIGURE_DATA_SCHEMA: Incomplete
15
16
 
16
- async def validate_input(hass: HomeAssistant, data: dict[str, str]) -> dict[str, Any]: ...
17
+ async def validate_input(hass: HomeAssistant, hardware_id: str, data: dict[str, str]) -> dict[str, Any]: ...
17
18
 
18
19
  class RingConfigFlow(ConfigFlow, domain=DOMAIN):
19
20
  VERSION: int
21
+ MINOR_VERSION = CONF_CONFIG_ENTRY_MINOR_VERSION
20
22
  user_pass: dict[str, Any]
23
+ hardware_id: str | None
21
24
  reauth_entry: ConfigEntry | None
22
25
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
23
26
  async def async_step_2fa(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,5 +1,6 @@
1
1
  from _typeshed import Incomplete
2
2
  from homeassistant.const import Platform as Platform
3
+ from typing import Final
3
4
 
4
5
  ATTRIBUTION: str
5
6
  NOTIFICATION_ID: str
@@ -10,3 +11,4 @@ PLATFORMS: Incomplete
10
11
  SCAN_INTERVAL: Incomplete
11
12
  CONF_2FA: str
12
13
  CONF_LISTEN_CREDENTIALS: str
14
+ CONF_CONFIG_ENTRY_MINOR_VERSION: Final[int]
@@ -1,4 +1,4 @@
1
- from .const import ACCOUNT_HASH as ACCOUNT_HASH, DOMAIN as DOMAIN
1
+ from .const import ACCOUNT_HASH as ACCOUNT_HASH, DOMAIN as DOMAIN, UPDATE_INTERVAL as UPDATE_INTERVAL
2
2
  from .coordinator import RitualsDataUpdateCoordinator as RitualsDataUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,5 +1,6 @@
1
- from .const import DOMAIN as DOMAIN, UPDATE_INTERVAL as UPDATE_INTERVAL
1
+ from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
+ from datetime import timedelta
3
4
  from homeassistant.core import HomeAssistant as HomeAssistant
4
5
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
5
6
  from pyrituals import Diffuser as Diffuser
@@ -8,5 +9,5 @@ _LOGGER: Incomplete
8
9
 
9
10
  class RitualsDataUpdateCoordinator(DataUpdateCoordinator[None]):
10
11
  diffuser: Incomplete
11
- def __init__(self, hass: HomeAssistant, diffuser: Diffuser) -> None: ...
12
+ def __init__(self, hass: HomeAssistant, diffuser: Diffuser, update_interval: timedelta) -> None: ...
12
13
  async def _async_update_data(self) -> None: ...
@@ -10,6 +10,7 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
10
  from homeassistant.helpers.entity import entity_sources as entity_sources
11
11
  from homeassistant.helpers.typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
12
12
  from homeassistant.loader import async_suggest_report_issue as async_suggest_report_issue
13
+ from homeassistant.util.async_ import run_callback_threadsafe as run_callback_threadsafe
13
14
  from homeassistant.util.enum import try_parse_enum as try_parse_enum
14
15
  from homeassistant.util.hass_dict import HassKey as HassKey
15
16
  from sqlalchemy.orm.session import Session as Session
@@ -41,6 +42,6 @@ def _last_reset_as_utc_isoformat(last_reset_s: Any, entity_id: str) -> str | Non
41
42
  def _timestamp_to_isoformat_or_none(timestamp: float | None) -> str | None: ...
42
43
  def compile_statistics(hass: HomeAssistant, session: Session, start: datetime.datetime, end: datetime.datetime) -> statistics.PlatformCompiledStatistics: ...
43
44
  def list_statistic_ids(hass: HomeAssistant, statistic_ids: list[str] | tuple[str] | None = None, statistic_type: str | None = None) -> dict: ...
44
- def _update_issues(report_issue: Callable[[str, str, dict[str, Any]], None], clear_issue: Callable[[str, str], None], sensor_states: list[State], metadatas: dict[str, tuple[int, StatisticMetaData]]) -> None: ...
45
+ def _update_issues(report_issue: Callable[[str, str, dict[str, Any]], None], sensor_states: list[State], metadatas: dict[str, tuple[int, StatisticMetaData]]) -> None: ...
45
46
  def update_statistics_issues(hass: HomeAssistant, session: Session) -> None: ...
46
47
  def validate_statistics(hass: HomeAssistant) -> dict[str, list[statistics.ValidationIssue]]: ...
@@ -4,7 +4,7 @@ from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordina
4
4
  from .entity import CoordinatedTPLinkEntity as CoordinatedTPLinkEntity, async_refresh_after as async_refresh_after
5
5
  from _typeshed import Incomplete
6
6
  from homeassistant.components.climate import ATTR_TEMPERATURE as ATTR_TEMPERATURE, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode
7
- from homeassistant.const import PRECISION_WHOLE as PRECISION_WHOLE
7
+ from homeassistant.const import PRECISION_TENTHS as PRECISION_TENTHS
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
9
  from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -20,7 +20,7 @@ class TPLinkClimateEntity(CoordinatedTPLinkEntity, ClimateEntity):
20
20
  _attr_name: Incomplete
21
21
  _attr_supported_features: Incomplete
22
22
  _attr_hvac_modes: Incomplete
23
- _attr_precision = PRECISION_WHOLE
23
+ _attr_precision = PRECISION_TENTHS
24
24
  _enable_turn_on_off_backwards_compatibility: bool
25
25
  _state_feature: Incomplete
26
26
  _mode_feature: Incomplete
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: homeassistant-stubs
3
- Version: 2024.10.0b12
3
+ Version: 2024.10.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
@@ -17,8 +17,8 @@ Classifier: Programming Language :: Python :: 3.12
17
17
  Classifier: Topic :: Home Automation
18
18
  Classifier: Topic :: Software Development
19
19
  Classifier: Typing :: Typed
20
- Requires-Python: <3.13,>=3.12
21
- Requires-Dist: homeassistant==2024.10.0b12
20
+ Requires-Python: <3.14,>=3.12
21
+ Requires-Dist: homeassistant==2024.10.2
22
22
  Description-Content-Type: text/markdown
23
23
 
24
24
  [![CI](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml/badge.svg)](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
@@ -2551,12 +2551,12 @@ homeassistant-stubs/components/ridwell/diagnostics.pyi,sha256=JY02z9KRuuI_Qmmgmj
2551
2551
  homeassistant-stubs/components/ridwell/entity.pyi,sha256=t0NhfS35tsNwbNvgAl-ZsDOm64WdHWavHGs4xLZBPn4,801
2552
2552
  homeassistant-stubs/components/ridwell/sensor.pyi,sha256=U1dN7wt7ovWY500AKNl0vrcwtYvb_zNv0ovg6oOnWNE,1424
2553
2553
  homeassistant-stubs/components/ridwell/switch.pyi,sha256=0nspIDAfIfGYL40jt0558U6IKdaPdSqtmpDkTljg6fw,1305
2554
- homeassistant-stubs/components/ring/__init__.pyi,sha256=1SFnBML3hrJ6Hm2-bJAkcF8xGl0S1U9jbsyIg08gJSw,1555
2554
+ homeassistant-stubs/components/ring/__init__.pyi,sha256=vu_VAxcJG9J2QKRweH68AcWusQkagIfeVPJe2EyWfN0,1610
2555
2555
  homeassistant-stubs/components/ring/binary_sensor.pyi,sha256=GeIn7etZPp39Klznx_TMq2JvXHPrWJx1EflR_nbCg3k,2626
2556
2556
  homeassistant-stubs/components/ring/button.pyi,sha256=H-S5nqj_yclQdvsDM4oOMpQ0kYKT6N_55YkRNkHB1Dg,1004
2557
2557
  homeassistant-stubs/components/ring/camera.pyi,sha256=cmHWCjiWCj47dghutGj8osXuZG4E6LJ0OGJWC223z4U,2074
2558
- homeassistant-stubs/components/ring/config_flow.pyi,sha256=jZqrxLYEX5TvWo9WNGB_5U4owBNnXeRCSZJkThwg8Ps,1511
2559
- homeassistant-stubs/components/ring/const.pyi,sha256=KfCCGg0HsZhNSErFtdolYGbH6Mg3RnEZgXKyRfAGdzM,282
2558
+ homeassistant-stubs/components/ring/config_flow.pyi,sha256=W2xPSj5x6bt0JY8J3TpFY4Knk9MNGKuDrxj8BrEmTdc,1780
2559
+ homeassistant-stubs/components/ring/const.pyi,sha256=KVBHdOB77vZ86uk_zgoIVkE3jQ6PFJJBVXkio11g9TA,351
2560
2560
  homeassistant-stubs/components/ring/coordinator.pyi,sha256=Tk78QDg4LbwtKWtc8QuIAzNaeK8bBAsNnWLljWTAEUY,2059
2561
2561
  homeassistant-stubs/components/ring/diagnostics.pyi,sha256=oDp9BxvjNCGeRZ6nlPRBmTb6FEwME97gak15uUm5RqU,392
2562
2562
  homeassistant-stubs/components/ring/entity.pyi,sha256=7QnhQ8A2IUq8kblXJGFiHNg8dvt4W1iXopCZQ9auxz0,3233
@@ -2566,11 +2566,11 @@ homeassistant-stubs/components/ring/number.pyi,sha256=8j6UfM6vOuITfG8jsLcGFMdOSd
2566
2566
  homeassistant-stubs/components/ring/sensor.pyi,sha256=d98TbhkLtqn1ZWg0iZIvZNMCFtDEkawl__jE4Rfn3QU,2957
2567
2567
  homeassistant-stubs/components/ring/siren.pyi,sha256=RIXL8nLsYO0IeNWkHccpF9wErlE_uaMDSviUyjWL78I,2773
2568
2568
  homeassistant-stubs/components/ring/switch.pyi,sha256=FXu75ksmlcXglSPkUL26FB_hhnGiEMncGBfKdH9GJoE,2576
2569
- homeassistant-stubs/components/rituals_perfume_genie/__init__.pyi,sha256=4hAMGJ_hJT1Oo9GeSwHhu4WHHs8afpp--_9ZAJNv7Xs,928
2569
+ homeassistant-stubs/components/rituals_perfume_genie/__init__.pyi,sha256=smizyEo3lR1kCh8Lemon5UDRGV2li8Tn7GRNuYdcYiY,964
2570
2570
  homeassistant-stubs/components/rituals_perfume_genie/binary_sensor.pyi,sha256=Knl1x-65Znr2tUV8lSH3XA64EmXcWapFJnBK-p4qjLs,1676
2571
2571
  homeassistant-stubs/components/rituals_perfume_genie/config_flow.pyi,sha256=ie0zF5i8gGj9Qu5Gasvfftcdr4sr6-k_phXZ4FtiOec,645
2572
2572
  homeassistant-stubs/components/rituals_perfume_genie/const.pyi,sha256=vIAqw--MGdtva7cdm1i8EyTykQuBY9C1_253DozQS1k,92
2573
- homeassistant-stubs/components/rituals_perfume_genie/coordinator.pyi,sha256=e7JtpiQ4gCXEFMNIgSB_FAX5MCUulbyiFMVUM_az0jU,551
2573
+ homeassistant-stubs/components/rituals_perfume_genie/coordinator.pyi,sha256=bhEr4GoWz6Uy5kDUweh2CWR7Vw-66Xweo0af8ayrRj4,574
2574
2574
  homeassistant-stubs/components/rituals_perfume_genie/diagnostics.pyi,sha256=9T4tKI_f-rW0MGVMYM-lkKgOOFnDwkBV4dlyrx0XOg8,529
2575
2575
  homeassistant-stubs/components/rituals_perfume_genie/entity.pyi,sha256=AYHgyFW2Zm7PEjZF43qbPV9hiIWl8GtS2YAzjm28wM0,811
2576
2576
  homeassistant-stubs/components/rituals_perfume_genie/number.pyi,sha256=xsyaedmlOQ0-497Q3hMbd6HagTXoT3Az1-8oGcyzong,1777
@@ -2693,7 +2693,7 @@ homeassistant-stubs/components/sensor/const.pyi,sha256=yWxy53j_9IHDTmfhfMjmDoxVi
2693
2693
  homeassistant-stubs/components/sensor/device_condition.pyi,sha256=ls_H9Yhl2ZNiqqGMboxyUdLMAzcnvWslPczidY3ts4s,2557
2694
2694
  homeassistant-stubs/components/sensor/device_trigger.pyi,sha256=zeZwmik_roGUaW9Oq79hq9fnED7aoPdoXcTU1Swo2F0,2549
2695
2695
  homeassistant-stubs/components/sensor/helpers.pyi,sha256=kfY6v9C-MIUroyx4bB9S-3UoVqmeRy3WpHU6tyUvrzk,331
2696
- homeassistant-stubs/components/sensor/recorder.pyi,sha256=2YZthASut7lT2pQizxuQ_ERcqtyasw8g2ZRHFzJr2PM,3790
2696
+ homeassistant-stubs/components/sensor/recorder.pyi,sha256=qYz9bwvvI7yuyB-OX-v3efq4FNriFUWgxEifeVS59zA,3838
2697
2697
  homeassistant-stubs/components/sensor/significant_change.pyi,sha256=V1FGm74Tb-9yJSOmQchjgbEA5CwwH9QsHvRFA2ejCNA,822
2698
2698
  homeassistant-stubs/components/sensor/websocket_api.pyi,sha256=Iv9OeniaZNnqYWgcLy91XHZJd01PD5W7LW87aQ8drJs,674
2699
2699
  homeassistant-stubs/components/sensoterra/__init__.pyi,sha256=I-LfmeGmDkLSWDt72GSAlV0W4ckY1T29Is6bAL3yoZo,553
@@ -3097,7 +3097,7 @@ homeassistant-stubs/components/tolo/switch.pyi,sha256=oUPZlgxZetStaqHAMI3yPa2OzS
3097
3097
  homeassistant-stubs/components/tplink/__init__.pyi,sha256=IVYIcHaD1txN1gMZgmcAH2-EXbcBd1E7-y_m2dfJXFg,2935
3098
3098
  homeassistant-stubs/components/tplink/binary_sensor.pyi,sha256=nZmzUgsY_qDuaAO2R0Bw7kLIZOezd9yMU4H8_CwhtSM,1585
3099
3099
  homeassistant-stubs/components/tplink/button.pyi,sha256=9TqjWh7Fudk2Xrw_Aa2wxdLY4bO-Q6OwOO6XOmwFqCQ,1564
3100
- homeassistant-stubs/components/tplink/climate.pyi,sha256=vsX5leWYVd6GXFRWLfKxqDEoJL0G4qjcy823flVug_Q,2188
3100
+ homeassistant-stubs/components/tplink/climate.pyi,sha256=0OpBo_VLeRi1_JdoQKM26vqbGZblgqF3HldAgZAGfMQ,2191
3101
3101
  homeassistant-stubs/components/tplink/config_flow.pyi,sha256=Nl_PtcNAXxv-hTpBK92mK9PBWegV-9f5SetKwqGl5ws,3441
3102
3102
  homeassistant-stubs/components/tplink/const.pyi,sha256=ctBhfTN9ha9_Fb7XALCNcED1PxBPi4sWpx6-ij8P4a0,613
3103
3103
  homeassistant-stubs/components/tplink/coordinator.pyi,sha256=mWT8dNcTFM1HBGRJTm5z91ej7VaIoYfBksjOuOySlIw,835
@@ -3654,7 +3654,7 @@ homeassistant-stubs/util/yaml/dumper.pyi,sha256=uQjW0KuME-gXVWgYJLNLoRDwDzVhhhgg
3654
3654
  homeassistant-stubs/util/yaml/input.pyi,sha256=wuxpKYTXZL4MujFhqjHnRLv4VPYY6QPYd-Zji-Lz9Mo,383
3655
3655
  homeassistant-stubs/util/yaml/loader.pyi,sha256=FJDEgKwYTwuB8hBeJVjqwYqJ5hQZTSF_DtsnuO-E-pM,4758
3656
3656
  homeassistant-stubs/util/yaml/objects.pyi,sha256=YUlr0nf9ugzJT9J2YHaGV2fXu5opuyNvvHPqNW46m5I,707
3657
- homeassistant_stubs-2024.10.0b12.dist-info/METADATA,sha256=AbZvJcscVAVcXJ977-Bw9qoAQeE-FNNQ-0w4AhuKwlg,2960
3658
- homeassistant_stubs-2024.10.0b12.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
3659
- homeassistant_stubs-2024.10.0b12.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
3660
- homeassistant_stubs-2024.10.0b12.dist-info/RECORD,,
3657
+ homeassistant_stubs-2024.10.2.dist-info/METADATA,sha256=6UjjIXQasZTmdsUSoGrm290lYRdBhbr6PC11QkvAqGI,2954
3658
+ homeassistant_stubs-2024.10.2.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
3659
+ homeassistant_stubs-2024.10.2.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
3660
+ homeassistant_stubs-2024.10.2.dist-info/RECORD,,