homeassistant-stubs 2024.5.5__py3-none-any.whl → 2024.6.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.
Files changed (954) hide show
  1. homeassistant-stubs/auth/__init__.pyi +1 -2
  2. homeassistant-stubs/auth/auth_store.pyi +3 -0
  3. homeassistant-stubs/auth/mfa_modules/__init__.pyi +2 -1
  4. homeassistant-stubs/auth/providers/__init__.pyi +2 -1
  5. homeassistant-stubs/block_async_io.pyi +2 -0
  6. homeassistant-stubs/bootstrap.pyi +6 -4
  7. homeassistant-stubs/components/abode/__init__.pyi +3 -37
  8. homeassistant-stubs/components/abode/alarm_control_panel.pyi +2 -1
  9. homeassistant-stubs/components/abode/binary_sensor.pyi +2 -1
  10. homeassistant-stubs/components/abode/camera.pyi +2 -1
  11. homeassistant-stubs/components/abode/cover.pyi +2 -1
  12. homeassistant-stubs/components/abode/entity.pyi +39 -0
  13. homeassistant-stubs/components/abode/light.pyi +2 -1
  14. homeassistant-stubs/components/abode/lock.pyi +2 -1
  15. homeassistant-stubs/components/abode/sensor.pyi +2 -1
  16. homeassistant-stubs/components/abode/switch.pyi +2 -1
  17. homeassistant-stubs/components/accuweather/__init__.pyi +3 -3
  18. homeassistant-stubs/components/accuweather/diagnostics.pyi +2 -4
  19. homeassistant-stubs/components/accuweather/sensor.pyi +3 -4
  20. homeassistant-stubs/components/accuweather/system_health.pyi +1 -0
  21. homeassistant-stubs/components/accuweather/weather.pyi +4 -6
  22. homeassistant-stubs/components/acmeda/__init__.pyi +3 -3
  23. homeassistant-stubs/components/acmeda/cover.pyi +3 -4
  24. homeassistant-stubs/components/acmeda/helpers.pyi +2 -1
  25. homeassistant-stubs/components/acmeda/sensor.pyi +3 -4
  26. homeassistant-stubs/components/adguard/__init__.pyi +4 -3
  27. homeassistant-stubs/components/adguard/entity.pyi +3 -3
  28. homeassistant-stubs/components/adguard/sensor.pyi +3 -4
  29. homeassistant-stubs/components/adguard/switch.pyi +3 -4
  30. homeassistant-stubs/components/aftership/__init__.pyi +3 -2
  31. homeassistant-stubs/components/aftership/sensor.pyi +2 -2
  32. homeassistant-stubs/components/air_quality/__init__.pyi +1 -1
  33. homeassistant-stubs/components/air_quality/const.pyi +3 -0
  34. homeassistant-stubs/components/air_quality/group.pyi +1 -0
  35. homeassistant-stubs/components/airgradient/__init__.pyi +11 -0
  36. homeassistant-stubs/components/airgradient/config_flow.pyi +18 -0
  37. homeassistant-stubs/components/airgradient/const.pyi +4 -0
  38. homeassistant-stubs/components/airgradient/coordinator.pyi +24 -0
  39. homeassistant-stubs/components/airgradient/entity.pyi +10 -0
  40. homeassistant-stubs/components/airgradient/select.pyi +37 -0
  41. homeassistant-stubs/components/airgradient/sensor.pyi +30 -0
  42. homeassistant-stubs/components/airly/__init__.pyi +3 -2
  43. homeassistant-stubs/components/airly/coordinator.pyi +1 -1
  44. homeassistant-stubs/components/airly/diagnostics.pyi +2 -4
  45. homeassistant-stubs/components/airly/sensor.pyi +2 -3
  46. homeassistant-stubs/components/airly/system_health.pyi +1 -0
  47. homeassistant-stubs/components/airnow/__init__.pyi +3 -2
  48. homeassistant-stubs/components/airnow/const.pyi +1 -0
  49. homeassistant-stubs/components/airnow/diagnostics.pyi +2 -4
  50. homeassistant-stubs/components/airnow/sensor.pyi +3 -4
  51. homeassistant-stubs/components/airq/__init__.pyi +5 -3
  52. homeassistant-stubs/components/airq/config_flow.pyi +8 -2
  53. homeassistant-stubs/components/airq/const.pyi +2 -0
  54. homeassistant-stubs/components/airq/coordinator.pyi +3 -1
  55. homeassistant-stubs/components/airq/sensor.pyi +3 -4
  56. homeassistant-stubs/components/airthings/__init__.pyi +3 -2
  57. homeassistant-stubs/components/airthings/sensor.pyi +2 -3
  58. homeassistant-stubs/components/airthings_ble/__init__.pyi +5 -3
  59. homeassistant-stubs/components/airthings_ble/sensor.pyi +6 -6
  60. homeassistant-stubs/components/airtouch5/__init__.pyi +4 -2
  61. homeassistant-stubs/components/airtouch5/climate.pyi +2 -2
  62. homeassistant-stubs/components/airvisual_pro/__init__.pyi +3 -2
  63. homeassistant-stubs/components/airvisual_pro/diagnostics.pyi +2 -4
  64. homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -4
  65. homeassistant-stubs/components/airzone_cloud/climate.pyi +6 -9
  66. homeassistant-stubs/components/aladdin_connect/__init__.pyi +10 -8
  67. homeassistant-stubs/components/aladdin_connect/api.pyi +12 -0
  68. homeassistant-stubs/components/aladdin_connect/application_credentials.pyi +5 -0
  69. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +14 -19
  70. homeassistant-stubs/components/aladdin_connect/const.pyi +2 -10
  71. homeassistant-stubs/components/aladdin_connect/coordinator.pyi +15 -0
  72. homeassistant-stubs/components/aladdin_connect/cover.pyi +11 -28
  73. homeassistant-stubs/components/aladdin_connect/entity.pyi +12 -0
  74. homeassistant-stubs/components/aladdin_connect/sensor.pyi +9 -16
  75. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +15 -1
  76. homeassistant-stubs/components/alarm_control_panel/group.pyi +2 -1
  77. homeassistant-stubs/components/ambient_station/__init__.pyi +3 -2
  78. homeassistant-stubs/components/ambient_station/binary_sensor.pyi +3 -3
  79. homeassistant-stubs/components/ambient_station/diagnostics.pyi +3 -4
  80. homeassistant-stubs/components/ambient_station/sensor.pyi +3 -4
  81. homeassistant-stubs/components/analytics_insights/__init__.pyi +5 -4
  82. homeassistant-stubs/components/analytics_insights/coordinator.pyi +2 -2
  83. homeassistant-stubs/components/analytics_insights/sensor.pyi +2 -3
  84. homeassistant-stubs/components/androidtv/__init__.pyi +12 -4
  85. homeassistant-stubs/components/androidtv/const.pyi +0 -2
  86. homeassistant-stubs/components/androidtv/diagnostics.pyi +3 -3
  87. homeassistant-stubs/components/androidtv/entity.pyi +3 -9
  88. homeassistant-stubs/components/androidtv/media_player.pyi +4 -4
  89. homeassistant-stubs/components/androidtv_remote/__init__.pyi +4 -4
  90. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +1 -0
  91. homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +2 -4
  92. homeassistant-stubs/components/androidtv_remote/media_player.pyi +3 -4
  93. homeassistant-stubs/components/androidtv_remote/remote.pyi +2 -4
  94. homeassistant-stubs/components/anova/__init__.pyi +3 -2
  95. homeassistant-stubs/components/anova/config_flow.pyi +0 -1
  96. homeassistant-stubs/components/anova/coordinator.pyi +7 -6
  97. homeassistant-stubs/components/anova/entity.pyi +2 -0
  98. homeassistant-stubs/components/anova/models.pyi +3 -3
  99. homeassistant-stubs/components/anova/sensor.pyi +7 -9
  100. homeassistant-stubs/components/apple_tv/__init__.pyi +2 -1
  101. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -4
  102. homeassistant-stubs/components/apple_tv/remote.pyi +2 -4
  103. homeassistant-stubs/components/aprs/device_tracker.pyi +1 -0
  104. homeassistant-stubs/components/apsystems/__init__.pyi +10 -0
  105. homeassistant-stubs/components/{poolsense → apsystems}/config_flow.pyi +4 -5
  106. homeassistant-stubs/components/apsystems/const.pyi +4 -0
  107. homeassistant-stubs/components/apsystems/coordinator.pyi +10 -0
  108. homeassistant-stubs/components/apsystems/sensor.pyi +31 -0
  109. homeassistant-stubs/components/aquostv/media_player.pyi +1 -3
  110. homeassistant-stubs/components/aranet/const.pyi +1 -0
  111. homeassistant-stubs/components/aranet/sensor.pyi +8 -6
  112. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -3
  113. homeassistant-stubs/components/asuswrt/__init__.pyi +4 -4
  114. homeassistant-stubs/components/asuswrt/bridge.pyi +3 -4
  115. homeassistant-stubs/components/asuswrt/const.pyi +0 -1
  116. homeassistant-stubs/components/asuswrt/device_tracker.pyi +2 -3
  117. homeassistant-stubs/components/asuswrt/diagnostics.pyi +2 -4
  118. homeassistant-stubs/components/asuswrt/router.pyi +2 -1
  119. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -3
  120. homeassistant-stubs/components/auth/__init__.pyi +2 -7
  121. homeassistant-stubs/components/axis/__init__.pyi +2 -1
  122. homeassistant-stubs/components/axis/binary_sensor.pyi +2 -2
  123. homeassistant-stubs/components/axis/camera.pyi +2 -2
  124. homeassistant-stubs/components/axis/config_flow.pyi +2 -0
  125. homeassistant-stubs/components/axis/diagnostics.pyi +2 -3
  126. homeassistant-stubs/components/axis/hub/hub.pyi +3 -5
  127. homeassistant-stubs/components/axis/light.pyi +2 -2
  128. homeassistant-stubs/components/axis/switch.pyi +2 -2
  129. homeassistant-stubs/components/baf/__init__.pyi +6 -5
  130. homeassistant-stubs/components/baf/binary_sensor.pyi +2 -4
  131. homeassistant-stubs/components/baf/climate.pyi +2 -4
  132. homeassistant-stubs/components/baf/fan.pyi +3 -4
  133. homeassistant-stubs/components/baf/light.pyi +2 -4
  134. homeassistant-stubs/components/baf/models.pyi +0 -8
  135. homeassistant-stubs/components/baf/number.pyi +3 -4
  136. homeassistant-stubs/components/baf/sensor.pyi +2 -4
  137. homeassistant-stubs/components/baf/switch.pyi +2 -4
  138. homeassistant-stubs/components/bang_olufsen/entity.pyi +2 -1
  139. homeassistant-stubs/components/bang_olufsen/media_player.pyi +7 -7
  140. homeassistant-stubs/components/blue_current/sensor.pyi +7 -1
  141. homeassistant-stubs/components/blueprint/const.pyi +1 -0
  142. homeassistant-stubs/components/blueprint/schemas.pyi +4 -2
  143. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +2 -3
  144. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +4 -5
  145. homeassistant-stubs/components/bluetooth/api.pyi +1 -0
  146. homeassistant-stubs/components/bluetooth/config_flow.pyi +0 -1
  147. homeassistant-stubs/components/bluetooth/match.pyi +2 -3
  148. homeassistant-stubs/components/bluetooth/models.pyi +0 -2
  149. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +2 -0
  150. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +15 -17
  151. homeassistant-stubs/components/bluetooth/update_coordinator.pyi +0 -2
  152. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +1 -0
  153. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +3 -10
  154. homeassistant-stubs/components/bond/__init__.pyi +4 -3
  155. homeassistant-stubs/components/bond/button.pyi +2 -4
  156. homeassistant-stubs/components/bond/cover.pyi +2 -4
  157. homeassistant-stubs/components/bond/diagnostics.pyi +2 -4
  158. homeassistant-stubs/components/bond/fan.pyi +3 -4
  159. homeassistant-stubs/components/bond/light.pyi +3 -4
  160. homeassistant-stubs/components/bond/switch.pyi +3 -4
  161. homeassistant-stubs/components/braviatv/__init__.pyi +4 -4
  162. homeassistant-stubs/components/braviatv/button.pyi +2 -3
  163. homeassistant-stubs/components/braviatv/coordinator.pyi +2 -4
  164. homeassistant-stubs/components/braviatv/diagnostics.pyi +2 -4
  165. homeassistant-stubs/components/braviatv/media_player.pyi +3 -3
  166. homeassistant-stubs/components/braviatv/remote.pyi +2 -3
  167. homeassistant-stubs/components/brother/__init__.pyi +5 -13
  168. homeassistant-stubs/components/brother/config_flow.pyi +1 -1
  169. homeassistant-stubs/components/brother/const.pyi +1 -2
  170. homeassistant-stubs/components/brother/coordinator.pyi +12 -0
  171. homeassistant-stubs/components/brother/diagnostics.pyi +2 -4
  172. homeassistant-stubs/components/brother/sensor.pyi +3 -4
  173. homeassistant-stubs/components/bthome/__init__.pyi +1 -1
  174. homeassistant-stubs/components/bthome/binary_sensor.pyi +2 -2
  175. homeassistant-stubs/components/bthome/coordinator.pyi +4 -5
  176. homeassistant-stubs/components/bthome/logbook.pyi +0 -1
  177. homeassistant-stubs/components/bthome/sensor.pyi +2 -2
  178. homeassistant-stubs/components/canary/alarm_control_panel.pyi +1 -0
  179. homeassistant-stubs/components/cert_expiry/__init__.pyi +2 -2
  180. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -3
  181. homeassistant-stubs/components/climate/group.pyi +2 -2
  182. homeassistant-stubs/components/climate/intent.pyi +2 -0
  183. homeassistant-stubs/components/cloud/__init__.pyi +3 -6
  184. homeassistant-stubs/components/cloud/const.pyi +0 -1
  185. homeassistant-stubs/components/cloud/http_api.pyi +4 -7
  186. homeassistant-stubs/components/cloud/prefs.pyi +3 -5
  187. homeassistant-stubs/components/co2signal/__init__.pyi +3 -2
  188. homeassistant-stubs/components/co2signal/diagnostics.pyi +2 -4
  189. homeassistant-stubs/components/co2signal/sensor.pyi +2 -2
  190. homeassistant-stubs/components/config/area_registry.pyi +0 -2
  191. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  192. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  193. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  194. homeassistant-stubs/components/config/view.pyi +2 -4
  195. homeassistant-stubs/components/counter/__init__.pyi +1 -2
  196. homeassistant-stubs/components/cover/__init__.pyi +2 -4
  197. homeassistant-stubs/components/cover/const.pyi +1 -0
  198. homeassistant-stubs/components/cover/group.pyi +1 -0
  199. homeassistant-stubs/components/deconz/__init__.pyi +6 -1
  200. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -14
  201. homeassistant-stubs/components/deconz/deconz_device.pyi +2 -6
  202. homeassistant-stubs/components/deconz/device_trigger.pyi +2 -1
  203. homeassistant-stubs/components/deconz/light.pyi +1 -2
  204. homeassistant-stubs/components/deconz/number.pyi +4 -8
  205. homeassistant-stubs/components/deconz/sensor.pyi +3 -1
  206. homeassistant-stubs/components/deconz/services.pyi +0 -2
  207. homeassistant-stubs/components/demo/alarm_control_panel.pyi +3 -0
  208. homeassistant-stubs/components/demo/lock.pyi +5 -1
  209. homeassistant-stubs/components/demo/notify.pyi +3 -2
  210. homeassistant-stubs/components/device_automation/__init__.pyi +2 -2
  211. homeassistant-stubs/components/device_tracker/group.pyi +1 -0
  212. homeassistant-stubs/components/devolo_home_control/__init__.pyi +6 -3
  213. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +2 -3
  214. homeassistant-stubs/components/devolo_home_control/climate.pyi +2 -3
  215. homeassistant-stubs/components/devolo_home_control/cover.pyi +2 -3
  216. homeassistant-stubs/components/devolo_home_control/diagnostics.pyi +2 -4
  217. homeassistant-stubs/components/devolo_home_control/light.pyi +2 -3
  218. homeassistant-stubs/components/devolo_home_control/sensor.pyi +2 -3
  219. homeassistant-stubs/components/devolo_home_control/siren.pyi +2 -3
  220. homeassistant-stubs/components/devolo_home_control/switch.pyi +2 -3
  221. homeassistant-stubs/components/devolo_home_network/__init__.pyi +11 -2
  222. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +4 -5
  223. homeassistant-stubs/components/devolo_home_network/button.pyi +3 -3
  224. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
  225. homeassistant-stubs/components/devolo_home_network/diagnostics.pyi +2 -4
  226. homeassistant-stubs/components/devolo_home_network/entity.pyi +4 -8
  227. homeassistant-stubs/components/devolo_home_network/image.pyi +4 -5
  228. homeassistant-stubs/components/devolo_home_network/sensor.pyi +5 -6
  229. homeassistant-stubs/components/devolo_home_network/switch.pyi +3 -3
  230. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
  231. homeassistant-stubs/components/dhcp/__init__.pyi +1 -1
  232. homeassistant-stubs/components/diagnostics/util.pyi +1 -3
  233. homeassistant-stubs/components/discovergy/__init__.pyi +2 -2
  234. homeassistant-stubs/components/discovergy/diagnostics.pyi +2 -4
  235. homeassistant-stubs/components/discovergy/sensor.pyi +2 -2
  236. homeassistant-stubs/components/dlna_dmr/media_player.pyi +2 -5
  237. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -4
  238. homeassistant-stubs/components/dnsip/sensor.pyi +2 -0
  239. homeassistant-stubs/components/duotecno/entity.pyi +2 -4
  240. homeassistant-stubs/components/ecovacs/__init__.pyi +3 -2
  241. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +2 -4
  242. homeassistant-stubs/components/ecovacs/button.pyi +3 -4
  243. homeassistant-stubs/components/ecovacs/controller.pyi +4 -1
  244. homeassistant-stubs/components/ecovacs/diagnostics.pyi +3 -4
  245. homeassistant-stubs/components/ecovacs/event.pyi +2 -4
  246. homeassistant-stubs/components/ecovacs/image.pyi +2 -4
  247. homeassistant-stubs/components/ecovacs/lawn_mower.pyi +2 -4
  248. homeassistant-stubs/components/ecovacs/number.pyi +2 -4
  249. homeassistant-stubs/components/ecovacs/select.pyi +2 -4
  250. homeassistant-stubs/components/ecovacs/sensor.pyi +3 -4
  251. homeassistant-stubs/components/ecovacs/switch.pyi +2 -4
  252. homeassistant-stubs/components/ecovacs/vacuum.pyi +2 -3
  253. homeassistant-stubs/components/elgato/__init__.pyi +3 -3
  254. homeassistant-stubs/components/elgato/button.pyi +2 -3
  255. homeassistant-stubs/components/elgato/diagnostics.pyi +2 -4
  256. homeassistant-stubs/components/elgato/light.pyi +3 -3
  257. homeassistant-stubs/components/elgato/sensor.pyi +2 -3
  258. homeassistant-stubs/components/elgato/switch.pyi +2 -3
  259. homeassistant-stubs/components/elkm1/__init__.pyi +3 -2
  260. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +3 -4
  261. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -5
  262. homeassistant-stubs/components/elkm1/climate.pyi +2 -5
  263. homeassistant-stubs/components/elkm1/light.pyi +2 -4
  264. homeassistant-stubs/components/elkm1/scene.pyi +2 -5
  265. homeassistant-stubs/components/elkm1/sensor.pyi +3 -5
  266. homeassistant-stubs/components/elkm1/switch.pyi +2 -5
  267. homeassistant-stubs/components/energy/validate.pyi +3 -3
  268. homeassistant-stubs/components/energy/websocket_api.pyi +3 -3
  269. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +1 -0
  270. homeassistant-stubs/components/eq3btsmart/climate.pyi +1 -1
  271. homeassistant-stubs/components/esphome/config_flow.pyi +3 -0
  272. homeassistant-stubs/components/esphome/coordinator.pyi +16 -0
  273. homeassistant-stubs/components/esphome/dashboard.pyi +3 -14
  274. homeassistant-stubs/components/esphome/enum_mapper.pyi +3 -6
  275. homeassistant-stubs/components/esphome/manager.pyi +2 -1
  276. homeassistant-stubs/components/esphome/media_player.pyi +1 -1
  277. homeassistant-stubs/components/esphome/update.pyi +4 -3
  278. homeassistant-stubs/components/esphome/voice_assistant.pyi +5 -1
  279. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +2 -13
  280. homeassistant-stubs/components/evil_genius_labs/coordinator.pyi +17 -0
  281. homeassistant-stubs/components/evil_genius_labs/diagnostics.pyi +1 -1
  282. homeassistant-stubs/components/evil_genius_labs/light.pyi +2 -1
  283. homeassistant-stubs/components/evil_genius_labs/util.pyi +2 -6
  284. homeassistant-stubs/components/evohome/__init__.pyi +1 -1
  285. homeassistant-stubs/components/feedreader/__init__.pyi +4 -46
  286. homeassistant-stubs/components/feedreader/const.pyi +1 -0
  287. homeassistant-stubs/components/feedreader/coordinator.pyi +39 -0
  288. homeassistant-stubs/components/filesize/__init__.pyi +3 -1
  289. homeassistant-stubs/components/filesize/coordinator.pyi +1 -1
  290. homeassistant-stubs/components/filesize/sensor.pyi +4 -4
  291. homeassistant-stubs/components/fitbit/api.pyi +1 -2
  292. homeassistant-stubs/components/fitbit/coordinator.pyi +1 -1
  293. homeassistant-stubs/components/forecast_solar/__init__.pyi +3 -2
  294. homeassistant-stubs/components/forecast_solar/diagnostics.pyi +2 -5
  295. homeassistant-stubs/components/forecast_solar/energy.pyi +1 -1
  296. homeassistant-stubs/components/forecast_solar/sensor.pyi +2 -2
  297. homeassistant-stubs/components/fritz/__init__.pyi +1 -1
  298. homeassistant-stubs/components/fritz/binary_sensor.pyi +4 -3
  299. homeassistant-stubs/components/fritz/button.pyi +4 -3
  300. homeassistant-stubs/components/fritz/const.pyi +0 -3
  301. homeassistant-stubs/components/fritz/{common.pyi → coordinator.pyi} +7 -53
  302. homeassistant-stubs/components/fritz/device_tracker.pyi +2 -1
  303. homeassistant-stubs/components/fritz/diagnostics.pyi +1 -1
  304. homeassistant-stubs/components/fritz/entity.pyi +50 -0
  305. homeassistant-stubs/components/fritz/image.pyi +2 -1
  306. homeassistant-stubs/components/fritz/sensor.pyi +4 -3
  307. homeassistant-stubs/components/fritz/services.pyi +2 -2
  308. homeassistant-stubs/components/fritz/switch.pyi +2 -1
  309. homeassistant-stubs/components/fritz/update.pyi +4 -3
  310. homeassistant-stubs/components/fritzbox/__init__.pyi +6 -8
  311. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +2 -3
  312. homeassistant-stubs/components/fritzbox/button.pyi +2 -3
  313. homeassistant-stubs/components/fritzbox/climate.pyi +2 -3
  314. homeassistant-stubs/components/fritzbox/const.pyi +0 -2
  315. homeassistant-stubs/components/fritzbox/coordinator.pyi +10 -7
  316. homeassistant-stubs/components/fritzbox/cover.pyi +2 -3
  317. homeassistant-stubs/components/fritzbox/diagnostics.pyi +2 -4
  318. homeassistant-stubs/components/fritzbox/light.pyi +2 -3
  319. homeassistant-stubs/components/fritzbox/sensor.pyi +2 -3
  320. homeassistant-stubs/components/fritzbox/switch.pyi +2 -3
  321. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +5 -4
  322. homeassistant-stubs/components/fritzbox_callmonitor/const.pyi +0 -2
  323. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +3 -3
  324. homeassistant-stubs/components/fronius/__init__.pyi +4 -6
  325. homeassistant-stubs/components/fronius/coordinator.pyi +1 -3
  326. homeassistant-stubs/components/{aladdin_connect → fronius}/diagnostics.pyi +2 -4
  327. homeassistant-stubs/components/fronius/sensor.pyi +2 -3
  328. homeassistant-stubs/components/gios/__init__.pyi +10 -10
  329. homeassistant-stubs/components/gios/coordinator.pyi +13 -0
  330. homeassistant-stubs/components/gios/diagnostics.pyi +2 -4
  331. homeassistant-stubs/components/gios/sensor.pyi +3 -3
  332. homeassistant-stubs/components/google/calendar.pyi +2 -29
  333. homeassistant-stubs/components/google/coordinator.pyi +38 -0
  334. homeassistant-stubs/components/group/entity.pyi +5 -2
  335. homeassistant-stubs/components/group/lock.pyi +3 -1
  336. homeassistant-stubs/components/group/registry.pyi +12 -6
  337. homeassistant-stubs/components/group/sensor.pyi +2 -0
  338. homeassistant-stubs/components/guardian/coordinator.pyi +1 -1
  339. homeassistant-stubs/components/guardian/util.pyi +1 -3
  340. homeassistant-stubs/components/history_stats/sensor.pyi +0 -2
  341. homeassistant-stubs/components/holiday/calendar.pyi +11 -1
  342. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
  343. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +0 -3
  344. homeassistant-stubs/components/homeassistant_alerts/__init__.pyi +3 -24
  345. homeassistant-stubs/components/homeassistant_alerts/const.pyi +6 -0
  346. homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +26 -0
  347. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +1 -0
  348. homeassistant-stubs/components/homekit/const.pyi +2 -0
  349. homeassistant-stubs/components/homekit/type_sensors.pyi +3 -1
  350. homeassistant-stubs/components/homekit/util.pyi +2 -1
  351. homeassistant-stubs/components/homewizard/helpers.pyi +1 -4
  352. homeassistant-stubs/components/http/__init__.pyi +6 -7
  353. homeassistant-stubs/components/http/auth.pyi +2 -10
  354. homeassistant-stubs/components/http/ban.pyi +1 -3
  355. homeassistant-stubs/components/http/const.pyi +0 -6
  356. homeassistant-stubs/components/http/data_validator.pyi +2 -4
  357. homeassistant-stubs/components/http/decorators.pyi +2 -5
  358. homeassistant-stubs/components/http/web_runner.pyi +1 -1
  359. homeassistant-stubs/components/humidifier/intent.pyi +4 -0
  360. homeassistant-stubs/components/{poolsense → husqvarna_automower}/__init__.pyi +6 -4
  361. homeassistant-stubs/components/husqvarna_automower/api.pyi +11 -0
  362. homeassistant-stubs/components/husqvarna_automower/application_credentials.pyi +5 -0
  363. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +29 -0
  364. homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +23 -0
  365. homeassistant-stubs/components/husqvarna_automower/const.pyi +5 -0
  366. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +20 -0
  367. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +21 -0
  368. homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +17 -0
  369. homeassistant-stubs/components/husqvarna_automower/entity.pyi +20 -0
  370. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +28 -0
  371. homeassistant-stubs/components/husqvarna_automower/number.pyi +67 -0
  372. homeassistant-stubs/components/husqvarna_automower/select.pyi +25 -0
  373. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +35 -0
  374. homeassistant-stubs/components/husqvarna_automower/switch.pyi +49 -0
  375. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +14 -4
  376. homeassistant-stubs/components/hydrawise/coordinator.pyi +8 -5
  377. homeassistant-stubs/components/hydrawise/entity.pyi +10 -3
  378. homeassistant-stubs/components/hydrawise/sensor.pyi +24 -7
  379. homeassistant-stubs/components/hydrawise/switch.pyi +12 -2
  380. homeassistant-stubs/components/ibeacon/__init__.pyi +5 -3
  381. homeassistant-stubs/components/ibeacon/device_tracker.pyi +3 -3
  382. homeassistant-stubs/components/ibeacon/sensor.pyi +3 -3
  383. homeassistant-stubs/components/idasen_desk/__init__.pyi +2 -12
  384. homeassistant-stubs/components/idasen_desk/coordinator.pyi +19 -0
  385. homeassistant-stubs/components/imgw_pib/__init__.pyi +21 -0
  386. homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +28 -0
  387. homeassistant-stubs/components/imgw_pib/config_flow.pyi +12 -0
  388. homeassistant-stubs/components/imgw_pib/const.pyi +6 -0
  389. homeassistant-stubs/components/imgw_pib/coordinator.pyi +15 -0
  390. homeassistant-stubs/components/imgw_pib/diagnostics.pyi +5 -0
  391. homeassistant-stubs/components/imgw_pib/entity.pyi +10 -0
  392. homeassistant-stubs/components/imgw_pib/sensor.pyi +30 -0
  393. homeassistant-stubs/components/integration/config_flow.pyi +11 -4
  394. homeassistant-stubs/components/integration/sensor.pyi +2 -1
  395. homeassistant-stubs/components/intent/__init__.pyi +8 -16
  396. homeassistant-stubs/components/intent/const.pyi +3 -0
  397. homeassistant-stubs/components/intent/timers.pyi +133 -0
  398. homeassistant-stubs/components/intent_script/__init__.pyi +4 -1
  399. homeassistant-stubs/components/ipp/__init__.pyi +3 -2
  400. homeassistant-stubs/components/ipp/diagnostics.pyi +2 -4
  401. homeassistant-stubs/components/ipp/sensor.pyi +3 -4
  402. homeassistant-stubs/components/jellyfin/config_flow.pyi +11 -2
  403. homeassistant-stubs/components/jellyfin/const.pyi +2 -0
  404. homeassistant-stubs/components/jellyfin/media_source.pyi +4 -2
  405. homeassistant-stubs/components/jewish_calendar/__init__.pyi +11 -10
  406. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +7 -5
  407. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +25 -0
  408. homeassistant-stubs/components/jewish_calendar/const.pyi +9 -0
  409. homeassistant-stubs/components/jewish_calendar/sensor.pyi +7 -7
  410. homeassistant-stubs/components/knx/climate.pyi +3 -0
  411. homeassistant-stubs/components/knx/const.pyi +0 -1
  412. homeassistant-stubs/components/knx/device_trigger.pyi +6 -8
  413. homeassistant-stubs/components/knx/expose.pyi +4 -1
  414. homeassistant-stubs/components/knx/notify.pyi +2 -3
  415. homeassistant-stubs/components/knx/schema.pyi +1 -1
  416. homeassistant-stubs/components/knx/telegrams.pyi +14 -7
  417. homeassistant-stubs/components/knx/trigger.pyi +27 -0
  418. homeassistant-stubs/components/lamarzocco/coordinator.pyi +1 -2
  419. homeassistant-stubs/components/lametric/helpers.pyi +1 -4
  420. homeassistant-stubs/components/lcn/helpers.pyi +1 -2
  421. homeassistant-stubs/components/light/intent.pyi +2 -7
  422. homeassistant-stubs/components/linear_garage_door/coordinator.pyi +15 -9
  423. homeassistant-stubs/components/linear_garage_door/cover.pyi +2 -14
  424. homeassistant-stubs/components/linear_garage_door/entity.pyi +17 -0
  425. homeassistant-stubs/components/linear_garage_door/light.pyi +25 -0
  426. homeassistant-stubs/components/local_todo/__init__.pyi +3 -2
  427. homeassistant-stubs/components/local_todo/todo.pyi +3 -3
  428. homeassistant-stubs/components/lock/__init__.pyi +8 -2
  429. homeassistant-stubs/components/lock/const.pyi +1 -0
  430. homeassistant-stubs/components/lock/device_condition.pyi +1 -1
  431. homeassistant-stubs/components/lock/device_trigger.pyi +1 -1
  432. homeassistant-stubs/components/lock/group.pyi +2 -1
  433. homeassistant-stubs/components/lock/reproduce_state.pyi +1 -1
  434. homeassistant-stubs/components/lookin/coordinator.pyi +0 -2
  435. homeassistant-stubs/components/mastodon/notify.pyi +8 -1
  436. homeassistant-stubs/components/matter/api.pyi +1 -2
  437. homeassistant-stubs/components/matter/climate.pyi +3 -2
  438. homeassistant-stubs/components/matter/entity.pyi +1 -9
  439. homeassistant-stubs/components/matter/fan.pyi +44 -0
  440. homeassistant-stubs/components/matter/models.pyi +1 -2
  441. homeassistant-stubs/components/matter/sensor.pyi +2 -0
  442. homeassistant-stubs/components/media_extractor/__init__.pyi +3 -0
  443. homeassistant-stubs/components/media_extractor/config_flow.pyi +8 -0
  444. homeassistant-stubs/components/media_player/__init__.pyi +3 -0
  445. homeassistant-stubs/components/media_player/group.pyi +1 -0
  446. homeassistant-stubs/components/media_player/intent.pyi +27 -1
  447. homeassistant-stubs/components/media_source/__init__.pyi +4 -0
  448. homeassistant-stubs/components/metoffice/weather.pyi +1 -1
  449. homeassistant-stubs/components/mikrotik/__init__.pyi +1 -1
  450. homeassistant-stubs/components/mikrotik/config_flow.pyi +1 -1
  451. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -1
  452. homeassistant-stubs/components/monzo/__init__.pyi +13 -0
  453. homeassistant-stubs/components/monzo/api.pyi +9 -0
  454. homeassistant-stubs/components/monzo/application_credentials.pyi +7 -0
  455. homeassistant-stubs/components/monzo/config_flow.pyi +14 -0
  456. homeassistant-stubs/components/monzo/const.pyi +1 -0
  457. homeassistant-stubs/components/monzo/coordinator.pyi +20 -0
  458. homeassistant-stubs/components/monzo/entity.pyi +17 -0
  459. homeassistant-stubs/components/monzo/sensor.pyi +31 -0
  460. homeassistant-stubs/components/mopeka/sensor.pyi +2 -2
  461. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  462. homeassistant-stubs/components/mqtt/__init__.pyi +10 -10
  463. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +4 -4
  464. homeassistant-stubs/components/mqtt/binary_sensor.pyi +6 -4
  465. homeassistant-stubs/components/mqtt/button.pyi +4 -3
  466. homeassistant-stubs/components/mqtt/camera.pyi +4 -4
  467. homeassistant-stubs/components/mqtt/client.pyi +29 -21
  468. homeassistant-stubs/components/mqtt/climate.pyi +8 -7
  469. homeassistant-stubs/components/mqtt/config_flow.pyi +0 -1
  470. homeassistant-stubs/components/mqtt/const.pyi +14 -4
  471. homeassistant-stubs/components/mqtt/cover.pyi +7 -5
  472. homeassistant-stubs/components/mqtt/debug_info.pyi +4 -9
  473. homeassistant-stubs/components/mqtt/device_tracker.pyi +6 -5
  474. homeassistant-stubs/components/mqtt/device_trigger.pyi +12 -16
  475. homeassistant-stubs/components/mqtt/diagnostics.pyi +1 -1
  476. homeassistant-stubs/components/mqtt/discovery.pyi +14 -9
  477. homeassistant-stubs/components/mqtt/event.pyi +5 -6
  478. homeassistant-stubs/components/mqtt/fan.pyi +9 -5
  479. homeassistant-stubs/components/mqtt/humidifier.pyi +8 -5
  480. homeassistant-stubs/components/mqtt/image.pyi +6 -6
  481. homeassistant-stubs/components/mqtt/lawn_mower.pyi +4 -4
  482. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +15 -5
  483. homeassistant-stubs/components/mqtt/light/schema_json.pyi +4 -4
  484. homeassistant-stubs/components/mqtt/light/schema_template.pyi +4 -4
  485. homeassistant-stubs/components/mqtt/lock.pyi +9 -4
  486. homeassistant-stubs/components/mqtt/mixins.pyi +35 -41
  487. homeassistant-stubs/components/mqtt/models.pyi +8 -6
  488. homeassistant-stubs/components/mqtt/notify.pyi +5 -4
  489. homeassistant-stubs/components/mqtt/number.pyi +4 -4
  490. homeassistant-stubs/components/mqtt/scene.pyi +4 -3
  491. homeassistant-stubs/components/mqtt/schemas.pyi +16 -0
  492. homeassistant-stubs/components/mqtt/select.pyi +4 -4
  493. homeassistant-stubs/components/mqtt/sensor.pyi +9 -7
  494. homeassistant-stubs/components/mqtt/siren.pyi +4 -4
  495. homeassistant-stubs/components/mqtt/subscription.pyi +17 -13
  496. homeassistant-stubs/components/mqtt/switch.pyi +6 -7
  497. homeassistant-stubs/components/mqtt/tag.pyi +7 -5
  498. homeassistant-stubs/components/mqtt/text.pyi +6 -5
  499. homeassistant-stubs/components/mqtt/trigger.pyi +1 -1
  500. homeassistant-stubs/components/mqtt/update.pyi +6 -5
  501. homeassistant-stubs/components/mqtt/util.pyi +5 -4
  502. homeassistant-stubs/components/mqtt/vacuum.pyi +4 -4
  503. homeassistant-stubs/components/mqtt/valve.pyi +5 -5
  504. homeassistant-stubs/components/mqtt/water_heater.pyi +4 -3
  505. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  506. homeassistant-stubs/components/myuplink/application_credentials.pyi +2 -1
  507. homeassistant-stubs/components/myuplink/binary_sensor.pyi +18 -2
  508. homeassistant-stubs/components/myuplink/entity.pyi +5 -0
  509. homeassistant-stubs/components/nam/__init__.pyi +5 -16
  510. homeassistant-stubs/components/nam/button.pyi +2 -4
  511. homeassistant-stubs/components/nam/config_flow.pyi +2 -0
  512. homeassistant-stubs/components/nam/coordinator.pyi +15 -0
  513. homeassistant-stubs/components/nam/diagnostics.pyi +2 -4
  514. homeassistant-stubs/components/nam/sensor.pyi +2 -3
  515. homeassistant-stubs/components/nest/__init__.pyi +2 -2
  516. homeassistant-stubs/components/nest/climate.pyi +2 -2
  517. homeassistant-stubs/components/netatmo/sensor.pyi +1 -1
  518. homeassistant-stubs/components/network/util.pyi +1 -1
  519. homeassistant-stubs/components/nextdns/__init__.pyi +18 -3
  520. homeassistant-stubs/components/nextdns/binary_sensor.pyi +10 -15
  521. homeassistant-stubs/components/nextdns/button.pyi +6 -6
  522. homeassistant-stubs/components/nextdns/diagnostics.pyi +3 -3
  523. homeassistant-stubs/components/nextdns/sensor.pyi +6 -10
  524. homeassistant-stubs/components/nextdns/switch.pyi +11 -15
  525. homeassistant-stubs/components/notify/__init__.pyi +8 -2
  526. homeassistant-stubs/components/notify/repairs.pyi +7 -0
  527. homeassistant-stubs/components/nut/__init__.pyi +11 -2
  528. homeassistant-stubs/components/nut/const.pyi +0 -4
  529. homeassistant-stubs/components/nut/device_action.pyi +4 -3
  530. homeassistant-stubs/components/nut/diagnostics.pyi +3 -4
  531. homeassistant-stubs/components/nut/sensor.pyi +3 -4
  532. homeassistant-stubs/components/onewire/__init__.pyi +5 -4
  533. homeassistant-stubs/components/onewire/binary_sensor.pyi +3 -3
  534. homeassistant-stubs/components/onewire/diagnostics.pyi +2 -4
  535. homeassistant-stubs/components/onewire/sensor.pyi +3 -3
  536. homeassistant-stubs/components/onewire/switch.pyi +3 -3
  537. homeassistant-stubs/components/oralb/sensor.pyi +2 -2
  538. homeassistant-stubs/components/otbr/util.pyi +1 -3
  539. homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -19
  540. homeassistant-stubs/components/p1_monitor/coordinator.pyi +22 -0
  541. homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
  542. homeassistant-stubs/components/p1_monitor/sensor.pyi +1 -1
  543. homeassistant-stubs/components/pi_hole/__init__.pyi +12 -4
  544. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +3 -5
  545. homeassistant-stubs/components/pi_hole/const.pyi +0 -2
  546. homeassistant-stubs/components/pi_hole/diagnostics.pyi +2 -4
  547. homeassistant-stubs/components/pi_hole/sensor.pyi +3 -5
  548. homeassistant-stubs/components/pi_hole/switch.pyi +3 -4
  549. homeassistant-stubs/components/pi_hole/update.pyi +3 -5
  550. homeassistant-stubs/components/ping/__init__.pyi +6 -6
  551. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -2
  552. homeassistant-stubs/components/ping/device_tracker.pyi +2 -2
  553. homeassistant-stubs/components/ping/sensor.pyi +2 -3
  554. homeassistant-stubs/components/plugwise/__init__.pyi +4 -2
  555. homeassistant-stubs/components/plugwise/binary_sensor.pyi +3 -4
  556. homeassistant-stubs/components/plugwise/climate.pyi +3 -3
  557. homeassistant-stubs/components/plugwise/coordinator.pyi +5 -3
  558. homeassistant-stubs/components/plugwise/diagnostics.pyi +2 -4
  559. homeassistant-stubs/components/plugwise/number.pyi +4 -4
  560. homeassistant-stubs/components/plugwise/select.pyi +4 -4
  561. homeassistant-stubs/components/plugwise/sensor.pyi +3 -4
  562. homeassistant-stubs/components/plugwise/switch.pyi +3 -4
  563. homeassistant-stubs/components/plugwise/util.pyi +2 -6
  564. homeassistant-stubs/components/powerwall/sensor.pyi +10 -9
  565. homeassistant-stubs/components/prometheus/__init__.pyi +2 -3
  566. homeassistant-stubs/components/proximity/__init__.pyi +3 -3
  567. homeassistant-stubs/components/proximity/coordinator.pyi +2 -1
  568. homeassistant-stubs/components/proximity/diagnostics.pyi +2 -4
  569. homeassistant-stubs/components/proximity/sensor.pyi +2 -3
  570. homeassistant-stubs/components/prusalink/__init__.pyi +3 -31
  571. homeassistant-stubs/components/prusalink/button.pyi +3 -1
  572. homeassistant-stubs/components/prusalink/camera.pyi +3 -1
  573. homeassistant-stubs/components/prusalink/coordinator.pyi +34 -0
  574. homeassistant-stubs/components/prusalink/sensor.pyi +3 -1
  575. homeassistant-stubs/components/pure_energie/__init__.pyi +3 -16
  576. homeassistant-stubs/components/pure_energie/coordinator.pyi +19 -0
  577. homeassistant-stubs/components/pure_energie/diagnostics.pyi +1 -1
  578. homeassistant-stubs/components/pure_energie/sensor.pyi +1 -1
  579. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -1
  580. homeassistant-stubs/components/rainmachine/coordinator.pyi +22 -0
  581. homeassistant-stubs/components/rainmachine/switch.pyi +8 -6
  582. homeassistant-stubs/components/rainmachine/util.pyi +1 -17
  583. homeassistant-stubs/components/recorder/core.pyi +5 -4
  584. homeassistant-stubs/components/recorder/executor.pyi +3 -2
  585. homeassistant-stubs/components/recorder/pool.pyi +4 -5
  586. homeassistant-stubs/components/recorder/purge.pyi +2 -1
  587. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -4
  588. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +2 -1
  589. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +2 -1
  590. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +2 -1
  591. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +2 -1
  592. homeassistant-stubs/components/recorder/util.pyi +4 -12
  593. homeassistant-stubs/components/renault/__init__.pyi +11 -3
  594. homeassistant-stubs/components/renault/binary_sensor.pyi +2 -4
  595. homeassistant-stubs/components/renault/button.pyi +2 -4
  596. homeassistant-stubs/components/renault/device_tracker.pyi +2 -4
  597. homeassistant-stubs/components/renault/diagnostics.pyi +4 -5
  598. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -4
  599. homeassistant-stubs/components/renault/select.pyi +2 -4
  600. homeassistant-stubs/components/renault/sensor.pyi +2 -4
  601. homeassistant-stubs/components/renault/services.pyi +2 -2
  602. homeassistant-stubs/components/repairs/issue_handler.pyi +0 -1
  603. homeassistant-stubs/components/repairs/websocket_api.pyi +0 -1
  604. homeassistant-stubs/components/rfxtrx/__init__.pyi +1 -2
  605. homeassistant-stubs/components/ring/coordinator.pyi +0 -3
  606. homeassistant-stubs/components/ring/entity.pyi +1 -4
  607. homeassistant-stubs/components/roku/helpers.pyi +0 -3
  608. homeassistant-stubs/components/ruuvitag_ble/sensor.pyi +2 -2
  609. homeassistant-stubs/components/samsungtv/__init__.pyi +5 -3
  610. homeassistant-stubs/components/samsungtv/bridge.pyi +6 -4
  611. homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -0
  612. homeassistant-stubs/components/samsungtv/coordinator.pyi +17 -0
  613. homeassistant-stubs/components/samsungtv/device_trigger.pyi +0 -1
  614. homeassistant-stubs/components/samsungtv/diagnostics.pyi +3 -4
  615. homeassistant-stubs/components/samsungtv/entity.pyi +17 -6
  616. homeassistant-stubs/components/samsungtv/helpers.pyi +2 -0
  617. homeassistant-stubs/components/samsungtv/media_player.pyi +10 -19
  618. homeassistant-stubs/components/samsungtv/remote.pyi +7 -5
  619. homeassistant-stubs/components/scrape/__init__.pyi +2 -1
  620. homeassistant-stubs/components/scrape/sensor.pyi +2 -2
  621. homeassistant-stubs/components/sensibo/__init__.pyi +3 -1
  622. homeassistant-stubs/components/sensibo/binary_sensor.pyi +2 -3
  623. homeassistant-stubs/components/sensibo/button.pyi +2 -3
  624. homeassistant-stubs/components/sensibo/climate.pyi +2 -2
  625. homeassistant-stubs/components/sensibo/coordinator.pyi +3 -2
  626. homeassistant-stubs/components/sensibo/diagnostics.pyi +2 -4
  627. homeassistant-stubs/components/sensibo/entity.pyi +1 -4
  628. homeassistant-stubs/components/sensibo/number.pyi +2 -3
  629. homeassistant-stubs/components/sensibo/select.pyi +2 -2
  630. homeassistant-stubs/components/sensibo/sensor.pyi +2 -3
  631. homeassistant-stubs/components/sensibo/switch.pyi +2 -2
  632. homeassistant-stubs/components/sensibo/update.pyi +2 -3
  633. homeassistant-stubs/components/sensirion_ble/sensor.pyi +2 -2
  634. homeassistant-stubs/components/sensor/__init__.pyi +1 -2
  635. homeassistant-stubs/components/sensor/group.pyi +1 -0
  636. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -4
  637. homeassistant-stubs/components/sfr_box/button.pyi +3 -6
  638. homeassistant-stubs/components/sfr_box/coordinator.pyi +4 -5
  639. homeassistant-stubs/components/sfr_box/sensor.pyi +1 -4
  640. homeassistant-stubs/components/shelly/__init__.pyi +7 -8
  641. homeassistant-stubs/components/shelly/binary_sensor.pyi +2 -2
  642. homeassistant-stubs/components/shelly/button.pyi +4 -7
  643. homeassistant-stubs/components/shelly/climate.pyi +5 -6
  644. homeassistant-stubs/components/shelly/config_flow.pyi +2 -0
  645. homeassistant-stubs/components/shelly/const.pyi +1 -1
  646. homeassistant-stubs/components/shelly/coordinator.pyi +15 -19
  647. homeassistant-stubs/components/shelly/cover.pyi +4 -5
  648. homeassistant-stubs/components/shelly/diagnostics.pyi +2 -3
  649. homeassistant-stubs/components/shelly/entity.pyi +8 -9
  650. homeassistant-stubs/components/shelly/event.pyi +2 -3
  651. homeassistant-stubs/components/shelly/light.pyi +4 -5
  652. homeassistant-stubs/components/shelly/number.pyi +2 -3
  653. homeassistant-stubs/components/shelly/sensor.pyi +2 -3
  654. homeassistant-stubs/components/shelly/switch.pyi +22 -8
  655. homeassistant-stubs/components/shelly/update.pyi +2 -3
  656. homeassistant-stubs/components/shelly/utils.pyi +3 -4
  657. homeassistant-stubs/components/shelly/valve.pyi +3 -4
  658. homeassistant-stubs/components/shopping_list/intent.pyi +4 -0
  659. homeassistant-stubs/components/sleepiq/entity.pyi +1 -2
  660. homeassistant-stubs/components/smhi/weather.pyi +2 -2
  661. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +2 -2
  662. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +4 -3
  663. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +2 -2
  664. homeassistant-stubs/components/ssdp/__init__.pyi +2 -2
  665. homeassistant-stubs/components/sun/__init__.pyi +4 -4
  666. homeassistant-stubs/components/sun/entity.pyi +2 -0
  667. homeassistant-stubs/components/sun/sensor.pyi +2 -3
  668. homeassistant-stubs/components/surepetcare/__init__.pyi +4 -15
  669. homeassistant-stubs/components/surepetcare/binary_sensor.pyi +1 -1
  670. homeassistant-stubs/components/surepetcare/coordinator.pyi +21 -0
  671. homeassistant-stubs/components/surepetcare/entity.pyi +1 -1
  672. homeassistant-stubs/components/surepetcare/lock.pyi +1 -1
  673. homeassistant-stubs/components/surepetcare/sensor.pyi +1 -1
  674. homeassistant-stubs/components/switchbee/entity.pyi +2 -4
  675. homeassistant-stubs/components/switchbee/switch.pyi +1 -4
  676. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  677. homeassistant-stubs/components/switchbot_cloud/climate.pyi +1 -1
  678. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -1
  679. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -2
  680. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +25 -0
  681. homeassistant-stubs/components/switcher_kis/__init__.pyi +7 -26
  682. homeassistant-stubs/components/switcher_kis/button.pyi +8 -7
  683. homeassistant-stubs/components/switcher_kis/climate.pyi +3 -3
  684. homeassistant-stubs/components/switcher_kis/config_flow.pyi +3 -9
  685. homeassistant-stubs/components/switcher_kis/const.pyi +0 -5
  686. homeassistant-stubs/components/switcher_kis/coordinator.pyi +22 -0
  687. homeassistant-stubs/components/switcher_kis/cover.pyi +1 -2
  688. homeassistant-stubs/components/switcher_kis/diagnostics.pyi +2 -3
  689. homeassistant-stubs/components/switcher_kis/sensor.pyi +1 -1
  690. homeassistant-stubs/components/switcher_kis/switch.pyi +1 -1
  691. homeassistant-stubs/components/switcher_kis/utils.pyi +2 -6
  692. homeassistant-stubs/components/synology_dsm/common.pyi +1 -1
  693. homeassistant-stubs/components/synology_dsm/config_flow.pyi +1 -1
  694. homeassistant-stubs/components/synology_dsm/coordinator.pyi +3 -6
  695. homeassistant-stubs/components/synology_dsm/entity.pyi +0 -3
  696. homeassistant-stubs/components/systemmonitor/__init__.pyi +10 -2
  697. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +3 -3
  698. homeassistant-stubs/components/systemmonitor/const.pyi +0 -1
  699. homeassistant-stubs/components/systemmonitor/diagnostics.pyi +2 -4
  700. homeassistant-stubs/components/systemmonitor/sensor.pyi +4 -3
  701. homeassistant-stubs/components/systemmonitor/util.pyi +4 -3
  702. homeassistant-stubs/components/tag/__init__.pyi +46 -5
  703. homeassistant-stubs/components/tag/const.pyi +4 -0
  704. homeassistant-stubs/components/tailwind/__init__.pyi +2 -1
  705. homeassistant-stubs/components/tailwind/binary_sensor.pyi +2 -4
  706. homeassistant-stubs/components/tailwind/button.pyi +2 -3
  707. homeassistant-stubs/components/tailwind/coordinator.pyi +0 -1
  708. homeassistant-stubs/components/tailwind/cover.pyi +2 -3
  709. homeassistant-stubs/components/tailwind/diagnostics.pyi +2 -4
  710. homeassistant-stubs/components/tailwind/number.pyi +2 -3
  711. homeassistant-stubs/components/tailwind/typing.pyi +4 -0
  712. homeassistant-stubs/components/technove/helpers.pyi +1 -4
  713. homeassistant-stubs/components/tedee/__init__.pyi +10 -3
  714. homeassistant-stubs/components/tedee/binary_sensor.pyi +2 -3
  715. homeassistant-stubs/components/tedee/config_flow.pyi +3 -1
  716. homeassistant-stubs/components/tedee/coordinator.pyi +5 -0
  717. homeassistant-stubs/components/tedee/diagnostics.pyi +2 -4
  718. homeassistant-stubs/components/tedee/lock.pyi +6 -3
  719. homeassistant-stubs/components/tedee/sensor.pyi +2 -3
  720. homeassistant-stubs/components/{ambiclimate → thethingsnetwork}/__init__.pyi +5 -4
  721. homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +16 -0
  722. homeassistant-stubs/components/thethingsnetwork/const.pyi +8 -0
  723. homeassistant-stubs/components/thethingsnetwork/coordinator.pyi +16 -0
  724. homeassistant-stubs/components/thethingsnetwork/entity.pyi +22 -0
  725. homeassistant-stubs/components/thethingsnetwork/sensor.pyi +17 -0
  726. homeassistant-stubs/components/tibber/coordinator.pyi +19 -0
  727. homeassistant-stubs/components/tibber/notify.pyi +15 -3
  728. homeassistant-stubs/components/tibber/sensor.pyi +3 -13
  729. homeassistant-stubs/components/tilt_ble/sensor.pyi +2 -2
  730. homeassistant-stubs/components/timer/__init__.pyi +1 -2
  731. homeassistant-stubs/components/todo/intent.pyi +2 -0
  732. homeassistant-stubs/components/tplink/entity.pyi +2 -5
  733. homeassistant-stubs/components/tplink_omada/coordinator.pyi +3 -5
  734. homeassistant-stubs/components/tplink_omada/entity.pyi +2 -5
  735. homeassistant-stubs/components/tractive/__init__.pyi +10 -3
  736. homeassistant-stubs/components/tractive/binary_sensor.pyi +3 -4
  737. homeassistant-stubs/components/tractive/const.pyi +0 -2
  738. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -4
  739. homeassistant-stubs/components/tractive/diagnostics.pyi +2 -3
  740. homeassistant-stubs/components/tractive/sensor.pyi +3 -4
  741. homeassistant-stubs/components/tractive/switch.pyi +3 -4
  742. homeassistant-stubs/components/trafikverket_camera/__init__.pyi +2 -1
  743. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +3 -4
  744. homeassistant-stubs/components/trafikverket_camera/camera.pyi +3 -3
  745. homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +3 -2
  746. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +3 -4
  747. homeassistant-stubs/components/trafikverket_ferry/__init__.pyi +4 -2
  748. homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +3 -2
  749. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +2 -2
  750. homeassistant-stubs/components/trafikverket_train/__init__.pyi +4 -2
  751. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +4 -3
  752. homeassistant-stubs/components/trafikverket_train/sensor.pyi +2 -2
  753. homeassistant-stubs/components/trafikverket_weatherstation/__init__.pyi +4 -2
  754. homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +3 -2
  755. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +2 -2
  756. homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -1
  757. homeassistant-stubs/components/twentemilieu/calendar.pyi +5 -7
  758. homeassistant-stubs/components/twentemilieu/diagnostics.pyi +0 -4
  759. homeassistant-stubs/components/twentemilieu/entity.pyi +4 -5
  760. homeassistant-stubs/components/twentemilieu/sensor.pyi +1 -2
  761. homeassistant-stubs/components/unifi/__init__.pyi +5 -4
  762. homeassistant-stubs/components/unifi/button.pyi +2 -3
  763. homeassistant-stubs/components/unifi/config_flow.pyi +2 -1
  764. homeassistant-stubs/components/unifi/device_tracker.pyi +3 -3
  765. homeassistant-stubs/components/unifi/diagnostics.pyi +2 -3
  766. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +0 -1
  767. homeassistant-stubs/components/unifi/hub/hub.pyi +3 -5
  768. homeassistant-stubs/components/unifi/image.pyi +2 -2
  769. homeassistant-stubs/components/unifi/sensor.pyi +2 -2
  770. homeassistant-stubs/components/unifi/services.pyi +0 -1
  771. homeassistant-stubs/components/unifi/switch.pyi +3 -3
  772. homeassistant-stubs/components/unifi/update.pyi +2 -3
  773. homeassistant-stubs/components/unifiprotect/entity.pyi +1 -1
  774. homeassistant-stubs/components/unifiprotect/migrate.pyi +1 -1
  775. homeassistant-stubs/components/upcloud/__init__.pyi +2 -9
  776. homeassistant-stubs/components/upcloud/coordinator.pyi +16 -0
  777. homeassistant-stubs/components/vacuum/__init__.pyi +2 -4
  778. homeassistant-stubs/components/vacuum/const.pyi +1 -0
  779. homeassistant-stubs/components/vacuum/group.pyi +1 -1
  780. homeassistant-stubs/components/vallox/__init__.pyi +5 -6
  781. homeassistant-stubs/components/vallox/binary_sensor.pyi +2 -1
  782. homeassistant-stubs/components/vallox/config_flow.pyi +2 -1
  783. homeassistant-stubs/components/vallox/coordinator.pyi +12 -0
  784. homeassistant-stubs/components/vallox/date.pyi +2 -1
  785. homeassistant-stubs/components/vallox/fan.pyi +2 -1
  786. homeassistant-stubs/components/vallox/number.pyi +2 -1
  787. homeassistant-stubs/components/vallox/sensor.pyi +2 -1
  788. homeassistant-stubs/components/vallox/switch.pyi +2 -1
  789. homeassistant-stubs/components/velbus/entity.pyi +2 -4
  790. homeassistant-stubs/components/vlc_telnet/__init__.pyi +10 -3
  791. homeassistant-stubs/components/vlc_telnet/media_player.pyi +6 -6
  792. homeassistant-stubs/components/wallbox/coordinator.pyi +1 -3
  793. homeassistant-stubs/components/waqi/sensor.pyi +3 -6
  794. homeassistant-stubs/components/water_heater/__init__.pyi +2 -3
  795. homeassistant-stubs/components/water_heater/const.pyi +1 -0
  796. homeassistant-stubs/components/water_heater/group.pyi +2 -2
  797. homeassistant-stubs/components/weather/__init__.pyi +8 -7
  798. homeassistant-stubs/components/weather/group.pyi +1 -0
  799. homeassistant-stubs/components/weather/intent.pyi +2 -0
  800. homeassistant-stubs/components/webostv/media_player.pyi +2 -5
  801. homeassistant-stubs/components/websocket_api/commands.pyi +5 -5
  802. homeassistant-stubs/components/websocket_api/connection.pyi +2 -2
  803. homeassistant-stubs/components/websocket_api/const.pyi +5 -3
  804. homeassistant-stubs/components/websocket_api/http.pyi +4 -1
  805. homeassistant-stubs/components/websocket_api/messages.pyi +4 -5
  806. homeassistant-stubs/components/wemo/__init__.pyi +1 -1
  807. homeassistant-stubs/components/wemo/binary_sensor.pyi +1 -1
  808. homeassistant-stubs/components/wemo/config_flow.pyi +1 -1
  809. homeassistant-stubs/components/wemo/device_trigger.pyi +1 -1
  810. homeassistant-stubs/components/wemo/entity.pyi +1 -1
  811. homeassistant-stubs/components/wemo/fan.pyi +1 -1
  812. homeassistant-stubs/components/wemo/light.pyi +1 -1
  813. homeassistant-stubs/components/wemo/models.pyi +3 -3
  814. homeassistant-stubs/components/wemo/sensor.pyi +1 -1
  815. homeassistant-stubs/components/wemo/switch.pyi +1 -1
  816. homeassistant-stubs/components/withings/__init__.pyi +6 -5
  817. homeassistant-stubs/components/withings/binary_sensor.pyi +2 -2
  818. homeassistant-stubs/components/withings/calendar.pyi +2 -3
  819. homeassistant-stubs/components/withings/coordinator.pyi +5 -7
  820. homeassistant-stubs/components/withings/diagnostics.pyi +2 -4
  821. homeassistant-stubs/components/withings/entity.pyi +0 -3
  822. homeassistant-stubs/components/withings/sensor.pyi +3 -7
  823. homeassistant-stubs/components/wled/__init__.pyi +4 -3
  824. homeassistant-stubs/components/wled/binary_sensor.pyi +3 -4
  825. homeassistant-stubs/components/wled/button.pyi +3 -4
  826. homeassistant-stubs/components/wled/diagnostics.pyi +2 -4
  827. homeassistant-stubs/components/wled/helpers.pyi +2 -5
  828. homeassistant-stubs/components/wled/light.pyi +4 -4
  829. homeassistant-stubs/components/wled/number.pyi +4 -4
  830. homeassistant-stubs/components/wled/select.pyi +3 -4
  831. homeassistant-stubs/components/wled/sensor.pyi +3 -4
  832. homeassistant-stubs/components/wled/switch.pyi +4 -4
  833. homeassistant-stubs/components/wled/update.pyi +3 -4
  834. homeassistant-stubs/components/xiaomi_ble/__init__.pyi +1 -1
  835. homeassistant-stubs/components/xiaomi_ble/binary_sensor.pyi +2 -2
  836. homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +4 -4
  837. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +2 -2
  838. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +4 -2
  839. homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +3 -3
  840. homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +2 -3
  841. homeassistant-stubs/components/yale_smart_alarm/button.pyi +4 -3
  842. homeassistant-stubs/components/yale_smart_alarm/const.pyi +0 -1
  843. homeassistant-stubs/components/yale_smart_alarm/diagnostics.pyi +2 -4
  844. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +3 -3
  845. homeassistant-stubs/components/yale_smart_alarm/sensor.pyi +16 -0
  846. homeassistant-stubs/components/yalexs_ble/__init__.pyi +5 -4
  847. homeassistant-stubs/components/yalexs_ble/binary_sensor.pyi +2 -4
  848. homeassistant-stubs/components/yalexs_ble/lock.pyi +2 -4
  849. homeassistant-stubs/components/yalexs_ble/sensor.pyi +2 -3
  850. homeassistant-stubs/components/zwave_js/api.pyi +2 -3
  851. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -1
  852. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +6 -6
  853. homeassistant-stubs/components/zwave_js/services.pyi +6 -8
  854. homeassistant-stubs/config.pyi +2 -1
  855. homeassistant-stubs/config_entries.pyi +18 -11
  856. homeassistant-stubs/const.pyi +5 -1
  857. homeassistant-stubs/core.pyi +19 -19
  858. homeassistant-stubs/data_entry_flow.pyi +0 -1
  859. homeassistant-stubs/generated/bluetooth.pyi +3 -1
  860. homeassistant-stubs/generated/countries.pyi +2 -2
  861. homeassistant-stubs/generated/dhcp.pyi +3 -1
  862. homeassistant-stubs/helpers/aiohttp_client.pyi +3 -2
  863. homeassistant-stubs/helpers/area_registry.pyi +9 -3
  864. homeassistant-stubs/helpers/category_registry.pyi +3 -1
  865. homeassistant-stubs/helpers/collection.pyi +3 -6
  866. homeassistant-stubs/helpers/condition.pyi +5 -5
  867. homeassistant-stubs/helpers/config_entry_flow.pyi +2 -3
  868. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +4 -2
  869. homeassistant-stubs/helpers/config_validation.pyi +5 -5
  870. homeassistant-stubs/helpers/debounce.pyi +1 -4
  871. homeassistant-stubs/helpers/deprecation.pyi +1 -5
  872. homeassistant-stubs/helpers/device_registry.pyi +6 -5
  873. homeassistant-stubs/helpers/discovery.pyi +1 -1
  874. homeassistant-stubs/helpers/discovery_flow.pyi +2 -1
  875. homeassistant-stubs/helpers/dispatcher.pyi +5 -5
  876. homeassistant-stubs/helpers/entity.pyi +6 -5
  877. homeassistant-stubs/helpers/entity_platform.pyi +11 -9
  878. homeassistant-stubs/helpers/entity_registry.pyi +6 -5
  879. homeassistant-stubs/helpers/entity_values.pyi +1 -2
  880. homeassistant-stubs/helpers/entityfilter.pyi +1 -1
  881. homeassistant-stubs/helpers/event.pyi +24 -22
  882. homeassistant-stubs/helpers/floor_registry.pyi +3 -1
  883. homeassistant-stubs/helpers/frame.pyi +4 -6
  884. homeassistant-stubs/helpers/httpx_client.pyi +5 -4
  885. homeassistant-stubs/helpers/icon.pyi +2 -2
  886. homeassistant-stubs/helpers/importlib.pyi +5 -3
  887. homeassistant-stubs/helpers/integration_platform.pyi +2 -1
  888. homeassistant-stubs/helpers/intent.pyi +114 -32
  889. homeassistant-stubs/helpers/issue_registry.pyi +13 -5
  890. homeassistant-stubs/helpers/label_registry.pyi +3 -1
  891. homeassistant-stubs/helpers/llm.pyi +87 -0
  892. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +0 -2
  893. homeassistant-stubs/helpers/ratelimit.pyi +0 -2
  894. homeassistant-stubs/helpers/recorder.pyi +3 -2
  895. homeassistant-stubs/helpers/redact.pyi +1 -3
  896. homeassistant-stubs/helpers/registry.pyi +5 -6
  897. homeassistant-stubs/helpers/restore_state.pyi +3 -1
  898. homeassistant-stubs/helpers/script.pyi +19 -9
  899. homeassistant-stubs/helpers/selector.pyi +4 -5
  900. homeassistant-stubs/helpers/service.pyi +8 -8
  901. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -2
  902. homeassistant-stubs/helpers/signal.pyi +3 -0
  903. homeassistant-stubs/helpers/significant_change.pyi +7 -3
  904. homeassistant-stubs/helpers/singleton.pyi +5 -2
  905. homeassistant-stubs/helpers/storage.pyi +8 -7
  906. homeassistant-stubs/helpers/sun.pyi +2 -1
  907. homeassistant-stubs/helpers/system_info.pyi +3 -0
  908. homeassistant-stubs/helpers/template.pyi +7 -12
  909. homeassistant-stubs/helpers/trace.pyi +1 -4
  910. homeassistant-stubs/helpers/translation.pyi +9 -3
  911. homeassistant-stubs/helpers/trigger.pyi +5 -2
  912. homeassistant-stubs/helpers/update_coordinator.pyi +1 -2
  913. homeassistant-stubs/loader.pyi +12 -8
  914. homeassistant-stubs/requirements.pyi +1 -0
  915. homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -3
  916. homeassistant-stubs/setup.pyi +12 -10
  917. homeassistant-stubs/util/__init__.pyi +1 -3
  918. homeassistant-stubs/util/async_.pyi +1 -3
  919. homeassistant-stubs/util/collection.pyi +6 -0
  920. homeassistant-stubs/util/decorator.pyi +1 -5
  921. homeassistant-stubs/util/dt.pyi +2 -0
  922. homeassistant-stubs/util/enum.pyi +4 -8
  923. homeassistant-stubs/util/hass_dict.pyi +65 -0
  924. homeassistant-stubs/util/limited_size_dict.pyi +1 -4
  925. homeassistant-stubs/util/logging.pyi +1 -4
  926. homeassistant-stubs/util/loop.pyi +4 -7
  927. homeassistant-stubs/util/percentage.pyi +0 -3
  928. homeassistant-stubs/util/read_only_dict.pyi +3 -3
  929. homeassistant-stubs/util/signal_type.pyi +5 -12
  930. homeassistant-stubs/util/variance.pyi +2 -5
  931. homeassistant-stubs/util/yaml/loader.pyi +6 -0
  932. {homeassistant_stubs-2024.5.5.dist-info → homeassistant_stubs-2024.6.0.dist-info}/METADATA +2 -2
  933. {homeassistant_stubs-2024.5.5.dist-info → homeassistant_stubs-2024.6.0.dist-info}/RECORD +938 -862
  934. homeassistant-stubs/auth/session.pyi +0 -46
  935. homeassistant-stubs/components/aladdin_connect/model.pyi +0 -9
  936. homeassistant-stubs/components/ambiclimate/climate.pyi +0 -44
  937. homeassistant-stubs/components/ambiclimate/config_flow.pyi +0 -37
  938. homeassistant-stubs/components/ambiclimate/const.pyi +0 -9
  939. homeassistant-stubs/components/anova/util.pyi +0 -3
  940. homeassistant-stubs/components/brother/utils.pyi +0 -10
  941. homeassistant-stubs/components/cloud/util.pyi +0 -7
  942. homeassistant-stubs/components/fritzbox/common.pyi +0 -5
  943. homeassistant-stubs/components/http/session.pyi +0 -29
  944. homeassistant-stubs/components/knx/repairs.pyi +0 -7
  945. homeassistant-stubs/components/poolsense/binary_sensor.pyi +0 -15
  946. homeassistant-stubs/components/poolsense/const.pyi +0 -2
  947. homeassistant-stubs/components/poolsense/coordinator.pyi +0 -16
  948. homeassistant-stubs/components/poolsense/entity.pyi +0 -14
  949. homeassistant-stubs/components/poolsense/sensor.pyi +0 -16
  950. /homeassistant-stubs/components/mikrotik/{hub.pyi → coordinator.pyi} +0 -0
  951. /homeassistant-stubs/components/wemo/{wemo_device.pyi → coordinator.pyi} +0 -0
  952. /homeassistant-stubs/components/wled/{models.pyi → entity.pyi} +0 -0
  953. {homeassistant_stubs-2024.5.5.dist-info → homeassistant_stubs-2024.6.0.dist-info}/LICENSE +0 -0
  954. {homeassistant_stubs-2024.5.5.dist-info → homeassistant_stubs-2024.6.0.dist-info}/WHEEL +0 -0
