homeassistant-stubs 2025.7.4__py3-none-any.whl → 2025.8.0__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 (490) 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/diagnostics.pyi +13 -0
  9. homeassistant-stubs/components/airos/entity.pyi +11 -0
  10. homeassistant-stubs/components/airos/sensor.pyi +29 -0
  11. homeassistant-stubs/components/airq/const.pyi +0 -1
  12. homeassistant-stubs/components/airq/sensor.pyi +2 -2
  13. homeassistant-stubs/components/airthings/__init__.pyi +1 -3
  14. homeassistant-stubs/components/airthings/coordinator.pyi +3 -1
  15. homeassistant-stubs/components/airthings/sensor.pyi +1 -1
  16. homeassistant-stubs/components/alexa_devices/__init__.pyi +6 -0
  17. homeassistant-stubs/components/alexa_devices/config_flow.pyi +10 -0
  18. homeassistant-stubs/components/alexa_devices/coordinator.pyi +4 -3
  19. homeassistant-stubs/components/alexa_devices/services.pyi +24 -0
  20. homeassistant-stubs/components/amberelectric/__init__.pyi +7 -1
  21. homeassistant-stubs/components/amberelectric/const.pyi +8 -1
  22. homeassistant-stubs/components/amberelectric/coordinator.pyi +1 -2
  23. homeassistant-stubs/components/amberelectric/helpers.pyi +6 -0
  24. homeassistant-stubs/components/amberelectric/sensor.pyi +2 -2
  25. homeassistant-stubs/components/amberelectric/services.pyi +15 -0
  26. homeassistant-stubs/components/analytics/__init__.pyi +1 -0
  27. homeassistant-stubs/components/analytics/analytics.pyi +3 -0
  28. homeassistant-stubs/components/analytics/http.pyi +10 -0
  29. homeassistant-stubs/components/analytics_insights/__init__.pyi +0 -1
  30. homeassistant-stubs/components/analytics_insights/config_flow.pyi +2 -2
  31. homeassistant-stubs/components/androidtv_remote/__init__.pyi +2 -6
  32. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +6 -6
  33. homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +1 -1
  34. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -2
  35. homeassistant-stubs/components/androidtv_remote/helpers.pyi +3 -1
  36. homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -4
  37. homeassistant-stubs/components/androidtv_remote/remote.pyi +1 -1
  38. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  39. homeassistant-stubs/components/assist_pipeline/const.pyi +0 -1
  40. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +2 -5
  41. homeassistant-stubs/components/asuswrt/router.pyi +3 -1
  42. homeassistant-stubs/components/awair/const.pyi +1 -0
  43. homeassistant-stubs/components/awair/sensor.pyi +1 -1
  44. homeassistant-stubs/components/backup/__init__.pyi +6 -2
  45. homeassistant-stubs/components/backup/coordinator.pyi +0 -1
  46. homeassistant-stubs/components/backup/manager.pyi +6 -3
  47. homeassistant-stubs/components/backup/onboarding.pyi +1 -1
  48. homeassistant-stubs/components/backup/services.pyi +7 -0
  49. homeassistant-stubs/components/backup/websocket.pyi +4 -1
  50. homeassistant-stubs/components/blue_current/__init__.pyi +5 -5
  51. homeassistant-stubs/components/blue_current/const.pyi +11 -0
  52. homeassistant-stubs/components/blue_current/switch.pyi +40 -0
  53. homeassistant-stubs/components/bosch_alarm/__init__.pyi +1 -1
  54. homeassistant-stubs/components/bosch_alarm/services.pyi +3 -2
  55. homeassistant-stubs/components/bring/__init__.pyi +5 -0
  56. homeassistant-stubs/components/bring/const.pyi +4 -0
  57. homeassistant-stubs/components/bring/services.pyi +14 -0
  58. homeassistant-stubs/components/cloud/backup.pyi +3 -3
  59. homeassistant-stubs/components/cloud/repairs.pyi +3 -3
  60. homeassistant-stubs/components/cloud/subscription.pyi +2 -1
  61. homeassistant-stubs/components/cloud/tts.pyi +2 -1
  62. homeassistant-stubs/components/command_line/sensor.pyi +0 -2
  63. homeassistant-stubs/components/demo/vacuum.pyi +0 -3
  64. homeassistant-stubs/components/derivative/__init__.pyi +5 -1
  65. homeassistant-stubs/components/derivative/config_flow.pyi +2 -0
  66. homeassistant-stubs/components/derivative/sensor.pyi +7 -4
  67. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +3 -7
  68. homeassistant-stubs/components/devolo_home_control/entity.pyi +0 -1
  69. homeassistant-stubs/components/devolo_home_network/coordinator.pyi +2 -2
  70. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
  71. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  72. homeassistant-stubs/components/devolo_home_network/sensor.pyi +1 -1
  73. homeassistant-stubs/components/discovergy/__init__.pyi +1 -0
  74. homeassistant-stubs/components/discovergy/coordinator.pyi +1 -0
  75. homeassistant-stubs/components/dnsip/__init__.pyi +0 -1
  76. homeassistant-stubs/components/dnsip/config_flow.pyi +2 -2
  77. homeassistant-stubs/components/downloader/services.pyi +1 -0
  78. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +13 -3
  79. homeassistant-stubs/components/ecovacs/sensor.pyi +13 -0
  80. homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -7
  81. homeassistant-stubs/components/eheimdigital/config_flow.pyi +2 -1
  82. homeassistant-stubs/components/elevenlabs/config_flow.pyi +1 -1
  83. homeassistant-stubs/components/elevenlabs/const.pyi +0 -2
  84. homeassistant-stubs/components/elevenlabs/tts.pyi +2 -3
  85. homeassistant-stubs/components/enphase_envoy/__init__.pyi +0 -2
  86. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +2 -2
  87. homeassistant-stubs/components/esphome/config_flow.pyi +2 -0
  88. homeassistant-stubs/components/esphome/encryption_key_storage.pyi +29 -0
  89. homeassistant-stubs/components/esphome/entity.pyi +3 -1
  90. homeassistant-stubs/components/esphome/entry_data.pyi +14 -6
  91. homeassistant-stubs/components/esphome/manager.pyi +3 -1
  92. homeassistant-stubs/components/feedreader/__init__.pyi +0 -1
  93. homeassistant-stubs/components/feedreader/config_flow.pyi +3 -3
  94. homeassistant-stubs/components/forecast_solar/__init__.pyi +0 -1
  95. homeassistant-stubs/components/forecast_solar/config_flow.pyi +2 -2
  96. homeassistant-stubs/components/fritz/__init__.pyi +0 -1
  97. homeassistant-stubs/components/fritz/config_flow.pyi +2 -2
  98. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +0 -1
  99. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +2 -2
  100. homeassistant-stubs/components/frontend/__init__.pyi +1 -0
  101. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +3 -1
  102. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
  103. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -3
  104. homeassistant-stubs/components/generic_thermostat/__init__.pyi +5 -1
  105. homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
  106. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
  107. homeassistant-stubs/components/geo_location/trigger.pyi +0 -1
  108. homeassistant-stubs/components/gios/const.pyi +2 -0
  109. homeassistant-stubs/components/gios/sensor.pyi +1 -1
  110. homeassistant-stubs/components/google_assistant_sdk/application_credentials.pyi +1 -0
  111. homeassistant-stubs/components/google_cloud/const.pyi +1 -0
  112. homeassistant-stubs/components/google_cloud/stt.pyi +3 -2
  113. homeassistant-stubs/components/guardian/__init__.pyi +1 -1
  114. homeassistant-stubs/components/guardian/services.pyi +2 -1
  115. homeassistant-stubs/components/habitica/button.pyi +3 -4
  116. homeassistant-stubs/components/habitica/coordinator.pyi +2 -3
  117. homeassistant-stubs/components/habitica/entity.pyi +1 -1
  118. homeassistant-stubs/components/habitica/sensor.pyi +3 -18
  119. homeassistant-stubs/components/habitica/switch.pyi +4 -3
  120. homeassistant-stubs/components/habitica/util.pyi +2 -1
  121. homeassistant-stubs/components/heos/__init__.pyi +1 -1
  122. homeassistant-stubs/components/heos/config_flow.pyi +3 -0
  123. homeassistant-stubs/components/heos/services.pyi +3 -2
  124. homeassistant-stubs/components/here_travel_time/__init__.pyi +3 -1
  125. homeassistant-stubs/components/here_travel_time/config_flow.pyi +3 -2
  126. homeassistant-stubs/components/here_travel_time/const.pyi +1 -0
  127. homeassistant-stubs/components/here_travel_time/coordinator.pyi +1 -1
  128. homeassistant-stubs/components/here_travel_time/model.pyi +2 -1
  129. homeassistant-stubs/components/history_stats/__init__.pyi +5 -1
  130. homeassistant-stubs/components/history_stats/config_flow.pyi +14 -0
  131. homeassistant-stubs/components/history_stats/coordinator.pyi +3 -1
  132. homeassistant-stubs/components/history_stats/data.pyi +2 -1
  133. homeassistant-stubs/components/history_stats/helpers.pyi +1 -1
  134. homeassistant-stubs/components/history_stats/sensor.pyi +7 -4
  135. homeassistant-stubs/components/holiday/__init__.pyi +0 -1
  136. homeassistant-stubs/components/holiday/config_flow.pyi +2 -2
  137. homeassistant-stubs/components/home_connect/__init__.pyi +1 -1
  138. homeassistant-stubs/components/home_connect/services.pyi +3 -2
  139. homeassistant-stubs/components/homeassistant/__init__.pyi +2 -1
  140. homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -1
  141. homeassistant-stubs/components/homeassistant_hardware/coordinator.pyi +2 -1
  142. homeassistant-stubs/components/homee/__init__.pyi +1 -1
  143. homeassistant-stubs/components/homee/config_flow.pyi +5 -0
  144. homeassistant-stubs/components/homekit/__init__.pyi +2 -1
  145. homeassistant-stubs/components/http/__init__.pyi +1 -2
  146. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -2
  147. homeassistant-stubs/components/huawei_lte/config_flow.pyi +5 -4
  148. homeassistant-stubs/components/huawei_lte/const.pyi +1 -1
  149. homeassistant-stubs/components/huawei_lte/diagnostics.pyi +18 -0
  150. homeassistant-stubs/components/husqvarna_automower/button.pyi +2 -2
  151. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +3 -0
  152. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +15 -13
  153. homeassistant-stubs/components/husqvarna_automower/entity.pyi +2 -6
  154. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +2 -2
  155. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +5 -0
  156. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -1
  157. homeassistant-stubs/components/hydrawise/const.pyi +1 -0
  158. homeassistant-stubs/components/hydrawise/coordinator.pyi +9 -2
  159. homeassistant-stubs/components/hydrawise/entity.pyi +1 -1
  160. homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
  161. homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
  162. homeassistant-stubs/components/hydrawise/valve.pyi +1 -1
  163. homeassistant-stubs/components/hyperion/__init__.pyi +0 -1
  164. homeassistant-stubs/components/hyperion/config_flow.pyi +2 -2
  165. homeassistant-stubs/components/imgw_pib/sensor.pyi +7 -1
  166. homeassistant-stubs/components/immich/__init__.pyi +6 -0
  167. homeassistant-stubs/components/immich/media_source.pyi +1 -0
  168. homeassistant-stubs/components/immich/services.pyi +18 -0
  169. homeassistant-stubs/components/input_text/__init__.pyi +1 -1
  170. homeassistant-stubs/components/integration/__init__.pyi +5 -1
  171. homeassistant-stubs/components/integration/config_flow.pyi +1 -0
  172. homeassistant-stubs/components/integration/sensor.pyi +5 -6
  173. homeassistant-stubs/components/iron_os/__init__.pyi +0 -3
  174. homeassistant-stubs/components/iron_os/const.pyi +4 -0
  175. homeassistant-stubs/components/iron_os/coordinator.pyi +1 -1
  176. homeassistant-stubs/components/iron_os/number.pyi +20 -4
  177. homeassistant-stubs/components/iron_os/switch.pyi +2 -0
  178. homeassistant-stubs/components/isy994/__init__.pyi +0 -1
  179. homeassistant-stubs/components/isy994/config_flow.pyi +3 -3
  180. homeassistant-stubs/components/jellyfin/browse_media.pyi +2 -1
  181. homeassistant-stubs/components/jellyfin/media_player.pyi +5 -2
  182. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +5 -15
  183. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +2 -2
  184. homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -5
  185. homeassistant-stubs/components/jewish_calendar/sensor.pyi +11 -7
  186. homeassistant-stubs/components/knx/__init__.pyi +6 -40
  187. homeassistant-stubs/components/knx/binary_sensor.pyi +3 -2
  188. homeassistant-stubs/components/knx/button.pyi +1 -1
  189. homeassistant-stubs/components/knx/climate.pyi +1 -1
  190. homeassistant-stubs/components/knx/config_flow.pyi +14 -21
  191. homeassistant-stubs/components/knx/const.pyi +1 -1
  192. homeassistant-stubs/components/knx/cover.pyi +3 -2
  193. homeassistant-stubs/components/knx/date.pyi +1 -1
  194. homeassistant-stubs/components/knx/datetime.pyi +1 -1
  195. homeassistant-stubs/components/knx/entity.pyi +1 -1
  196. homeassistant-stubs/components/knx/fan.pyi +1 -1
  197. homeassistant-stubs/components/knx/knx_module.pyi +43 -0
  198. homeassistant-stubs/components/knx/light.pyi +3 -2
  199. homeassistant-stubs/components/knx/notify.pyi +1 -1
  200. homeassistant-stubs/components/knx/number.pyi +1 -1
  201. homeassistant-stubs/components/knx/scene.pyi +1 -1
  202. homeassistant-stubs/components/knx/select.pyi +1 -1
  203. homeassistant-stubs/components/knx/sensor.pyi +1 -1
  204. homeassistant-stubs/components/knx/services.pyi +2 -2
  205. homeassistant-stubs/components/knx/storage/config_store.pyi +4 -0
  206. homeassistant-stubs/components/knx/storage/const.pyi +8 -7
  207. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +3 -10
  208. homeassistant-stubs/components/knx/storage/knx_selector.pyi +4 -0
  209. homeassistant-stubs/components/knx/storage/migration.pyi +5 -0
  210. homeassistant-stubs/components/knx/storage/util.pyi +16 -0
  211. homeassistant-stubs/components/knx/switch.pyi +3 -2
  212. homeassistant-stubs/components/knx/text.pyi +1 -1
  213. homeassistant-stubs/components/knx/time.pyi +1 -1
  214. homeassistant-stubs/components/knx/weather.pyi +1 -1
  215. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  216. homeassistant-stubs/components/lamarzocco/config_flow.pyi +2 -2
  217. homeassistant-stubs/components/lcn/binary_sensor.pyi +1 -20
  218. homeassistant-stubs/components/lcn/helpers.pyi +1 -0
  219. homeassistant-stubs/components/lcn/light.pyi +2 -1
  220. homeassistant-stubs/components/letpot/coordinator.pyi +3 -4
  221. homeassistant-stubs/components/letpot/switch.pyi +1 -1
  222. homeassistant-stubs/components/letpot/time.pyi +1 -1
  223. homeassistant-stubs/components/lifx/const.pyi +1 -0
  224. homeassistant-stubs/components/lifx/coordinator.pyi +5 -1
  225. homeassistant-stubs/components/lifx/manager.pyi +1 -1
  226. homeassistant-stubs/components/linkplay/select.pyi +35 -0
  227. homeassistant-stubs/components/litterrobot/sensor.pyi +3 -0
  228. homeassistant-stubs/components/matrix/__init__.pyi +1 -1
  229. homeassistant-stubs/components/matrix/services.pyi +3 -2
  230. homeassistant-stubs/components/matter/entity.pyi +2 -2
  231. homeassistant-stubs/components/matter/number.pyi +29 -1
  232. homeassistant-stubs/components/matter/select.pyi +2 -2
  233. homeassistant-stubs/components/matter/vacuum.pyi +2 -1
  234. homeassistant-stubs/components/mcp_server/server.pyi +1 -1
  235. homeassistant-stubs/components/mealie/const.pyi +2 -0
  236. homeassistant-stubs/components/mealie/services.pyi +4 -1
  237. homeassistant-stubs/components/media_player/const.pyi +2 -2
  238. homeassistant-stubs/components/media_source/const.pyi +3 -0
  239. homeassistant-stubs/components/media_source/local_source.pyi +1 -1
  240. homeassistant-stubs/components/media_source/models.pyi +6 -2
  241. homeassistant-stubs/components/met_eireann/__init__.pyi +2 -17
  242. homeassistant-stubs/components/met_eireann/coordinator.pyi +28 -0
  243. homeassistant-stubs/components/met_eireann/weather.pyi +1 -3
  244. homeassistant-stubs/components/miele/__init__.pyi +5 -0
  245. homeassistant-stubs/components/miele/coordinator.pyi +1 -1
  246. homeassistant-stubs/components/miele/entity.pyi +2 -0
  247. homeassistant-stubs/components/miele/sensor.pyi +7 -6
  248. homeassistant-stubs/components/miele/services.pyi +24 -0
  249. homeassistant-stubs/components/miele/vacuum.pyi +0 -2
  250. homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
  251. homeassistant-stubs/components/mold_indicator/__init__.pyi +8 -1
  252. homeassistant-stubs/components/mold_indicator/config_flow.pyi +2 -0
  253. homeassistant-stubs/components/mold_indicator/sensor.pyi +2 -2
  254. homeassistant-stubs/components/mqtt/climate.pyi +1 -37
  255. homeassistant-stubs/components/mqtt/config_flow.pyi +38 -6
  256. homeassistant-stubs/components/mqtt/const.pyi +33 -2
  257. homeassistant-stubs/components/mqtt/repairs.pyi +15 -0
  258. homeassistant-stubs/components/mqtt/vacuum.pyi +4 -3
  259. homeassistant-stubs/components/nasweb/const.pyi +1 -0
  260. homeassistant-stubs/components/nasweb/coordinator.pyi +3 -1
  261. homeassistant-stubs/components/nasweb/sensor.pyi +54 -0
  262. homeassistant-stubs/components/netatmo/climate.pyi +1 -1
  263. homeassistant-stubs/components/netatmo/const.pyi +1 -0
  264. homeassistant-stubs/components/nextdns/__init__.pyi +2 -3
  265. homeassistant-stubs/components/nextdns/coordinator.pyi +10 -2
  266. homeassistant-stubs/components/nordpool/const.pyi +1 -0
  267. homeassistant-stubs/components/nordpool/services.pyi +5 -1
  268. homeassistant-stubs/components/number/const.pyi +2 -1
  269. homeassistant-stubs/components/nut/__init__.pyi +0 -1
  270. homeassistant-stubs/components/onewire/__init__.pyi +0 -1
  271. homeassistant-stubs/components/onewire/config_flow.pyi +2 -2
  272. homeassistant-stubs/components/onkyo/__init__.pyi +2 -3
  273. homeassistant-stubs/components/onkyo/config_flow.pyi +9 -6
  274. homeassistant-stubs/components/onkyo/const.pyi +7 -65
  275. homeassistant-stubs/components/onkyo/media_player.pyi +16 -44
  276. homeassistant-stubs/components/onkyo/receiver.pyi +24 -25
  277. homeassistant-stubs/components/onkyo/services.pyi +3 -3
  278. homeassistant-stubs/components/onkyo/util.pyi +3 -0
  279. homeassistant-stubs/components/open_router/__init__.pyi +15 -0
  280. homeassistant-stubs/components/open_router/ai_task.pyi +17 -0
  281. homeassistant-stubs/components/open_router/config_flow.pyi +30 -0
  282. homeassistant-stubs/components/open_router/const.pyi +8 -0
  283. homeassistant-stubs/components/open_router/conversation.pyi +20 -0
  284. homeassistant-stubs/components/open_router/entity.pyi +33 -0
  285. homeassistant-stubs/components/openai_conversation/__init__.pyi +4 -2
  286. homeassistant-stubs/components/openai_conversation/ai_task.pyi +16 -0
  287. homeassistant-stubs/components/openai_conversation/config_flow.pyi +2 -3
  288. homeassistant-stubs/components/openai_conversation/const.pyi +9 -1
  289. homeassistant-stubs/components/openai_conversation/conversation.pyi +6 -22
  290. homeassistant-stubs/components/openai_conversation/entity.pyi +36 -0
  291. homeassistant-stubs/components/opower/__init__.pyi +8 -0
  292. homeassistant-stubs/components/opower/config_flow.pyi +30 -0
  293. homeassistant-stubs/components/opower/const.pyi +4 -0
  294. homeassistant-stubs/components/opower/coordinator.pyi +24 -0
  295. homeassistant-stubs/components/opower/sensor.pyi +35 -0
  296. homeassistant-stubs/components/pegel_online/__init__.pyi +1 -1
  297. homeassistant-stubs/components/pegel_online/sensor.pyi +2 -0
  298. homeassistant-stubs/components/pi_hole/__init__.pyi +6 -2
  299. homeassistant-stubs/components/pi_hole/config_flow.pyi +1 -2
  300. homeassistant-stubs/components/pi_hole/const.pyi +1 -0
  301. homeassistant-stubs/components/pi_hole/sensor.pyi +5 -0
  302. homeassistant-stubs/components/pi_hole/update.pyi +3 -3
  303. homeassistant-stubs/components/ping/__init__.pyi +0 -1
  304. homeassistant-stubs/components/ping/config_flow.pyi +3 -3
  305. homeassistant-stubs/components/plugwise/select.pyi +1 -1
  306. homeassistant-stubs/components/proximity/__init__.pyi +0 -1
  307. homeassistant-stubs/components/proximity/config_flow.pyi +3 -3
  308. homeassistant-stubs/components/purpleair/__init__.pyi +0 -1
  309. homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
  310. homeassistant-stubs/components/pyload/config_flow.pyi +4 -0
  311. homeassistant-stubs/components/recorder/pool.pyi +2 -1
  312. homeassistant-stubs/components/renault/__init__.pyi +1 -1
  313. homeassistant-stubs/components/renault/services.pyi +3 -2
  314. homeassistant-stubs/components/reolink/__init__.pyi +0 -1
  315. homeassistant-stubs/components/reolink/config_flow.pyi +2 -2
  316. homeassistant-stubs/components/reolink/number.pyi +1 -1
  317. homeassistant-stubs/components/reolink/sensor.pyi +1 -1
  318. homeassistant-stubs/components/rest/sensor.pyi +1 -3
  319. homeassistant-stubs/components/roborock/__init__.pyi +0 -1
  320. homeassistant-stubs/components/roborock/config_flow.pyi +2 -2
  321. homeassistant-stubs/components/roborock/vacuum.pyi +0 -2
  322. homeassistant-stubs/components/roku/__init__.pyi +0 -1
  323. homeassistant-stubs/components/roku/config_flow.pyi +2 -2
  324. homeassistant-stubs/components/russound_rio/const.pyi +2 -0
  325. homeassistant-stubs/components/russound_rio/media_player.pyi +6 -0
  326. homeassistant-stubs/components/scrape/sensor.pyi +1 -2
  327. homeassistant-stubs/components/sensor/const.pyi +2 -1
  328. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  329. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  330. homeassistant-stubs/components/shelly/button.pyi +2 -2
  331. homeassistant-stubs/components/shelly/climate.pyi +2 -2
  332. homeassistant-stubs/components/shelly/coordinator.pyi +5 -1
  333. homeassistant-stubs/components/shelly/entity.pyi +3 -0
  334. homeassistant-stubs/components/shelly/event.pyi +2 -2
  335. homeassistant-stubs/components/shelly/sensor.pyi +2 -2
  336. homeassistant-stubs/components/shelly/utils.pyi +2 -2
  337. homeassistant-stubs/components/sleepiq/const.pyi +2 -0
  338. homeassistant-stubs/components/sleepiq/number.pyi +7 -3
  339. homeassistant-stubs/components/sleepiq/select.pyi +15 -2
  340. homeassistant-stubs/components/smhi/coordinator.pyi +3 -0
  341. homeassistant-stubs/components/smhi/entity.pyi +3 -1
  342. homeassistant-stubs/components/smhi/sensor.pyi +30 -0
  343. homeassistant-stubs/components/smhi/weather.pyi +4 -2
  344. homeassistant-stubs/components/sonarr/__init__.pyi +0 -1
  345. homeassistant-stubs/components/sonarr/config_flow.pyi +2 -2
  346. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +0 -1
  347. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +2 -2
  348. homeassistant-stubs/components/sql/__init__.pyi +0 -1
  349. homeassistant-stubs/components/sql/config_flow.pyi +2 -2
  350. homeassistant-stubs/components/squeezebox/__init__.pyi +3 -2
  351. homeassistant-stubs/components/squeezebox/browse_media.pyi +3 -1
  352. homeassistant-stubs/components/squeezebox/const.pyi +2 -3
  353. homeassistant-stubs/components/squeezebox/coordinator.pyi +2 -2
  354. homeassistant-stubs/components/squeezebox/media_player.pyi +3 -2
  355. homeassistant-stubs/components/statistics/__init__.pyi +3 -1
  356. homeassistant-stubs/components/statistics/config_flow.pyi +1 -0
  357. homeassistant-stubs/components/statistics/sensor.pyi +5 -5
  358. homeassistant-stubs/components/stookwijzer/__init__.pyi +4 -0
  359. homeassistant-stubs/components/stookwijzer/const.pyi +2 -0
  360. homeassistant-stubs/components/stookwijzer/services.pyi +17 -0
  361. homeassistant-stubs/components/switch_as_x/__init__.pyi +2 -2
  362. homeassistant-stubs/components/switch_as_x/entity.pyi +1 -3
  363. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -0
  364. homeassistant-stubs/components/switchbot_cloud/const.pyi +1 -0
  365. homeassistant-stubs/components/switchbot_cloud/fan.pyi +26 -0
  366. homeassistant-stubs/components/switchbot_cloud/light.pyi +40 -0
  367. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +17 -1
  368. homeassistant-stubs/components/synology_dsm/__init__.pyi +0 -1
  369. homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
  370. homeassistant-stubs/components/tankerkoenig/__init__.pyi +10 -0
  371. homeassistant-stubs/components/tankerkoenig/binary_sensor.pyi +23 -0
  372. homeassistant-stubs/components/tankerkoenig/config_flow.pyi +33 -0
  373. homeassistant-stubs/components/tankerkoenig/const.pyi +13 -0
  374. homeassistant-stubs/components/tankerkoenig/coordinator.pyi +22 -0
  375. homeassistant-stubs/components/tankerkoenig/diagnostics.pyi +10 -0
  376. homeassistant-stubs/components/tankerkoenig/entity.pyi +11 -0
  377. homeassistant-stubs/components/tankerkoenig/sensor.pyi +28 -0
  378. homeassistant-stubs/components/threshold/__init__.pyi +5 -1
  379. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -4
  380. homeassistant-stubs/components/threshold/config_flow.pyi +1 -0
  381. homeassistant-stubs/components/time_date/config_flow.pyi +1 -2
  382. homeassistant-stubs/components/trafikverket_train/__init__.pyi +0 -1
  383. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +2 -2
  384. homeassistant-stubs/components/trend/__init__.pyi +3 -1
  385. homeassistant-stubs/components/trend/binary_sensor.pyi +3 -4
  386. homeassistant-stubs/components/trend/config_flow.pyi +1 -0
  387. homeassistant-stubs/components/tts/entity.pyi +0 -2
  388. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +3 -2
  389. homeassistant-stubs/components/unifiprotect/__init__.pyi +5 -5
  390. homeassistant-stubs/components/unifiprotect/config_flow.pyi +5 -5
  391. homeassistant-stubs/components/unifiprotect/repairs.pyi +0 -6
  392. homeassistant-stubs/components/unifiprotect/services.pyi +1 -1
  393. homeassistant-stubs/components/uptime_kuma/__init__.pyi +14 -0
  394. homeassistant-stubs/components/uptime_kuma/config_flow.pyi +26 -0
  395. homeassistant-stubs/components/uptime_kuma/const.pyi +7 -0
  396. homeassistant-stubs/components/uptime_kuma/coordinator.pyi +30 -0
  397. homeassistant-stubs/components/uptime_kuma/diagnostics.pyi +9 -0
  398. homeassistant-stubs/components/uptime_kuma/sensor.pyi +46 -0
  399. homeassistant-stubs/components/uptime_kuma/update.pyi +39 -0
  400. homeassistant-stubs/components/vacuum/__init__.pyi +8 -0
  401. homeassistant-stubs/components/velbus/__init__.pyi +1 -1
  402. homeassistant-stubs/components/velbus/const.pyi +0 -1
  403. homeassistant-stubs/components/velbus/services.pyi +4 -4
  404. homeassistant-stubs/components/vodafone_station/__init__.pyi +0 -1
  405. homeassistant-stubs/components/vodafone_station/config_flow.pyi +2 -2
  406. homeassistant-stubs/components/volvo/__init__.pyi +15 -0
  407. homeassistant-stubs/components/volvo/api.pyi +14 -0
  408. homeassistant-stubs/components/volvo/application_credentials.pyi +9 -0
  409. homeassistant-stubs/components/volvo/config_flow.pyi +36 -0
  410. homeassistant-stubs/components/volvo/const.pyi +8 -0
  411. homeassistant-stubs/components/volvo/coordinator.pyi +46 -0
  412. homeassistant-stubs/components/volvo/entity.pyi +33 -0
  413. homeassistant-stubs/components/volvo/sensor.pyi +35 -0
  414. homeassistant-stubs/components/wallbox/__init__.pyi +4 -5
  415. homeassistant-stubs/components/wallbox/coordinator.pyi +8 -2
  416. homeassistant-stubs/components/wallbox/lock.pyi +5 -4
  417. homeassistant-stubs/components/wallbox/number.pyi +6 -5
  418. homeassistant-stubs/components/wallbox/select.pyi +4 -3
  419. homeassistant-stubs/components/wallbox/sensor.pyi +5 -4
  420. homeassistant-stubs/components/wallbox/switch.pyi +5 -4
  421. homeassistant-stubs/components/waqi/__init__.pyi +3 -5
  422. homeassistant-stubs/components/waqi/coordinator.pyi +3 -2
  423. homeassistant-stubs/components/waqi/sensor.pyi +2 -13
  424. homeassistant-stubs/components/webostv/__init__.pyi +0 -1
  425. homeassistant-stubs/components/webostv/config_flow.pyi +3 -3
  426. homeassistant-stubs/components/websocket_api/commands.pyi +4 -0
  427. homeassistant-stubs/components/wiz/fan.pyi +34 -0
  428. homeassistant-stubs/components/wled/__init__.pyi +0 -1
  429. homeassistant-stubs/components/wled/config_flow.pyi +2 -2
  430. homeassistant-stubs/components/workday/__init__.pyi +0 -1
  431. homeassistant-stubs/components/workday/config_flow.pyi +2 -2
  432. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +0 -1
  433. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +2 -2
  434. homeassistant-stubs/components/yalexs_ble/lock.pyi +14 -2
  435. homeassistant-stubs/components/zone/condition.pyi +22 -0
  436. homeassistant-stubs/components/zone/trigger.pyi +2 -1
  437. homeassistant-stubs/components/zwave_js/__init__.pyi +12 -10
  438. homeassistant-stubs/components/zwave_js/api.pyi +36 -35
  439. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +7 -7
  440. homeassistant-stubs/components/zwave_js/button.pyi +5 -5
  441. homeassistant-stubs/components/zwave_js/climate.pyi +5 -5
  442. homeassistant-stubs/components/zwave_js/config_flow.pyi +6 -4
  443. homeassistant-stubs/components/zwave_js/const.pyi +0 -3
  444. homeassistant-stubs/components/zwave_js/cover.pyi +7 -7
  445. homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -1
  446. homeassistant-stubs/components/zwave_js/diagnostics.pyi +5 -5
  447. homeassistant-stubs/components/zwave_js/event.pyi +4 -4
  448. homeassistant-stubs/components/zwave_js/fan.pyi +6 -6
  449. homeassistant-stubs/components/zwave_js/helpers.pyi +10 -6
  450. homeassistant-stubs/components/zwave_js/humidifier.pyi +4 -4
  451. homeassistant-stubs/components/zwave_js/light.pyi +15 -5
  452. homeassistant-stubs/components/zwave_js/lock.pyi +3 -3
  453. homeassistant-stubs/components/zwave_js/models.pyi +12 -0
  454. homeassistant-stubs/components/zwave_js/number.pyi +6 -6
  455. homeassistant-stubs/components/zwave_js/select.pyi +8 -8
  456. homeassistant-stubs/components/zwave_js/sensor.pyi +10 -10
  457. homeassistant-stubs/components/zwave_js/siren.pyi +4 -4
  458. homeassistant-stubs/components/zwave_js/switch.pyi +7 -7
  459. homeassistant-stubs/components/zwave_js/triggers/event.pyi +1 -2
  460. homeassistant-stubs/components/zwave_js/triggers/trigger_helpers.pyi +1 -1
  461. homeassistant-stubs/components/zwave_js/update.pyi +28 -18
  462. homeassistant-stubs/config.pyi +0 -2
  463. homeassistant-stubs/config_entries.pyi +3 -0
  464. homeassistant-stubs/const.pyi +2 -0
  465. homeassistant-stubs/core.pyi +12 -8
  466. homeassistant-stubs/helpers/condition.pyi +25 -6
  467. homeassistant-stubs/helpers/config_validation.pyi +0 -2
  468. homeassistant-stubs/helpers/device.pyi +2 -0
  469. homeassistant-stubs/helpers/device_registry.pyi +16 -8
  470. homeassistant-stubs/helpers/entity.pyi +3 -1
  471. homeassistant-stubs/helpers/entity_platform.pyi +30 -9
  472. homeassistant-stubs/helpers/frame.pyi +1 -1
  473. homeassistant-stubs/helpers/helper_integration.pyi +2 -1
  474. homeassistant-stubs/helpers/llm.pyi +5 -1
  475. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -0
  476. homeassistant-stubs/helpers/selector.pyi +42 -37
  477. homeassistant-stubs/helpers/service.pyi +9 -26
  478. homeassistant-stubs/helpers/target.pyi +59 -0
  479. homeassistant-stubs/helpers/trigger.pyi +3 -1
  480. homeassistant-stubs/helpers/trigger_template_entity.pyi +5 -1
  481. homeassistant-stubs/loader.pyi +2 -9
  482. homeassistant-stubs/runner.pyi +1 -0
  483. homeassistant-stubs/util/resource.pyi +7 -0
  484. homeassistant-stubs/util/unit_conversion.pyi +1 -1
  485. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/METADATA +2 -2
  486. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/RECORD +488 -419
  487. homeassistant-stubs/components/backup/basic_websocket.pyi +0 -12
  488. homeassistant-stubs/helpers/backup.pyi +0 -24
  489. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/WHEEL +0 -0
  490. {homeassistant_stubs-2025.7.4.dist-info → homeassistant_stubs-2025.8.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,4 +1,4 @@
1
- from .const import CONF_SERVICE_ACCOUNT_INFO as CONF_SERVICE_ACCOUNT_INFO, CONF_STT_MODEL as CONF_STT_MODEL, DEFAULT_STT_MODEL as DEFAULT_STT_MODEL, DOMAIN as DOMAIN, STT_LANGUAGES as STT_LANGUAGES
1
+ from .const import CONF_SERVICE_ACCOUNT_INFO as CONF_SERVICE_ACCOUNT_INFO, CONF_STT_MODEL as CONF_STT_MODEL, DEFAULT_STT_MODEL as DEFAULT_STT_MODEL, DOMAIN as DOMAIN, HA_TO_GOOGLE_STT_LANG_MAP as HA_TO_GOOGLE_STT_LANG_MAP, STT_LANGUAGES as STT_LANGUAGES
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import AsyncIterable
4
4
  from google.cloud import speech_v1
@@ -6,6 +6,7 @@ from homeassistant.components.stt import AudioBitRates as AudioBitRates, AudioCh
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
9
+ from propcache.api import cached_property
9
10
 
10
11
  _LOGGER: Incomplete
11
12
 
@@ -19,7 +20,7 @@ class GoogleCloudSpeechToTextEntity(SpeechToTextEntity):
19
20
  _client: Incomplete
20
21
  _model: Incomplete
21
22
  def __init__(self, entry: ConfigEntry, client: speech_v1.SpeechAsyncClient) -> None: ...
22
- @property
23
+ @cached_property
23
24
  def supported_languages(self) -> list[str]: ...
24
25
  @property
25
26
  def supported_formats(self) -> list[AudioFormats]: ...
@@ -1,7 +1,7 @@
1
1
  import asyncio
2
2
  from .const import API_SENSOR_PAIRED_SENSOR_STATUS as API_SENSOR_PAIRED_SENSOR_STATUS, API_SENSOR_PAIR_DUMP as API_SENSOR_PAIR_DUMP, API_SYSTEM_DIAGNOSTICS as API_SYSTEM_DIAGNOSTICS, API_SYSTEM_ONBOARD_SENSOR_STATUS as API_SYSTEM_ONBOARD_SENSOR_STATUS, API_VALVE_STATUS as API_VALVE_STATUS, API_WIFI_STATUS as API_WIFI_STATUS, CONF_UID as CONF_UID, DOMAIN as DOMAIN, LOGGER as LOGGER, SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED as SIGNAL_PAIRED_SENSOR_COORDINATOR_ADDED
3
3
  from .coordinator import GuardianDataUpdateCoordinator as GuardianDataUpdateCoordinator
4
- from .services import setup_services as setup_services
4
+ from .services import async_setup_services as async_setup_services
5
5
  from _typeshed import Incomplete
6
6
  from aioguardian import Client
7
7
  from dataclasses import dataclass
@@ -25,4 +25,5 @@ async def async_pair_sensor(call: ServiceCall, data: GuardianData) -> None: ...
25
25
  async def async_unpair_sensor(call: ServiceCall, data: GuardianData) -> None: ...
26
26
  @call_with_data
27
27
  async def async_upgrade_firmware(call: ServiceCall, data: GuardianData) -> None: ...
28
- def setup_services(hass: HomeAssistant) -> None: ...
28
+ @callback
29
+ def async_setup_services(hass: HomeAssistant) -> None: ...
@@ -1,13 +1,12 @@
1
1
  from .const import ASSETS_URL as ASSETS_URL, DOMAIN as DOMAIN
2
- from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaData as HabiticaData, HabiticaDataUpdateCoordinator as HabiticaDataUpdateCoordinator
2
+ from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaData as HabiticaData
3
3
  from .entity import HabiticaBase as HabiticaBase
4
4
  from collections.abc import Callable as Callable
5
5
  from dataclasses import dataclass
6
6
  from enum import StrEnum
7
- from habiticalib import HabiticaClass
7
+ from habiticalib import Habitica as Habitica, HabiticaClass
8
8
  from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
- from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
11
10
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
12
11
  from typing import Any
13
12
 
@@ -15,7 +14,7 @@ PARALLEL_UPDATES: int
15
14
 
16
15
  @dataclass(kw_only=True, frozen=True)
17
16
  class HabiticaButtonEntityDescription(ButtonEntityDescription):
18
- press_fn: Callable[[HabiticaDataUpdateCoordinator], Any]
17
+ press_fn: Callable[[Habitica], Any]
19
18
  available_fn: Callable[[HabiticaData], bool]
20
19
  class_needed: HabiticaClass | None = ...
21
20
  entity_picture: str | None = ...
@@ -4,9 +4,8 @@ from collections.abc import Callable as Callable
4
4
  from dataclasses import dataclass
5
5
  from habiticalib import Avatar as Avatar, ContentData as ContentData, Habitica as Habitica, TaskData as TaskData, UserData as UserData
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
- from homeassistant.const import CONF_NAME as CONF_NAME
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
9
- from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
8
+ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
10
9
  from homeassistant.helpers.debounce import Debouncer as Debouncer
11
10
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
12
11
  from typing import Any
@@ -26,5 +25,5 @@ class HabiticaDataUpdateCoordinator(DataUpdateCoordinator[HabiticaData]):
26
25
  def __init__(self, hass: HomeAssistant, config_entry: HabiticaConfigEntry, habitica: Habitica) -> None: ...
27
26
  async def _async_setup(self) -> None: ...
28
27
  async def _async_update_data(self) -> HabiticaData: ...
29
- async def execute(self, func: Callable[[HabiticaDataUpdateCoordinator], Any]) -> None: ...
28
+ async def execute(self, func: Callable[[Habitica], Any]) -> None: ...
30
29
  async def generate_avatar(self, avatar: Avatar) -> bytes: ...
@@ -1,7 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER, NAME as NAME
2
2
  from .coordinator import HabiticaDataUpdateCoordinator as HabiticaDataUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
- from homeassistant.const import CONF_NAME as CONF_NAME, CONF_URL as CONF_URL
4
+ from homeassistant.const import CONF_URL as CONF_URL
5
5
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
6
6
  from homeassistant.helpers.entity import EntityDescription as EntityDescription
7
7
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
@@ -1,18 +1,15 @@
1
- from .const import ASSETS_URL as ASSETS_URL, DOMAIN as DOMAIN
2
- from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaDataUpdateCoordinator as HabiticaDataUpdateCoordinator
1
+ from .const import ASSETS_URL as ASSETS_URL
2
+ from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry
3
3
  from .entity import HabiticaBase as HabiticaBase
4
4
  from .util import get_attribute_points as get_attribute_points, get_attributes_total as get_attributes_total, inventory_list as inventory_list, pending_damage as pending_damage, pending_quest_items as pending_quest_items
5
5
  from _typeshed import Incomplete
6
- from collections.abc import Callable as Callable, Mapping
6
+ from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from enum import StrEnum
9
9
  from habiticalib import ContentData as ContentData, TaskData as TaskData, UserData as UserData
10
- from homeassistant.components.automation import automations_with_entity as automations_with_entity
11
- from homeassistant.components.script import scripts_with_entity as scripts_with_entity
12
10
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
13
11
  from homeassistant.core import HomeAssistant as HomeAssistant
14
12
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
15
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue, async_delete_issue as async_delete_issue
16
13
  from homeassistant.helpers.typing import StateType as StateType
17
14
  from typing import Any
18
15
 
@@ -33,7 +30,6 @@ class HabiticaTaskSensorEntityDescription(SensorEntityDescription):
33
30
  class HabiticaSensorEntity(StrEnum):
34
31
  DISPLAY_NAME = 'display_name'
35
32
  HEALTH = 'health'
36
- HEALTH_MAX = 'health_max'
37
33
  MANA = 'mana'
38
34
  MANA_MAX = 'mana_max'
39
35
  EXPERIENCE = 'experience'
@@ -58,11 +54,7 @@ class HabiticaSensorEntity(StrEnum):
58
54
  PENDING_QUEST_ITEMS = 'pending_quest_items'
59
55
 
60
56
  SENSOR_DESCRIPTIONS: tuple[HabiticaSensorEntityDescription, ...]
61
- TASKS_MAP_ID: str
62
- TASKS_MAP: Incomplete
63
- TASK_SENSOR_DESCRIPTION: tuple[HabiticaTaskSensorEntityDescription, ...]
64
57
 
65
- def entity_used_in(hass: HomeAssistant, entity_id: str) -> list[str]: ...
66
58
  async def async_setup_entry(hass: HomeAssistant, config_entry: HabiticaConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
67
59
 
68
60
  class HabiticaSensor(HabiticaBase, SensorEntity):
@@ -73,10 +65,3 @@ class HabiticaSensor(HabiticaBase, SensorEntity):
73
65
  def extra_state_attributes(self) -> dict[str, float | None] | None: ...
74
66
  @property
75
67
  def entity_picture(self) -> str | None: ...
76
-
77
- class HabiticaTaskSensor(HabiticaBase, SensorEntity):
78
- entity_description: HabiticaTaskSensorEntityDescription
79
- @property
80
- def native_value(self) -> StateType: ...
81
- @property
82
- def extra_state_attributes(self) -> Mapping[str, Any] | None: ...
@@ -1,8 +1,9 @@
1
- from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaData as HabiticaData, HabiticaDataUpdateCoordinator as HabiticaDataUpdateCoordinator
1
+ from .coordinator import HabiticaConfigEntry as HabiticaConfigEntry, HabiticaData as HabiticaData
2
2
  from .entity import HabiticaBase as HabiticaBase
3
3
  from collections.abc import Callable as Callable
4
4
  from dataclasses import dataclass
5
5
  from enum import StrEnum
6
+ from habiticalib import Habitica as Habitica
6
7
  from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant
8
9
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
@@ -12,8 +13,8 @@ PARALLEL_UPDATES: int
12
13
 
13
14
  @dataclass(kw_only=True, frozen=True)
14
15
  class HabiticaSwitchEntityDescription(SwitchEntityDescription):
15
- turn_on_fn: Callable[[HabiticaDataUpdateCoordinator], Any]
16
- turn_off_fn: Callable[[HabiticaDataUpdateCoordinator], Any]
16
+ turn_on_fn: Callable[[Habitica], Any]
17
+ turn_off_fn: Callable[[Habitica], Any]
17
18
  is_on_fn: Callable[[HabiticaData], bool | None]
18
19
 
19
20
  class HabiticaSwitchEntity(StrEnum):
@@ -2,10 +2,11 @@ import datetime
2
2
  from _typeshed import Incomplete
3
3
  from dateutil.rrule import rrule
4
4
  from habiticalib import ContentData as ContentData, TaskData as TaskData, UserData as UserData
5
+ from typing import Literal
5
6
 
6
7
  def next_due_date(task: TaskData, today: datetime.datetime) -> datetime.date | None: ...
7
8
 
8
- FREQUENCY_MAP: Incomplete
9
+ FREQUENCY_MAP: dict[str, Literal[0, 1, 2, 3]]
9
10
  WEEKDAY_MAP: Incomplete
10
11
 
11
12
  def build_rrule(task: TaskData) -> rrule: ...
@@ -1,6 +1,6 @@
1
- from . import services as services
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import HeosConfigEntry as HeosConfigEntry, HeosCoordinator as HeosCoordinator
3
+ from .services import async_setup_services as async_setup_services
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.const import Platform as Platform
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -7,6 +7,7 @@ from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PA
7
7
  from homeassistant.core import callback as callback
8
8
  from homeassistant.helpers import selector as selector
9
9
  from homeassistant.helpers.service_info.ssdp import SsdpServiceInfo as SsdpServiceInfo
10
+ from homeassistant.helpers.service_info.zeroconf import ZeroconfServiceInfo as ZeroconfServiceInfo
10
11
  from typing import Any
11
12
 
12
13
  _LOGGER: Incomplete
@@ -24,11 +25,13 @@ class HeosFlowHandler(ConfigFlow, domain=DOMAIN):
24
25
  @callback
25
26
  def async_get_options_flow(config_entry: HeosConfigEntry) -> OptionsFlow: ...
26
27
  async def async_step_ssdp(self, discovery_info: SsdpServiceInfo) -> ConfigFlowResult: ...
28
+ async def async_step_zeroconf(self, discovery_info: ZeroconfServiceInfo) -> ConfigFlowResult: ...
27
29
  async def async_step_confirm_discovery(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
28
30
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
29
31
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
30
32
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
31
33
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
34
+ async def _async_handle_discovered(self, hostname: str) -> ConfigFlowResult: ...
32
35
 
33
36
  class HeosOptionsFlowHandler(OptionsFlow):
34
37
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
4
4
  from dataclasses import dataclass
5
5
  from homeassistant.components.media_player import ATTR_MEDIA_VOLUME_LEVEL as ATTR_MEDIA_VOLUME_LEVEL
6
6
  from homeassistant.config_entries import ConfigEntryState as ConfigEntryState
7
- from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, SupportsResponse as SupportsResponse
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, SupportsResponse as SupportsResponse, callback as callback
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
9
9
  from homeassistant.helpers import entity_platform as entity_platform
10
10
  from homeassistant.helpers.typing import VolDictType as VolDictType, VolSchemaType as VolSchemaType
@@ -15,7 +15,8 @@ _LOGGER: Incomplete
15
15
  HEOS_SIGN_IN_SCHEMA: Incomplete
16
16
  HEOS_SIGN_OUT_SCHEMA: Incomplete
17
17
 
18
- def register(hass: HomeAssistant) -> None: ...
18
+ @callback
19
+ def async_setup_services(hass: HomeAssistant) -> None: ...
19
20
 
20
21
  @dataclass(frozen=True)
21
22
  class EntityServiceDescription:
@@ -1,4 +1,4 @@
1
- from .const import TRAVEL_MODE_PUBLIC as TRAVEL_MODE_PUBLIC
1
+ from .const import CONF_TRAFFIC_MODE as CONF_TRAFFIC_MODE, TRAVEL_MODE_PUBLIC as TRAVEL_MODE_PUBLIC
2
2
  from .coordinator import HERERoutingDataUpdateCoordinator as HERERoutingDataUpdateCoordinator, HERETransitDataUpdateCoordinator as HERETransitDataUpdateCoordinator, HereConfigEntry as HereConfigEntry
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_MODE as CONF_MODE, Platform as Platform
@@ -6,6 +6,8 @@ from homeassistant.core import HomeAssistant as HomeAssistant
6
6
  from homeassistant.helpers.start import async_at_started as async_at_started
7
7
 
8
8
  PLATFORMS: Incomplete
9
+ _LOGGER: Incomplete
9
10
 
10
11
  async def async_setup_entry(hass: HomeAssistant, config_entry: HereConfigEntry) -> bool: ...
11
12
  async def async_unload_entry(hass: HomeAssistant, config_entry: HereConfigEntry) -> bool: ...
13
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: HereConfigEntry) -> bool: ...
@@ -1,11 +1,11 @@
1
1
  import voluptuous as vol
2
- from .const import CONF_ARRIVAL_TIME as CONF_ARRIVAL_TIME, CONF_DEPARTURE_TIME as CONF_DEPARTURE_TIME, CONF_DESTINATION as CONF_DESTINATION, CONF_DESTINATION_ENTITY_ID as CONF_DESTINATION_ENTITY_ID, CONF_DESTINATION_LATITUDE as CONF_DESTINATION_LATITUDE, CONF_DESTINATION_LONGITUDE as CONF_DESTINATION_LONGITUDE, CONF_ORIGIN as CONF_ORIGIN, CONF_ORIGIN_ENTITY_ID as CONF_ORIGIN_ENTITY_ID, CONF_ORIGIN_LATITUDE as CONF_ORIGIN_LATITUDE, CONF_ORIGIN_LONGITUDE as CONF_ORIGIN_LONGITUDE, CONF_ROUTE_MODE as CONF_ROUTE_MODE, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, ROUTE_MODES as ROUTE_MODES, ROUTE_MODE_FASTEST as ROUTE_MODE_FASTEST, TRAVEL_MODES as TRAVEL_MODES, TRAVEL_MODE_CAR as TRAVEL_MODE_CAR, TRAVEL_MODE_PUBLIC as TRAVEL_MODE_PUBLIC
2
+ from .const import CONF_ARRIVAL_TIME as CONF_ARRIVAL_TIME, CONF_DEPARTURE_TIME as CONF_DEPARTURE_TIME, CONF_DESTINATION as CONF_DESTINATION, CONF_DESTINATION_ENTITY_ID as CONF_DESTINATION_ENTITY_ID, CONF_DESTINATION_LATITUDE as CONF_DESTINATION_LATITUDE, CONF_DESTINATION_LONGITUDE as CONF_DESTINATION_LONGITUDE, CONF_ORIGIN as CONF_ORIGIN, CONF_ORIGIN_ENTITY_ID as CONF_ORIGIN_ENTITY_ID, CONF_ORIGIN_LATITUDE as CONF_ORIGIN_LATITUDE, CONF_ORIGIN_LONGITUDE as CONF_ORIGIN_LONGITUDE, CONF_ROUTE_MODE as CONF_ROUTE_MODE, CONF_TRAFFIC_MODE as CONF_TRAFFIC_MODE, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, ROUTE_MODES as ROUTE_MODES, ROUTE_MODE_FASTEST as ROUTE_MODE_FASTEST, TRAVEL_MODES as TRAVEL_MODES, TRAVEL_MODE_CAR as TRAVEL_MODE_CAR, TRAVEL_MODE_PUBLIC as TRAVEL_MODE_PUBLIC
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, OptionsFlow as OptionsFlow, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE
6
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE, CONF_MODE as CONF_MODE, CONF_NAME as CONF_NAME
7
7
  from homeassistant.core import callback as callback
8
- from homeassistant.helpers.selector import EntitySelector as EntitySelector, LocationSelector as LocationSelector, TimeSelector as TimeSelector
8
+ from homeassistant.helpers.selector import BooleanSelector as BooleanSelector, EntitySelector as EntitySelector, LocationSelector as LocationSelector, TimeSelector as TimeSelector
9
9
  from typing import Any
10
10
 
11
11
  _LOGGER: Incomplete
@@ -16,6 +16,7 @@ def get_user_step_schema(data: Mapping[str, Any]) -> vol.Schema: ...
16
16
 
17
17
  class HERETravelTimeConfigFlow(ConfigFlow, domain=DOMAIN):
18
18
  VERSION: int
19
+ MINOR_VERSION: int
19
20
  _config: dict[str, Any]
20
21
  def __init__(self) -> None: ...
21
22
  @staticmethod
@@ -16,6 +16,7 @@ CONF_ARRIVAL: str
16
16
  CONF_DEPARTURE: str
17
17
  CONF_ARRIVAL_TIME: str
18
18
  CONF_DEPARTURE_TIME: str
19
+ CONF_TRAFFIC_MODE: str
19
20
  DEFAULT_NAME: str
20
21
  TRAVEL_MODE_BICYCLE: str
21
22
  TRAVEL_MODE_CAR: str
@@ -1,4 +1,4 @@
1
- from .const import CONF_ARRIVAL_TIME as CONF_ARRIVAL_TIME, CONF_DEPARTURE_TIME as CONF_DEPARTURE_TIME, CONF_DESTINATION_ENTITY_ID as CONF_DESTINATION_ENTITY_ID, CONF_DESTINATION_LATITUDE as CONF_DESTINATION_LATITUDE, CONF_DESTINATION_LONGITUDE as CONF_DESTINATION_LONGITUDE, CONF_ORIGIN_ENTITY_ID as CONF_ORIGIN_ENTITY_ID, CONF_ORIGIN_LATITUDE as CONF_ORIGIN_LATITUDE, CONF_ORIGIN_LONGITUDE as CONF_ORIGIN_LONGITUDE, CONF_ROUTE_MODE as CONF_ROUTE_MODE, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL, DOMAIN as DOMAIN, ROUTE_MODE_FASTEST as ROUTE_MODE_FASTEST
1
+ from .const import CONF_ARRIVAL_TIME as CONF_ARRIVAL_TIME, CONF_DEPARTURE_TIME as CONF_DEPARTURE_TIME, CONF_DESTINATION_ENTITY_ID as CONF_DESTINATION_ENTITY_ID, CONF_DESTINATION_LATITUDE as CONF_DESTINATION_LATITUDE, CONF_DESTINATION_LONGITUDE as CONF_DESTINATION_LONGITUDE, CONF_ORIGIN_ENTITY_ID as CONF_ORIGIN_ENTITY_ID, CONF_ORIGIN_LATITUDE as CONF_ORIGIN_LATITUDE, CONF_ORIGIN_LONGITUDE as CONF_ORIGIN_LONGITUDE, CONF_ROUTE_MODE as CONF_ROUTE_MODE, CONF_TRAFFIC_MODE as CONF_TRAFFIC_MODE, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL, DOMAIN as DOMAIN, ROUTE_MODE_FASTEST as ROUTE_MODE_FASTEST
2
2
  from .model import HERETravelTimeAPIParams as HERETravelTimeAPIParams, HERETravelTimeData as HERETravelTimeData
3
3
  from _typeshed import Incomplete
4
4
  from datetime import datetime, time
@@ -1,6 +1,6 @@
1
1
  from dataclasses import dataclass
2
2
  from datetime import datetime
3
- from here_routing import RoutingMode as RoutingMode
3
+ from here_routing import RoutingMode as RoutingMode, TrafficMode as TrafficMode
4
4
  from typing import TypedDict
5
5
 
6
6
  class HERETravelTimeData(TypedDict):
@@ -21,3 +21,4 @@ class HERETravelTimeAPIParams:
21
21
  route_mode: RoutingMode
22
22
  arrival: datetime | None
23
23
  departure: datetime | None
24
+ traffic_mode: TrafficMode
@@ -1,14 +1,18 @@
1
1
  from .const import CONF_DURATION as CONF_DURATION, CONF_END as CONF_END, CONF_START as CONF_START, PLATFORMS as PLATFORMS
2
2
  from .coordinator import HistoryStatsUpdateCoordinator as HistoryStatsUpdateCoordinator
3
3
  from .data import HistoryStats as HistoryStats
4
+ from _typeshed import Incomplete
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
6
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_STATE as CONF_STATE
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.helpers.device import async_entity_id_to_device_id as async_entity_id_to_device_id, async_remove_stale_devices_links_keep_entity_device as async_remove_stale_devices_links_keep_entity_device
8
- from homeassistant.helpers.helper_integration import async_handle_source_entity_changes as async_handle_source_entity_changes
9
+ from homeassistant.helpers.helper_integration import async_handle_source_entity_changes as async_handle_source_entity_changes, async_remove_helper_config_entry_from_source_device as async_remove_helper_config_entry_from_source_device
9
10
  from homeassistant.helpers.template import Template as Template
10
11
 
11
12
  type HistoryStatsConfigEntry = ConfigEntry[HistoryStatsUpdateCoordinator]
13
+ _LOGGER: Incomplete
14
+
12
15
  async def async_setup_entry(hass: HomeAssistant, entry: HistoryStatsConfigEntry) -> bool: ...
16
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
13
17
  async def async_unload_entry(hass: HomeAssistant, entry: HistoryStatsConfigEntry) -> bool: ...
14
18
  async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
@@ -1,11 +1,19 @@
1
1
  from .const import CONF_DURATION as CONF_DURATION, CONF_END as CONF_END, CONF_PERIOD_KEYS as CONF_PERIOD_KEYS, CONF_START as CONF_START, CONF_TYPE_KEYS as CONF_TYPE_KEYS, CONF_TYPE_TIME as CONF_TYPE_TIME, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
+ from .coordinator import HistoryStatsUpdateCoordinator as HistoryStatsUpdateCoordinator
3
+ from .data import HistoryStats as HistoryStats
4
+ from .sensor import HistoryStatsSensor as HistoryStatsSensor
2
5
  from _typeshed import Incomplete
3
6
  from collections.abc import Mapping
7
+ from homeassistant.components import websocket_api as websocket_api
4
8
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_STATE as CONF_STATE, CONF_TYPE as CONF_TYPE
9
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
5
11
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowError as SchemaFlowError, SchemaFlowFormStep as SchemaFlowFormStep
6
12
  from homeassistant.helpers.selector import DurationSelector as DurationSelector, DurationSelectorConfig as DurationSelectorConfig, EntitySelector as EntitySelector, EntitySelectorConfig as EntitySelectorConfig, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, TemplateSelector as TemplateSelector, TextSelector as TextSelector, TextSelectorConfig as TextSelectorConfig
13
+ from homeassistant.helpers.template import Template as Template
7
14
  from typing import Any
8
15
 
16
+ def _validate_two_period_keys(user_input: dict[str, Any]) -> None: ...
9
17
  async def validate_options(handler: SchemaCommonFlowHandler, user_input: dict[str, Any]) -> dict[str, Any]: ...
10
18
 
11
19
  DATA_SCHEMA_SETUP: Incomplete
@@ -14,6 +22,12 @@ CONFIG_FLOW: Incomplete
14
22
  OPTIONS_FLOW: Incomplete
15
23
 
16
24
  class HistoryStatsConfigFlowHandler(SchemaConfigFlowHandler, domain=DOMAIN):
25
+ MINOR_VERSION: int
17
26
  config_flow = CONFIG_FLOW
18
27
  options_flow = OPTIONS_FLOW
19
28
  def async_config_entry_title(self, options: Mapping[str, Any]) -> str: ...
29
+ @staticmethod
30
+ async def async_setup_preview(hass: HomeAssistant) -> None: ...
31
+
32
+ @websocket_api.async_response
33
+ async def ws_start_preview(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -16,7 +16,8 @@ class HistoryStatsUpdateCoordinator(DataUpdateCoordinator[HistoryStatsState]):
16
16
  _subscriber_count: int
17
17
  _at_start_listener: CALLBACK_TYPE | None
18
18
  _track_events_listener: CALLBACK_TYPE | None
19
- def __init__(self, hass: HomeAssistant, history_stats: HistoryStats, config_entry: ConfigEntry | None, name: str) -> None: ...
19
+ _preview: Incomplete
20
+ def __init__(self, hass: HomeAssistant, history_stats: HistoryStats, config_entry: ConfigEntry | None, name: str, preview: bool = False) -> None: ...
20
21
  @callback
21
22
  def async_setup_state_listener(self) -> CALLBACK_TYPE: ...
22
23
  @callback
@@ -27,3 +28,4 @@ class HistoryStatsUpdateCoordinator(DataUpdateCoordinator[HistoryStatsState]):
27
28
  def _async_add_events_listener(self, *_: Any) -> None: ...
28
29
  async def _async_update_from_event(self, event: Event[EventStateChangedData]) -> None: ...
29
30
  async def _async_update_data(self) -> HistoryStatsState: ...
31
+ async def async_refresh(self) -> None: ...
@@ -31,9 +31,10 @@ class HistoryStats:
31
31
  _duration: Incomplete
32
32
  _start: Incomplete
33
33
  _end: Incomplete
34
+ _preview: Incomplete
34
35
  _pending_events: list[Event[EventStateChangedData]]
35
36
  _query_count: int
36
- def __init__(self, hass: HomeAssistant, entity_id: str, entity_states: list[str], start: Template | None, end: Template | None, duration: datetime.timedelta | None) -> None: ...
37
+ def __init__(self, hass: HomeAssistant, entity_id: str, entity_states: list[str], start: Template | None, end: Template | None, duration: datetime.timedelta | None, preview: bool = False) -> None: ...
37
38
  async def async_update(self, event: Event[EventStateChangedData] | None) -> HistoryStatsState: ...
38
39
  async def _async_history_from_db(self, current_period_start_timestamp: float, current_period_end_timestamp: float) -> None: ...
39
40
  def _state_changes_during_period(self, start_ts: float, end_ts: float) -> list[State]: ...
@@ -9,6 +9,6 @@ DURATION_START: str
9
9
  DURATION_END: str
10
10
 
11
11
  @callback
12
- def async_calculate_period(duration: datetime.timedelta | None, start_template: Template | None, end_template: Template | None) -> tuple[datetime.datetime, datetime.datetime]: ...
12
+ def async_calculate_period(duration: datetime.timedelta | None, start_template: Template | None, end_template: Template | None, log_errors: bool = True) -> tuple[datetime.datetime, datetime.datetime]: ...
13
13
  def pretty_ratio(value: float, period: tuple[datetime.datetime, datetime.datetime]) -> float: ...
14
14
  def floored_timestamp(incoming_dt: datetime.datetime) -> float: ...
@@ -6,11 +6,12 @@ from .data import HistoryStats as HistoryStats
6
6
  from .helpers import pretty_ratio as pretty_ratio
7
7
  from _typeshed import Incomplete
8
8
  from abc import abstractmethod
9
+ from collections.abc import Callable as Callable, Mapping
9
10
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
10
11
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_STATE as CONF_STATE, CONF_TYPE as CONF_TYPE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
11
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
+ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant, callback as callback
12
13
  from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
13
- from homeassistant.helpers.device import async_device_info_to_link_from_entity as async_device_info_to_link_from_entity
14
+ from homeassistant.helpers.device import async_entity_id_to_device as async_entity_id_to_device
14
15
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback, AddEntitiesCallback as AddEntitiesCallback
15
16
  from homeassistant.helpers.reload import async_setup_reload_service as async_setup_reload_service
16
17
  from homeassistant.helpers.template import Template as Template
@@ -40,13 +41,15 @@ class HistoryStatsSensorBase(CoordinatorEntity[HistoryStatsUpdateCoordinator], S
40
41
 
41
42
  class HistoryStatsSensor(HistoryStatsSensorBase):
42
43
  _attr_state_class: Incomplete
44
+ _preview_callback: Callable[[Exception | None, str, Mapping[str, Any]], None] | None
43
45
  _attr_native_unit_of_measurement: Incomplete
44
46
  _type: Incomplete
45
47
  _attr_unique_id: Incomplete
46
- _attr_device_info: Incomplete
48
+ device_entry: Incomplete
47
49
  _attr_device_class: Incomplete
48
50
  _attr_suggested_display_precision: int
49
- def __init__(self, hass: HomeAssistant, coordinator: HistoryStatsUpdateCoordinator, sensor_type: str, name: str, unique_id: str | None, source_entity_id: str) -> None: ...
51
+ def __init__(self, hass: HomeAssistant, *, coordinator: HistoryStatsUpdateCoordinator, sensor_type: str, name: str, unique_id: str | None, source_entity_id: str) -> None: ...
50
52
  _attr_native_value: Incomplete
51
53
  @callback
52
54
  def _process_update(self) -> None: ...
55
+ async def async_start_preview(self, preview_callback: Callable[[Exception | None, str, Mapping[str, Any]], None]) -> CALLBACK_TYPE: ...
@@ -7,5 +7,4 @@ from homeassistant.setup import SetupPhases as SetupPhases, async_pause_setup as
7
7
  PLATFORMS: list[Platform]
8
8
 
9
9
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
10
- async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
11
10
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -1,7 +1,7 @@
1
1
  import voluptuous as vol
2
2
  from .const import CONF_CATEGORIES as CONF_CATEGORIES, CONF_PROVINCE as CONF_PROVINCE, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlowWithReload as OptionsFlowWithReload
5
5
  from homeassistant.const import CONF_COUNTRY as CONF_COUNTRY
6
6
  from homeassistant.core import callback as callback
7
7
  from homeassistant.helpers.selector import CountrySelector as CountrySelector, CountrySelectorConfig as CountrySelectorConfig, SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
@@ -25,5 +25,5 @@ class HolidayConfigFlow(ConfigFlow, domain=DOMAIN):
25
25
  async def async_step_options(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
26
26
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
27
27
 
28
- class HolidayOptionsFlowHandler(OptionsFlow):
28
+ class HolidayOptionsFlowHandler(OptionsFlowWithReload):
29
29
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,7 +1,7 @@
1
1
  from .api import AsyncConfigEntryAuth as AsyncConfigEntryAuth
2
2
  from .const import DOMAIN as DOMAIN, OLD_NEW_UNIQUE_ID_SUFFIX_MAP as OLD_NEW_UNIQUE_ID_SUFFIX_MAP
3
3
  from .coordinator import HomeConnectConfigEntry as HomeConnectConfigEntry, HomeConnectCoordinator as HomeConnectCoordinator
4
- from .services import register_actions as register_actions
4
+ from .services import async_setup_services as async_setup_services
5
5
  from _typeshed import Incomplete
6
6
  from homeassistant.const import Platform as Platform
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -5,7 +5,7 @@ from _typeshed import Incomplete
5
5
  from aiohomeconnect.client import Client as HomeConnectClient
6
6
  from aiohomeconnect.model import CommandKey
7
7
  from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID
8
- from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
8
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
9
9
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
10
10
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
11
11
 
@@ -32,4 +32,5 @@ async def async_service_resume_program(call: ServiceCall) -> None: ...
32
32
  async def async_service_select_program(call: ServiceCall) -> None: ...
33
33
  async def async_service_set_program_and_options(call: ServiceCall) -> None: ...
34
34
  async def async_service_start_program(call: ServiceCall) -> None: ...
35
- def register_actions(hass: HomeAssistant) -> None: ...
35
+ @callback
36
+ def async_setup_services(hass: HomeAssistant) -> None: ...
@@ -11,9 +11,10 @@ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, U
11
11
  from homeassistant.helpers import recorder as recorder, restore_state as restore_state
12
12
  from homeassistant.helpers.entity_component import async_update_entity as async_update_entity
13
13
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity
14
- from homeassistant.helpers.service import async_extract_config_entry_ids as async_extract_config_entry_ids, async_extract_referenced_entity_ids as async_extract_referenced_entity_ids, async_register_admin_service as async_register_admin_service
14
+ from homeassistant.helpers.service import async_extract_config_entry_ids as async_extract_config_entry_ids, async_register_admin_service as async_register_admin_service
15
15
  from homeassistant.helpers.signal import KEY_HA_STOP as KEY_HA_STOP
16
16
  from homeassistant.helpers.system_info import async_get_system_info as async_get_system_info
17
+ from homeassistant.helpers.target import TargetSelectorData as TargetSelectorData, async_extract_referenced_entity_ids as async_extract_referenced_entity_ids
17
18
  from homeassistant.helpers.template import async_load_custom_templates as async_load_custom_templates
18
19
  from homeassistant.helpers.typing import ConfigType as ConfigType
19
20
  from typing import Any
@@ -1,7 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from collections.abc import Callable as Callable
3
3
  from homeassistant.components import sensor as sensor
4
- from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, CONF_AT as CONF_AT, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_OFFSET as CONF_OFFSET, CONF_PLATFORM as CONF_PLATFORM, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
4
+ from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, CONF_AT as CONF_AT, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_OFFSET as CONF_OFFSET, CONF_PLATFORM as CONF_PLATFORM, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN, WEEKDAYS as WEEKDAYS
5
5
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, HassJob as HassJob, HomeAssistant as HomeAssistant, State as State, callback as callback
6
6
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
7
  from homeassistant.helpers import template as template
@@ -10,6 +10,7 @@ from homeassistant.helpers.trigger import TriggerActionType as TriggerActionType
10
10
  from homeassistant.helpers.typing import ConfigType as ConfigType
11
11
  from typing import Any, NamedTuple
12
12
 
13
+ CONF_WEEKDAY: str
13
14
  _TIME_TRIGGER_ENTITY: Incomplete
14
15
  _TIME_AT_SCHEMA: Incomplete
15
16
  _TIME_TRIGGER_ENTITY_WITH_OFFSET: Incomplete
@@ -1,6 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from aiohttp import ClientSession as ClientSession
3
3
  from ha_silabs_firmware_client import FirmwareManifest
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
5
  from homeassistant.core import HomeAssistant as HomeAssistant
5
6
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
6
7
 
@@ -11,5 +12,5 @@ class FirmwareUpdateCoordinator(DataUpdateCoordinator[FirmwareManifest]):
11
12
  hass: Incomplete
12
13
  session: Incomplete
13
14
  client: Incomplete
14
- def __init__(self, hass: HomeAssistant, session: ClientSession, url: str) -> None: ...
15
+ def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, session: ClientSession, url: str) -> None: ...
15
16
  async def _async_update_data(self) -> FirmwareManifest: ...
@@ -3,7 +3,7 @@ from _typeshed import Incomplete
3
3
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
- from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
6
+ from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
7
7
  from pyHomee import Homee
8
8
 
9
9
  _LOGGER: Incomplete
@@ -1,5 +1,6 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
+ from collections.abc import Mapping
3
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
5
6
  from pyHomee import Homee
@@ -11,5 +12,9 @@ AUTH_SCHEMA: Incomplete
11
12
  class HomeeConfigFlow(ConfigFlow, domain=DOMAIN):
12
13
  VERSION: int
13
14
  homee: Homee
15
+ _reauth_host: str
16
+ _reauth_username: str
14
17
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
18
+ async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
19
+ async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
15
20
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -24,8 +24,9 @@ from homeassistant.helpers import device_registry as dr, entity_registry as er,
24
24
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
25
25
  from homeassistant.helpers.entityfilter import BASE_FILTER_SCHEMA as BASE_FILTER_SCHEMA, EntityFilter as EntityFilter, FILTER_SCHEMA as FILTER_SCHEMA
26
26
  from homeassistant.helpers.reload import async_integration_yaml_config as async_integration_yaml_config
27
- from homeassistant.helpers.service import async_extract_referenced_entity_ids as async_extract_referenced_entity_ids, async_register_admin_service as async_register_admin_service
27
+ from homeassistant.helpers.service import async_register_admin_service as async_register_admin_service
28
28
  from homeassistant.helpers.start import async_at_started as async_at_started
29
+ from homeassistant.helpers.target import TargetSelectorData as TargetSelectorData, async_extract_referenced_entity_ids as async_extract_referenced_entity_ids
29
30
  from homeassistant.helpers.typing import ConfigType as ConfigType
30
31
  from homeassistant.loader import IntegrationNotFound as IntegrationNotFound, async_get_integration as async_get_integration
31
32
  from homeassistant.util.async_ import create_eager_task as create_eager_task
@@ -25,7 +25,7 @@ from homeassistant.components.network import async_get_source_ip as async_get_so
25
25
  from homeassistant.const import EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, SERVER_PORT as SERVER_PORT
26
26
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
27
27
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
28
- from homeassistant.helpers import frame as frame, storage as storage
28
+ from homeassistant.helpers import storage as storage
29
29
  from homeassistant.helpers.http import HomeAssistantView as HomeAssistantView, KEY_ALLOW_CONFIGURED_CORS as KEY_ALLOW_CONFIGURED_CORS, KEY_AUTHENTICATED as KEY_AUTHENTICATED, KEY_HASS as KEY_HASS, current_request as current_request
30
30
  from homeassistant.helpers.importlib import async_import_module as async_import_module
31
31
  from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError, get_url as get_url
@@ -131,7 +131,6 @@ class HomeAssistantHTTP:
131
131
  async def async_register_static_paths(self, configs: Collection[StaticPathConfig]) -> None: ...
132
132
  @callback
133
133
  def _async_register_static_paths(self, configs: Collection[StaticPathConfig], resources: dict[str, CachingStaticResource | web.StaticResource | None]) -> None: ...
134
- def register_static_path(self, url_path: str, path: str, cache_headers: bool = True) -> None: ...
135
134
  def _create_ssl_context(self) -> ssl.SSLContext | None: ...
136
135
  def _create_emergency_ssl_context(self) -> ssl.SSLContext: ...
137
136
  async def start(self) -> None: ...
@@ -1,4 +1,4 @@
1
- from .const import ADMIN_SERVICES as ADMIN_SERVICES, ALL_KEYS as ALL_KEYS, ATTR_CONFIG_ENTRY_ID as ATTR_CONFIG_ENTRY_ID, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_UNAUTHENTICATED_MODE as CONF_UNAUTHENTICATED_MODE, CONNECTION_TIMEOUT as CONNECTION_TIMEOUT, DEFAULT_DEVICE_NAME as DEFAULT_DEVICE_NAME, DEFAULT_MANUFACTURER as DEFAULT_MANUFACTURER, DEFAULT_NOTIFY_SERVICE_NAME as DEFAULT_NOTIFY_SERVICE_NAME, DOMAIN as DOMAIN, KEY_DEVICE_BASIC_INFORMATION as KEY_DEVICE_BASIC_INFORMATION, KEY_DEVICE_INFORMATION as KEY_DEVICE_INFORMATION, KEY_DEVICE_SIGNAL as KEY_DEVICE_SIGNAL, KEY_DIALUP_MOBILE_DATASWITCH as KEY_DIALUP_MOBILE_DATASWITCH, KEY_LAN_HOST_INFO as KEY_LAN_HOST_INFO, KEY_MONITORING_CHECK_NOTIFICATIONS as KEY_MONITORING_CHECK_NOTIFICATIONS, KEY_MONITORING_MONTH_STATISTICS as KEY_MONITORING_MONTH_STATISTICS, KEY_MONITORING_STATUS as KEY_MONITORING_STATUS, KEY_MONITORING_TRAFFIC_STATISTICS as KEY_MONITORING_TRAFFIC_STATISTICS, KEY_NET_CURRENT_PLMN as KEY_NET_CURRENT_PLMN, KEY_NET_NET_MODE as KEY_NET_NET_MODE, KEY_SMS_SMS_COUNT as KEY_SMS_SMS_COUNT, KEY_WLAN_HOST_LIST as KEY_WLAN_HOST_LIST, KEY_WLAN_WIFI_FEATURE_SWITCH as KEY_WLAN_WIFI_FEATURE_SWITCH, KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH as KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH, NOTIFY_SUPPRESS_TIMEOUT as NOTIFY_SUPPRESS_TIMEOUT, SERVICE_RESUME_INTEGRATION as SERVICE_RESUME_INTEGRATION, SERVICE_SUSPEND_INTEGRATION as SERVICE_SUSPEND_INTEGRATION, UPDATE_SIGNAL as UPDATE_SIGNAL
1
+ from .const import ADMIN_SERVICES as ADMIN_SERVICES, ALL_KEYS as ALL_KEYS, ATTR_CONFIG_ENTRY_ID as ATTR_CONFIG_ENTRY_ID, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_UNAUTHENTICATED_MODE as CONF_UNAUTHENTICATED_MODE, CONF_UPNP_UDN as CONF_UPNP_UDN, CONNECTION_TIMEOUT as CONNECTION_TIMEOUT, DEFAULT_DEVICE_NAME as DEFAULT_DEVICE_NAME, DEFAULT_MANUFACTURER as DEFAULT_MANUFACTURER, DEFAULT_NOTIFY_SERVICE_NAME as DEFAULT_NOTIFY_SERVICE_NAME, DOMAIN as DOMAIN, KEY_DEVICE_BASIC_INFORMATION as KEY_DEVICE_BASIC_INFORMATION, KEY_DEVICE_INFORMATION as KEY_DEVICE_INFORMATION, KEY_DEVICE_SIGNAL as KEY_DEVICE_SIGNAL, KEY_DIALUP_MOBILE_DATASWITCH as KEY_DIALUP_MOBILE_DATASWITCH, KEY_LAN_HOST_INFO as KEY_LAN_HOST_INFO, KEY_MONITORING_CHECK_NOTIFICATIONS as KEY_MONITORING_CHECK_NOTIFICATIONS, KEY_MONITORING_MONTH_STATISTICS as KEY_MONITORING_MONTH_STATISTICS, KEY_MONITORING_STATUS as KEY_MONITORING_STATUS, KEY_MONITORING_TRAFFIC_STATISTICS as KEY_MONITORING_TRAFFIC_STATISTICS, KEY_NET_CURRENT_PLMN as KEY_NET_CURRENT_PLMN, KEY_NET_NET_MODE as KEY_NET_NET_MODE, KEY_SMS_SMS_COUNT as KEY_SMS_SMS_COUNT, KEY_WLAN_HOST_LIST as KEY_WLAN_HOST_LIST, KEY_WLAN_WIFI_FEATURE_SWITCH as KEY_WLAN_WIFI_FEATURE_SWITCH, KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH as KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH, SERVICE_RESUME_INTEGRATION as SERVICE_RESUME_INTEGRATION, SERVICE_SUSPEND_INTEGRATION as SERVICE_SUSPEND_INTEGRATION, UPDATE_SIGNAL as UPDATE_SIGNAL
2
2
  from .utils import get_device_macs as get_device_macs, non_verifying_requests_session as non_verifying_requests_session
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable
@@ -34,7 +34,6 @@ class Router:
34
34
  inflight_gets: set[str] = field(default_factory=set, init=False)
35
35
  client: Client = field(init=False)
36
36
  suspended: bool = field(default=False, init=False)
37
- notify_last_attempt: float = field(default=-1, init=False)
38
37
  def __post_init__(self) -> None: ...
39
38
  @property
40
39
  def device_name(self) -> str: ...