homeassistant-stubs 2025.7.4__py3-none-any.whl → 2025.8.0b0__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 (479) hide show
  1. homeassistant-stubs/bootstrap.pyi +1 -1
  2. homeassistant-stubs/components/airnow/__init__.pyi +0 -1
  3. homeassistant-stubs/components/airnow/config_flow.pyi +2 -2
  4. homeassistant-stubs/components/airos/__init__.pyi +9 -0
  5. homeassistant-stubs/components/airos/config_flow.pyi +14 -0
  6. homeassistant-stubs/components/airos/const.pyi +5 -0
  7. homeassistant-stubs/components/airos/coordinator.pyi +16 -0
  8. homeassistant-stubs/components/airos/entity.pyi +11 -0
  9. homeassistant-stubs/components/airos/sensor.pyi +29 -0
  10. homeassistant-stubs/components/airq/const.pyi +0 -1
  11. homeassistant-stubs/components/airq/sensor.pyi +2 -2
  12. homeassistant-stubs/components/airthings/sensor.pyi +1 -1
  13. homeassistant-stubs/components/alexa_devices/__init__.pyi +6 -0
  14. homeassistant-stubs/components/alexa_devices/config_flow.pyi +10 -0
  15. homeassistant-stubs/components/alexa_devices/coordinator.pyi +4 -3
  16. homeassistant-stubs/components/alexa_devices/services.pyi +24 -0
  17. homeassistant-stubs/components/amberelectric/__init__.pyi +7 -1
  18. homeassistant-stubs/components/amberelectric/const.pyi +8 -1
  19. homeassistant-stubs/components/amberelectric/coordinator.pyi +1 -2
  20. homeassistant-stubs/components/amberelectric/helpers.pyi +6 -0
  21. homeassistant-stubs/components/amberelectric/sensor.pyi +2 -2
  22. homeassistant-stubs/components/amberelectric/services.pyi +15 -0
  23. homeassistant-stubs/components/analytics/__init__.pyi +1 -0
  24. homeassistant-stubs/components/analytics/analytics.pyi +3 -0
  25. homeassistant-stubs/components/analytics/http.pyi +10 -0
  26. homeassistant-stubs/components/analytics_insights/__init__.pyi +0 -1
  27. homeassistant-stubs/components/analytics_insights/config_flow.pyi +2 -2
  28. homeassistant-stubs/components/androidtv_remote/__init__.pyi +2 -6
  29. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +6 -6
  30. homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +1 -1
  31. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -2
  32. homeassistant-stubs/components/androidtv_remote/helpers.pyi +3 -1
  33. homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -4
  34. homeassistant-stubs/components/androidtv_remote/remote.pyi +1 -1
  35. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  36. homeassistant-stubs/components/assist_pipeline/const.pyi +0 -1
  37. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -5
  38. homeassistant-stubs/components/awair/const.pyi +1 -0
  39. homeassistant-stubs/components/awair/sensor.pyi +1 -1
  40. homeassistant-stubs/components/backup/__init__.pyi +6 -2
  41. homeassistant-stubs/components/backup/coordinator.pyi +0 -1
  42. homeassistant-stubs/components/backup/manager.pyi +6 -3
  43. homeassistant-stubs/components/backup/onboarding.pyi +1 -1
  44. homeassistant-stubs/components/backup/services.pyi +7 -0
  45. homeassistant-stubs/components/backup/websocket.pyi +4 -1
  46. homeassistant-stubs/components/blue_current/__init__.pyi +5 -5
  47. homeassistant-stubs/components/blue_current/const.pyi +11 -0
  48. homeassistant-stubs/components/blue_current/switch.pyi +40 -0
  49. homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
  50. homeassistant-stubs/components/bosch_alarm/services.pyi +3 -2
  51. homeassistant-stubs/components/bring/__init__.pyi +5 -0
  52. homeassistant-stubs/components/bring/const.pyi +4 -0
  53. homeassistant-stubs/components/bring/services.pyi +14 -0
  54. homeassistant-stubs/components/cloud/backup.pyi +3 -3
  55. homeassistant-stubs/components/cloud/repairs.pyi +3 -3
  56. homeassistant-stubs/components/cloud/subscription.pyi +2 -1
  57. homeassistant-stubs/components/cloud/tts.pyi +2 -1
  58. homeassistant-stubs/components/command_line/sensor.pyi +0 -2
  59. homeassistant-stubs/components/demo/vacuum.pyi +0 -3
  60. homeassistant-stubs/components/derivative/__init__.pyi +5 -1
  61. homeassistant-stubs/components/derivative/config_flow.pyi +2 -0
  62. homeassistant-stubs/components/derivative/sensor.pyi +7 -4
  63. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +3 -7
  64. homeassistant-stubs/components/devolo_home_control/entity.pyi +0 -1
  65. homeassistant-stubs/components/devolo_home_network/coordinator.pyi +2 -2
  66. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
  67. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  68. homeassistant-stubs/components/devolo_home_network/sensor.pyi +1 -1
  69. homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
  70. homeassistant-stubs/components/discovergy/coordinator.pyi +1 -0
  71. homeassistant-stubs/components/dnsip/__init__.pyi +0 -1
  72. homeassistant-stubs/components/dnsip/config_flow.pyi +2 -2
  73. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +13 -3
  74. homeassistant-stubs/components/ecovacs/sensor.pyi +13 -0
  75. homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -7
  76. homeassistant-stubs/components/eheimdigital/config_flow.pyi +2 -1
  77. homeassistant-stubs/components/elevenlabs/config_flow.pyi +1 -1
  78. homeassistant-stubs/components/elevenlabs/const.pyi +0 -2
  79. homeassistant-stubs/components/elevenlabs/tts.pyi +2 -3
  80. homeassistant-stubs/components/enphase_envoy/__init__.pyi +0 -2
  81. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
  82. homeassistant-stubs/components/esphome/config_flow.pyi +2 -0
  83. homeassistant-stubs/components/esphome/encryption_key_storage.pyi +29 -0
  84. homeassistant-stubs/components/esphome/entity.pyi +3 -1
  85. homeassistant-stubs/components/esphome/entry_data.pyi +14 -6
  86. homeassistant-stubs/components/esphome/manager.pyi +3 -1
  87. homeassistant-stubs/components/feedreader/__init__.pyi +0 -1
  88. homeassistant-stubs/components/feedreader/config_flow.pyi +3 -3
  89. homeassistant-stubs/components/forecast_solar/__init__.pyi +0 -1
  90. homeassistant-stubs/components/forecast_solar/config_flow.pyi +2 -2
  91. homeassistant-stubs/components/fritz/__init__.pyi +0 -1
  92. homeassistant-stubs/components/fritz/config_flow.pyi +2 -2
  93. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +0 -1
  94. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
  95. homeassistant-stubs/components/frontend/__init__.pyi +1 -0
  96. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +3 -1
  97. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
  98. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -3
  99. homeassistant-stubs/components/generic_thermostat/__init__.pyi +5 -1
  100. homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
  101. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
  102. homeassistant-stubs/components/geo_location/trigger.pyi +0 -1
  103. homeassistant-stubs/components/gios/const.pyi +2 -0
  104. homeassistant-stubs/components/gios/sensor.pyi +1 -1
  105. homeassistant-stubs/components/google_assistant_sdk/application_credentials.pyi +1 -0
  106. homeassistant-stubs/components/google_cloud/const.pyi +1 -0
  107. homeassistant-stubs/components/google_cloud/stt.pyi +3 -2
  108. homeassistant-stubs/components/guardian/__init__.pyi +1 -1
  109. homeassistant-stubs/components/guardian/services.pyi +2 -1
  110. homeassistant-stubs/components/habitica/button.pyi +3 -4
  111. homeassistant-stubs/components/habitica/coordinator.pyi +2 -3
  112. homeassistant-stubs/components/habitica/entity.pyi +1 -1
  113. homeassistant-stubs/components/habitica/sensor.pyi +3 -18
  114. homeassistant-stubs/components/habitica/switch.pyi +4 -3
  115. homeassistant-stubs/components/habitica/util.pyi +2 -1
  116. homeassistant-stubs/components/heos/__init__.pyi +1 -1
  117. homeassistant-stubs/components/heos/config_flow.pyi +3 -0
  118. homeassistant-stubs/components/heos/services.pyi +3 -2
  119. homeassistant-stubs/components/here_travel_time/__init__.pyi +3 -1
  120. homeassistant-stubs/components/here_travel_time/config_flow.pyi +3 -2
  121. homeassistant-stubs/components/here_travel_time/const.pyi +1 -0
  122. homeassistant-stubs/components/here_travel_time/coordinator.pyi +1 -1
  123. homeassistant-stubs/components/here_travel_time/model.pyi +2 -1
  124. homeassistant-stubs/components/history_stats/__init__.pyi +5 -1
  125. homeassistant-stubs/components/history_stats/config_flow.pyi +14 -0
  126. homeassistant-stubs/components/history_stats/coordinator.pyi +3 -1
  127. homeassistant-stubs/components/history_stats/data.pyi +2 -1
  128. homeassistant-stubs/components/history_stats/helpers.pyi +1 -1
  129. homeassistant-stubs/components/history_stats/sensor.pyi +7 -4
  130. homeassistant-stubs/components/holiday/__init__.pyi +0 -1
  131. homeassistant-stubs/components/holiday/config_flow.pyi +2 -2
  132. homeassistant-stubs/components/home_connect/__init__.pyi +1 -1
  133. homeassistant-stubs/components/home_connect/services.pyi +3 -2
  134. homeassistant-stubs/components/homeassistant/__init__.pyi +2 -1
  135. homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -1
  136. homeassistant-stubs/components/homee/__init__.pyi +1 -1
  137. homeassistant-stubs/components/homee/config_flow.pyi +5 -0
  138. homeassistant-stubs/components/homekit/__init__.pyi +2 -1
  139. homeassistant-stubs/components/http/__init__.pyi +1 -2
  140. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -2
  141. homeassistant-stubs/components/huawei_lte/config_flow.pyi +5 -4
  142. homeassistant-stubs/components/huawei_lte/const.pyi +1 -1
  143. homeassistant-stubs/components/huawei_lte/diagnostics.pyi +18 -0
  144. homeassistant-stubs/components/husqvarna_automower/button.pyi +2 -2
  145. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +3 -0
  146. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +15 -13
  147. homeassistant-stubs/components/husqvarna_automower/entity.pyi +2 -6
  148. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +2 -2
  149. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +5 -0
  150. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
  151. homeassistant-stubs/components/hydrawise/const.pyi +1 -0
  152. homeassistant-stubs/components/hydrawise/coordinator.pyi +9 -2
  153. homeassistant-stubs/components/hydrawise/entity.pyi +1 -1
  154. homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
  155. homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
  156. homeassistant-stubs/components/hydrawise/valve.pyi +1 -1
  157. homeassistant-stubs/components/hyperion/__init__.pyi +0 -1
  158. homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
  159. homeassistant-stubs/components/imgw_pib/sensor.pyi +7 -1
  160. homeassistant-stubs/components/immich/__init__.pyi +6 -0
  161. homeassistant-stubs/components/immich/media_source.pyi +1 -0
  162. homeassistant-stubs/components/immich/services.pyi +18 -0
  163. homeassistant-stubs/components/input_text/__init__.pyi +1 -1
  164. homeassistant-stubs/components/integration/__init__.pyi +5 -1
  165. homeassistant-stubs/components/integration/config_flow.pyi +1 -0
  166. homeassistant-stubs/components/integration/sensor.pyi +5 -6
  167. homeassistant-stubs/components/iron_os/__init__.pyi +0 -3
  168. homeassistant-stubs/components/iron_os/const.pyi +4 -0
  169. homeassistant-stubs/components/iron_os/coordinator.pyi +1 -1
  170. homeassistant-stubs/components/iron_os/number.pyi +20 -4
  171. homeassistant-stubs/components/iron_os/switch.pyi +2 -0
  172. homeassistant-stubs/components/isy994/__init__.pyi +0 -1
  173. homeassistant-stubs/components/isy994/config_flow.pyi +3 -3
  174. homeassistant-stubs/components/jellyfin/browse_media.pyi +2 -1
  175. homeassistant-stubs/components/jellyfin/media_player.pyi +5 -2
  176. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +5 -15
  177. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +2 -2
  178. homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -5
  179. homeassistant-stubs/components/jewish_calendar/sensor.pyi +11 -7
  180. homeassistant-stubs/components/knx/__init__.pyi +6 -40
  181. homeassistant-stubs/components/knx/binary_sensor.pyi +3 -2
  182. homeassistant-stubs/components/knx/button.pyi +1 -1
  183. homeassistant-stubs/components/knx/climate.pyi +1 -1
  184. homeassistant-stubs/components/knx/config_flow.pyi +14 -21
  185. homeassistant-stubs/components/knx/const.pyi +1 -1
  186. homeassistant-stubs/components/knx/cover.pyi +3 -2
  187. homeassistant-stubs/components/knx/date.pyi +1 -1
  188. homeassistant-stubs/components/knx/datetime.pyi +1 -1
  189. homeassistant-stubs/components/knx/entity.pyi +1 -1
  190. homeassistant-stubs/components/knx/fan.pyi +1 -1
  191. homeassistant-stubs/components/knx/knx_module.pyi +43 -0
  192. homeassistant-stubs/components/knx/light.pyi +3 -2
  193. homeassistant-stubs/components/knx/notify.pyi +1 -1
  194. homeassistant-stubs/components/knx/number.pyi +1 -1
  195. homeassistant-stubs/components/knx/scene.pyi +1 -1
  196. homeassistant-stubs/components/knx/select.pyi +1 -1
  197. homeassistant-stubs/components/knx/sensor.pyi +1 -1
  198. homeassistant-stubs/components/knx/services.pyi +2 -2
  199. homeassistant-stubs/components/knx/storage/config_store.pyi +4 -0
  200. homeassistant-stubs/components/knx/storage/const.pyi +8 -7
  201. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +3 -10
  202. homeassistant-stubs/components/knx/storage/knx_selector.pyi +4 -0
  203. homeassistant-stubs/components/knx/storage/migration.pyi +5 -0
  204. homeassistant-stubs/components/knx/storage/util.pyi +16 -0
  205. homeassistant-stubs/components/knx/switch.pyi +3 -2
  206. homeassistant-stubs/components/knx/text.pyi +1 -1
  207. homeassistant-stubs/components/knx/time.pyi +1 -1
  208. homeassistant-stubs/components/knx/weather.pyi +1 -1
  209. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  210. homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
  211. homeassistant-stubs/components/lcn/binary_sensor.pyi +1 -20
  212. homeassistant-stubs/components/lcn/helpers.pyi +1 -0
  213. homeassistant-stubs/components/lcn/light.pyi +2 -1
  214. homeassistant-stubs/components/letpot/coordinator.pyi +3 -4
  215. homeassistant-stubs/components/letpot/switch.pyi +1 -1
  216. homeassistant-stubs/components/letpot/time.pyi +1 -1
  217. homeassistant-stubs/components/lifx/const.pyi +1 -0
  218. homeassistant-stubs/components/lifx/coordinator.pyi +5 -1
  219. homeassistant-stubs/components/lifx/manager.pyi +1 -1
  220. homeassistant-stubs/components/linkplay/select.pyi +35 -0
  221. homeassistant-stubs/components/litterrobot/sensor.pyi +3 -0
  222. homeassistant-stubs/components/matrix/__init__.pyi +1 -1
  223. homeassistant-stubs/components/matrix/services.pyi +3 -2
  224. homeassistant-stubs/components/matter/entity.pyi +2 -2
  225. homeassistant-stubs/components/matter/number.pyi +29 -1
  226. homeassistant-stubs/components/matter/select.pyi +2 -2
  227. homeassistant-stubs/components/matter/vacuum.pyi +2 -0
  228. homeassistant-stubs/components/mcp_server/server.pyi +1 -1
  229. homeassistant-stubs/components/mealie/const.pyi +2 -0
  230. homeassistant-stubs/components/mealie/services.pyi +4 -1
  231. homeassistant-stubs/components/media_player/const.pyi +2 -2
  232. homeassistant-stubs/components/media_source/const.pyi +3 -0
  233. homeassistant-stubs/components/media_source/local_source.pyi +1 -1
  234. homeassistant-stubs/components/media_source/models.pyi +6 -2
  235. homeassistant-stubs/components/met_eireann/__init__.pyi +2 -17
  236. homeassistant-stubs/components/met_eireann/coordinator.pyi +28 -0
  237. homeassistant-stubs/components/met_eireann/weather.pyi +1 -3
  238. homeassistant-stubs/components/miele/__init__.pyi +5 -0
  239. homeassistant-stubs/components/miele/entity.pyi +2 -0
  240. homeassistant-stubs/components/miele/sensor.pyi +7 -6
  241. homeassistant-stubs/components/miele/services.pyi +24 -0
  242. homeassistant-stubs/components/miele/vacuum.pyi +0 -2
  243. homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
  244. homeassistant-stubs/components/mold_indicator/__init__.pyi +8 -1
  245. homeassistant-stubs/components/mold_indicator/config_flow.pyi +2 -0
  246. homeassistant-stubs/components/mold_indicator/sensor.pyi +2 -2
  247. homeassistant-stubs/components/mqtt/climate.pyi +1 -37
  248. homeassistant-stubs/components/mqtt/config_flow.pyi +38 -6
  249. homeassistant-stubs/components/mqtt/const.pyi +33 -2
  250. homeassistant-stubs/components/mqtt/repairs.pyi +15 -0
  251. homeassistant-stubs/components/nasweb/const.pyi +1 -0
  252. homeassistant-stubs/components/nasweb/coordinator.pyi +3 -1
  253. homeassistant-stubs/components/nasweb/sensor.pyi +54 -0
  254. homeassistant-stubs/components/netatmo/climate.pyi +1 -1
  255. homeassistant-stubs/components/netatmo/const.pyi +1 -0
  256. homeassistant-stubs/components/nextdns/__init__.pyi +2 -3
  257. homeassistant-stubs/components/nextdns/coordinator.pyi +10 -2
  258. homeassistant-stubs/components/nordpool/const.pyi +1 -0
  259. homeassistant-stubs/components/nordpool/services.pyi +5 -1
  260. homeassistant-stubs/components/number/const.pyi +2 -1
  261. homeassistant-stubs/components/nut/__init__.pyi +0 -1
  262. homeassistant-stubs/components/onewire/__init__.pyi +0 -1
  263. homeassistant-stubs/components/onewire/config_flow.pyi +2 -2
  264. homeassistant-stubs/components/onkyo/__init__.pyi +2 -3
  265. homeassistant-stubs/components/onkyo/config_flow.pyi +9 -6
  266. homeassistant-stubs/components/onkyo/const.pyi +7 -65
  267. homeassistant-stubs/components/onkyo/media_player.pyi +16 -44
  268. homeassistant-stubs/components/onkyo/receiver.pyi +24 -25
  269. homeassistant-stubs/components/onkyo/services.pyi +3 -3
  270. homeassistant-stubs/components/onkyo/util.pyi +3 -0
  271. homeassistant-stubs/components/open_router/__init__.pyi +15 -0
  272. homeassistant-stubs/components/open_router/ai_task.pyi +17 -0
  273. homeassistant-stubs/components/open_router/config_flow.pyi +30 -0
  274. homeassistant-stubs/components/open_router/const.pyi +8 -0
  275. homeassistant-stubs/components/open_router/conversation.pyi +20 -0
  276. homeassistant-stubs/components/open_router/entity.pyi +33 -0
  277. homeassistant-stubs/components/openai_conversation/__init__.pyi +3 -2
  278. homeassistant-stubs/components/openai_conversation/ai_task.pyi +16 -0
  279. homeassistant-stubs/components/openai_conversation/config_flow.pyi +2 -3
  280. homeassistant-stubs/components/openai_conversation/const.pyi +9 -1
  281. homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -22
  282. homeassistant-stubs/components/openai_conversation/entity.pyi +36 -0
  283. homeassistant-stubs/components/opower/__init__.pyi +8 -0
  284. homeassistant-stubs/components/opower/config_flow.pyi +25 -0
  285. homeassistant-stubs/components/opower/const.pyi +3 -0
  286. homeassistant-stubs/components/opower/coordinator.pyi +24 -0
  287. homeassistant-stubs/components/opower/sensor.pyi +35 -0
  288. homeassistant-stubs/components/pegel_online/__init__.pyi +1 -1
  289. homeassistant-stubs/components/pegel_online/sensor.pyi +2 -0
  290. homeassistant-stubs/components/pi_hole/__init__.pyi +6 -2
  291. homeassistant-stubs/components/pi_hole/config_flow.pyi +1 -2
  292. homeassistant-stubs/components/pi_hole/const.pyi +1 -0
  293. homeassistant-stubs/components/pi_hole/sensor.pyi +5 -0
  294. homeassistant-stubs/components/pi_hole/update.pyi +3 -3
  295. homeassistant-stubs/components/ping/__init__.pyi +0 -1
  296. homeassistant-stubs/components/ping/config_flow.pyi +3 -3
  297. homeassistant-stubs/components/plugwise/select.pyi +1 -1
  298. homeassistant-stubs/components/proximity/__init__.pyi +0 -1
  299. homeassistant-stubs/components/proximity/config_flow.pyi +3 -3
  300. homeassistant-stubs/components/purpleair/__init__.pyi +0 -1
  301. homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
  302. homeassistant-stubs/components/pyload/config_flow.pyi +4 -0
  303. homeassistant-stubs/components/recorder/pool.pyi +2 -1
  304. homeassistant-stubs/components/renault/__init__.pyi +1 -1
  305. homeassistant-stubs/components/renault/services.pyi +3 -2
  306. homeassistant-stubs/components/reolink/__init__.pyi +0 -1
  307. homeassistant-stubs/components/reolink/config_flow.pyi +2 -2
  308. homeassistant-stubs/components/reolink/number.pyi +1 -1
  309. homeassistant-stubs/components/reolink/sensor.pyi +1 -1
  310. homeassistant-stubs/components/rest/sensor.pyi +1 -3
  311. homeassistant-stubs/components/roborock/__init__.pyi +0 -1
  312. homeassistant-stubs/components/roborock/config_flow.pyi +2 -2
  313. homeassistant-stubs/components/roku/__init__.pyi +0 -1
  314. homeassistant-stubs/components/roku/config_flow.pyi +2 -2
  315. homeassistant-stubs/components/russound_rio/const.pyi +2 -0
  316. homeassistant-stubs/components/russound_rio/media_player.pyi +6 -0
  317. homeassistant-stubs/components/scrape/sensor.pyi +1 -2
  318. homeassistant-stubs/components/sensor/const.pyi +2 -1
  319. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  320. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  321. homeassistant-stubs/components/shelly/button.pyi +2 -2
  322. homeassistant-stubs/components/shelly/climate.pyi +2 -2
  323. homeassistant-stubs/components/shelly/coordinator.pyi +5 -1
  324. homeassistant-stubs/components/shelly/entity.pyi +3 -0
  325. homeassistant-stubs/components/shelly/event.pyi +2 -2
  326. homeassistant-stubs/components/shelly/sensor.pyi +2 -2
  327. homeassistant-stubs/components/shelly/utils.pyi +2 -2
  328. homeassistant-stubs/components/sleepiq/const.pyi +2 -0
  329. homeassistant-stubs/components/sleepiq/number.pyi +7 -3
  330. homeassistant-stubs/components/sleepiq/select.pyi +15 -2
  331. homeassistant-stubs/components/smhi/coordinator.pyi +3 -0
  332. homeassistant-stubs/components/smhi/entity.pyi +3 -1
  333. homeassistant-stubs/components/smhi/sensor.pyi +30 -0
  334. homeassistant-stubs/components/smhi/weather.pyi +4 -2
  335. homeassistant-stubs/components/sonarr/__init__.pyi +0 -1
  336. homeassistant-stubs/components/sonarr/config_flow.pyi +2 -2
  337. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +0 -1
  338. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +2 -2
  339. homeassistant-stubs/components/sql/__init__.pyi +0 -1
  340. homeassistant-stubs/components/sql/config_flow.pyi +2 -2
  341. homeassistant-stubs/components/squeezebox/__init__.pyi +3 -2
  342. homeassistant-stubs/components/squeezebox/const.pyi +2 -3
  343. homeassistant-stubs/components/squeezebox/coordinator.pyi +2 -2
  344. homeassistant-stubs/components/squeezebox/media_player.pyi +2 -2
  345. homeassistant-stubs/components/statistics/__init__.pyi +3 -1
  346. homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
  347. homeassistant-stubs/components/statistics/sensor.pyi +5 -5
  348. homeassistant-stubs/components/stookwijzer/__init__.pyi +4 -0
  349. homeassistant-stubs/components/stookwijzer/const.pyi +2 -0
  350. homeassistant-stubs/components/stookwijzer/services.pyi +17 -0
  351. homeassistant-stubs/components/switch_as_x/__init__.pyi +2 -2
  352. homeassistant-stubs/components/switch_as_x/entity.pyi +1 -3
  353. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -0
  354. homeassistant-stubs/components/switchbot_cloud/const.pyi +1 -0
  355. homeassistant-stubs/components/switchbot_cloud/fan.pyi +26 -0
  356. homeassistant-stubs/components/switchbot_cloud/light.pyi +40 -0
  357. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +17 -1
  358. homeassistant-stubs/components/synology_dsm/__init__.pyi +0 -1
  359. homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
  360. homeassistant-stubs/components/tankerkoenig/__init__.pyi +10 -0
  361. homeassistant-stubs/components/tankerkoenig/binary_sensor.pyi +23 -0
  362. homeassistant-stubs/components/tankerkoenig/config_flow.pyi +33 -0
  363. homeassistant-stubs/components/tankerkoenig/const.pyi +13 -0
  364. homeassistant-stubs/components/tankerkoenig/coordinator.pyi +22 -0
  365. homeassistant-stubs/components/tankerkoenig/diagnostics.pyi +10 -0
  366. homeassistant-stubs/components/tankerkoenig/entity.pyi +11 -0
  367. homeassistant-stubs/components/tankerkoenig/sensor.pyi +28 -0
  368. homeassistant-stubs/components/threshold/__init__.pyi +5 -1
  369. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -4
  370. homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
  371. homeassistant-stubs/components/time_date/config_flow.pyi +1 -2
  372. homeassistant-stubs/components/trafikverket_train/__init__.pyi +0 -1
  373. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +2 -2
  374. homeassistant-stubs/components/trend/__init__.pyi +3 -1
  375. homeassistant-stubs/components/trend/binary_sensor.pyi +3 -4
  376. homeassistant-stubs/components/trend/config_flow.pyi +1 -0
  377. homeassistant-stubs/components/tts/entity.pyi +0 -2
  378. homeassistant-stubs/components/unifiprotect/__init__.pyi +5 -5
  379. homeassistant-stubs/components/unifiprotect/config_flow.pyi +5 -5
  380. homeassistant-stubs/components/unifiprotect/repairs.pyi +0 -6
  381. homeassistant-stubs/components/unifiprotect/services.pyi +1 -1
  382. homeassistant-stubs/components/uptime_kuma/__init__.pyi +14 -0
  383. homeassistant-stubs/components/uptime_kuma/config_flow.pyi +26 -0
  384. homeassistant-stubs/components/uptime_kuma/const.pyi +7 -0
  385. homeassistant-stubs/components/uptime_kuma/coordinator.pyi +30 -0
  386. homeassistant-stubs/components/uptime_kuma/diagnostics.pyi +9 -0
  387. homeassistant-stubs/components/uptime_kuma/sensor.pyi +46 -0
  388. homeassistant-stubs/components/uptime_kuma/update.pyi +39 -0
  389. homeassistant-stubs/components/vacuum/__init__.pyi +7 -0
  390. homeassistant-stubs/components/velbus/__init__.pyi +1 -1
  391. homeassistant-stubs/components/velbus/const.pyi +0 -1
  392. homeassistant-stubs/components/velbus/services.pyi +4 -4
  393. homeassistant-stubs/components/vodafone_station/__init__.pyi +0 -1
  394. homeassistant-stubs/components/vodafone_station/config_flow.pyi +2 -2
  395. homeassistant-stubs/components/volvo/__init__.pyi +15 -0
  396. homeassistant-stubs/components/volvo/api.pyi +14 -0
  397. homeassistant-stubs/components/volvo/application_credentials.pyi +9 -0
  398. homeassistant-stubs/components/volvo/config_flow.pyi +34 -0
  399. homeassistant-stubs/components/volvo/const.pyi +8 -0
  400. homeassistant-stubs/components/volvo/coordinator.pyi +46 -0
  401. homeassistant-stubs/components/volvo/entity.pyi +33 -0
  402. homeassistant-stubs/components/volvo/sensor.pyi +35 -0
  403. homeassistant-stubs/components/wallbox/__init__.pyi +4 -5
  404. homeassistant-stubs/components/wallbox/coordinator.pyi +8 -2
  405. homeassistant-stubs/components/wallbox/lock.pyi +5 -4
  406. homeassistant-stubs/components/wallbox/number.pyi +6 -5
  407. homeassistant-stubs/components/wallbox/select.pyi +4 -3
  408. homeassistant-stubs/components/wallbox/sensor.pyi +5 -4
  409. homeassistant-stubs/components/wallbox/switch.pyi +5 -4
  410. homeassistant-stubs/components/waqi/__init__.pyi +3 -5
  411. homeassistant-stubs/components/waqi/coordinator.pyi +3 -2
  412. homeassistant-stubs/components/waqi/sensor.pyi +2 -13
  413. homeassistant-stubs/components/webostv/__init__.pyi +0 -1
  414. homeassistant-stubs/components/webostv/config_flow.pyi +3 -3
  415. homeassistant-stubs/components/websocket_api/commands.pyi +4 -0
  416. homeassistant-stubs/components/wiz/fan.pyi +34 -0
  417. homeassistant-stubs/components/wled/__init__.pyi +0 -1
  418. homeassistant-stubs/components/wled/config_flow.pyi +2 -2
  419. homeassistant-stubs/components/workday/__init__.pyi +0 -1
  420. homeassistant-stubs/components/workday/config_flow.pyi +2 -2
  421. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +0 -1
  422. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +2 -2
  423. homeassistant-stubs/components/yalexs_ble/lock.pyi +14 -2
  424. homeassistant-stubs/components/zone/condition.pyi +22 -0
  425. homeassistant-stubs/components/zone/trigger.pyi +2 -1
  426. homeassistant-stubs/components/zwave_js/__init__.pyi +10 -9
  427. homeassistant-stubs/components/zwave_js/api.pyi +35 -34
  428. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +7 -7
  429. homeassistant-stubs/components/zwave_js/button.pyi +5 -5
  430. homeassistant-stubs/components/zwave_js/climate.pyi +5 -5
  431. homeassistant-stubs/components/zwave_js/config_flow.pyi +4 -3
  432. homeassistant-stubs/components/zwave_js/const.pyi +0 -2
  433. homeassistant-stubs/components/zwave_js/cover.pyi +7 -7
  434. homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -1
  435. homeassistant-stubs/components/zwave_js/diagnostics.pyi +5 -5
  436. homeassistant-stubs/components/zwave_js/event.pyi +4 -4
  437. homeassistant-stubs/components/zwave_js/fan.pyi +6 -6
  438. homeassistant-stubs/components/zwave_js/helpers.pyi +6 -5
  439. homeassistant-stubs/components/zwave_js/humidifier.pyi +4 -4
  440. homeassistant-stubs/components/zwave_js/light.pyi +15 -5
  441. homeassistant-stubs/components/zwave_js/lock.pyi +3 -3
  442. homeassistant-stubs/components/zwave_js/models.pyi +12 -0
  443. homeassistant-stubs/components/zwave_js/number.pyi +6 -6
  444. homeassistant-stubs/components/zwave_js/select.pyi +8 -8
  445. homeassistant-stubs/components/zwave_js/sensor.pyi +10 -10
  446. homeassistant-stubs/components/zwave_js/siren.pyi +4 -4
  447. homeassistant-stubs/components/zwave_js/switch.pyi +7 -7
  448. homeassistant-stubs/components/zwave_js/triggers/event.pyi +1 -2
  449. homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +1 -1
  450. homeassistant-stubs/components/zwave_js/update.pyi +28 -18
  451. homeassistant-stubs/config.pyi +0 -2
  452. homeassistant-stubs/config_entries.pyi +3 -0
  453. homeassistant-stubs/const.pyi +2 -0
  454. homeassistant-stubs/core.pyi +12 -8
  455. homeassistant-stubs/helpers/condition.pyi +25 -6
  456. homeassistant-stubs/helpers/config_validation.pyi +0 -2
  457. homeassistant-stubs/helpers/device.pyi +2 -0
  458. homeassistant-stubs/helpers/device_registry.pyi +11 -6
  459. homeassistant-stubs/helpers/entity.pyi +3 -1
  460. homeassistant-stubs/helpers/entity_platform.pyi +30 -9
  461. homeassistant-stubs/helpers/frame.pyi +1 -1
  462. homeassistant-stubs/helpers/helper_integration.pyi +2 -1
  463. homeassistant-stubs/helpers/llm.pyi +5 -1
  464. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -0
  465. homeassistant-stubs/helpers/selector.pyi +42 -37
  466. homeassistant-stubs/helpers/service.pyi +9 -26
  467. homeassistant-stubs/helpers/target.pyi +59 -0
  468. homeassistant-stubs/helpers/trigger.pyi +3 -1
  469. homeassistant-stubs/helpers/trigger_template_entity.pyi +5 -1
  470. homeassistant-stubs/loader.pyi +2 -9
  471. homeassistant-stubs/runner.pyi +1 -0
  472. homeassistant-stubs/util/resource.pyi +7 -0
  473. homeassistant-stubs/util/unit_conversion.pyi +1 -1
  474. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b0.dist-info}/METADATA +2 -2
  475. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b0.dist-info}/RECORD +477 -409
  476. homeassistant-stubs/components/backup/basic_websocket.pyi +0 -12
  477. homeassistant-stubs/helpers/backup.pyi +0 -24
  478. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b0.dist-info}/WHEEL +0 -0
  479. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -84,6 +84,10 @@ class IntentTool(Tool):
