homeassistant-stubs 2025.8.3__py3-none-any.whl → 2025.9.0b1__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.

Potentially problematic release.


This version of homeassistant-stubs might be problematic. Click here for more details.

Files changed (234) hide show
  1. homeassistant-stubs/auth/models.pyi +3 -1
  2. homeassistant-stubs/components/airos/binary_sensor.pyi +27 -0
  3. homeassistant-stubs/components/airos/sensor.pyi +4 -2
  4. homeassistant-stubs/components/airq/number.pyi +31 -0
  5. homeassistant-stubs/components/aladdin_connect/__init__.pyi +10 -5
  6. homeassistant-stubs/components/aladdin_connect/api.pyi +12 -0
  7. homeassistant-stubs/components/aladdin_connect/application_credentials.pyi +5 -0
  8. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +15 -4
  9. homeassistant-stubs/components/aladdin_connect/const.pyi +10 -0
  10. homeassistant-stubs/components/aladdin_connect/coordinator.pyi +16 -0
  11. homeassistant-stubs/components/aladdin_connect/cover.pyi +25 -0
  12. homeassistant-stubs/components/aladdin_connect/entity.pyi +15 -0
  13. homeassistant-stubs/components/aladdin_connect/sensor.pyi +25 -0
  14. homeassistant-stubs/components/alexa_devices/__init__.pyi +1 -1
  15. homeassistant-stubs/components/alexa_devices/config_flow.pyi +2 -0
  16. homeassistant-stubs/components/alexa_devices/const.pyi +1 -1
  17. homeassistant-stubs/components/alexa_devices/sensor.pyi +1 -1
  18. homeassistant-stubs/components/amberelectric/const.pyi +0 -1
  19. homeassistant-stubs/components/amberelectric/services.pyi +2 -1
  20. homeassistant-stubs/components/ambient_station/entity.pyi +1 -1
  21. homeassistant-stubs/components/android_ip_webcam/coordinator.pyi +0 -1
  22. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +2 -6
  23. homeassistant-stubs/components/apcupsd/entity.pyi +11 -0
  24. homeassistant-stubs/components/apcupsd/sensor.pyi +2 -6
  25. homeassistant-stubs/components/asuswrt/bridge.pyi +10 -8
  26. homeassistant-stubs/components/asuswrt/helpers.pyi +8 -0
  27. homeassistant-stubs/components/auth/login_flow.pyi +1 -1
  28. homeassistant-stubs/components/auth/mfa_setup_flow.pyi +1 -1
  29. homeassistant-stubs/components/awair/const.pyi +1 -0
  30. homeassistant-stubs/components/awair/sensor.pyi +2 -2
  31. homeassistant-stubs/components/backup/config.pyi +0 -14
  32. homeassistant-stubs/components/bayesian/__init__.pyi +6 -4
  33. homeassistant-stubs/components/bayesian/binary_sensor.pyi +6 -5
  34. homeassistant-stubs/components/bayesian/config_flow.pyi +69 -0
  35. homeassistant-stubs/components/bayesian/const.pyi +5 -0
  36. homeassistant-stubs/components/bayesian/issues.pyi +1 -1
  37. homeassistant-stubs/components/bosch_alarm/const.pyi +0 -1
  38. homeassistant-stubs/components/bosch_alarm/services.pyi +2 -1
  39. homeassistant-stubs/components/braviatv/button.pyi +1 -1
  40. homeassistant-stubs/components/braviatv/coordinator.pyi +1 -0
  41. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  42. homeassistant-stubs/components/climate/__init__.pyi +1 -1
  43. homeassistant-stubs/components/cloud/alexa_config.pyi +2 -1
  44. homeassistant-stubs/components/cloud/subscription.pyi +2 -4
  45. homeassistant-stubs/components/co2signal/coordinator.pyi +3 -3
  46. homeassistant-stubs/components/co2signal/helpers.pyi +2 -3
  47. homeassistant-stubs/components/co2signal/sensor.pyi +3 -3
  48. homeassistant-stubs/components/config/config_entries.pyi +6 -3
  49. homeassistant-stubs/components/demo/media_player.pyi +2 -0
  50. homeassistant-stubs/components/device_automation/condition.pyi +2 -2
  51. homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +29 -1
  52. homeassistant-stubs/components/enphase_envoy/sensor.pyi +30 -1
  53. homeassistant-stubs/components/esphome/manager.pyi +1 -2
  54. homeassistant-stubs/components/esphome/media_player.pyi +5 -0
  55. homeassistant-stubs/components/fan/intent.pyi +7 -0
  56. homeassistant-stubs/components/fritz/coordinator.pyi +0 -1
  57. homeassistant-stubs/components/fyta/const.pyi +4 -0
  58. homeassistant-stubs/components/fyta/sensor.pyi +11 -0
  59. homeassistant-stubs/components/glances/coordinator.pyi +0 -1
  60. homeassistant-stubs/components/group/config_flow.pyi +2 -0
  61. homeassistant-stubs/components/habitica/__init__.pyi +6 -2
  62. homeassistant-stubs/components/habitica/binary_sensor.pyi +13 -4
  63. homeassistant-stubs/components/habitica/coordinator.pyi +18 -4
  64. homeassistant-stubs/components/habitica/entity.pyi +10 -1
  65. homeassistant-stubs/components/habitica/image.pyi +19 -4
  66. homeassistant-stubs/components/habitica/sensor.pyi +27 -3
  67. homeassistant-stubs/components/habitica/util.pyi +5 -2
  68. homeassistant-stubs/components/home_connect/const.pyi +0 -7
  69. homeassistant-stubs/components/home_connect/services.pyi +1 -14
  70. homeassistant-stubs/components/homeassistant_hardware/coordinator.pyi +0 -1
  71. homeassistant-stubs/components/homee/config_flow.pyi +8 -2
  72. homeassistant-stubs/components/homee/const.pyi +3 -0
  73. homeassistant-stubs/components/homekit/accessories.pyi +1 -1
  74. homeassistant-stubs/components/homekit/const.pyi +4 -0
  75. homeassistant-stubs/components/homekit/type_switches.pyi +11 -1
  76. homeassistant-stubs/components/homekit/util.pyi +3 -2
  77. homeassistant-stubs/components/huawei_lte/__init__.pyi +2 -2
  78. homeassistant-stubs/components/huawei_lte/const.pyi +0 -1
  79. homeassistant-stubs/components/huawei_lte/notify.pyi +2 -2
  80. homeassistant-stubs/components/husqvarna_automower/button.pyi +4 -0
  81. homeassistant-stubs/components/husqvarna_automower/const.pyi +1 -0
  82. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +10 -0
  83. homeassistant-stubs/components/husqvarna_automower/event.pyi +35 -0
  84. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +1 -2
  85. homeassistant-stubs/components/idasen_desk/__init__.pyi +0 -1
  86. homeassistant-stubs/components/jewish_calendar/__init__.pyi +2 -1
  87. homeassistant-stubs/components/jewish_calendar/coordinator.pyi +41 -0
  88. homeassistant-stubs/components/jewish_calendar/entity.pyi +5 -26
  89. homeassistant-stubs/components/jewish_calendar/sensor.pyi +1 -1
  90. homeassistant-stubs/components/knx/scene.pyi +5 -4
  91. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +5 -11
  92. homeassistant-stubs/components/knx/storage/knx_selector.pyi +57 -6
  93. homeassistant-stubs/components/knx/storage/serialize.pyi +10 -0
  94. homeassistant-stubs/components/knx/storage/util.pyi +2 -0
  95. homeassistant-stubs/components/knx/websocket.pyi +7 -3
  96. homeassistant-stubs/components/letpot/select.pyi +39 -0
  97. homeassistant-stubs/components/mastodon/__init__.pyi +1 -2
  98. homeassistant-stubs/components/mastodon/config_flow.pyi +2 -2
  99. homeassistant-stubs/components/mastodon/const.pyi +0 -1
  100. homeassistant-stubs/components/mastodon/diagnostics.pyi +2 -2
  101. homeassistant-stubs/components/mastodon/services.pyi +2 -1
  102. homeassistant-stubs/components/matter/lock.pyi +6 -0
  103. homeassistant-stubs/components/matter/sensor.pyi +2 -1
  104. homeassistant-stubs/components/mealie/const.pyi +0 -1
  105. homeassistant-stubs/components/mealie/services.pyi +2 -2
  106. homeassistant-stubs/components/media_player/__init__.pyi +4 -0
  107. homeassistant-stubs/components/media_player/intent.pyi +13 -3
  108. homeassistant-stubs/components/met_eireann/const.pyi +1 -1
  109. homeassistant-stubs/components/met_eireann/weather.pyi +4 -0
  110. homeassistant-stubs/components/miele/const.pyi +1 -0
  111. homeassistant-stubs/components/miele/coordinator.pyi +2 -3
  112. homeassistant-stubs/components/miele/entity.pyi +2 -3
  113. homeassistant-stubs/components/miele/sensor.pyi +25 -6
  114. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -2
  115. homeassistant-stubs/components/modbus/climate.pyi +1 -2
  116. homeassistant-stubs/components/modbus/const.pyi +2 -0
  117. homeassistant-stubs/components/modbus/entity.pyi +8 -10
  118. homeassistant-stubs/components/modbus/light.pyi +0 -1
  119. homeassistant-stubs/components/modbus/modbus.pyi +9 -11
  120. homeassistant-stubs/components/modbus/sensor.pyi +1 -3
  121. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +2 -23
  122. homeassistant-stubs/components/mqtt/config_flow.pyi +8 -2
  123. homeassistant-stubs/components/mqtt/const.pyi +40 -1
  124. homeassistant-stubs/components/mqtt/lock.pyi +1 -21
  125. homeassistant-stubs/components/mqtt/number.pyi +1 -0
  126. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  127. homeassistant-stubs/components/music_assistant/actions.pyi +2 -1
  128. homeassistant-stubs/components/music_assistant/const.pyi +0 -1
  129. homeassistant-stubs/components/number/__init__.pyi +3 -0
  130. homeassistant-stubs/components/number/const.pyi +2 -1
  131. homeassistant-stubs/components/open_router/entity.pyi +2 -2
  132. homeassistant-stubs/components/openai_conversation/entity.pyi +3 -3
  133. homeassistant-stubs/components/opower/__init__.pyi +1 -0
  134. homeassistant-stubs/components/opower/repairs.pyi +13 -0
  135. homeassistant-stubs/components/overseerr/const.pyi +0 -1
  136. homeassistant-stubs/components/overseerr/services.pyi +2 -1
  137. homeassistant-stubs/components/person/__init__.pyi +2 -1
  138. homeassistant-stubs/components/qbus/binary_sensor.pyi +43 -0
  139. homeassistant-stubs/components/qbus/climate.pyi +1 -1
  140. homeassistant-stubs/components/qbus/coordinator.pyi +4 -3
  141. homeassistant-stubs/components/qbus/cover.pyi +1 -1
  142. homeassistant-stubs/components/qbus/entity.pyi +6 -5
  143. homeassistant-stubs/components/qbus/light.pyi +1 -1
  144. homeassistant-stubs/components/qbus/scene.pyi +4 -6
  145. homeassistant-stubs/components/qbus/sensor.pyi +67 -0
  146. homeassistant-stubs/components/qbus/switch.pyi +1 -1
  147. homeassistant-stubs/components/recorder/statistics.pyi +1 -1
  148. homeassistant-stubs/components/recorder/websocket_api.pyi +1 -1
  149. homeassistant-stubs/components/rest_command/__init__.pyi +1 -1
  150. homeassistant-stubs/components/romy/coordinator.pyi +0 -1
  151. homeassistant-stubs/components/russound_rio/media_browser.pyi +8 -0
  152. homeassistant-stubs/components/russound_rio/media_player.pyi +3 -2
  153. homeassistant-stubs/components/ruuvitag_ble/sensor.pyi +2 -2
  154. homeassistant-stubs/components/scene/__init__.pyi +13 -4
  155. homeassistant-stubs/components/sensibo/select.pyi +0 -5
  156. homeassistant-stubs/components/sensor/__init__.pyi +3 -0
  157. homeassistant-stubs/components/sensor/const.pyi +3 -2
  158. homeassistant-stubs/components/sensor/recorder.pyi +1 -1
  159. homeassistant-stubs/components/sleep_as_android/__init__.pyi +16 -0
  160. homeassistant-stubs/components/sleep_as_android/config_flow.pyi +2 -0
  161. homeassistant-stubs/components/sleep_as_android/const.pyi +9 -0
  162. homeassistant-stubs/components/sleep_as_android/diagnostics.pyi +5 -0
  163. homeassistant-stubs/components/sleep_as_android/entity.pyi +20 -0
  164. homeassistant-stubs/components/sleep_as_android/event.pyi +33 -0
  165. homeassistant-stubs/components/sleep_as_android/sensor.pyi +25 -0
  166. homeassistant-stubs/components/solarlog/sensor.pyi +11 -1
  167. homeassistant-stubs/components/speedtestdotnet/coordinator.pyi +0 -1
  168. homeassistant-stubs/components/stookwijzer/const.pyi +0 -1
  169. homeassistant-stubs/components/stookwijzer/services.pyi +2 -1
  170. homeassistant-stubs/components/sun/condition.pyi +2 -2
  171. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +1 -0
  172. homeassistant-stubs/components/switchbot_cloud/const.pyi +10 -0
  173. homeassistant-stubs/components/switchbot_cloud/cover.pyi +57 -0
  174. homeassistant-stubs/components/switchbot_cloud/fan.pyi +22 -1
  175. homeassistant-stubs/components/telegram_bot/__init__.pyi +2 -1
  176. homeassistant-stubs/components/telegram_bot/bot.pyi +4 -1
  177. homeassistant-stubs/components/telegram_bot/notify.pyi +21 -0
  178. homeassistant-stubs/components/unifi/switch.pyi +3 -0
  179. homeassistant-stubs/components/volvo/__init__.pyi +1 -1
  180. homeassistant-stubs/components/volvo/binary_sensor.pyi +42 -0
  181. homeassistant-stubs/components/volvo/const.pyi +1 -1
  182. homeassistant-stubs/components/volvo/coordinator.pyi +5 -0
  183. homeassistant-stubs/components/volvo/sensor.pyi +2 -2
  184. homeassistant-stubs/components/webostv/__init__.pyi +2 -2
  185. homeassistant-stubs/components/webostv/const.pyi +0 -1
  186. homeassistant-stubs/components/webostv/notify.pyi +2 -2
  187. homeassistant-stubs/components/wemo/coordinator.pyi +0 -1
  188. homeassistant-stubs/components/workday/__init__.pyi +6 -8
  189. homeassistant-stubs/components/workday/binary_sensor.pyi +9 -33
  190. homeassistant-stubs/components/workday/entity.pyi +34 -0
  191. homeassistant-stubs/components/workday/util.pyi +14 -0
  192. homeassistant-stubs/components/zone/condition.pyi +2 -2
  193. homeassistant-stubs/components/zwave_js/__init__.pyi +5 -5
  194. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +18 -10
  195. homeassistant-stubs/components/zwave_js/const.pyi +0 -1
  196. homeassistant-stubs/components/zwave_js/discovery.pyi +7 -51
  197. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +1 -11
  198. homeassistant-stubs/components/zwave_js/entity.pyi +15 -5
  199. homeassistant-stubs/components/zwave_js/helpers.pyi +0 -7
  200. homeassistant-stubs/components/zwave_js/migrate.pyi +2 -2
  201. homeassistant-stubs/components/zwave_js/models.pyi +95 -1
  202. homeassistant-stubs/components/zwave_js/triggers/event.pyi +5 -4
  203. homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +2 -2
  204. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +3 -2
  205. homeassistant-stubs/components/zwave_js/update.pyi +0 -3
  206. homeassistant-stubs/config_entries.pyi +5 -0
  207. homeassistant-stubs/const.pyi +9 -5
  208. homeassistant-stubs/data_entry_flow.pyi +0 -1
  209. homeassistant-stubs/helpers/automation.pyi +2 -0
  210. homeassistant-stubs/helpers/condition.pyi +6 -6
  211. homeassistant-stubs/helpers/config_validation.pyi +3 -0
  212. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
  213. homeassistant-stubs/helpers/device_registry.pyi +4 -3
  214. homeassistant-stubs/helpers/entity_registry.pyi +6 -4
  215. homeassistant-stubs/helpers/json.pyi +0 -7
  216. homeassistant-stubs/helpers/llm.pyi +1 -0
  217. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +2 -1
  218. homeassistant-stubs/helpers/selector.pyi +2 -1
  219. homeassistant-stubs/helpers/target.pyi +3 -2
  220. homeassistant-stubs/helpers/trigger.pyi +6 -6
  221. homeassistant-stubs/util/unit_conversion.pyi +11 -1
  222. {homeassistant_stubs-2025.8.3.dist-info → homeassistant_stubs-2025.9.0b1.dist-info}/METADATA +2 -2
  223. {homeassistant_stubs-2025.8.3.dist-info → homeassistant_stubs-2025.9.0b1.dist-info}/RECORD +225 -200
  224. homeassistant-stubs/components/linear_garage_door/__init__.pyi +0 -10
  225. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +0 -25
  226. homeassistant-stubs/components/linear_garage_door/const.pyi +0 -1
  227. homeassistant-stubs/components/linear_garage_door/coordinator.pyi +0 -26
  228. homeassistant-stubs/components/linear_garage_door/cover.pyi +0 -28
  229. homeassistant-stubs/components/linear_garage_door/diagnostics.pyi +0 -10
  230. homeassistant-stubs/components/linear_garage_door/entity.pyi +0 -17
  231. homeassistant-stubs/components/linear_garage_door/light.pyi +0 -23
  232. homeassistant-stubs/components/mastodon/notify.pyi +0 -24
  233. {homeassistant_stubs-2025.8.3.dist-info → homeassistant_stubs-2025.9.0b1.dist-info}/WHEEL +0 -0
  234. {homeassistant_stubs-2025.8.3.dist-info → homeassistant_stubs-2025.9.0b1.dist-info}/licenses/LICENSE +0 -0