@@ -13,6 +13,7 @@ from homeassistant.const import ATTR_DEVICE_CLASS as ATTR_DEVICE_CLASS, ATTR_ENT
13
13
  from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant, State as State, callback as callback
14
14
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
15
15
  from homeassistant.loader import bind_hass as bind_hass
16
+ from homeassistant.util.hass_dict import HassKey as HassKey
16
17
  from typing import Any
17
18
 
18
19
  _LOGGER: Incomplete
@@ -23,46 +24,115 @@ INTENT_TOGGLE: str
23
24
  INTENT_GET_STATE: str
24
25
  INTENT_NEVERMIND: str
25
26
  INTENT_SET_POSITION: str
27
+ INTENT_START_TIMER: str
28
+ INTENT_CANCEL_TIMER: str
29
+ INTENT_INCREASE_TIMER: str
30
+ INTENT_DECREASE_TIMER: str
31
+ INTENT_PAUSE_TIMER: str
32
+ INTENT_UNPAUSE_TIMER: str
33
+ INTENT_TIMER_STATUS: str
26
34
  SLOT_SCHEMA: Incomplete
27
- DATA_KEY: str
35
+ DATA_KEY: HassKey[dict[str, IntentHandler]]
28
36
  SPEECH_TYPE_PLAIN: str