84
84
  def __init__(self, name: str, intent_handler: intent.IntentHandler) -> None: ...
85
85
  async def async_call(self, hass: HomeAssistant, tool_input: ToolInput, llm_context: LLMContext) -> JsonObjectType: ...
86
86
 
87
+ class IntentResponseDict(dict):
88
+ original: Incomplete
89
+ def __init__(self, intent_response: Any) -> None: ...
90
+
87
91
  class NamespacedTool(Tool):
88
92
  namespace: Incomplete
89
93
  name: Incomplete
@@ -114,7 +118,7 @@ class AssistAPI(API):
114
118
  def _async_get_tools(self, llm_context: LLMContext, exposed_entities: dict | None) -> list[Tool]: ...
115
119
 
116
120
  def _get_exposed_entities(hass: HomeAssistant, assistant: str, include_state: bool = True) -> dict[str, dict[str, dict[str, Any]]]: ...
117
- def _selector_serializer(schema: Any) -> Any: ...
121
+ def selector_serializer(schema: Any) -> Any: ...
118
122
  def _get_cached_action_parameters(hass: HomeAssistant, domain: str, action: str) -> tuple[str | None, vol.Schema]: ...
119
123
 
120
124
  class ActionTool(Tool):
@@ -22,6 +22,7 @@ class SchemaFlowFormStep(SchemaFlowStep):
22
22
  next_step: Callable[[dict[str, Any]], Coroutine[Any, Any, str | None]] | str | None = ...