@@ -1,18 +1,11 @@
1
1
  import json
2
2
  import orjson
3
- from .deprecation import DeprecatedConstant as DeprecatedConstant, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, deprecated_function as deprecated_function, dir_with_deprecated_constants as dir_with_deprecated_constants
4
3
  from _typeshed import Incomplete
5
4
  from collections.abc import Callable as Callable
6
5
  from homeassistant.util.file import write_utf8_file as write_utf8_file, write_utf8_file_atomic as write_utf8_file_atomic
7
6
  from homeassistant.util.json import SerializationError as SerializationError, format_unserializable_data as format_unserializable_data
8
7
  from typing import Any, Final
9
8
 
10
- _DEPRECATED_JSON_DECODE_EXCEPTIONS: Incomplete
11
- _DEPRECATED_JSON_ENCODE_EXCEPTIONS: Incomplete
12
- json_loads: Incomplete
13
- __getattr__: Incomplete
14
- __dir__: Incomplete
15
- __all__: Incomplete
16
9
  _LOGGER: Incomplete
17
10
 
18
11
  class JSONEncoder(json.JSONEncoder):
@@ -50,6 +50,7 @@ class ToolInput:
50
50
  tool_name: str
51
51
  tool_args: dict[str, Any]
52
52
  id: str = dc_field(default_factory=Incomplete)