29
37
  SPEECH_TYPE_SSML: str
30
38
 
31
39
  def async_register(hass: HomeAssistant, handler: IntentHandler) -> None: ...
32
40
  def async_remove(hass: HomeAssistant, intent_type: str) -> None: ...
33
- async def async_handle(hass: HomeAssistant, platform: str, intent_type: str, slots: _SlotsType | None = None, text_input: str | None = None, context: Context | None = None, language: str | None = None, assistant: str | None = None) -> IntentResponse: ...
41
+ def async_get(hass: HomeAssistant) -> Iterable[IntentHandler]: ...
42
+ async def async_handle(hass: HomeAssistant, platform: str, intent_type: str, slots: _SlotsType | None = None, text_input: str | None = None, context: Context | None = None, language: str | None = None, assistant: str | None = None, device_id: str | None = None, conversation_agent_id: str | None = None) -> IntentResponse: ...
34
43
 
35
44
  class IntentError(HomeAssistantError): ...
36
45
  class UnknownIntent(IntentError): ...
37
46
  class InvalidSlotInfo(IntentError): ...
38
- class IntentHandleError(IntentError): ...
47
+
48
+ class IntentHandleError(IntentError):
49
+ response_key: Incomplete
50
+ def __init__(self, message: str = '', response_key: str | None = None) -> None: ...
51
+
39
52
  class IntentUnexpectedError(IntentError): ...