23
23
  suggested_values: Callable[[SchemaCommonFlowHandler], Coroutine[Any, Any, dict[str, Any]]] | None | UndefinedType = ...
24
24
  preview: str | None = ...
25
+ description_placeholders: Callable[[SchemaCommonFlowHandler], Coroutine[Any, Any, dict[str, str]]] | UndefinedType = ...
25
26
 
26
27
  @dataclass(slots=True)
27
28
  class SchemaFlowMenuStep(SchemaFlowStep):
@@ -26,7 +26,7 @@ class Selector[_T: Mapping[str, Any]]:
26
26
  @cache
27
27
  def _entity_feature_flag(domain: str, enum_name: str, feature_name: str) -> int: ...
28
28
  def _validate_supported_feature(supported_feature: str) -> int: ...
29
- def _validate_supported_features(supported_features: int | list[str]) -> int: ...
29
+ def _validate_supported_features(supported_features: list[str]) -> int: ...
30
30
 
31
31
  BASE_SELECTOR_CONFIG_SCHEMA: Incomplete
32
32
 
@@ -34,6 +34,7 @@ class BaseSelectorConfig(TypedDict, total=False):
34
34
  read_only: bool
35
35
 
36
36
  ENTITY_FILTER_SELECTOR_CONFIG_SCHEMA: Incomplete