53
+ external: bool = ...
53
54
 
54
55
  class Tool(metaclass=abc.ABCMeta):
55
56
  name: str
@@ -26,7 +26,7 @@ class SchemaFlowFormStep(SchemaFlowStep):
26
26
 
27
27
  @dataclass(slots=True)
28
28
  class SchemaFlowMenuStep(SchemaFlowStep):
29
- options: Container[str]
29
+ options: Container[str] | Callable[[SchemaCommonFlowHandler], Coroutine[Any, Any, Container[str]]]
30
30
 
31
31
  class SchemaCommonFlowHandler:
32
32
  _flow: Incomplete
@@ -41,6 +41,7 @@ class SchemaCommonFlowHandler:
41
41
  @property
42
42
  def flow_state(self) -> dict[str, Any]: ...
43
43
  async def async_step(self, step_id: str, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
44
+ async def _get_options(self, form_step: SchemaFlowMenuStep) -> Container[str]: ...
44
45
  async def _get_schema(self, form_step: SchemaFlowFormStep) -> vol.Schema | None: ...
45
46
  async def _async_form_step(self, step_id: str, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
46
47
  def _update_and_remove_omitted_optional_keys(self, values: dict[str, Any], user_input: dict[str, Any], data_schema: vol.Schema | None) -> None: ...
@@ -389,12 +389,13 @@ class SelectSelector(Selector[SelectSelectorConfig]):
389
389
  class StateSelectorConfig(BaseSelectorConfig, total=False):
390
390
  entity_id: str
391
391
  hide_states: list[str]
392
+ multiple: bool
392
393
 
393
394
  class StateSelector(Selector[StateSelectorConfig]):
394
395
  selector_type: str
395
396
  CONFIG_SCHEMA: Incomplete
396
397
  def __init__(self, config: StateSelectorConfig) -> None: ...
397
- def __call__(self, data: Any) -> str: ...
398
+ def __call__(self, data: Any) -> str | list[str]: ...
398
399
 
399
400
  class StatisticSelectorConfig(BaseSelectorConfig, total=False):
400
401
  multiple: bool
@@ -48,12 +48,13 @@ class TargetStateChangeTracker:
48
48
  _hass: Incomplete
49
49
  _selector_data: Incomplete
50
50
  _action: Incomplete
51
+ _entity_filter: Incomplete
51
52
  _state_change_unsub: CALLBACK_TYPE | None
52
53
  _registry_unsubs: list[CALLBACK_TYPE]
53
- def __init__(self, hass: HomeAssistant, selector_data: TargetSelectorData, action: Callable[[TargetStateChangedData], Any]) -> None: ...
54
+ def __init__(self, hass: HomeAssistant, selector_data: TargetSelectorData, action: Callable[[TargetStateChangedData], Any], entity_filter: Callable[[set[str]], set[str]]) -> None: ...
54
55
  def async_setup(self) -> Callable[[], None]: ...
55
56
  def _track_entities_state_change(self) -> None: ...
56
57
  def _setup_registry_listeners(self) -> None: ...
57
58
  def _unsubscribe(self) -> None: ...
58
59
 
59
- def async_track_target_selector_state_change_event(hass: HomeAssistant, target_selector_config: ConfigType, action: Callable[[TargetStateChangedData], Any]) -> CALLBACK_TYPE: ...
60
+ def async_track_target_selector_state_change_event(hass: HomeAssistant, target_selector_config: ConfigType, action: Callable[[TargetStateChangedData], Any], entity_filter: Callable[[set[str]], set[str]] = ...) -> CALLBACK_TYPE: ...
@@ -1,6 +1,7 @@
1
1
  import abc
2
2
  import voluptuous as vol
3
3
  from . import selector as selector
4
+ from .automation import get_absolute_description_key as get_absolute_description_key, get_relative_description_key as get_relative_description_key
4
5
  from .integration_platform import async_process_integration_platforms as async_process_integration_platforms
5
6
  from .selector import TargetSelector as TargetSelector
6
7
  from .template import Template as Template
@@ -16,7 +17,6 @@ from homeassistant.loader import Integration as Integration, IntegrationNotFound
16
17
  from homeassistant.util.async_ import create_eager_task as create_eager_task
17
18
  from homeassistant.util.hass_dict import HassKey as HassKey
18
19
  from homeassistant.util.yaml import load_yaml_dict as load_yaml_dict
19
- from homeassistant.util.yaml.loader import JSON_TYPE as JSON_TYPE
20
20
  from typing import Any, Protocol, TypedDict
21
21
 
22
22
  _LOGGER: Incomplete
@@ -41,9 +41,9 @@ class Trigger(abc.ABC, metaclass=abc.ABCMeta):
41
41
  def __init__(self, hass: HomeAssistant, config: ConfigType) -> None: ...
42
42
  @classmethod
43
43
  @abc.abstractmethod
44
- async def async_validate_trigger_config(cls, hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
44
+ async def async_validate_config(cls, hass: HomeAssistant, config: ConfigType) -> ConfigType: ...
45
45
  @abc.abstractmethod
46
- async def async_attach_trigger(self, action: TriggerActionType, trigger_info: TriggerInfo) -> CALLBACK_TYPE: ...
46
+ async def async_attach(self, action: TriggerActionType, trigger_info: TriggerInfo) -> CALLBACK_TYPE: ...
47
47
 
48
48
  class TriggerProtocol(Protocol):
49
49
  async def async_get_triggers(self, hass: HomeAssistant) -> dict[str, type[Trigger]]: ...
@@ -88,10 +88,10 @@ class PluggableAction:
88
88
  def async_register(self, hass: HomeAssistant, trigger: dict[str, str]) -> CALLBACK_TYPE: ...
89
89
  async def async_run(self, hass: HomeAssistant, context: Context | None = None) -> None: ...
90
90
 
91
- async def _async_get_trigger_platform(hass: HomeAssistant, config: ConfigType) -> TriggerProtocol: ...
91
+ async def _async_get_trigger_platform(hass: HomeAssistant, trigger_key: str) -> tuple[str, TriggerProtocol]: ...
92
92
  async def async_validate_trigger_config(hass: HomeAssistant, trigger_config: list[ConfigType]) -> list[ConfigType]: ...
93
93
  def _trigger_action_wrapper(hass: HomeAssistant, action: Callable, conf: ConfigType) -> Callable: ...
94
94
  async def async_initialize_triggers(hass: HomeAssistant, trigger_config: list[ConfigType], action: Callable, domain: str, name: str, log_cb: Callable, home_assistant_start: bool = False, variables: TemplateVarsType = None) -> CALLBACK_TYPE | None: ...
95
- def _load_triggers_file(hass: HomeAssistant, integration: Integration) -> JSON_TYPE: ...
96
- def _load_triggers_files(hass: HomeAssistant, integrations: Iterable[Integration]) -> dict[str, JSON_TYPE]: ...
95
+ def _load_triggers_file(integration: Integration) -> dict[str, Any]: ...
96
+ def _load_triggers_files(integrations: Iterable[Integration]) -> dict[str, dict[str, Any]]: ...
97
97
  async def async_get_all_descriptions(hass: HomeAssistant) -> dict[str, dict[str, Any] | None]: ...
@@ -1,7 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from collections.abc import Callable as Callable
3
3
  from functools import lru_cache
4
- from homeassistant.const import CONCENTRATION_GRAMS_PER_CUBIC_METER as CONCENTRATION_GRAMS_PER_CUBIC_METER, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UNIT_NOT_RECOGNIZED_TEMPLATE as UNIT_NOT_RECOGNIZED_TEMPLATE, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfInformation as UnitOfInformation, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPressure as UnitOfPressure, UnitOfReactiveEnergy as UnitOfReactiveEnergy, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
4
+ from homeassistant.const import CONCENTRATION_GRAMS_PER_CUBIC_METER as CONCENTRATION_GRAMS_PER_CUBIC_METER, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, PERCENTAGE as PERCENTAGE, UNIT_NOT_RECOGNIZED_TEMPLATE as UNIT_NOT_RECOGNIZED_TEMPLATE, UnitOfApparentPower as UnitOfApparentPower, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfInformation as UnitOfInformation, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPressure as UnitOfPressure, UnitOfReactiveEnergy as UnitOfReactiveEnergy, UnitOfReactivePower as UnitOfReactivePower, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
5
5
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
6
 
7
7
  _MM_TO_M: float
@@ -119,6 +119,11 @@ class MassConverter(BaseUnitConverter):
119
119
  _UNIT_CONVERSION: dict[str | None, float]
120
120
  VALID_UNITS: Incomplete
121
121
 
122
+ class ApparentPowerConverter(BaseUnitConverter):
123
+ UNIT_CLASS: str
124
+ _UNIT_CONVERSION: dict[str | None, float]
125
+ VALID_UNITS: Incomplete
126
+
122
127
  class PowerConverter(BaseUnitConverter):
123
128
  UNIT_CLASS: str
124
129
  _UNIT_CONVERSION: dict[str | None, float]
@@ -134,6 +139,11 @@ class ReactiveEnergyConverter(BaseUnitConverter):
134
139
  _UNIT_CONVERSION: dict[str | None, float]
135
140
  VALID_UNITS: Incomplete
136
141
 
142
+ class ReactivePowerConverter(BaseUnitConverter):
143
+ UNIT_CLASS: str
144
+ _UNIT_CONVERSION: dict[str | None, float]
145
+ VALID_UNITS: Incomplete
146
+
137
147
  class SpeedConverter(BaseUnitConverter):
138
148
  UNIT_CLASS: str
139
149
  _UNIT_CONVERSION: dict[str | None, float]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: homeassistant-stubs
3
- Version: 2025.8.3
3
+ Version: 2025.9.0b1
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.8.3
21
+ Requires-Dist: homeassistant==2025.9.0b1
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)