40
53
 
41
- class NoStatesMatchedError(IntentError):
42
- name: Incomplete
43
- area: Incomplete
44
- floor: Incomplete
45
- domains: Incomplete
46
- device_classes: Incomplete
47
- def __init__(self, name: str | None = None, area: str | None = None, floor: str | None = None, domains: set[str] | None = None, device_classes: set[str] | None = None) -> None: ...
48
-
49
- class DuplicateNamesMatchedError(IntentError):
50
- name: Incomplete
51
- area: Incomplete
52
- def __init__(self, name: str, area: str | None) -> None: ...
53
-
54
- def _is_device_class(state: State, entity: entity_registry.RegistryEntry | None, device_classes: Collection[str]) -> bool: ...
55
- def _has_name(state: State, entity: entity_registry.RegistryEntry | None, name: str) -> bool: ...
56
- def _find_area(id_or_name: str, areas: area_registry.AreaRegistry) -> area_registry.AreaEntry | None: ...
57
- def _find_floor(id_or_name: str, floors: floor_registry.FloorRegistry) -> floor_registry.FloorEntry | None: ...
58
- def _filter_by_areas(states_and_entities: list[tuple[State, entity_registry.RegistryEntry | None]], areas: Iterable[area_registry.AreaEntry], devices: device_registry.DeviceRegistry) -> Iterable[tuple[State, entity_registry.RegistryEntry | None]]: ...
59
- def async_match_states(hass: HomeAssistant, name: str | None = None, area_name: str | None = None, area: area_registry.AreaEntry | None = None, floor_name: str | None = None, floor: floor_registry.FloorEntry | None = None, domains: Collection[str] | None = None, device_classes: Collection[str] | None = None, states: Iterable[State] | None = None, entities: entity_registry.EntityRegistry | None = None, areas: area_registry.AreaRegistry | None = None, floors: floor_registry.FloorRegistry | None = None, devices: device_registry.DeviceRegistry | None = None, assistant: str | None = None) -> Iterable[State]: ...
54
+ class MatchFailedReason(Enum):
55
+ NAME: Incomplete
56
+ AREA: Incomplete
57
+ FLOOR: Incomplete
58
+ DOMAIN: Incomplete
59
+ DEVICE_CLASS: Incomplete
60
+ FEATURE: Incomplete
61
+ STATE: Incomplete
62
+ ASSISTANT: Incomplete
63
+ INVALID_AREA: Incomplete
64
+ INVALID_FLOOR: Incomplete
65
+ DUPLICATE_NAME: Incomplete
66
+ def is_no_entities_reason(self) -> bool: ...
67
+
68
+ @dataclass
69
+ class MatchTargetsConstraints:
70
+ name: str | None = ...
71
+ area_name: str | None = ...
72
+ floor_name: str | None = ...
73
+ domains: Collection[str] | None = ...
74
+ device_classes: Collection[str] | None = ...
75
+ features: int | None = ...
76
+ states: Collection[str] | None = ...
77
+ assistant: str | None = ...
78
+ allow_duplicate_names: bool = ...
79
+ @property
80
+ def has_constraints(self) -> bool: ...
81
+ def __init__(self, name, area_name, floor_name, domains, device_classes, features, states, assistant, allow_duplicate_names) -> None: ...
82
+
83
+ @dataclass
84
+ class MatchTargetsPreferences:
85
+ area_id: str | None = ...
86
+ floor_id: str | None = ...
87
+ def __init__(self, area_id, floor_id) -> None: ...
88
+
89
+ @dataclass
90
+ class MatchTargetsResult:
91
+ is_match: bool
92
+ no_match_reason: MatchFailedReason | None = ...
93
+ states: list[State] = ...
94
+ no_match_name: str | None = ...
95
+ areas: list[area_registry.AreaEntry] = ...
96
+ floors: list[floor_registry.FloorEntry] = ...
97
+ def __init__(self, is_match, no_match_reason, states, no_match_name, areas, floors) -> None: ...
98
+
99
+ class MatchFailedError(IntentError):
100
+ result: Incomplete
101
+ constraints: Incomplete
102
+ preferences: Incomplete
103
+ def __init__(self, result: MatchTargetsResult, constraints: MatchTargetsConstraints, preferences: MatchTargetsPreferences | None = None) -> None: ...
104
+ def __str__(self) -> str: ...
105
+
106
+ class NoStatesMatchedError(MatchFailedError):
107
+ def __init__(self, reason: MatchFailedReason, name: str | None = None, area: str | None = None, floor: str | None = None, domains: set[str] | None = None, device_classes: set[str] | None = None) -> None: ...
108
+
109
+ @dataclass
110
+ class MatchTargetsCandidate:
111
+ state: State
112
+ entity: entity_registry.RegistryEntry | None = ...
113
+ area: area_registry.AreaEntry | None = ...
114
+ floor: floor_registry.FloorEntry | None = ...
115
+ device: device_registry.DeviceEntry | None = ...
116
+ matched_name: str | None = ...
117
+ def __init__(self, state, entity, area, floor, device, matched_name) -> None: ...
118
+
119
+ def _find_areas(name: str, areas: area_registry.AreaRegistry) -> Iterable[area_registry.AreaEntry]: ...
120
+ def _find_floors(name: str, floors: floor_registry.FloorRegistry) -> Iterable[floor_registry.FloorEntry]: ...
121
+ def _normalize_name(name: str) -> str: ...
122
+ def _filter_by_name(name: str, candidates: Iterable[MatchTargetsCandidate]) -> Iterable[MatchTargetsCandidate]: ...
123
+ def _filter_by_features(features: int, candidates: Iterable[MatchTargetsCandidate]) -> Iterable[MatchTargetsCandidate]: ...
124
+ def _filter_by_device_classes(device_classes: Iterable[str], candidates: Iterable[MatchTargetsCandidate]) -> Iterable[MatchTargetsCandidate]: ...
125
+ def _add_areas(areas: area_registry.AreaRegistry, devices: device_registry.DeviceRegistry, candidates: Iterable[MatchTargetsCandidate]) -> None: ...
126
+ def async_match_targets(hass: HomeAssistant, constraints: MatchTargetsConstraints, preferences: MatchTargetsPreferences | None = None, states: list[State] | None = None) -> MatchTargetsResult: ...
127
+ def async_match_states(hass: HomeAssistant, name: str | None = None, area_name: str | None = None, floor_name: str | None = None, domains: Collection[str] | None = None, device_classes: Collection[str] | None = None, states: list[State] | None = None) -> Iterable[State]: ...
60
128
  def async_test_feature(state: State, feature: int, feature_name: str) -> None: ...