37
+ LEGACY_ENTITY_SELECTOR_CONFIG_SCHEMA: Incomplete
37
38
 
38
39
  class EntityFilterSelectorConfig(TypedDict, total=False):
39
40
  integration: str
@@ -42,6 +43,7 @@ class EntityFilterSelectorConfig(TypedDict, total=False):
42
43
  supported_features: list[str]
43
44
 
44
45
  DEVICE_FILTER_SELECTOR_CONFIG_SCHEMA: Incomplete
46
+ LEGACY_DEVICE_SELECTOR_CONFIG_SCHEMA: Incomplete
45
47
 
46
48
  class DeviceFilterSelectorConfig(TypedDict, total=False):
47
49
  integration: str
@@ -165,23 +167,6 @@ class ConstantSelector(Selector[ConstantSelectorConfig]):
165
167
  def __init__(self, config: ConstantSelectorConfig) -> None: ...
166
168
  def __call__(self, data: Any) -> Any: ...
167
169
 
168
- class QrErrorCorrectionLevel(StrEnum):
169
- LOW = 'low'
170
- MEDIUM = 'medium'
171
- QUARTILE = 'quartile'
172
- HIGH = 'high'
173
-
174
- class QrCodeSelectorConfig(BaseSelectorConfig, total=False):
175
- data: str
176
- scale: int
177
- error_correction_level: QrErrorCorrectionLevel
178
-
179
- class QrCodeSelector(Selector[QrCodeSelectorConfig]):
180
- selector_type: str
181
- CONFIG_SCHEMA: Incomplete
182
- def __init__(self, config: QrCodeSelectorConfig) -> None: ...
183
- def __call__(self, data: Any) -> Any: ...
184
-
185
170
  class ConversationAgentSelectorConfig(BaseSelectorConfig, total=False):