61
129
 
62
130
  class IntentHandler:
63
- intent_type: str | None
64
- slot_schema: vol.Schema | None
65
- platforms: Iterable[str] | None
131
+ intent_type: str
132
+ platforms: set[str] | None
133
+ description: str | None
134
+ @property
135
+ def slot_schema(self) -> dict | None: ...
66
136
  def async_can_handle(self, intent_obj: Intent) -> bool: ...
67
137
  def async_validate_slots(self, slots: _SlotsType) -> _SlotsType: ...
68
138
  @cached_property
@@ -70,26 +140,33 @@ class IntentHandler:
70
140
  async def async_handle(self, intent_obj: Intent) -> IntentResponse: ...
71
141
  def __repr__(self) -> str: ...
72
142
 
143
+ def non_empty_string(value: Any) -> str: ...
144
+
73
145
  class DynamicServiceIntentHandler(IntentHandler, metaclass=abc.ABCMeta):
74
- slot_schema: Incomplete
75
146
  service_timeout: float
76
147
  intent_type: Incomplete
77
148
  speech: Incomplete
78
- extra_slots: Incomplete
79
- def __init__(self, intent_type: str, speech: str | None = None, extra_slots: dict[str, vol.Schema] | None = None) -> None: ...
149
+ required_domains: Incomplete
150
+ required_features: Incomplete
151
+ required_states: Incomplete
152
+ description: Incomplete
153
+ platforms: Incomplete
154
+ required_slots: Incomplete
155
+ optional_slots: Incomplete
156
+ def __init__(self, intent_type: str, speech: str | None = None, required_slots: dict[str | tuple[str, str], vol.Schema] | None = None, optional_slots: dict[str | tuple[str, str], vol.Schema] | None = None, required_domains: set[str] | None = None, required_features: int | None = None, required_states: set[str] | None = None, description: str | None = None, platforms: set[str] | None = None) -> None: ...
80
157
  @cached_property
81
- def _slot_schema(self) -> vol.Schema: ...
158
+ def slot_schema(self) -> dict: ...
82
159
  @abstractmethod
83
160
  def get_domain_and_service(self, intent_obj: Intent, state: State) -> tuple[str, str]: ...
84
161
  async def async_handle(self, intent_obj: Intent) -> IntentResponse: ...
85
- async def async_handle_states(self, intent_obj: Intent, states: list[State], area: area_registry.AreaEntry | None = None) -> IntentResponse: ...
162
+ async def async_handle_states(self, intent_obj: Intent, match_result: MatchTargetsResult, match_constraints: MatchTargetsConstraints, match_preferences: MatchTargetsPreferences | None = None) -> IntentResponse: ...
86
163
  async def async_call_service(self, domain: str, service: str, intent_obj: Intent, state: State) -> None: ...
87
164
  async def _run_then_background(self, task: asyncio.Task[Any]) -> None: ...
88
165
 
89
166
  class ServiceIntentHandler(DynamicServiceIntentHandler):
90
167
  domain: Incomplete
91
168
  service: Incomplete
92
- def __init__(self, intent_type: str, domain: str, service: str, speech: str | None = None, extra_slots: dict[str, vol.Schema] | None = None) -> None: ...
169
+ def __init__(self, intent_type: str, domain: str, service: str, speech: str | None = None, required_slots: dict[str | tuple[str, str], vol.Schema] | None = None, optional_slots: dict[str | tuple[str, str], vol.Schema] | None = None, required_domains: set[str] | None = None, required_features: int | None = None, required_states: set[str] | None = None, description: str | None = None, platforms: set[str] | None = None) -> None: ...
93
170
  def get_domain_and_service(self, intent_obj: Intent, state: State) -> tuple[str, str]: ...