186
171
  language: str
187
172
 
@@ -243,6 +228,7 @@ class EntitySelectorConfig(BaseSelectorConfig, EntityFilterSelectorConfig, total
243
228
  exclude_entities: list[str]
244
229
  include_entities: list[str]
245
230
  multiple: bool
231
+ reorder: bool
246
232
  filter: EntityFilterSelectorConfig | list[EntityFilterSelectorConfig]
247
233
 
248
234
  class EntitySelector(Selector[EntitySelectorConfig]):
@@ -251,6 +237,15 @@ class EntitySelector(Selector[EntitySelectorConfig]):
251
237
  def __init__(self, config: EntitySelectorConfig | None = None) -> None: ...
252
238
  def __call__(self, data: Any) -> str | list[str]: ...
253
239
 
240
+ class FileSelectorConfig(BaseSelectorConfig):
241
+ accept: str
242
+
243
+ class FileSelector(Selector[FileSelectorConfig]):
244
+ selector_type: str
245
+ CONFIG_SCHEMA: Incomplete
246
+ def __init__(self, config: FileSelectorConfig) -> None: ...
247
+ def __call__(self, data: Any) -> str: ...
248
+
254
249
  class FloorSelectorConfig(BaseSelectorConfig, total=False):
255
250
  entity: EntityFilterSelectorConfig | list[EntityFilterSelectorConfig]
256
251
  device: DeviceFilterSelectorConfig | list[DeviceFilterSelectorConfig]
@@ -310,7 +305,7 @@ class MediaSelector(Selector[MediaSelectorConfig]):
310
305
  CONFIG_SCHEMA: Incomplete
311
306
  DATA_SCHEMA: Incomplete
312
307
  def __init__(self, config: MediaSelectorConfig | None = None) -> None: ...
313
- def __call__(self, data: Any) -> dict[str, float]: ...
308
+ def __call__(self, data: Any) -> dict[str, str]: ...
314
309
 
315
310
  class NumberSelectorConfig(BaseSelectorConfig, total=False):
316
311
  min: float
@@ -318,6 +313,7 @@ class NumberSelectorConfig(BaseSelectorConfig, total=False):
318
313
  step: float | Literal['any']
319
314
  unit_of_measurement: str
320
315
  mode: NumberSelectorMode
316
+ translation_key: str
321
317
 
322
318
  class NumberSelectorMode(StrEnum):
323
319
  BOX = 'box'
@@ -349,6 +345,23 @@ class ObjectSelector(Selector[ObjectSelectorConfig]):
349
345
  def __init__(self, config: ObjectSelectorConfig | None = None) -> None: ...
350
346
  def __call__(self, data: Any) -> Any: ...
351
347
 
348
+ class QrErrorCorrectionLevel(StrEnum):
349
+ LOW = 'low'
350
+ MEDIUM = 'medium'
351
+ QUARTILE = 'quartile'
352
+ HIGH = 'high'
353
+
354
+ class QrCodeSelectorConfig(BaseSelectorConfig, total=False):
355
+ data: str
356
+ scale: int
357
+ error_correction_level: QrErrorCorrectionLevel
358
+
359
+ class QrCodeSelector(Selector[QrCodeSelectorConfig]):
360
+ selector_type: str
361
+ CONFIG_SCHEMA: Incomplete
362
+ def __init__(self, config: QrCodeSelectorConfig) -> None: ...
363
+ def __call__(self, data: Any) -> Any: ...
364
+
352
365
  select_option: Incomplete
353
366
 
354
367
  class SelectOptionDict(TypedDict):
@@ -373,6 +386,16 @@ class SelectSelector(Selector[SelectSelectorConfig]):
373
386
  def __init__(self, config: SelectSelectorConfig) -> None: ...
374
387
  def __call__(self, data: Any) -> Any: ...
375
388
 
389
+ class StateSelectorConfig(BaseSelectorConfig, total=False):
390
+ entity_id: str
391
+ hide_states: list[str]
392
+
393
+ class StateSelector(Selector[StateSelectorConfig]):
394
+ selector_type: str
395
+ CONFIG_SCHEMA: Incomplete
396
+ def __init__(self, config: StateSelectorConfig) -> None: ...
397
+ def __call__(self, data: Any) -> str: ...
398
+
376
399
  class StatisticSelectorConfig(BaseSelectorConfig, total=False):
377
400
  multiple: bool
378
401
 
@@ -386,15 +409,6 @@ class TargetSelectorConfig(BaseSelectorConfig, total=False):
386
409
  entity: EntityFilterSelectorConfig | list[EntityFilterSelectorConfig]
387
410
  device: DeviceFilterSelectorConfig | list[DeviceFilterSelectorConfig]
388
411
 
389
- class StateSelectorConfig(BaseSelectorConfig, total=False):
390
- entity_id: Required[str]
391
-
392
- class StateSelector(Selector[StateSelectorConfig]):
393
- selector_type: str
394
- CONFIG_SCHEMA: Incomplete
395
- def __init__(self, config: StateSelectorConfig) -> None: ...
396
- def __call__(self, data: Any) -> str: ...
397
-
398
412
  class TargetSelector(Selector[TargetSelectorConfig]):
399
413
  selector_type: str
400
414
  CONFIG_SCHEMA: Incomplete
@@ -462,12 +476,3 @@ class TriggerSelector(Selector[TriggerSelectorConfig]):
462
476
  CONFIG_SCHEMA = BASE_SELECTOR_CONFIG_SCHEMA
463
477
  def __init__(self, config: TriggerSelectorConfig | None = None) -> None: ...
464
478
  def __call__(self, data: Any) -> Any: ...
465
-
466
- class FileSelectorConfig(BaseSelectorConfig):
467
- accept: str
468
-
469
- class FileSelector(Selector[FileSelectorConfig]):
470
- selector_type: str
471
- CONFIG_SCHEMA: Incomplete
472
- def __init__(self, config: FileSelectorConfig) -> None: ...
473
- def __call__(self, data: Any) -> str: ...
@@ -1,14 +1,14 @@
1
- import dataclasses
2
- from . import area_registry as area_registry, device_registry as device_registry, entity_registry as entity_registry, floor_registry as floor_registry, label_registry as label_registry, template as template, translation as translation
1
+ import logging
2
+ from . import device_registry as device_registry, entity_registry as entity_registry, selector as selector, target as target_helpers, template as template, translation as translation
3
+ from .deprecation import deprecated_class as deprecated_class, deprecated_function as deprecated_function
3
4
  from .entity import Entity as Entity
4
- from .group import expand_entity_ids as expand_entity_ids
5
5
  from .selector import TargetSelector as TargetSelector
6
6
  from .typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType, VolDictType as VolDictType, VolSchemaType as VolSchemaType
7
7
  from _typeshed import Incomplete
8
8
  from collections.abc import Callable as Callable, Coroutine, Iterable
9
9
  from functools import cache
10
10
  from homeassistant.auth.permissions.const import CAT_ENTITIES as CAT_ENTITIES, POLICY_CONTROL as POLICY_CONTROL
11
- from homeassistant.const import ATTR_AREA_ID as ATTR_AREA_ID, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_FLOOR_ID as ATTR_FLOOR_ID, ATTR_LABEL_ID as ATTR_LABEL_ID, CONF_ACTION as CONF_ACTION, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_SERVICE_DATA as CONF_SERVICE_DATA, CONF_SERVICE_DATA_TEMPLATE as CONF_SERVICE_DATA_TEMPLATE, CONF_SERVICE_TEMPLATE as CONF_SERVICE_TEMPLATE, CONF_TARGET as CONF_TARGET, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_NONE as ENTITY_MATCH_NONE
11
+ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_ACTION as CONF_ACTION, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_SELECTOR as CONF_SELECTOR, CONF_SERVICE_DATA as CONF_SERVICE_DATA, CONF_SERVICE_DATA_TEMPLATE as CONF_SERVICE_DATA_TEMPLATE, CONF_SERVICE_TEMPLATE as CONF_SERVICE_TEMPLATE, CONF_TARGET as CONF_TARGET, ENTITY_MATCH_ALL as ENTITY_MATCH_ALL, ENTITY_MATCH_NONE as ENTITY_MATCH_NONE
12
12
  from homeassistant.core import Context as Context, EntityServiceResponse as EntityServiceResponse, HassJob as HassJob, HassJobType as HassJobType, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse, callback as callback
13
13
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceNotSupported as ServiceNotSupported, TemplateError as TemplateError, Unauthorized as Unauthorized, UnknownUser as UnknownUser
14
14
  from homeassistant.loader import Integration as Integration, async_get_integrations as async_get_integrations, bind_hass as bind_hass
@@ -17,7 +17,7 @@ from homeassistant.util.hass_dict import HassKey as HassKey
17
17
  from homeassistant.util.yaml import load_yaml_dict as load_yaml_dict
18
18
  from homeassistant.util.yaml.loader import JSON_TYPE as JSON_TYPE
19
19
  from types import ModuleType
20
- from typing import Any, TypeGuard, TypedDict
20
+ from typing import Any, TypedDict, override
21
21
 
22
22
  CONF_SERVICE_ENTITY_ID: str
23
23
  _LOGGER: Incomplete
@@ -44,28 +44,12 @@ class ServiceParams(TypedDict):
44
44
  service_data: dict[str, Any]
45
45
  target: dict | None
46
46
 
47
- class ServiceTargetSelector:
48
- __slots__: Incomplete
49
- entity_ids: Incomplete
50
- device_ids: Incomplete
51
- area_ids: Incomplete
52
- floor_ids: Incomplete
53
- label_ids: Incomplete
47
+ class ServiceTargetSelector(target_helpers.TargetSelectorData):
54
48
  def __init__(self, service_call: ServiceCall) -> None: ...
55
- @property
56
- def has_any_selector(self) -> bool: ...
57
49
 
58
- @dataclasses.dataclass(slots=True)
59
- class SelectedEntities:
60
- referenced: set[str] = dataclasses.field(default_factory=set)
61
- indirectly_referenced: set[str] = dataclasses.field(default_factory=set)
62
- missing_devices: set[str] = dataclasses.field(default_factory=set)
63
- missing_areas: set[str] = dataclasses.field(default_factory=set)
64
- missing_floors: set[str] = dataclasses.field(default_factory=set)
65
- missing_labels: set[str] = dataclasses.field(default_factory=set)
66
- referenced_devices: set[str] = dataclasses.field(default_factory=set)
67
- referenced_areas: set[str] = dataclasses.field(default_factory=set)
68
- def log_missing(self, missing_entities: set[str]) -> None: ...
50
+ class SelectedEntities(target_helpers.SelectedEntities):
51
+ @override
52
+ def log_missing(self, missing_entities: set[str], logger: logging.Logger | None = None) -> None: ...
69
53
 
70
54
  @bind_hass
71
55
  def call_from_config(hass: HomeAssistant, config: ConfigType, blocking: bool = False, variables: TemplateVarsType = None, validate_config: bool = True) -> None: ...
@@ -80,7 +64,6 @@ def extract_entity_ids(hass: HomeAssistant, service_call: ServiceCall, expand_gr
80
64
  async def async_extract_entities[_EntityT: Entity](hass: HomeAssistant, entities: Iterable[_EntityT], service_call: ServiceCall, expand_group: bool = True) -> list[_EntityT]: ...
81
65
  @bind_hass
82
66
  async def async_extract_entity_ids(hass: HomeAssistant, service_call: ServiceCall, expand_group: bool = True) -> set[str]: ...
83
- def _has_match(ids: str | list[str] | None) -> TypeGuard[str | list[str]]: ...
84
67
  @bind_hass
85
68
  def async_extract_referenced_entity_ids(hass: HomeAssistant, service_call: ServiceCall, expand_group: bool = True) -> SelectedEntities: ...
86
69
  @bind_hass
@@ -0,0 +1,59 @@
1
+ import dataclasses
2
+ from . import group as group
3
+ from .event import async_track_state_change_event as async_track_state_change_event
4
+ from .typing import ConfigType as ConfigType
5
+ from _typeshed import Incomplete
6
+ from collections.abc import Callable as Callable
7
+ from homeassistant.const import ATTR_AREA_ID as ATTR_AREA_ID, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_FLOOR_ID as ATTR_FLOOR_ID, ATTR_LABEL_ID as ATTR_LABEL_ID, ENTITY_MATCH_NONE as ENTITY_MATCH_NONE
8
+ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
+ from logging import Logger
11
+ from typing import Any, TypeGuard
12
+
13
+ _LOGGER: Incomplete
14
+
15
+ @dataclasses.dataclass(slots=True, frozen=True)
16
+ class TargetStateChangedData:
17
+ state_change_event: Event[EventStateChangedData]
18
+ targeted_entity_ids: set[str]
19
+
20
+ def _has_match(ids: str | list[str] | None) -> TypeGuard[str | list[str]]: ...
21
+
22
+ class TargetSelectorData:
23
+ __slots__: Incomplete
24
+ entity_ids: Incomplete
25
+ device_ids: Incomplete
26
+ area_ids: Incomplete
27
+ floor_ids: Incomplete
28
+ label_ids: Incomplete
29
+ def __init__(self, config: ConfigType) -> None: ...
30
+ @property
31
+ def has_any_selector(self) -> bool: ...
32
+
33
+ @dataclasses.dataclass(slots=True)
34
+ class SelectedEntities:
35
+ referenced: set[str] = dataclasses.field(default_factory=set)
36
+ indirectly_referenced: set[str] = dataclasses.field(default_factory=set)
37
+ missing_devices: set[str] = dataclasses.field(default_factory=set)
38
+ missing_areas: set[str] = dataclasses.field(default_factory=set)
39
+ missing_floors: set[str] = dataclasses.field(default_factory=set)
40
+ missing_labels: set[str] = dataclasses.field(default_factory=set)
41
+ referenced_devices: set[str] = dataclasses.field(default_factory=set)
42
+ referenced_areas: set[str] = dataclasses.field(default_factory=set)
43
+ def log_missing(self, missing_entities: set[str], logger: Logger) -> None: ...
44
+
45
+ def async_extract_referenced_entity_ids(hass: HomeAssistant, selector_data: TargetSelectorData, expand_group: bool = True) -> SelectedEntities: ...
46
+
47
+ class TargetStateChangeTracker:
48
+ _hass: Incomplete
49
+ _selector_data: Incomplete
50
+ _action: Incomplete
51
+ _state_change_unsub: CALLBACK_TYPE | None
52
+ _registry_unsubs: list[CALLBACK_TYPE]
53
+ def __init__(self, hass: HomeAssistant, selector_data: TargetSelectorData, action: Callable[[TargetStateChangedData], Any]) -> None: ...
54
+ def async_setup(self) -> Callable[[], None]: ...
55
+ def _track_entities_state_change(self) -> None: ...
56
+ def _setup_registry_listeners(self) -> None: ...
57
+ def _unsubscribe(self) -> None: ...
58
+
59
+ def async_track_target_selector_state_change_event(hass: HomeAssistant, target_selector_config: ConfigType, action: Callable[[TargetStateChangedData], Any]) -> CALLBACK_TYPE: ...
@@ -1,13 +1,15 @@
1
1
  import abc
2
2
  import voluptuous as vol
3
+ from . import selector as selector
3
4
  from .integration_platform import async_process_integration_platforms as async_process_integration_platforms
5
+ from .selector import TargetSelector as TargetSelector
4
6
  from .template import Template as Template
5
7
  from .typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType
6
8
  from _typeshed import Incomplete
7
9
  from collections import defaultdict
8
10
  from collections.abc import Callable, Coroutine, Iterable
9
11
  from dataclasses import dataclass, field
10
- from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_ENABLED as CONF_ENABLED, CONF_ID as CONF_ID, CONF_PLATFORM as CONF_PLATFORM, CONF_VARIABLES as CONF_VARIABLES
12
+ from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_ENABLED as CONF_ENABLED, CONF_ID as CONF_ID, CONF_PLATFORM as CONF_PLATFORM, CONF_SELECTOR as CONF_SELECTOR, CONF_VARIABLES as CONF_VARIABLES
11
13
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Context as Context, HassJob as HassJob, HomeAssistant as HomeAssistant, callback as callback, is_callback as is_callback
12
14
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, TemplateError as TemplateError
13
15
  from homeassistant.loader import Integration as Integration, IntegrationNotFound as IntegrationNotFound, async_get_integration as async_get_integration, async_get_integrations as async_get_integrations
@@ -3,7 +3,8 @@ from .entity import Entity as Entity
3
3
  from .template import Template as Template, TemplateStateFromEntityId as TemplateStateFromEntityId, _SENTINEL as _SENTINEL, _render_with_context as _render_with_context, render_complex as render_complex, result_as_boolean as result_as_boolean
4
4
  from .typing import ConfigType as ConfigType
5
5
  from _typeshed import Incomplete
6
- from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, DEVICE_CLASSES_SCHEMA as DEVICE_CLASSES_SCHEMA, STATE_CLASSES_SCHEMA as STATE_CLASSES_SCHEMA, SensorEntity as SensorEntity
6
+ from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, DEVICE_CLASSES_SCHEMA as DEVICE_CLASSES_SCHEMA, STATE_CLASSES_SCHEMA as STATE_CLASSES_SCHEMA, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity
7
+ from homeassistant.components.sensor.helpers import async_parse_date_datetime as async_parse_date_datetime
7
8
  from homeassistant.const import ATTR_ENTITY_PICTURE as ATTR_ENTITY_PICTURE, ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME, ATTR_ICON as ATTR_ICON, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_ICON as CONF_ICON, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT
8
9
  from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback
9
10
  from homeassistant.exceptions import TemplateError as TemplateError
@@ -74,3 +75,6 @@ class ManualTriggerSensorEntity(ManualTriggerEntity, SensorEntity):
74
75
  _attr_native_unit_of_measurement: Incomplete
75
76
  _attr_state_class: Incomplete
76
77
  def __init__(self, hass: HomeAssistant, config: ConfigType) -> None: ...
78
+ _attr_native_value: Incomplete
79
+ @callback
80
+ def _set_native_value_with_possible_timestamp(self, value: Any) -> None: ...
@@ -198,6 +198,8 @@ class Integration:
198
198
  @cached_property
199
199
  def import_executor(self) -> bool: ...
200
200
  @cached_property
201
+ def has_conditions(self) -> bool: ...
202
+ @cached_property
201
203
  def has_services(self) -> bool: ...
202
204
  @cached_property
203
205
  def has_translations(self) -> bool: ...
@@ -279,17 +281,8 @@ class CircularDependency(LoaderError):
279
281
  def __init__(self, domain_cycle: list[str]) -> None: ...
280
282
  def extend_cycle(self, domain: str) -> None: ...
281
283
 
282
- def _load_file(hass: HomeAssistant, comp_or_platform: str, base_paths: list[str]) -> ComponentProtocol | None: ...
283
-
284
- class ModuleWrapper:
285
- _hass: Incomplete
286
- _module: Incomplete
287
- def __init__(self, hass: HomeAssistant, module: ComponentProtocol) -> None: ...
288
- def __getattr__(self, attr: str) -> Any: ...
289
-
290
284
  def bind_hass[_CallableT: Callable[..., Any]](func: _CallableT) -> _CallableT: ...
291
285
  def _async_mount_config_dir(hass: HomeAssistant) -> None: ...
292
- def _lookup_path(hass: HomeAssistant) -> list[str]: ...
293
286
  def is_component_module_loaded(hass: HomeAssistant, module: str) -> bool: ...
294
287
  @callback
295
288
  def async_get_issue_integration(hass: HomeAssistant | None, integration_domain: str | None) -> Integration | None: ...
@@ -4,6 +4,7 @@ from . import bootstrap as bootstrap
4
4
  from .core import callback as callback
5
5
  from .helpers.frame import warn_use as warn_use
6
6
  from .util.executor import InterruptibleThreadPoolExecutor as InterruptibleThreadPoolExecutor
7
+ from .util.resource import set_open_file_descriptor_limit as set_open_file_descriptor_limit
7
8
  from .util.thread import deadlock_safe_shutdown as deadlock_safe_shutdown
8
9
  from _typeshed import Incomplete
9
10
  from typing import Any
@@ -0,0 +1,7 @@
1
+ from _typeshed import Incomplete
2
+ from typing import Final
3
+
4
+ _LOGGER: Incomplete
5
+ DEFAULT_SOFT_FILE_LIMIT: Final[int]
6
+
7
+ def set_open_file_descriptor_limit() -> 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_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, 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
5
5
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
6
 
7
7
  _MM_TO_M: float
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: homeassistant-stubs
3
- Version: 2025.7.4
3
+ Version: 2025.8.0b0
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.7.4
21
+ Requires-Dist: homeassistant==2025.8.0b0
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)