94
171
 
95
172
  class IntentCategory(Enum):
@@ -107,7 +184,9 @@ class Intent:
107
184
  language: Incomplete
108
185
  category: Incomplete
109
186
  assistant: Incomplete
110
- def __init__(self, hass: HomeAssistant, platform: str, intent_type: str, slots: _SlotsType, text_input: str | None, context: Context, language: str, category: IntentCategory | None = None, assistant: str | None = None) -> None: ...
187
+ device_id: Incomplete
188
+ conversation_agent_id: Incomplete
189
+ def __init__(self, hass: HomeAssistant, platform: str, intent_type: str, slots: _SlotsType, text_input: str | None, context: Context, language: str, category: IntentCategory | None = None, assistant: str | None = None, device_id: str | None = None, conversation_agent_id: str | None = None) -> None: ...
111
190
  def create_response(self) -> IntentResponse: ...
112
191
 
113
192
  class IntentResponseType(Enum):
@@ -124,6 +203,7 @@ class IntentResponseErrorCode(str, Enum):
124
203
 
125
204
  class IntentResponseTargetType(str, Enum):
126
205
  AREA: str
206
+ FLOOR: str
127
207
  DEVICE: str
128
208
  ENTITY: str
129
209
  DOMAIN: str
@@ -149,6 +229,7 @@ class IntentResponse:
149
229
  failed_results: Incomplete
150
230
  matched_states: Incomplete
151
231
  unmatched_states: Incomplete
232
+ speech_slots: Incomplete
152
233
  response_type: Incomplete
153
234
  def __init__(self, language: str, intent: Intent | None = None) -> None: ...
154
235
  def async_set_speech(self, speech: str, speech_type: str = 'plain', extra_data: Any | None = None) -> None: ...
@@ -158,4 +239,5 @@ class IntentResponse:
158
239
  def async_set_targets(self, intent_targets: list[IntentResponseTarget]) -> None: ...
159
240
  def async_set_results(self, success_results: list[IntentResponseTarget], failed_results: list[IntentResponseTarget] | None = None) -> None: ...
160
241
  def async_set_states(self, matched_states: list[State], unmatched_states: list[State] | None = None) -> None: ...
242
+ def async_set_speech_slots(self, speech_slots: dict[str, Any]) -> None: ...
161
243
  def as_dict(self) -> dict[str, Any]: ...
@@ -1,19 +1,27 @@
1
1
  import dataclasses
2
2
  from .registry import BaseRegistry as BaseRegistry
3
+ from .singleton import singleton as singleton
3
4
  from .storage import Store as Store
4
5
  from _typeshed import Incomplete
5
6
  from datetime import datetime
6
7
  from enum import StrEnum
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
9
  from homeassistant.util.async_ import run_callback_threadsafe as run_callback_threadsafe
9
- from typing import Any
10
+ from homeassistant.util.event_type import EventType as EventType
11
+ from homeassistant.util.hass_dict import HassKey as HassKey
12
+ from typing import Any, Literal, TypedDict
10
13
 
11
- DATA_REGISTRY: str
12
- EVENT_REPAIRS_ISSUE_REGISTRY_UPDATED: str
14
+ DATA_REGISTRY: HassKey[IssueRegistry]
15
+ EVENT_REPAIRS_ISSUE_REGISTRY_UPDATED: EventType[EventIssueRegistryUpdatedData]
13
16
  STORAGE_KEY: str
14
17
  STORAGE_VERSION_MAJOR: int
15
18
  STORAGE_VERSION_MINOR: int
16
19
 
20
+ class EventIssueRegistryUpdatedData(TypedDict):
21
+ action: Literal['create', 'remove', 'update']
22
+ domain: str
23
+ issue_id: str
24
+
17
25
  class IssueSeverity(StrEnum):
18
26
  CRITICAL: str
19
27
  ERROR: str
@@ -44,13 +52,13 @@ class IssueRegistryStore(Store[dict[str, list[dict[str, Any]]]]):
44
52
  class IssueRegistry(BaseRegistry):
45
53
  hass: Incomplete
46
54
  issues: Incomplete
47
- _read_only: Incomplete
48
55
  _store: Incomplete
49
- def __init__(self, hass: HomeAssistant, *, read_only: bool = False) -> None: ...
56
+ def __init__(self, hass: HomeAssistant) -> None: ...
50
57
  def async_get_issue(self, domain: str, issue_id: str) -> IssueEntry | None: ...
51
58
  def async_get_or_create(self, domain: str, issue_id: str, *, breaks_in_ha_version: str | None = None, data: dict[str, str | int | float | None] | None = None, is_fixable: bool, is_persistent: bool, issue_domain: str | None = None, learn_more_url: str | None = None, severity: IssueSeverity, translation_key: str, translation_placeholders: dict[str, str] | None = None) -> IssueEntry: ...
52
59
  def async_delete(self, domain: str, issue_id: str) -> None: ...
53
60
  def async_ignore(self, domain: str, issue_id: str, ignore: bool) -> IssueEntry: ...
61
+ def make_read_only(self) -> None: ...
54
62
  async def async_load(self) -> None: ...
55
63
  def _data_to_save(self) -> dict[str, list[dict[str, str | None]]]: ...
56
64
 
@@ -1,5 +1,6 @@
1
1
  from .normalized_name_base_registry import NormalizedNameBaseRegistryEntry as NormalizedNameBaseRegistryEntry, NormalizedNameBaseRegistryItems as NormalizedNameBaseRegistryItems, normalize_name as normalize_name
2
2
  from .registry import BaseRegistry as BaseRegistry
3
+ from .singleton import singleton as singleton
3
4
  from .storage import Store as Store
4
5
  from .typing import UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
5
6
  from _typeshed import Incomplete
@@ -8,9 +9,10 @@ from dataclasses import dataclass
8
9
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
9
10
  from homeassistant.util import slugify as slugify
10
11
  from homeassistant.util.event_type import EventType as EventType
12
+ from homeassistant.util.hass_dict import HassKey as HassKey
11
13
  from typing import Literal, TypedDict
12
14
 
13
- DATA_REGISTRY: str
15
+ DATA_REGISTRY: HassKey[LabelRegistry]
14
16
  EVENT_LABEL_REGISTRY_UPDATED: EventType[EventLabelRegistryUpdatedData]
15
17
  STORAGE_KEY: str
16
18
  STORAGE_VERSION_MAJOR: int
@@ -0,0 +1,87 @@
1
+ import abc
2
+ import voluptuous as vol
3
+ from . import intent as intent, service as service
4
+ from .singleton import singleton as singleton
5
+ from _typeshed import Incomplete
6
+ from abc import ABC, abstractmethod
7
+ from dataclasses import dataclass
8
+ from homeassistant.components.climate.intent import INTENT_GET_TEMPERATURE as INTENT_GET_TEMPERATURE
9
+ from homeassistant.components.conversation.trace import ConversationTraceEventType as ConversationTraceEventType, async_conversation_trace_append as async_conversation_trace_append
10
+ from homeassistant.components.cover.intent import INTENT_CLOSE_COVER as INTENT_CLOSE_COVER, INTENT_OPEN_COVER as INTENT_OPEN_COVER
11
+ from homeassistant.components.homeassistant.exposed_entities import async_should_expose as async_should_expose
12
+ from homeassistant.components.intent import async_device_supports_timers as async_device_supports_timers
13
+ from homeassistant.components.weather.intent import INTENT_GET_WEATHER as INTENT_GET_WEATHER
14
+ from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant, callback as callback
15
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
16
+ from homeassistant.util import yaml as yaml
17
+ from homeassistant.util.json import JsonObjectType as JsonObjectType
18
+ from typing import Any
19
+
20
+ LLM_API_ASSIST: str
21
+ BASE_PROMPT: str
22
+ DEFAULT_INSTRUCTIONS_PROMPT: str
23
+
24
+ def async_render_no_api_prompt(hass: HomeAssistant) -> str: ...
25
+ def _async_get_apis(hass: HomeAssistant) -> dict[str, API]: ...
26
+ def async_register_api(hass: HomeAssistant, api: API) -> None: ...
27
+ async def async_get_api(hass: HomeAssistant, api_id: str, llm_context: LLMContext) -> APIInstance: ...
28
+ def async_get_apis(hass: HomeAssistant) -> list[API]: ...
29
+
30
+ @dataclass(slots=True)
31
+ class LLMContext:
32
+ platform: str
33
+ context: Context | None
34
+ user_prompt: str | None
35
+ language: str | None
36
+ assistant: str | None
37
+ device_id: str | None
38
+ def __init__(self, platform, context, user_prompt, language, assistant, device_id) -> None: ...
39
+
40
+ @dataclass(slots=True)
41
+ class ToolInput:
42
+ tool_name: str
43
+ tool_args: dict[str, Any]
44
+ def __init__(self, tool_name, tool_args) -> None: ...
45
+
46
+ class Tool(metaclass=abc.ABCMeta):
47
+ name: str
48
+ description: str | None
49
+ parameters: vol.Schema
50
+ @abstractmethod
51
+ async def async_call(self, hass: HomeAssistant, tool_input: ToolInput, llm_context: LLMContext) -> JsonObjectType: ...
52
+ def __repr__(self) -> str: ...
53
+
54
+ @dataclass
55
+ class APIInstance:
56
+ api: API
57
+ api_prompt: str
58
+ llm_context: LLMContext
59
+ tools: list[Tool]
60
+ async def async_call_tool(self, tool_input: ToolInput) -> JsonObjectType: ...
61
+ def __init__(self, api, api_prompt, llm_context, tools) -> None: ...
62
+
63
+ @dataclass(slots=True, kw_only=True)
64
+ class API(ABC, metaclass=abc.ABCMeta):
65
+ hass: HomeAssistant
66
+ id: str
67
+ name: str
68
+ @abstractmethod
69
+ async def async_get_api_instance(self, llm_context: LLMContext) -> APIInstance: ...
70
+ def __init__(self, *, hass, id, name) -> None: ...
71
+
72
+ class IntentTool(Tool):
73
+ name: Incomplete
74
+ description: Incomplete
75
+ extra_slots: Incomplete
76
+ parameters: Incomplete
77
+ def __init__(self, intent_handler: intent.IntentHandler) -> None: ...
78
+ async def async_call(self, hass: HomeAssistant, tool_input: ToolInput, llm_context: LLMContext) -> JsonObjectType: ...
79
+
80
+ class AssistAPI(API):
81
+ IGNORE_INTENTS: Incomplete
82
+ def __init__(self, hass: HomeAssistant) -> None: ...
83
+ async def async_get_api_instance(self, llm_context: LLMContext) -> APIInstance: ...
84
+ def _async_get_api_prompt(self, llm_context: LLMContext, exposed_entities: dict | None) -> str: ...
85
+ def _async_get_tools(self, llm_context: LLMContext, exposed_entities: dict | None) -> list[Tool]: ...
86
+
87
+ def _get_exposed_entities(hass: HomeAssistant, assistant: str) -> dict[str, dict[str, Any]]: ...
@@ -1,14 +1,12 @@
1
1
  from .registry import BaseRegistryItems as BaseRegistryItems
2
2
  from _typeshed import Incomplete
3
3
  from dataclasses import dataclass
4
- from typing import TypeVar
5
4
 
6
5
  @dataclass(slots=True, frozen=True, kw_only=True)
7
6
  class NormalizedNameBaseRegistryEntry:
8
7
  name: str
9
8
  normalized_name: str
10
9
  def __init__(self, *, name, normalized_name) -> None: ...
11
- _VT = TypeVar('_VT', bound=NormalizedNameBaseRegistryEntry)
12
10
 
13
11
  def normalize_name(name: str) -> str: ...
14
12
 
@@ -1,9 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from collections.abc import Callable as Callable, Hashable
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
4
- from typing import TypeVarTuple
5
4
 
6
- _Ts = TypeVarTuple('_Ts')
7
5
  _LOGGER: Incomplete
8
6
 
9
7
  class KeyedRateLimit:
@@ -1,14 +1,15 @@
1
1
  import asyncio
2
2
  from dataclasses import dataclass
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
4
+ from homeassistant.util.hass_dict import HassKey as HassKey
4
5
  from typing import Any
5
6
 
6
- DOMAIN: str
7
+ DOMAIN: HassKey[RecorderData]
7
8
 
8
9
  @dataclass(slots=True)
9
10
  class RecorderData:
10
11
  recorder_platforms: dict[str, Any] = ...
11
- db_connected: asyncio.Future = ...
12
+ db_connected: asyncio.Future[bool] = ...
12
13
  def __init__(self, recorder_platforms, db_connected) -> None: ...
13
14
 
14
15
  def async_migration_in_progress(hass: HomeAssistant) -> bool: ...
@@ -1,10 +1,8 @@
1
1
  from collections.abc import Callable as Callable, Iterable, Mapping
2
2
  from homeassistant.core import callback as callback
3
- from typing import Any, TypeVar, overload
3
+ from typing import Any, overload
4
4
 
5
5
  REDACTED: str
6
- _T = TypeVar('_T')
7
- _ValueT = TypeVar('_ValueT')
8
6
 
9
7
  def partial_redact(x: str | Any, unmasked_prefix: int = 4, unmasked_suffix: int = 4) -> str: ...
10
8
  @overload
@@ -1,15 +1,14 @@
1
1
  import abc
2
2
  from .storage import Store as Store
3
+ from _typeshed import Incomplete
3
4
  from abc import ABC, abstractmethod
4
5
  from collections import UserDict
5
- from collections.abc import Mapping, Sequence, ValuesView
6
+ from collections.abc import Mapping as Mapping, Sequence as Sequence, ValuesView
6
7
  from homeassistant.core import CoreState as CoreState, HomeAssistant as HomeAssistant, callback as callback
7
- from typing import Any, Generic, Literal, TypeVar
8
8
 
9
9
  SAVE_DELAY: int
10
10
  SAVE_DELAY_LONG: int
11
- _DataT = TypeVar('_DataT')
12
- _StoreDataT = TypeVar('_StoreDataT', bound=Mapping[str, Any] | Sequence[Any])
11
+ RegistryIndexType: Incomplete
13
12
 
14
13
  class BaseRegistryItems(UserDict[str, _DataT], ABC, metaclass=abc.ABCMeta):
15
14
  data: dict[str, _DataT]
@@ -19,10 +18,10 @@ class BaseRegistryItems(UserDict[str, _DataT], ABC, metaclass=abc.ABCMeta):
19
18
  @abstractmethod
20
19
  def _unindex_entry(self, key: str, replacement_entry: _DataT | None = None) -> None: ...
21
20
  def __setitem__(self, key: str, entry: _DataT) -> None: ...
22
- def _unindex_entry_value(self, key: str, value: str, index: dict[str, dict[str, Literal[True]]]) -> None: ...
21
+ def _unindex_entry_value(self, key: str, value: str, index: RegistryIndexType) -> None: ...
23
22
  def __delitem__(self, key: str) -> None: ...
24
23
 
25
- class BaseRegistry(ABC, Generic[_StoreDataT], metaclass=abc.ABCMeta):
24
+ class BaseRegistry(ABC, metaclass=abc.ABCMeta):
26
25
  hass: HomeAssistant
27
26
  _store: Store[_StoreDataT]
28
27
  def async_schedule_save(self) -> None: ...
@@ -4,6 +4,7 @@ from .entity import Entity as Entity
4
4
  from .event import async_track_time_interval as async_track_time_interval
5
5
  from .frame import report as report
6
6
  from .json import JSONEncoder as JSONEncoder
7
+ from .singleton import singleton as singleton
7
8
  from .storage import Store as Store
8
9
  from _typeshed import Incomplete
9
10
  from abc import ABC, abstractmethod
@@ -11,10 +12,11 @@ from datetime import datetime
11
12
  from homeassistant.const import ATTR_RESTORED as ATTR_RESTORED, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
12
13
  from homeassistant.core import HomeAssistant as HomeAssistant, State as State, callback as callback, valid_entity_id as valid_entity_id
13
14
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
15
+ from homeassistant.util.hass_dict import HassKey as HassKey
14
16
  from homeassistant.util.json import json_loads as json_loads
15
17
  from typing import Any, Self
16
18
 
17
- DATA_RESTORE_STATE: str
19
+ DATA_RESTORE_STATE: HassKey[RestoreStateData]
18
20
  _LOGGER: Incomplete
19
21
  STORAGE_KEY: str
20
22
  STORAGE_VERSION: int
@@ -3,9 +3,10 @@ import logging
3
3
  import voluptuous as vol
4
4
  from . import condition as condition, service as service, template as template
5
5
  from .condition import ConditionCheckerType as ConditionCheckerType, trace_condition_function as trace_condition_function
6
- from .dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
6
+ from .dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send_internal as async_dispatcher_send_internal
7
7
  from .event import async_call_later as async_call_later, async_track_template as async_track_template
8
8
  from .script_variables import ScriptVariables as ScriptVariables
9
+ from .template import Template as Template
9
10
  from .trace import TraceElement as TraceElement, async_trace_path as async_trace_path, script_execution_set as script_execution_set, trace_append_element as trace_append_element, trace_id_get as trace_id_get, trace_path as trace_path, trace_path_get as trace_path_get, trace_path_stack_cv as trace_path_stack_cv, trace_set_result as trace_set_result, trace_stack_cv as trace_stack_cv, trace_stack_pop as trace_stack_pop, trace_stack_push as trace_stack_push, trace_stack_top as trace_stack_top, trace_update_result as trace_update_result
10
11
  from .trigger import async_initialize_triggers as async_initialize_triggers, async_validate_trigger_config as async_validate_trigger_config
11
12
  from .typing import ConfigType as ConfigType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
@@ -23,10 +24,10 @@ from homeassistant.core import Context as Context, Event as Event, HassJob as Ha
23
24
  from homeassistant.util import slugify as slugify
24
25
  from homeassistant.util.async_ import create_eager_task as create_eager_task
25
26
  from homeassistant.util.dt import utcnow as utcnow
27
+ from homeassistant.util.hass_dict import HassKey as HassKey
26
28
  from homeassistant.util.signal_type import SignalType as SignalType, SignalTypeFormat as SignalTypeFormat
27
- from typing import Any, Literal, TypeVar, TypedDict
29
+ from typing import Any, Literal, TypedDict
28
30
 
29
- _T = TypeVar('_T')
30
31
  SCRIPT_MODE_PARALLEL: str
31
32
  SCRIPT_MODE_QUEUED: str
32
33
  SCRIPT_MODE_RESTART: str
@@ -40,9 +41,9 @@ _MAX_EXCEEDED_CHOICES: Incomplete
40
41
  DEFAULT_MAX_EXCEEDED: str
41
42
  ATTR_CUR: str
42
43
  ATTR_MAX: str
43
- DATA_SCRIPTS: str
44
- DATA_SCRIPT_BREAKPOINTS: str
45
- DATA_NEW_SCRIPT_RUNS_NOT_ALLOWED: str
44
+ DATA_SCRIPTS: HassKey[list[ScriptData]]
45
+ DATA_SCRIPT_BREAKPOINTS: HassKey[dict[str, dict[str, set[str]]]]
46
+ DATA_NEW_SCRIPT_RUNS_NOT_ALLOWED: HassKey[None]
46
47
  RUN_ID_ANY: str
47
48
  NODE_ANY: str
48
49
  _LOGGER: Incomplete
@@ -53,7 +54,11 @@ ACTION_TRACE_NODE_MAX_LEN: int
53
54
  SCRIPT_BREAKPOINT_HIT: Incomplete
54
55
  SCRIPT_DEBUG_CONTINUE_STOP: SignalTypeFormat[Literal['continue', 'stop']]
55
56
  SCRIPT_DEBUG_CONTINUE_ALL: str
56
- script_stack_cv: ContextVar[list[int] | None]
57
+ script_stack_cv: ContextVar[list[str] | None]
58
+
59
+ class ScriptData(TypedDict):
60
+ instance: Script
61
+ started_before_shutdown: bool
57
62
 
58
63
  class ScriptStoppedError(Exception): ...
59
64
 
@@ -122,6 +127,7 @@ class _ScriptRun:
122
127
  async def _async_variables_step(self) -> None: ...
123
128
  async def _async_set_conversation_response_step(self) -> None: ...
124
129
  async def _async_stop_step(self) -> None: ...
130
+ async def _async_sequence_step(self) -> None: ...
125
131
  async def _async_parallel_step(self) -> None: ...
126
132
  async def _async_run_script(self, script: Script) -> None: ...
127
133
 
@@ -159,6 +165,7 @@ class Script:
159
165
  _hass: Incomplete
160
166
  sequence: Incomplete
161
167
  name: Incomplete
168
+ unique_id: Incomplete
162
169
  domain: Incomplete
163
170
  running_description: Incomplete
164
171
  _change_listener: Incomplete
@@ -176,14 +183,15 @@ class Script:
176
183
  _choose_data: Incomplete
177
184
  _if_data: Incomplete
178
185
  _parallel_scripts: Incomplete
186
+ _sequence_scripts: Incomplete
179
187
  variables: Incomplete
180
188
  _variables_dynamic: Incomplete
181
189
  _copy_variables_on_run: Incomplete
182
- def __init__(self, hass: HomeAssistant, sequence: Sequence[dict[str, Any]], name: str, domain: str, *, change_listener: Callable[..., Any] | None = None, copy_variables: bool = False, log_exceptions: bool = True, logger: logging.Logger | None = None, max_exceeded: str = ..., max_runs: int = ..., running_description: str | None = None, script_mode: str = ..., top_level: bool = True, variables: ScriptVariables | None = None) -> None: ...
190
+ def __init__(self, hass: HomeAssistant, sequence: Sequence[dict[str, Any]], name: str, domain: str, *, change_listener: Callable[[], Any] | None = None, copy_variables: bool = False, log_exceptions: bool = True, logger: logging.Logger | None = None, max_exceeded: str = ..., max_runs: int = ..., running_description: str | None = None, script_mode: str = ..., top_level: bool = True, variables: ScriptVariables | None = None) -> None: ...
183
191
  @property
184
192
  def change_listener(self) -> Callable[..., Any] | None: ...
185
193
  @change_listener.setter
186
- def change_listener(self, change_listener: Callable[..., Any]) -> None: ...
194
+ def change_listener(self, change_listener: Callable[[], Any]) -> None: ...
187
195
  _logger: Incomplete
188
196
  def _set_logger(self, logger: logging.Logger | None = None) -> None: ...
189
197
  def update_logger(self, logger: logging.Logger | None = None) -> None: ...
@@ -224,6 +232,8 @@ class Script:
224
232
  async def _async_get_if_data(self, step: int) -> _IfData: ...
225
233
  async def _async_prep_parallel_scripts(self, step: int) -> list[Script]: ...
226
234
  async def _async_get_parallel_scripts(self, step: int) -> list[Script]: ...
235
+ async def _async_prep_sequence_script(self, step: int) -> Script: ...
236
+ async def _async_get_sequence_script(self, step: int) -> Script: ...
227
237
  def _log(self, msg: str, *args: Any, level: int = ..., **kwargs: Any) -> None: ...
228
238
 
229
239
  def breakpoint_clear(hass: HomeAssistant, key: str, run_id: str | None, node: str) -> None: ...
@@ -1,28 +1,27 @@
1
1
  from _typeshed import Incomplete
2
2
  from collections.abc import Callable as Callable, Mapping, Sequence
3
- from enum import IntFlag, StrEnum
3
+ from enum import StrEnum
4
4
  from homeassistant.const import CONF_MODE as CONF_MODE, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT
5
5
  from homeassistant.core import split_entity_id as split_entity_id, valid_entity_id as valid_entity_id
6
6
  from homeassistant.generated.countries import COUNTRIES as COUNTRIES
7
7
  from homeassistant.util import decorator as decorator
8
8
  from homeassistant.util.yaml import dumper as dumper
9
- from typing import Any, Generic, Literal, Required, TypeVar, TypedDict
9
+ from typing import Any, Literal, Required, TypedDict
10
10
 
11
11
  SELECTORS: decorator.Registry[str, type[Selector]]
12
- _T = TypeVar('_T', bound=Mapping[str, Any])
13
12
 
14
13
  def _get_selector_class(config: Any) -> type[Selector]: ...
15
14
  def selector(config: Any) -> Selector: ...
16
15
  def validate_selector(config: Any) -> dict: ...
17
16
 
18
- class Selector(Generic[_T]):
17
+ class Selector:
19
18
  CONFIG_SCHEMA: Callable
20
19
  config: _T
21
20
  selector_type: str
22
21
  def __init__(self, config: Mapping[str, Any] | None = None) -> None: ...
23
22
  def serialize(self) -> dict[str, dict[str, _T]]: ...
24
23
 
25
- def _entity_features() -> dict[str, type[IntFlag]]: ...
24
+ def _entity_feature_flag(domain: str, enum_name: str, feature_name: str) -> int: ...
26
25
  def _validate_supported_feature(supported_feature: str) -> int: ...
27
26
  def _validate_supported_features(supported_features: int | list[str]) -> int: ...
28
27