homeassistant-stubs 2024.9.3__py3-none-any.whl → 2024.10.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 (858) hide show
  1. homeassistant-stubs/components/__init__.pyi +0 -8
  2. homeassistant-stubs/components/abode/binary_sensor.pyi +1 -1
  3. homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
  4. homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
  5. homeassistant-stubs/components/acmeda/cover.pyi +2 -2
  6. homeassistant-stubs/components/acmeda/{base.pyi → entity.pyi} +1 -1
  7. homeassistant-stubs/components/acmeda/sensor.pyi +2 -2
  8. homeassistant-stubs/components/actiontec/device_tracker.pyi +1 -1
  9. homeassistant-stubs/components/air_quality/__init__.pyi +2 -0
  10. homeassistant-stubs/components/airgradient/__init__.pyi +2 -10
  11. homeassistant-stubs/components/airgradient/button.pyi +4 -4
  12. homeassistant-stubs/components/airgradient/coordinator.pyi +13 -11
  13. homeassistant-stubs/components/airgradient/diagnostics.pyi +5 -0
  14. homeassistant-stubs/components/airgradient/number.pyi +2 -3
  15. homeassistant-stubs/components/airgradient/select.pyi +2 -3
  16. homeassistant-stubs/components/airgradient/sensor.pyi +9 -9
  17. homeassistant-stubs/components/airgradient/switch.pyi +2 -3
  18. homeassistant-stubs/components/airgradient/update.pyi +2 -3
  19. homeassistant-stubs/components/airnow/__init__.pyi +0 -1
  20. homeassistant-stubs/components/airnow/const.pyi +4 -1
  21. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  22. homeassistant-stubs/components/airnow/sensor.pyi +2 -1
  23. homeassistant-stubs/components/airvisual/__init__.pyi +6 -14
  24. homeassistant-stubs/components/airvisual/diagnostics.pyi +3 -4
  25. homeassistant-stubs/components/airvisual/entity.pyi +13 -0
  26. homeassistant-stubs/components/airvisual/sensor.pyi +4 -3
  27. homeassistant-stubs/components/airvisual_pro/__init__.pyi +2 -11
  28. homeassistant-stubs/components/airvisual_pro/entity.pyi +12 -0
  29. homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -1
  30. homeassistant-stubs/components/airzone/diagnostics.pyi +1 -1
  31. homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +1 -1
  32. homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
  33. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +2 -0
  34. homeassistant-stubs/components/alert/__init__.pyi +3 -43
  35. homeassistant-stubs/components/alert/entity.pyi +45 -0
  36. homeassistant-stubs/components/alexa/capabilities.pyi +2 -1
  37. homeassistant-stubs/components/alexa/config.pyi +1 -1
  38. homeassistant-stubs/components/alexa/smart_home.pyi +1 -1
  39. homeassistant-stubs/components/amazon_polly/tts.pyi +3 -1
  40. homeassistant-stubs/components/amberelectric/__init__.pyi +5 -3
  41. homeassistant-stubs/components/amberelectric/binary_sensor.pyi +3 -3
  42. homeassistant-stubs/components/amberelectric/sensor.pyi +3 -3
  43. homeassistant-stubs/components/ambient_network/__init__.pyi +3 -3
  44. homeassistant-stubs/components/ambient_network/sensor.pyi +2 -3
  45. homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -2
  46. homeassistant-stubs/components/anova/__init__.pyi +3 -5
  47. homeassistant-stubs/components/anova/models.pyi +3 -0
  48. homeassistant-stubs/components/anova/sensor.pyi +2 -4
  49. homeassistant-stubs/components/anthemav/__init__.pyi +4 -3
  50. homeassistant-stubs/components/anthemav/media_player.pyi +2 -3
  51. homeassistant-stubs/components/apcupsd/__init__.pyi +3 -4
  52. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +2 -4
  53. homeassistant-stubs/components/apcupsd/diagnostics.pyi +2 -4
  54. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -3
  55. homeassistant-stubs/components/apple_tv/__init__.pyi +2 -19
  56. homeassistant-stubs/components/apple_tv/const.pyi +2 -0
  57. homeassistant-stubs/components/apple_tv/entity.pyi +21 -0
  58. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -1
  59. homeassistant-stubs/components/apple_tv/remote.pyi +2 -1
  60. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -2
  61. homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +1 -1
  62. homeassistant-stubs/components/aruba/device_tracker.pyi +1 -1
  63. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
  64. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  65. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  66. homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
  67. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
  68. homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
  69. homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
  70. homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
  71. homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
  72. homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
  73. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
  74. homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
  75. homeassistant-stubs/components/asuswrt/const.pyi +3 -0
  76. homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
  77. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
  78. homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
  79. homeassistant-stubs/components/autarco/sensor.pyi +18 -2
  80. homeassistant-stubs/components/automation/__init__.pyi +5 -3
  81. homeassistant-stubs/components/automation/config.pyi +6 -2
  82. homeassistant-stubs/components/automation/const.pyi +2 -0
  83. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  84. homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
  85. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +1 -0
  86. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  87. homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
  88. homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
  89. homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
  90. homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
  91. homeassistant-stubs/components/bayesian/const.pyi +1 -0
  92. homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
  93. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
  94. homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
  95. homeassistant-stubs/components/blueprint/importer.pyi +1 -1
  96. homeassistant-stubs/components/blueprint/models.pyi +4 -3
  97. homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
  98. homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
  99. homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
  100. homeassistant-stubs/components/bluesound/const.pyi +8 -0
  101. homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
  102. homeassistant-stubs/components/bluesound/utils.pyi +3 -0
  103. homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
  104. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
  105. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
  106. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  107. homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
  108. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +3 -1
  109. homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
  110. homeassistant-stubs/components/button/__init__.pyi +2 -0
  111. homeassistant-stubs/components/calendar/__init__.pyi +7 -5
  112. homeassistant-stubs/components/calendar/const.pyi +5 -0
  113. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  114. homeassistant-stubs/components/camera/__init__.pyi +4 -4
  115. homeassistant-stubs/components/camera/const.pyi +12 -2
  116. homeassistant-stubs/components/camera/media_source.pyi +2 -4
  117. homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
  118. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
  119. homeassistant-stubs/components/climate/__init__.pyi +6 -2
  120. homeassistant-stubs/components/climate/const.pyi +1 -0
  121. homeassistant-stubs/components/climate/intent.pyi +1 -3
  122. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  123. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  124. homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
  125. homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
  126. homeassistant-stubs/components/config/automation.pyi +1 -1
  127. homeassistant-stubs/components/config/category_registry.pyi +1 -1
  128. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  129. homeassistant-stubs/components/config/entity_registry.pyi +1 -2
  130. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  131. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  132. homeassistant-stubs/components/config/scene.pyi +1 -1
  133. homeassistant-stubs/components/config/script.pyi +0 -1
  134. homeassistant-stubs/components/cover/__init__.pyi +3 -1
  135. homeassistant-stubs/components/cover/const.pyi +2 -0
  136. homeassistant-stubs/components/cover/intent.pyi +1 -4
  137. homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
  138. homeassistant-stubs/components/crownstone/light.pyi +2 -2
  139. homeassistant-stubs/components/deako/__init__.pyi +14 -0
  140. homeassistant-stubs/components/deako/config_flow.pyi +6 -0
  141. homeassistant-stubs/components/deako/const.pyi +2 -0
  142. homeassistant-stubs/components/deako/light.pyi +32 -0
  143. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  144. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
  145. homeassistant-stubs/components/deconz/button.pyi +4 -4
  146. homeassistant-stubs/components/deconz/climate.pyi +3 -3
  147. homeassistant-stubs/components/deconz/cover.pyi +3 -3
  148. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  149. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  150. homeassistant-stubs/components/deconz/fan.pyi +3 -3
  151. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  152. homeassistant-stubs/components/deconz/light.pyi +3 -3
  153. homeassistant-stubs/components/deconz/lock.pyi +3 -3
  154. homeassistant-stubs/components/deconz/number.pyi +3 -3
  155. homeassistant-stubs/components/deconz/scene.pyi +3 -3
  156. homeassistant-stubs/components/deconz/select.pyi +6 -6
  157. homeassistant-stubs/components/deconz/sensor.pyi +6 -5
  158. homeassistant-stubs/components/deconz/siren.pyi +3 -3
  159. homeassistant-stubs/components/deconz/switch.pyi +3 -3
  160. homeassistant-stubs/components/demo/lock.pyi +1 -2
  161. homeassistant-stubs/components/demo/notify.pyi +1 -1
  162. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  163. homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
  164. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
  165. homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
  166. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  167. homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
  168. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  169. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  170. homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
  171. homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
  172. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
  173. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  174. homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
  175. homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
  176. homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
  177. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  178. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
  179. homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
  180. homeassistant-stubs/components/downloader/__init__.pyi +1 -9
  181. homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
  182. homeassistant-stubs/components/dsmr/const.pyi +1 -0
  183. homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
  184. homeassistant-stubs/components/efergy/__init__.pyi +0 -9
  185. homeassistant-stubs/components/efergy/entity.pyi +11 -0
  186. homeassistant-stubs/components/efergy/sensor.pyi +2 -1
  187. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  188. homeassistant-stubs/components/elevenlabs/config_flow.pyi +8 -2
  189. homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
  190. homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
  191. homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
  192. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  193. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
  194. homeassistant-stubs/components/elkm1/climate.pyi +4 -1
  195. homeassistant-stubs/components/elkm1/entity.pyi +43 -0
  196. homeassistant-stubs/components/elkm1/light.pyi +2 -1
  197. homeassistant-stubs/components/elkm1/scene.pyi +2 -1
  198. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  199. homeassistant-stubs/components/elkm1/switch.pyi +19 -1
  200. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
  201. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
  202. homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
  203. homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
  204. homeassistant-stubs/components/esphome/__init__.pyi +3 -2
  205. homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
  206. homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
  207. homeassistant-stubs/components/esphome/const.pyi +1 -0
  208. homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
  209. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
  210. homeassistant-stubs/components/esphome/manager.pyi +2 -9
  211. homeassistant-stubs/components/esphome/media_player.pyi +7 -1
  212. homeassistant-stubs/components/esphome/repairs.pyi +5 -0
  213. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
  214. homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
  215. homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
  216. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  217. homeassistant-stubs/components/evohome/const.pyi +5 -5
  218. homeassistant-stubs/components/fan/__init__.pyi +2 -0
  219. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  220. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
  221. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  222. homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
  223. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  224. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  225. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  226. homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
  227. homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
  228. homeassistant-stubs/components/fritzbox/light.pyi +2 -2
  229. homeassistant-stubs/components/fritzbox/sensor.pyi +1 -1
  230. homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
  231. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  232. homeassistant-stubs/components/frontend/storage.pyi +1 -1
  233. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
  234. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
  235. homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
  236. homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
  237. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
  238. homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
  239. homeassistant-stubs/components/google/calendar.pyi +20 -6
  240. homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
  241. homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
  242. homeassistant-stubs/components/google_cloud/const.pyi +19 -0
  243. homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
  244. homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
  245. homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
  246. homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
  247. homeassistant-stubs/components/google_photos/api.pyi +15 -0
  248. homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
  249. homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
  250. homeassistant-stubs/components/google_photos/const.pyi +8 -0
  251. homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
  252. homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
  253. homeassistant-stubs/components/google_photos/services.pyi +15 -0
  254. homeassistant-stubs/components/google_photos/types.pyi +4 -0
  255. homeassistant-stubs/components/group/__init__.pyi +1 -3
  256. homeassistant-stubs/components/group/button.pyi +1 -1
  257. homeassistant-stubs/components/group/const.pyi +7 -3
  258. homeassistant-stubs/components/group/cover.pyi +1 -1
  259. homeassistant-stubs/components/group/entity.pyi +1 -1
  260. homeassistant-stubs/components/group/event.pyi +1 -1
  261. homeassistant-stubs/components/group/fan.pyi +1 -1
  262. homeassistant-stubs/components/group/lock.pyi +2 -2
  263. homeassistant-stubs/components/group/media_player.pyi +1 -1
  264. homeassistant-stubs/components/group/notify.pyi +1 -1
  265. homeassistant-stubs/components/group/registry.pyi +2 -1
  266. homeassistant-stubs/components/group/sensor.pyi +1 -1
  267. homeassistant-stubs/components/group/switch.pyi +1 -1
  268. homeassistant-stubs/components/guardian/__init__.pyi +0 -24
  269. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
  270. homeassistant-stubs/components/guardian/button.pyi +2 -1
  271. homeassistant-stubs/components/guardian/entity.pyi +29 -0
  272. homeassistant-stubs/components/guardian/sensor.pyi +2 -1
  273. homeassistant-stubs/components/guardian/switch.pyi +2 -1
  274. homeassistant-stubs/components/guardian/util.pyi +1 -1
  275. homeassistant-stubs/components/guardian/valve.pyi +2 -1
  276. homeassistant-stubs/components/history/websocket_api.pyi +1 -2
  277. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  278. homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
  279. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  280. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  281. homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
  282. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  283. homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
  284. homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
  285. homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
  286. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  287. homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
  288. homeassistant-stubs/components/homekit/util.pyi +1 -0
  289. homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
  290. homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
  291. homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
  292. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
  293. homeassistant-stubs/components/homeworks/button.pyi +2 -1
  294. homeassistant-stubs/components/homeworks/config_flow.pyi +6 -2
  295. homeassistant-stubs/components/homeworks/entity.pyi +16 -0
  296. homeassistant-stubs/components/homeworks/light.pyi +2 -1
  297. homeassistant-stubs/components/homeworks/util.pyi +1 -0
  298. homeassistant-stubs/components/http/__init__.pyi +1 -1
  299. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
  300. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
  301. homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
  302. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
  303. homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
  304. homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
  305. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
  306. homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
  307. homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
  308. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  309. homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
  310. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
  311. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  312. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
  313. homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
  314. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
  315. homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
  316. homeassistant-stubs/components/image/__init__.pyi +1 -1
  317. homeassistant-stubs/components/image/const.pyi +4 -0
  318. homeassistant-stubs/components/image/media_source.pyi +2 -5
  319. homeassistant-stubs/components/ios/__init__.pyi +1 -15
  320. homeassistant-stubs/components/ios/const.pyi +16 -0
  321. homeassistant-stubs/components/ios/notify.pyi +1 -1
  322. homeassistant-stubs/components/ios/sensor.pyi +2 -2
  323. homeassistant-stubs/components/iotty/cover.pyi +36 -0
  324. homeassistant-stubs/components/iotty/entity.pyi +19 -0
  325. homeassistant-stubs/components/iotty/switch.pyi +2 -11
  326. homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
  327. homeassistant-stubs/components/iqvia/entity.pyi +18 -0
  328. homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
  329. homeassistant-stubs/components/isy994/const.pyi +2 -1
  330. homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
  331. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
  332. homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
  333. homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
  334. homeassistant-stubs/components/knx/__init__.pyi +4 -2
  335. homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
  336. homeassistant-stubs/components/knx/button.pyi +2 -2
  337. homeassistant-stubs/components/knx/climate.pyi +9 -3
  338. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  339. homeassistant-stubs/components/knx/const.pyi +9 -3
  340. homeassistant-stubs/components/knx/cover.pyi +2 -2
  341. homeassistant-stubs/components/knx/date.pyi +2 -2
  342. homeassistant-stubs/components/knx/datetime.pyi +2 -2
  343. homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
  344. homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
  345. homeassistant-stubs/components/knx/fan.pyi +2 -2
  346. homeassistant-stubs/components/knx/light.pyi +2 -2
  347. homeassistant-stubs/components/knx/notify.pyi +2 -2
  348. homeassistant-stubs/components/knx/number.pyi +2 -2
  349. homeassistant-stubs/components/knx/scene.pyi +2 -2
  350. homeassistant-stubs/components/knx/schema.pyi +8 -2
  351. homeassistant-stubs/components/knx/select.pyi +2 -2
  352. homeassistant-stubs/components/knx/sensor.pyi +2 -2
  353. homeassistant-stubs/components/knx/services.pyi +1 -1
  354. homeassistant-stubs/components/knx/switch.pyi +2 -2
  355. homeassistant-stubs/components/knx/text.pyi +2 -2
  356. homeassistant-stubs/components/knx/time.pyi +2 -2
  357. homeassistant-stubs/components/knx/weather.pyi +2 -2
  358. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  359. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
  360. homeassistant-stubs/components/laundrify/__init__.pyi +2 -0
  361. homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
  362. homeassistant-stubs/components/laundrify/config_flow.pyi +1 -0
  363. homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
  364. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  365. homeassistant-stubs/components/lcn/__init__.pyi +8 -30
  366. homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
  367. homeassistant-stubs/components/lcn/climate.pyi +5 -5
  368. homeassistant-stubs/components/lcn/config_flow.pyi +8 -3
  369. homeassistant-stubs/components/lcn/const.pyi +1 -0
  370. homeassistant-stubs/components/lcn/cover.pyi +6 -6
  371. homeassistant-stubs/components/lcn/entity.pyi +28 -0
  372. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  373. homeassistant-stubs/components/lcn/light.pyi +6 -6
  374. homeassistant-stubs/components/lcn/scene.pyi +4 -5
  375. homeassistant-stubs/components/lcn/sensor.pyi +6 -6
  376. homeassistant-stubs/components/lcn/services.pyi +16 -0
  377. homeassistant-stubs/components/lcn/switch.pyi +6 -6
  378. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  379. homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
  380. homeassistant-stubs/components/lektrico/button.pyi +27 -0
  381. homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
  382. homeassistant-stubs/components/lektrico/const.pyi +4 -0
  383. homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
  384. homeassistant-stubs/components/lektrico/entity.pyi +10 -0
  385. homeassistant-stubs/components/lektrico/number.pyi +29 -0
  386. homeassistant-stubs/components/lektrico/select.pyi +30 -0
  387. homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
  388. homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
  389. homeassistant-stubs/components/lidarr/entity.pyi +13 -0
  390. homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
  391. homeassistant-stubs/components/light/__init__.pyi +4 -2
  392. homeassistant-stubs/components/linkplay/const.pyi +1 -1
  393. homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
  394. homeassistant-stubs/components/linkplay/utils.pyi +1 -1
  395. homeassistant-stubs/components/local_todo/todo.pyi +1 -0
  396. homeassistant-stubs/components/lock/__init__.pyi +4 -2
  397. homeassistant-stubs/components/lock/const.pyi +11 -0
  398. homeassistant-stubs/components/lock/device_condition.pyi +2 -2
  399. homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
  400. homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
  401. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
  402. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  403. homeassistant-stubs/components/madvr/__init__.pyi +1 -1
  404. homeassistant-stubs/components/madvr/config_flow.pyi +2 -1
  405. homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
  406. homeassistant-stubs/components/matter/button.pyi +25 -0
  407. homeassistant-stubs/components/matter/entity.pyi +1 -4
  408. homeassistant-stubs/components/matter/light.pyi +0 -1
  409. homeassistant-stubs/components/matter/models.pyi +5 -3
  410. homeassistant-stubs/components/matter/number.pyi +2 -2
  411. homeassistant-stubs/components/matter/sensor.pyi +9 -0
  412. homeassistant-stubs/components/matter/valve.pyi +33 -0
  413. homeassistant-stubs/components/media_player/__init__.pyi +11 -4
  414. homeassistant-stubs/components/media_player/const.pyi +67 -63
  415. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
  416. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  417. homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
  418. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
  419. homeassistant-stubs/components/modbus/climate.pyi +1 -1
  420. homeassistant-stubs/components/modbus/cover.pyi +1 -1
  421. homeassistant-stubs/components/modbus/fan.pyi +1 -1
  422. homeassistant-stubs/components/modbus/light.pyi +1 -1
  423. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  424. homeassistant-stubs/components/modbus/switch.pyi +1 -1
  425. homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
  426. homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
  427. homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
  428. homeassistant-stubs/components/mold_indicator/sensor.pyi +60 -0
  429. homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
  430. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  431. homeassistant-stubs/components/motionmount/number.pyi +1 -0
  432. homeassistant-stubs/components/motionmount/select.pyi +5 -0
  433. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  434. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
  435. homeassistant-stubs/components/mqtt/button.pyi +1 -1
  436. homeassistant-stubs/components/mqtt/camera.pyi +1 -1
  437. homeassistant-stubs/components/mqtt/climate.pyi +1 -6
  438. homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
  439. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  440. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  441. homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
  442. homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
  443. homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
  444. homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
  445. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  446. homeassistant-stubs/components/mqtt/fan.pyi +1 -1
  447. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  448. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
  450. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  451. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
  452. homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
  454. homeassistant-stubs/components/mqtt/lock.pyi +1 -1
  455. homeassistant-stubs/components/mqtt/notify.pyi +1 -1
  456. homeassistant-stubs/components/mqtt/number.pyi +1 -1
  457. homeassistant-stubs/components/mqtt/scene.pyi +1 -1
  458. homeassistant-stubs/components/mqtt/select.pyi +1 -1
  459. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  460. homeassistant-stubs/components/mqtt/siren.pyi +1 -1
  461. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  462. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  463. homeassistant-stubs/components/mqtt/text.pyi +1 -1
  464. homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
  465. homeassistant-stubs/components/mqtt/update.pyi +1 -1
  466. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  467. homeassistant-stubs/components/mqtt/valve.pyi +3 -3
  468. homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
  469. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  470. homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
  471. homeassistant-stubs/components/mysensors/climate.pyi +3 -2
  472. homeassistant-stubs/components/mysensors/cover.pyi +3 -2
  473. homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
  474. homeassistant-stubs/components/mysensors/handler.pyi +1 -1
  475. homeassistant-stubs/components/mysensors/light.pyi +3 -3
  476. homeassistant-stubs/components/mysensors/remote.pyi +1 -1
  477. homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
  478. homeassistant-stubs/components/mysensors/switch.pyi +1 -1
  479. homeassistant-stubs/components/mysensors/text.pyi +2 -2
  480. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
  481. homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
  482. homeassistant-stubs/components/nest/media_source.pyi +1 -2
  483. homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
  484. homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
  485. homeassistant-stubs/components/network/websocket.pyi +1 -1
  486. homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
  487. homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
  488. homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
  489. homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
  490. homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
  491. homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
  492. homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
  493. homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
  494. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
  495. homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
  496. homeassistant-stubs/components/notify/__init__.pyi +3 -2
  497. homeassistant-stubs/components/notify/legacy.pyi +5 -6
  498. homeassistant-stubs/components/notify/repairs.pyi +1 -2
  499. homeassistant-stubs/components/notion/__init__.pyi +1 -23
  500. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
  501. homeassistant-stubs/components/notion/entity.pyi +33 -0
  502. homeassistant-stubs/components/notion/sensor.pyi +1 -2
  503. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  504. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  505. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  506. homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
  507. homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
  508. homeassistant-stubs/components/openuv/__init__.pyi +0 -11
  509. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
  510. homeassistant-stubs/components/openuv/entity.pyi +14 -0
  511. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  512. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  513. homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
  514. homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
  515. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  516. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
  517. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
  518. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
  519. homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
  520. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
  521. homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
  522. homeassistant-stubs/components/pi_hole/update.pyi +2 -1
  523. homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
  524. homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
  525. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  526. homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
  527. homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
  528. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  529. homeassistant-stubs/components/prusalink/camera.pyi +1 -1
  530. homeassistant-stubs/components/prusalink/entity.pyi +9 -0
  531. homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
  532. homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
  533. homeassistant-stubs/components/purpleair/entity.pyi +21 -0
  534. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  535. homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
  536. homeassistant-stubs/components/radarr/__init__.pyi +2 -15
  537. homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
  538. homeassistant-stubs/components/radarr/calendar.pyi +2 -1
  539. homeassistant-stubs/components/radarr/entity.pyi +16 -0
  540. homeassistant-stubs/components/radarr/sensor.pyi +2 -1
  541. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
  542. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
  543. homeassistant-stubs/components/rainmachine/button.pyi +2 -2
  544. homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
  545. homeassistant-stubs/components/rainmachine/select.pyi +2 -2
  546. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  547. homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
  548. homeassistant-stubs/components/rainmachine/update.pyi +2 -2
  549. homeassistant-stubs/components/recorder/const.pyi +2 -2
  550. homeassistant-stubs/components/recorder/core.pyi +3 -7
  551. homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
  552. homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
  553. homeassistant-stubs/components/recorder/migration.pyi +28 -25
  554. homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
  555. homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
  556. homeassistant-stubs/components/recorder/models/time.pyi +0 -1
  557. homeassistant-stubs/components/recorder/statistics.pyi +2 -1
  558. homeassistant-stubs/components/recorder/tasks.pyi +4 -17
  559. homeassistant-stubs/components/recorder/util.pyi +6 -2
  560. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -3
  561. homeassistant-stubs/components/remote/__init__.pyi +2 -0
  562. homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
  563. homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
  564. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
  565. homeassistant-stubs/components/renault/services.pyi +4 -0
  566. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
  567. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
  568. homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
  569. homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
  570. homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
  571. homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
  572. homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
  573. homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
  574. homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
  575. homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
  576. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
  577. homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
  578. homeassistant-stubs/components/ring/__init__.pyi +10 -9
  579. homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
  580. homeassistant-stubs/components/ring/button.pyi +2 -4
  581. homeassistant-stubs/components/ring/camera.pyi +2 -4
  582. homeassistant-stubs/components/ring/config_flow.pyi +2 -1
  583. homeassistant-stubs/components/ring/const.pyi +1 -1
  584. homeassistant-stubs/components/ring/coordinator.pyi +22 -7
  585. homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
  586. homeassistant-stubs/components/ring/entity.pyi +27 -7
  587. homeassistant-stubs/components/ring/event.pyi +30 -0
  588. homeassistant-stubs/components/ring/light.pyi +2 -4
  589. homeassistant-stubs/components/ring/number.pyi +33 -0
  590. homeassistant-stubs/components/ring/sensor.pyi +6 -8
  591. homeassistant-stubs/components/ring/siren.pyi +30 -14
  592. homeassistant-stubs/components/ring/switch.pyi +25 -17
  593. homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
  594. homeassistant-stubs/components/roborock/button.pyi +1 -1
  595. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  596. homeassistant-stubs/components/roborock/image.pyi +1 -1
  597. homeassistant-stubs/components/roborock/number.pyi +3 -2
  598. homeassistant-stubs/components/roborock/select.pyi +2 -1
  599. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  600. homeassistant-stubs/components/roborock/switch.pyi +3 -2
  601. homeassistant-stubs/components/roborock/time.pyi +3 -2
  602. homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
  603. homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
  604. homeassistant-stubs/components/scene/__init__.pyi +2 -0
  605. homeassistant-stubs/components/schedule/__init__.pyi +5 -1
  606. homeassistant-stubs/components/schedule/const.pyi +1 -0
  607. homeassistant-stubs/components/script/helpers.pyi +1 -1
  608. homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
  609. homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
  610. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
  611. homeassistant-stubs/components/sensor/recorder.pyi +10 -6
  612. homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
  613. homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
  614. homeassistant-stubs/components/sensoterra/const.pyi +9 -0
  615. homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
  616. homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
  617. homeassistant-stubs/components/shelly/cover.pyi +7 -1
  618. homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
  619. homeassistant-stubs/components/shelly/update.pyi +1 -0
  620. homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
  621. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
  622. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
  623. homeassistant-stubs/components/simplisafe/button.pyi +2 -1
  624. homeassistant-stubs/components/simplisafe/const.pyi +6 -0
  625. homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
  626. homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
  627. homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
  628. homeassistant-stubs/components/siren/__init__.pyi +2 -0
  629. homeassistant-stubs/components/slack/__init__.pyi +1 -13
  630. homeassistant-stubs/components/slack/entity.pyi +15 -0
  631. homeassistant-stubs/components/slack/sensor.pyi +1 -1
  632. homeassistant-stubs/components/smlight/__init__.pyi +18 -0
  633. homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
  634. homeassistant-stubs/components/smlight/button.pyi +32 -0
  635. homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
  636. homeassistant-stubs/components/smlight/const.pyi +11 -0
  637. homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
  638. homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
  639. homeassistant-stubs/components/smlight/entity.pyi +10 -0
  640. homeassistant-stubs/components/smlight/sensor.pyi +56 -0
  641. homeassistant-stubs/components/smlight/switch.pyi +39 -0
  642. homeassistant-stubs/components/smlight/update.pyi +48 -0
  643. homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
  644. homeassistant-stubs/components/solarlog/config_flow.pyi +27 -0
  645. homeassistant-stubs/components/solarlog/const.pyi +4 -0
  646. homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
  647. homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
  648. homeassistant-stubs/components/solarlog/entity.pyi +23 -0
  649. homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
  650. homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
  651. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
  652. homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
  653. homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
  654. homeassistant-stubs/components/squeezebox/const.pyi +29 -0
  655. homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
  656. homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
  657. homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
  658. homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
  659. homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
  660. homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
  661. homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
  662. homeassistant-stubs/components/stt/const.pyi +6 -2
  663. homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
  664. homeassistant-stubs/components/switch/__init__.pyi +2 -0
  665. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  666. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
  667. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  668. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
  669. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  670. homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
  671. homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
  672. homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
  673. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  674. homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
  675. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  676. homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
  677. homeassistant-stubs/components/tailscale/entity.pyi +15 -0
  678. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  679. homeassistant-stubs/components/tailwind/cover.pyi +1 -1
  680. homeassistant-stubs/components/tami4/button.pyi +14 -1
  681. homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
  682. homeassistant-stubs/components/tautulli/entity.pyi +15 -0
  683. homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
  684. homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
  685. homeassistant-stubs/components/tcp/common.pyi +0 -17
  686. homeassistant-stubs/components/tcp/entity.pyi +21 -0
  687. homeassistant-stubs/components/tcp/sensor.pyi +2 -1
  688. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
  689. homeassistant-stubs/components/threshold/const.pyi +20 -5
  690. homeassistant-stubs/components/tibber/services.pyi +2 -2
  691. homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
  692. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  693. homeassistant-stubs/components/todo/const.pyi +4 -0
  694. homeassistant-stubs/components/todo/intent.pyi +2 -2
  695. homeassistant-stubs/components/tolo/__init__.pyi +3 -22
  696. homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
  697. homeassistant-stubs/components/tolo/button.pyi +2 -1
  698. homeassistant-stubs/components/tolo/climate.pyi +2 -1
  699. homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
  700. homeassistant-stubs/components/tolo/entity.pyi +11 -0
  701. homeassistant-stubs/components/tolo/fan.pyi +2 -1
  702. homeassistant-stubs/components/tolo/light.pyi +2 -1
  703. homeassistant-stubs/components/tolo/number.pyi +2 -1
  704. homeassistant-stubs/components/tolo/select.pyi +2 -1
  705. homeassistant-stubs/components/tolo/sensor.pyi +2 -1
  706. homeassistant-stubs/components/tolo/switch.pyi +2 -1
  707. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
  708. homeassistant-stubs/components/tplink/button.pyi +2 -1
  709. homeassistant-stubs/components/tplink/deprecate.pyi +18 -0
  710. homeassistant-stubs/components/tplink/entity.pyi +8 -4
  711. homeassistant-stubs/components/tplink/number.pyi +3 -1
  712. homeassistant-stubs/components/tplink/select.pyi +1 -1
  713. homeassistant-stubs/components/tplink/sensor.pyi +2 -1
  714. homeassistant-stubs/components/tplink/siren.pyi +22 -0
  715. homeassistant-stubs/components/tplink/switch.pyi +1 -1
  716. homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
  717. homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
  718. homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
  719. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
  720. homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
  721. homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
  722. homeassistant-stubs/components/trace/__init__.pyi +1 -2
  723. homeassistant-stubs/components/trace/const.pyi +7 -3
  724. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
  725. homeassistant-stubs/components/tradfri/cover.pyi +1 -1
  726. homeassistant-stubs/components/tradfri/fan.pyi +1 -1
  727. homeassistant-stubs/components/tradfri/light.pyi +1 -1
  728. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  729. homeassistant-stubs/components/tradfri/switch.pyi +1 -1
  730. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  731. homeassistant-stubs/components/tts/const.pyi +6 -1
  732. homeassistant-stubs/components/tts/helper.pyi +2 -3
  733. homeassistant-stubs/components/tts/legacy.pyi +0 -1
  734. homeassistant-stubs/components/tts/media_source.pyi +3 -3
  735. homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
  736. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  737. homeassistant-stubs/components/unifi/switch.pyi +1 -1
  738. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
  739. homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
  740. homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
  741. homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
  742. homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
  743. homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
  744. homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
  745. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
  746. homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
  747. homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
  748. homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
  749. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
  750. homeassistant-stubs/components/upcloud/const.pyi +1 -0
  751. homeassistant-stubs/components/upcloud/entity.pyi +38 -0
  752. homeassistant-stubs/components/upcloud/switch.pyi +4 -1
  753. homeassistant-stubs/components/update/__init__.pyi +1 -0
  754. homeassistant-stubs/components/uvc/__init__.pyi +0 -0
  755. homeassistant-stubs/components/uvc/camera.pyi +54 -0
  756. homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
  757. homeassistant-stubs/components/vallox/__init__.pyi +6 -9
  758. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  759. homeassistant-stubs/components/vallox/config_flow.pyi +5 -2
  760. homeassistant-stubs/components/vallox/const.pyi +3 -3
  761. homeassistant-stubs/components/vallox/date.pyi +1 -1
  762. homeassistant-stubs/components/vallox/entity.pyi +12 -0
  763. homeassistant-stubs/components/vallox/fan.pyi +2 -2
  764. homeassistant-stubs/components/vallox/number.pyi +1 -1
  765. homeassistant-stubs/components/vallox/sensor.pyi +2 -2
  766. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  767. homeassistant-stubs/components/valve/__init__.pyi +3 -1
  768. homeassistant-stubs/components/valve/const.pyi +9 -0
  769. homeassistant-stubs/components/velbus/climate.pyi +4 -1
  770. homeassistant-stubs/components/wallbox/const.pyi +4 -0
  771. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
  772. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  773. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  774. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  775. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  776. homeassistant-stubs/components/weather/const.pyi +5 -0
  777. homeassistant-stubs/components/weather/intent.pyi +1 -3
  778. homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
  779. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  780. homeassistant-stubs/components/withings/config_flow.pyi +1 -1
  781. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
  782. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
  783. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
  784. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
  785. homeassistant-stubs/components/youtube/const.pyi +1 -0
  786. homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
  787. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  788. homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
  789. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  790. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  791. homeassistant-stubs/components/zwave_js/const.pyi +1 -0
  792. homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
  793. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
  794. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
  795. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
  796. homeassistant-stubs/components/zwave_js/entity.pyi +1 -2
  797. homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
  798. homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
  799. homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
  800. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +1 -1
  801. homeassistant-stubs/config_entries.pyi +9 -4
  802. homeassistant-stubs/const.pyi +19 -8
  803. homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
  804. homeassistant-stubs/helpers/condition.pyi +2 -0
  805. homeassistant-stubs/helpers/config_validation.pyi +5 -1
  806. homeassistant-stubs/helpers/discovery.pyi +1 -1
  807. homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
  808. homeassistant-stubs/helpers/frame.pyi +1 -1
  809. homeassistant-stubs/helpers/llm.pyi +5 -5
  810. homeassistant-stubs/helpers/script.pyi +1 -1
  811. homeassistant-stubs/helpers/state.pyi +2 -1
  812. homeassistant-stubs/helpers/template.pyi +5 -1
  813. homeassistant-stubs/util/aiohttp.pyi +10 -0
  814. homeassistant-stubs/util/package.pyi +3 -0
  815. homeassistant-stubs/util/ssl.pyi +8 -4
  816. homeassistant-stubs/util/unit_conversion.pyi +2 -0
  817. homeassistant-stubs/util/unit_system.pyi +1 -0
  818. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/METADATA +2 -2
  819. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/RECORD +850 -725
  820. homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
  821. homeassistant-stubs/components/notion/model.pyi +0 -7
  822. homeassistant-stubs/components/overkiz/climate.pyi +0 -10
  823. homeassistant-stubs/components/overkiz/cover.pyi +0 -11
  824. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
  825. homeassistant-stubs/components/rainmachine/model.pyi +0 -7
  826. homeassistant-stubs/components/recorder/history/common.pyi +0 -4
  827. homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
  828. /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
  829. /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
  830. /homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +0 -0
  831. /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
  832. /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
  833. /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
  834. /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
  835. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
  836. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
  837. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
  838. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
  839. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
  840. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
  841. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
  842. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
  843. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
  844. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
  845. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
  846. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
  847. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
  848. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
  849. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
  850. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
  851. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
  852. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
  853. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
  854. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
  855. /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
  856. /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
  857. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/WHEEL +0 -0
  858. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0.dist-info}/licenses/LICENSE +0 -0
@@ -9,10 +9,14 @@ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, c
9
9
  from homeassistant.helpers import device_registry as dr
10
10
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo, EventDeviceRegistryUpdatedData as EventDeviceRegistryUpdatedData
11
11
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
12
- from homeassistant.helpers.entity import Entity as Entity
12
+ from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
13
13
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
14
14
  from homeassistant.helpers.entity_platform import EntityPlatform as EntityPlatform
15
15
  from homeassistant.helpers.typing import StateType as StateType
16
+ from homeassistant.util.hass_dict import HassKey as HassKey
17
+
18
+ DATA_COMPONENT: HassKey[EntityComponent[BaseTrackerEntity]]
19
+ DATA_KEY: HassKey[dict[str, tuple[str, str]]]
16
20
 
17
21
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
18
22
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -22,14 +26,26 @@ def _async_register_mac(hass: HomeAssistant, domain: str, mac: str, unique_id: s
22
26
  class BaseTrackerEntity(Entity):
23
27
  _attr_device_info: None
24
28
  _attr_entity_category: Incomplete
29
+ _attr_source_type: SourceType
25
30
  @cached_property
26
31
  def battery_level(self) -> int | None: ...
27
32
  @property
28
- def source_type(self) -> SourceType | str: ...
33
+ def source_type(self) -> SourceType: ...
29
34
  @property
30
35
  def state_attributes(self) -> dict[str, StateType]: ...
31
36
 
32
- class TrackerEntity(BaseTrackerEntity):
37
+ class TrackerEntityDescription(EntityDescription, frozen_or_thawed=True):
38
+ def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=...) -> None: ...
39
+
40
+ CACHED_TRACKER_PROPERTIES_WITH_ATTR_: Incomplete
41
+
42
+ class TrackerEntity(BaseTrackerEntity, cached_properties=CACHED_TRACKER_PROPERTIES_WITH_ATTR_):
43
+ entity_description: TrackerEntityDescription
44
+ _attr_latitude: float | None
45
+ _attr_location_accuracy: int
46
+ _attr_location_name: str | None
47
+ _attr_longitude: float | None
48
+ _attr_source_type: SourceType
33
49
  @cached_property
34
50
  def should_poll(self) -> bool: ...
35
51
  @property
@@ -47,7 +63,17 @@ class TrackerEntity(BaseTrackerEntity):
47
63
  @property
48
64
  def state_attributes(self) -> dict[str, StateType]: ...
49
65
 
50
- class ScannerEntity(BaseTrackerEntity):
66
+ class ScannerEntityDescription(EntityDescription, frozen_or_thawed=True):
67
+ def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=...) -> None: ...
68
+
69
+ CACHED_SCANNER_PROPERTIES_WITH_ATTR_: Incomplete
70
+
71
+ class ScannerEntity(BaseTrackerEntity, cached_properties=CACHED_SCANNER_PROPERTIES_WITH_ATTR_):
72
+ entity_description: ScannerEntityDescription
73
+ _attr_hostname: str | None
74
+ _attr_ip_address: str | None
75
+ _attr_mac_address: str | None
76
+ _attr_source_type: SourceType
51
77
  @cached_property
52
78
  def ip_address(self) -> str | None: ...
53
79
  @cached_property
@@ -1,5 +1,5 @@
1
1
  from . import DevoloHomeControlConfigEntry as DevoloHomeControlConfigEntry
2
- from .devolo_device import DevoloDeviceEntity as DevoloDeviceEntity
2
+ from .entity import DevoloDeviceEntity as DevoloDeviceEntity
3
3
  from _typeshed import Incomplete
4
4
  from devolo_home_control_api.devices.zwave import Zwave as Zwave
5
5
  from devolo_home_control_api.homecontrol import HomeControl as HomeControl
@@ -1,4 +1,4 @@
1
- from .devolo_device import DevoloDeviceEntity as DevoloDeviceEntity
1
+ from .entity import DevoloDeviceEntity as DevoloDeviceEntity
2
2
  from _typeshed import Incomplete
3
3
  from devolo_home_control_api.devices.zwave import Zwave as Zwave
4
4
  from devolo_home_control_api.homecontrol import HomeControl as HomeControl
@@ -1,5 +1,5 @@
1
1
  from . import DevoloHomeControlConfigEntry as DevoloHomeControlConfigEntry
2
- from .devolo_device import DevoloDeviceEntity as DevoloDeviceEntity
2
+ from .entity import DevoloDeviceEntity as DevoloDeviceEntity
3
3
  from _typeshed import Incomplete
4
4
  from devolo_home_control_api.devices.zwave import Zwave as Zwave
5
5
  from devolo_home_control_api.homecontrol import HomeControl as HomeControl
@@ -1,5 +1,5 @@
1
1
  from . import DevoloHomeControlConfigEntry as DevoloHomeControlConfigEntry
2
- from .devolo_device import DevoloDeviceEntity as DevoloDeviceEntity
2
+ from .entity import DevoloDeviceEntity as DevoloDeviceEntity
3
3
  from _typeshed import Incomplete
4
4
  from devolo_home_control_api.devices.zwave import Zwave as Zwave
5
5
  from devolo_home_control_api.homecontrol import HomeControl as HomeControl
@@ -1,4 +1,4 @@
1
- from .const import CONNECTED_PLC_DEVICES as CONNECTED_PLC_DEVICES, CONNECTED_WIFI_CLIENTS as CONNECTED_WIFI_CLIENTS, DOMAIN as DOMAIN, FIRMWARE_UPDATE_INTERVAL as FIRMWARE_UPDATE_INTERVAL, LONG_UPDATE_INTERVAL as LONG_UPDATE_INTERVAL, NEIGHBORING_WIFI_NETWORKS as NEIGHBORING_WIFI_NETWORKS, REGULAR_FIRMWARE as REGULAR_FIRMWARE, SHORT_UPDATE_INTERVAL as SHORT_UPDATE_INTERVAL, SWITCH_GUEST_WIFI as SWITCH_GUEST_WIFI, SWITCH_LEDS as SWITCH_LEDS
1
+ from .const import CONNECTED_PLC_DEVICES as CONNECTED_PLC_DEVICES, CONNECTED_WIFI_CLIENTS as CONNECTED_WIFI_CLIENTS, DOMAIN as DOMAIN, FIRMWARE_UPDATE_INTERVAL as FIRMWARE_UPDATE_INTERVAL, LAST_RESTART as LAST_RESTART, LONG_UPDATE_INTERVAL as LONG_UPDATE_INTERVAL, NEIGHBORING_WIFI_NETWORKS as NEIGHBORING_WIFI_NETWORKS, REGULAR_FIRMWARE as REGULAR_FIRMWARE, SHORT_UPDATE_INTERVAL as SHORT_UPDATE_INTERVAL, SWITCH_GUEST_WIFI as SWITCH_GUEST_WIFI, SWITCH_LEDS as SWITCH_LEDS
2
2
  from _typeshed import Incomplete
3
3
  from dataclasses import dataclass
4
4
  from devolo_plc_api import Device
@@ -12,6 +12,7 @@ CONNECTED_TO_ROUTER: str
12
12
  CONNECTED_WIFI_CLIENTS: str
13
13
  IDENTIFY: str
14
14
  IMAGE_GUEST_WIFI: str
15
+ LAST_RESTART: str
15
16
  NEIGHBORING_WIFI_NETWORKS: str
16
17
  PAIRING: str
17
18
  PLC_RX_RATE: str
@@ -3,7 +3,7 @@ from .const import CONNECTED_WIFI_CLIENTS as CONNECTED_WIFI_CLIENTS, DOMAIN as D
3
3
  from _typeshed import Incomplete
4
4
  from devolo_plc_api.device import Device as Device
5
5
  from devolo_plc_api.device_api import ConnectedStationInfo
6
- from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity, SourceType as SourceType
6
+ from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity
7
7
  from homeassistant.const import STATE_UNKNOWN as STATE_UNKNOWN, UnitOfFrequency as UnitOfFrequency
8
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -15,7 +15,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: DevoloHomeNetworkConfigE
15
15
 
16
16
  class DevoloScannerEntity(CoordinatorEntity[DataUpdateCoordinator[list[ConnectedStationInfo]]], ScannerEntity):
17
17
  _device: Incomplete
18
- _mac: Incomplete
18
+ _attr_mac_address: Incomplete
19
19
  def __init__(self, coordinator: DataUpdateCoordinator[list[ConnectedStationInfo]], device: Device, mac: str) -> None: ...
20
20
  @property
21
21
  def extra_state_attributes(self) -> dict[str, str]: ...
@@ -24,8 +24,4 @@ class DevoloScannerEntity(CoordinatorEntity[DataUpdateCoordinator[list[Connected
24
24
  @property
25
25
  def is_connected(self) -> bool: ...
26
26
  @property
27
- def mac_address(self) -> str: ...
28
- @property
29
- def source_type(self) -> SourceType: ...
30
- @property
31
27
  def unique_id(self) -> str: ...
@@ -7,7 +7,7 @@ from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONN
7
7
  from homeassistant.helpers.entity import Entity as Entity
8
8
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity, DataUpdateCoordinator as DataUpdateCoordinator
9
9
 
10
- _DataType = LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo] | WifiGuestAccessGet | bool
10
+ _DataType = LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo] | WifiGuestAccessGet | bool | int
11
11
 
12
12
  class DevoloEntity(Entity):
13
13
  _attr_has_entity_name: bool
@@ -1,9 +1,10 @@
1
1
  from . import DevoloHomeNetworkConfigEntry as DevoloHomeNetworkConfigEntry
2
- from .const import CONNECTED_PLC_DEVICES as CONNECTED_PLC_DEVICES, CONNECTED_WIFI_CLIENTS as CONNECTED_WIFI_CLIENTS, NEIGHBORING_WIFI_NETWORKS as NEIGHBORING_WIFI_NETWORKS, PLC_RX_RATE as PLC_RX_RATE, PLC_TX_RATE as PLC_TX_RATE
2
+ from .const import CONNECTED_PLC_DEVICES as CONNECTED_PLC_DEVICES, CONNECTED_WIFI_CLIENTS as CONNECTED_WIFI_CLIENTS, LAST_RESTART as LAST_RESTART, NEIGHBORING_WIFI_NETWORKS as NEIGHBORING_WIFI_NETWORKS, PLC_RX_RATE as PLC_RX_RATE, PLC_TX_RATE as PLC_TX_RATE
3
3
  from .entity import DevoloCoordinatorEntity as DevoloCoordinatorEntity
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable
6
6
  from dataclasses import dataclass
7
+ from datetime import datetime
7
8
  from devolo_plc_api.device_api import ConnectedStationInfo, NeighborAPInfo
8
9
  from devolo_plc_api.plcnet_api import DataRate, LogicalNetwork
9
10
  from enum import StrEnum
@@ -12,40 +13,44 @@ from homeassistant.const import EntityCategory as EntityCategory, UnitOfDataRate
12
13
  from homeassistant.core import HomeAssistant as HomeAssistant
13
14
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
14
15
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
16
+ from homeassistant.util.dt import utcnow as utcnow
15
17
  from typing import Any, Generic, TypeVar
16
18
 
17
19
  PARALLEL_UPDATES: int
18
- _CoordinatorDataT = TypeVar('_CoordinatorDataT', bound=LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo])
19
- _ValueDataT = TypeVar('_ValueDataT', bound=LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo])
20
+
21
+ def _last_restart(runtime: int) -> datetime: ...
22
+ _CoordinatorDataT = TypeVar('_CoordinatorDataT', bound=LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo] | int)
23
+ _ValueDataT = TypeVar('_ValueDataT', bound=LogicalNetwork | DataRate | list[ConnectedStationInfo] | list[NeighborAPInfo] | int)
24
+ _SensorDataT = TypeVar('_SensorDataT', bound=int | float | datetime)
20
25
 
21
26
  class DataRateDirection(StrEnum):
22
27
  RX = 'rx_rate'
23
28
  TX = 'tx_rate'
24
29
 
25
30
  @dataclass(frozen=True, kw_only=True)
26
- class DevoloSensorEntityDescription(SensorEntityDescription, Generic[_CoordinatorDataT]):
27
- value_func: Callable[[_CoordinatorDataT], float]
31
+ class DevoloSensorEntityDescription(SensorEntityDescription, Generic[_CoordinatorDataT, _SensorDataT]):
32
+ value_func: Callable[[_CoordinatorDataT], _SensorDataT]
28
33
  def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., value_func) -> None: ...
29
34
 
30
- SENSOR_TYPES: dict[str, DevoloSensorEntityDescription[Any]]
35
+ SENSOR_TYPES: dict[str, DevoloSensorEntityDescription[Any, Any]]
31
36
 
32
37
  async def async_setup_entry(hass: HomeAssistant, entry: DevoloHomeNetworkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
33
38
 
34
- class BaseDevoloSensorEntity(DevoloCoordinatorEntity[_CoordinatorDataT], SensorEntity, Generic[_CoordinatorDataT, _ValueDataT]):
39
+ class BaseDevoloSensorEntity(DevoloCoordinatorEntity[_CoordinatorDataT], SensorEntity, Generic[_CoordinatorDataT, _ValueDataT, _SensorDataT]):
35
40
  entity_description: Incomplete
36
- def __init__(self, entry: DevoloHomeNetworkConfigEntry, coordinator: DataUpdateCoordinator[_CoordinatorDataT], description: DevoloSensorEntityDescription[_ValueDataT]) -> None: ...
41
+ def __init__(self, entry: DevoloHomeNetworkConfigEntry, coordinator: DataUpdateCoordinator[_CoordinatorDataT], description: DevoloSensorEntityDescription[_ValueDataT, _SensorDataT]) -> None: ...
37
42
 
38
- class DevoloSensorEntity(BaseDevoloSensorEntity[_CoordinatorDataT, _CoordinatorDataT]):
39
- entity_description: DevoloSensorEntityDescription[_CoordinatorDataT]
43
+ class DevoloSensorEntity(BaseDevoloSensorEntity[_CoordinatorDataT, _CoordinatorDataT, _SensorDataT]):
44
+ entity_description: DevoloSensorEntityDescription[_CoordinatorDataT, _SensorDataT]
40
45
  @property
41
- def native_value(self) -> float: ...
46
+ def native_value(self) -> int | float | datetime: ...
42
47
 
43
- class DevoloPlcDataRateSensorEntity(BaseDevoloSensorEntity[LogicalNetwork, DataRate]):
44
- entity_description: DevoloSensorEntityDescription[DataRate]
48
+ class DevoloPlcDataRateSensorEntity(BaseDevoloSensorEntity[LogicalNetwork, DataRate, float]):
49
+ entity_description: DevoloSensorEntityDescription[DataRate, float]
45
50
  _peer: Incomplete
46
51
  _attr_unique_id: Incomplete
47
52
  _attr_name: Incomplete
48
53
  _attr_entity_registry_enabled_default: Incomplete
49
- def __init__(self, entry: DevoloHomeNetworkConfigEntry, coordinator: DataUpdateCoordinator[LogicalNetwork], description: DevoloSensorEntityDescription[DataRate], peer: str) -> None: ...
54
+ def __init__(self, entry: DevoloHomeNetworkConfigEntry, coordinator: DataUpdateCoordinator[LogicalNetwork], description: DevoloSensorEntityDescription[DataRate, float], peer: str) -> None: ...
50
55
  @property
51
56
  def native_value(self) -> float: ...
@@ -11,6 +11,7 @@ from homeassistant.core import Event as Event, EventStateChangedData as EventSta
11
11
  from homeassistant.data_entry_flow import BaseServiceInfo as BaseServiceInfo
12
12
  from homeassistant.helpers import discovery_flow as discovery_flow
13
13
  from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, format_mac as format_mac
14
+ from homeassistant.helpers.discovery_flow import DiscoveryKey as DiscoveryKey
14
15
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
15
16
  from homeassistant.helpers.event import async_track_state_added_domain as async_track_state_added_domain, async_track_time_interval as async_track_time_interval
16
17
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -49,7 +50,7 @@ class WatcherBase:
49
50
  _unsub: Incomplete
50
51
  def __init__(self, hass: HomeAssistant, address_data: dict[str, dict[str, str]], integration_matchers: DhcpMatchers) -> None: ...
51
52
  def async_stop(self) -> None: ...
52
- def async_process_client(self, ip_address: str, hostname: str, unformatted_mac_address: str) -> None: ...
53
+ def async_process_client(self, ip_address: str, hostname: str, unformatted_mac_address: str, force: bool = False) -> None: ...
53
54
 
54
55
  class NetworkWatcher(WatcherBase):
55
56
  _discover_hosts: Incomplete
@@ -77,5 +78,10 @@ class DHCPWatcher(WatcherBase):
77
78
  _unsub: Incomplete
78
79
  async def async_start(self) -> None: ...
79
80
 
81
+ class RediscoveryWatcher(WatcherBase):
82
+ def _handle_config_entry_removed(self, entry: config_entries.ConfigEntry) -> None: ...
83
+ _unsub: Incomplete
84
+ def async_start(self) -> None: ...
85
+
80
86
  def _compile_fnmatch(pattern: str) -> re.Pattern: ...
81
87
  def _memorized_fnmatch(name: str, pattern: str) -> bool: ...
@@ -15,4 +15,5 @@ class DiscovergyConfigFlow(ConfigFlow, domain=DOMAIN):
15
15
  _existing_entry: ConfigEntry | None
16
16
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
17
17
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
18
+ async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
18
19
  async def _validate_and_save(self, user_input: Mapping[str, Any] | None = None, step_id: str = 'user') -> ConfigFlowResult: ...
@@ -31,7 +31,6 @@ class DlnaDmrFlowHandler(ConfigFlow, domain=DOMAIN):
31
31
  async def async_step_manual(self, user_input: FlowInput = None) -> ConfigFlowResult: ...
32
32
  async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> ConfigFlowResult: ...
33
33
  async def async_step_ignore(self, user_input: Mapping[str, Any]) -> ConfigFlowResult: ...
34
- async def async_step_unignore(self, user_input: Mapping[str, Any]) -> ConfigFlowResult: ...
35
34
  async def async_step_confirm(self, user_input: FlowInput = None) -> ConfigFlowResult: ...
36
35
  async def _async_connect(self) -> None: ...
37
36
  def _create_entry(self) -> ConfigFlowResult: ...
@@ -11,8 +11,7 @@ from enum import StrEnum
11
11
  from functools import cached_property as cached_property
12
12
  from homeassistant.components import ssdp as ssdp
13
13
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass
14
- from homeassistant.components.media_source.error import Unresolvable as Unresolvable
15
- from homeassistant.components.media_source.models import BrowseMediaSource as BrowseMediaSource, PlayMedia as PlayMedia
14
+ from homeassistant.components.media_source import BrowseMediaSource as BrowseMediaSource, PlayMedia as PlayMedia, Unresolvable as Unresolvable
16
15
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
17
16
  from homeassistant.const import CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_URL as CONF_URL
18
17
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -2,8 +2,7 @@ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER, PATH_OBJECT_ID_FLAG as PA
2
2
  from .dms import DidlPlayMedia as DidlPlayMedia, get_domain_data as get_domain_data
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass, MediaType as MediaType
5
- from homeassistant.components.media_source.error import Unresolvable as Unresolvable
6
- from homeassistant.components.media_source.models import BrowseMediaSource as BrowseMediaSource, MediaSource as MediaSource, MediaSourceItem as MediaSourceItem
5
+ from homeassistant.components.media_source import BrowseMediaSource as BrowseMediaSource, MediaSource as MediaSource, MediaSourceItem as MediaSourceItem, Unresolvable as Unresolvable
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
8
7
 
9
8
  async def async_get_media_source(hass: HomeAssistant) -> DmsMediaSource: ...
@@ -1,15 +1,7 @@
1
1
  from .const import ATTR_FILENAME as ATTR_FILENAME, ATTR_OVERWRITE as ATTR_OVERWRITE, ATTR_SUBDIR as ATTR_SUBDIR, ATTR_URL as ATTR_URL, CONF_DOWNLOAD_DIR as CONF_DOWNLOAD_DIR, DOMAIN as DOMAIN, DOWNLOAD_COMPLETED_EVENT as DOWNLOAD_COMPLETED_EVENT, DOWNLOAD_FAILED_EVENT as DOWNLOAD_FAILED_EVENT, SERVICE_DOWNLOAD_FILE as SERVICE_DOWNLOAD_FILE, _LOGGER as _LOGGER
2
- from _typeshed import Incomplete
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
2
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
3
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
5
- from homeassistant.data_entry_flow import FlowResultType as FlowResultType
6
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
7
4
  from homeassistant.helpers.service import async_register_admin_service as async_register_admin_service
8
- from homeassistant.helpers.typing import ConfigType as ConfigType
9
5
  from homeassistant.util import raise_if_invalid_filename as raise_if_invalid_filename, raise_if_invalid_path as raise_if_invalid_path
10
6
 
11
- CONFIG_SCHEMA: Incomplete
12
-
13
- async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
14
- async def _async_import_config(hass: HomeAssistant, config: ConfigType) -> None: ...
15
7
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -6,7 +6,6 @@ from typing import Any
6
6
  class DownloaderConfigFlow(ConfigFlow, domain=DOMAIN):
7
7
  VERSION: int
8
8
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
9
- async def async_step_import(self, import_data: dict[str, Any]) -> ConfigFlowResult: ...
10
9
  async def _validate_input(self, user_input: dict[str, Any]) -> None: ...
11
10
 
12
11
  class DirectoryDoesNotExist(exceptions.HomeAssistantError): ...
@@ -16,6 +16,7 @@ DEFAULT_TIME_BETWEEN_UPDATE: int
16
16
  DEVICE_NAME_ELECTRICITY: str
17
17
  DEVICE_NAME_GAS: str
18
18
  DEVICE_NAME_WATER: str
19
+ DEVICE_NAME_HEAT: str
19
20
  DSMR_VERSIONS: Incomplete
20
21
  DSMR_PROTOCOL: str
21
22
  RFXTRX_DSMR_PROTOCOL: str
@@ -1,5 +1,5 @@
1
1
  from . import DsmrConfigEntry as DsmrConfigEntry
2
- from .const import CONF_DSMR_VERSION as CONF_DSMR_VERSION, CONF_SERIAL_ID as CONF_SERIAL_ID, CONF_SERIAL_ID_GAS as CONF_SERIAL_ID_GAS, CONF_TIME_BETWEEN_UPDATE as CONF_TIME_BETWEEN_UPDATE, DEFAULT_PRECISION as DEFAULT_PRECISION, DEFAULT_RECONNECT_INTERVAL as DEFAULT_RECONNECT_INTERVAL, DEFAULT_TIME_BETWEEN_UPDATE as DEFAULT_TIME_BETWEEN_UPDATE, DEVICE_NAME_ELECTRICITY as DEVICE_NAME_ELECTRICITY, DEVICE_NAME_GAS as DEVICE_NAME_GAS, DEVICE_NAME_WATER as DEVICE_NAME_WATER, DOMAIN as DOMAIN, DSMR_PROTOCOL as DSMR_PROTOCOL, LOGGER as LOGGER
2
+ from .const import CONF_DSMR_VERSION as CONF_DSMR_VERSION, CONF_SERIAL_ID as CONF_SERIAL_ID, CONF_SERIAL_ID_GAS as CONF_SERIAL_ID_GAS, CONF_TIME_BETWEEN_UPDATE as CONF_TIME_BETWEEN_UPDATE, DEFAULT_PRECISION as DEFAULT_PRECISION, DEFAULT_RECONNECT_INTERVAL as DEFAULT_RECONNECT_INTERVAL, DEFAULT_TIME_BETWEEN_UPDATE as DEFAULT_TIME_BETWEEN_UPDATE, DEVICE_NAME_ELECTRICITY as DEVICE_NAME_ELECTRICITY, DEVICE_NAME_GAS as DEVICE_NAME_GAS, DEVICE_NAME_HEAT as DEVICE_NAME_HEAT, DEVICE_NAME_WATER as DEVICE_NAME_WATER, DOMAIN as DOMAIN, DSMR_PROTOCOL as DSMR_PROTOCOL, LOGGER as LOGGER
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable, Generator
5
5
  from dataclasses import dataclass
@@ -23,11 +23,13 @@ class DSMRSensorEntityDescription(SensorEntityDescription):
23
23
  dsmr_versions: set[str] | None = ...
24
24
  is_gas: bool = ...
25
25
  is_water: bool = ...
26
+ is_heat: bool = ...
26
27
  obis_reference: str
27
- def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., dsmr_versions=..., is_gas=..., is_water=..., obis_reference) -> None: ...
28
+ def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., dsmr_versions=..., is_gas=..., is_water=..., is_heat=..., obis_reference) -> None: ...
28
29
 
29
30
  class MbusDeviceType(IntEnum):
30
31
  GAS = 3
32
+ HEAT = 4
31
33
  WATER = 7
32
34
 
33
35
  SENSORS: tuple[DSMRSensorEntityDescription, ...]
@@ -1,12 +1,9 @@
1
- from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
1
  from _typeshed import Incomplete
3
2
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
3
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, Platform as Platform
5
4
  from homeassistant.core import HomeAssistant as HomeAssistant
6
5
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
7
6
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
- from homeassistant.helpers.entity import Entity as Entity
10
7
  from pyefergy import Efergy
11
8
 
12
9
  PLATFORMS: Incomplete
@@ -14,9 +11,3 @@ EfergyConfigEntry = ConfigEntry[Efergy]
14
11
 
15
12
  async def async_setup_entry(hass: HomeAssistant, entry: EfergyConfigEntry) -> bool: ...
16
13
  async def async_unload_entry(hass: HomeAssistant, entry: EfergyConfigEntry) -> bool: ...
17
-
18
- class EfergyEntity(Entity):
19
- _attr_attribution: str
20
- api: Incomplete
21
- _attr_device_info: Incomplete
22
- def __init__(self, api: Efergy, server_unique_id: str) -> None: ...
@@ -0,0 +1,11 @@
1
+ from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
+ from _typeshed import Incomplete
3
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
4
+ from homeassistant.helpers.entity import Entity as Entity
5
+ from pyefergy import Efergy as Efergy
6
+
7
+ class EfergyEntity(Entity):
8
+ _attr_attribution: str
9
+ api: Incomplete
10
+ _attr_device_info: Incomplete
11
+ def __init__(self, api: Efergy, server_unique_id: str) -> None: ...
@@ -1,5 +1,6 @@
1
- from . import EfergyConfigEntry as EfergyConfigEntry, EfergyEntity as EfergyEntity
1
+ from . import EfergyConfigEntry as EfergyConfigEntry
2
2
  from .const import CONF_CURRENT_VALUES as CONF_CURRENT_VALUES, LOGGER as LOGGER
3
+ from .entity import EfergyEntity as EfergyEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
5
6
  from homeassistant.const import UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower
@@ -6,6 +6,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, Platform as Platform
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import ConfigEntryError as ConfigEntryError
9
+ from homeassistant.helpers.httpx_client import get_async_client as get_async_client
9
10
 
10
11
  PLATFORMS: list[Platform]
11
12
 
@@ -1,15 +1,17 @@
1
1
  import voluptuous as vol
2
- from .const import CONF_MODEL as CONF_MODEL, CONF_VOICE as CONF_VOICE, DEFAULT_MODEL as DEFAULT_MODEL, DOMAIN as DOMAIN
2
+ from .const import CONF_CONFIGURE_VOICE as CONF_CONFIGURE_VOICE, CONF_MODEL as CONF_MODEL, CONF_OPTIMIZE_LATENCY as CONF_OPTIMIZE_LATENCY, CONF_SIMILARITY as CONF_SIMILARITY, CONF_STABILITY as CONF_STABILITY, CONF_STYLE as CONF_STYLE, CONF_USE_SPEAKER_BOOST as CONF_USE_SPEAKER_BOOST, CONF_VOICE as CONF_VOICE, DEFAULT_MODEL as DEFAULT_MODEL, DEFAULT_OPTIMIZE_LATENCY as DEFAULT_OPTIMIZE_LATENCY, DEFAULT_SIMILARITY as DEFAULT_SIMILARITY, DEFAULT_STABILITY as DEFAULT_STABILITY, DEFAULT_STYLE as DEFAULT_STYLE, DEFAULT_USE_SPEAKER_BOOST as DEFAULT_USE_SPEAKER_BOOST, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow, OptionsFlowWithConfigEntry as OptionsFlowWithConfigEntry
5
5
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.httpx_client import get_async_client as get_async_client
6
8
  from homeassistant.helpers.selector import SelectOptionDict as SelectOptionDict, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig
7
9
  from typing import Any
8
10
 
9
11
  USER_STEP_SCHEMA: Incomplete
10
12
  _LOGGER: Incomplete
11
13
 
12
- async def get_voices_models(api_key: str) -> tuple[dict[str, str], dict[str, str]]: ...
14
+ async def get_voices_models(hass: HomeAssistant, api_key: str) -> tuple[dict[str, str], dict[str, str]]: ...
13
15
 
14
16
  class ElevenLabsConfigFlow(ConfigFlow, domain=DOMAIN):
15
17
  VERSION: int
@@ -21,6 +23,10 @@ class ElevenLabsOptionsFlow(OptionsFlowWithConfigEntry):
21
23
  api_key: Incomplete
22
24
  voices: Incomplete
23
25
  models: Incomplete
26
+ model: Incomplete
27
+ voice: Incomplete
24
28
  def __init__(self, config_entry: ConfigEntry) -> None: ...
25
29
  async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
26
30
  def elevenlabs_config_option_schema(self) -> vol.Schema: ...
31
+ async def async_step_voice_settings(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
32
+ def elevenlabs_config_options_voice_schema(self) -> vol.Schema: ...
@@ -1,4 +1,15 @@
1
1
  CONF_VOICE: str
2
2
  CONF_MODEL: str
3
+ CONF_CONFIGURE_VOICE: str
4
+ CONF_STABILITY: str
5
+ CONF_SIMILARITY: str
6
+ CONF_OPTIMIZE_LATENCY: str
7
+ CONF_STYLE: str
8
+ CONF_USE_SPEAKER_BOOST: str
3
9
  DOMAIN: str
4
10
  DEFAULT_MODEL: str
11
+ DEFAULT_STABILITY: float
12
+ DEFAULT_SIMILARITY: float
13
+ DEFAULT_OPTIMIZE_LATENCY: int
14
+ DEFAULT_STYLE: int
15
+ DEFAULT_USE_SPEAKER_BOOST: bool
@@ -1,17 +1,19 @@
1
1
  from . import EleventLabsConfigEntry as EleventLabsConfigEntry
2
- from .const import CONF_VOICE as CONF_VOICE, DOMAIN as DOMAIN
2
+ from .const import CONF_OPTIMIZE_LATENCY as CONF_OPTIMIZE_LATENCY, CONF_SIMILARITY as CONF_SIMILARITY, CONF_STABILITY as CONF_STABILITY, CONF_STYLE as CONF_STYLE, CONF_USE_SPEAKER_BOOST as CONF_USE_SPEAKER_BOOST, CONF_VOICE as CONF_VOICE, DEFAULT_OPTIMIZE_LATENCY as DEFAULT_OPTIMIZE_LATENCY, DEFAULT_SIMILARITY as DEFAULT_SIMILARITY, DEFAULT_STABILITY as DEFAULT_STABILITY, DEFAULT_STYLE as DEFAULT_STYLE, DEFAULT_USE_SPEAKER_BOOST as DEFAULT_USE_SPEAKER_BOOST, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from elevenlabs.client import AsyncElevenLabs as AsyncElevenLabs
5
- from elevenlabs.types import Model as Model, Voice as ElevenLabsVoice
5
+ from elevenlabs.types import Model as Model, Voice as ElevenLabsVoice, VoiceSettings
6
6
  from homeassistant.components.tts import ATTR_VOICE as ATTR_VOICE, TextToSpeechEntity as TextToSpeechEntity, TtsAudioType as TtsAudioType, Voice as Voice
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
9
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
+ from types import MappingProxyType
11
12
  from typing import Any
12
13
 
13
14
  _LOGGER: Incomplete
14
15
 
16
+ def to_voice_settings(options: MappingProxyType[str, Any]) -> VoiceSettings: ...
15
17
  async def async_setup_entry(hass: HomeAssistant, config_entry: EleventLabsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
18
 
17
19
  class ElevenLabsTTSEntity(TextToSpeechEntity):
@@ -20,11 +22,13 @@ class ElevenLabsTTSEntity(TextToSpeechEntity):
20
22
  _model: Incomplete
21
23
  _default_voice_id: Incomplete
22
24
  _voices: Incomplete
25
+ _voice_settings: Incomplete
26
+ _latency: Incomplete
23
27
  _attr_unique_id: Incomplete
24
28
  _attr_name: Incomplete
25
29
  _attr_device_info: Incomplete
26
30
  _attr_supported_languages: Incomplete
27
31
  _attr_default_language: Incomplete
28
- def __init__(self, client: AsyncElevenLabs, model: Model, voices: list[ElevenLabsVoice], default_voice_id: str, entry_id: str, title: str) -> None: ...
32
+ def __init__(self, client: AsyncElevenLabs, model: Model, voices: list[ElevenLabsVoice], default_voice_id: str, entry_id: str, title: str, voice_settings: VoiceSettings, latency: int = 0) -> None: ...
29
33
  def async_get_supported_voices(self, language: str) -> list[Voice]: ...
30
34
  async def async_get_tts_audio(self, message: str, language: str, options: dict[str, Any]) -> TtsAudioType: ...
@@ -2,19 +2,15 @@ from .const import ATTR_KEY as ATTR_KEY, ATTR_KEYPAD_ID as ATTR_KEYPAD_ID, ATTR_
2
2
  from .discovery import async_discover_device as async_discover_device, async_discover_devices as async_discover_devices, async_trigger_discovery as async_trigger_discovery, async_update_entry_from_discovery as async_update_entry_from_discovery
3
3
  from .models import ELKM1Data as ELKM1Data
4
4
  from _typeshed import Incomplete
5
- from collections.abc import Iterable
6
5
  from elkm1_lib.elements import Element as Element
7
6
  from elkm1_lib.elk import Elk, Panel as Panel
8
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
9
- from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS, CONF_ENABLED as CONF_ENABLED, CONF_EXCLUDE as CONF_EXCLUDE, CONF_HOST as CONF_HOST, CONF_INCLUDE as CONF_INCLUDE, CONF_PASSWORD as CONF_PASSWORD, CONF_PREFIX as CONF_PREFIX, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_USERNAME as CONF_USERNAME, CONF_ZONE as CONF_ZONE, Platform as Platform, UnitOfTemperature as UnitOfTemperature
8
+ from homeassistant.const import CONF_ENABLED as CONF_ENABLED, CONF_EXCLUDE as CONF_EXCLUDE, CONF_HOST as CONF_HOST, CONF_INCLUDE as CONF_INCLUDE, CONF_PASSWORD as CONF_PASSWORD, CONF_PREFIX as CONF_PREFIX, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_USERNAME as CONF_USERNAME, CONF_ZONE as CONF_ZONE, Platform as Platform, UnitOfTemperature as UnitOfTemperature
10
9
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
11
10
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError
12
- from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
13
- from homeassistant.helpers.entity import Entity as Entity
14
11
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
15
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
16
13
  from homeassistant.util.network import is_ip_address as is_ip_address
17
- from typing import Any
18
14
 
19
15
  ElkM1ConfigEntry = ConfigEntry[ELKM1Data]
20
16
  SYNC_TIMEOUT: int
@@ -41,32 +37,3 @@ async def async_unload_entry(hass: HomeAssistant, entry: ElkM1ConfigEntry) -> bo
41
37
  async def async_wait_for_elk_to_sync(elk: Elk, login_timeout: int, sync_timeout: int) -> bool: ...
42
38
  def _async_get_elk_panel(hass: HomeAssistant, service: ServiceCall) -> Panel: ...
43
39
  def _create_elk_services(hass: HomeAssistant) -> None: ...
44
- def create_elk_entities(elk_data: ELKM1Data, elk_elements: Iterable[Element], element_type: str, class_: Any, entities: list[ElkEntity]) -> list[ElkEntity] | None: ...
45
-
46
- class ElkEntity(Entity):
47
- _attr_has_entity_name: bool
48
- _attr_should_poll: bool
49
- _elk: Incomplete
50
- _element: Incomplete
51
- _mac: Incomplete
52
- _prefix: Incomplete
53
- _temperature_unit: Incomplete
54
- _unique_id: Incomplete
55
- _attr_name: Incomplete
56
- def __init__(self, element: Element, elk: Elk, elk_data: ELKM1Data) -> None: ...
57
- @property
58
- def unique_id(self) -> str: ...
59
- @property
60
- def extra_state_attributes(self) -> dict[str, Any]: ...
61
- @property
62
- def available(self) -> bool: ...
63
- def initial_attrs(self) -> dict[str, Any]: ...
64
- def _element_changed(self, element: Element, changeset: dict[str, Any]) -> None: ...
65
- def _element_callback(self, element: Element, changeset: dict[str, Any]) -> None: ...
66
- async def async_added_to_hass(self) -> None: ...
67
- @property
68
- def device_info(self) -> DeviceInfo: ...
69
-
70
- class ElkAttachedEntity(ElkEntity):
71
- @property
72
- def device_info(self) -> DeviceInfo: ...
@@ -1,5 +1,6 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
2
  from .const import ATTR_CHANGED_BY_ID as ATTR_CHANGED_BY_ID, ATTR_CHANGED_BY_KEYPAD as ATTR_CHANGED_BY_KEYPAD, ATTR_CHANGED_BY_TIME as ATTR_CHANGED_BY_TIME, ELK_USER_CODE_SERVICE_SCHEMA as ELK_USER_CODE_SERVICE_SCHEMA
3
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
3
4
  from .models import ELKM1Data as ELKM1Data
4
5
  from _typeshed import Incomplete
5
6
  from elkm1_lib.areas import Area as Area
@@ -1,4 +1,5 @@
1
- from . import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .entity import ElkAttachedEntity as ElkAttachedEntity, ElkEntity as ElkEntity
2
3
  from _typeshed import Incomplete
3
4
  from elkm1_lib.elements import Element as Element
4
5
  from elkm1_lib.zones import Zone as Zone
@@ -1,4 +1,6 @@
1
- from . import ElkEntity as ElkEntity, ElkM1ConfigEntry as ElkM1ConfigEntry, create_elk_entities as create_elk_entities
1
+ from . import ElkM1ConfigEntry as ElkM1ConfigEntry
2
+ from .const import DOMAIN as DOMAIN
3
+ from .entity import ElkEntity as ElkEntity, create_elk_entities as create_elk_entities
2
4
  from _typeshed import Incomplete
3
5
  from elkm1_lib.const import ThermostatFan, ThermostatMode
4
6
  from elkm1_lib.elements import Element as Element
@@ -7,6 +9,7 @@ from homeassistant.components.climate import ATTR_TARGET_TEMP_HIGH as ATTR_TARGE
7
9
  from homeassistant.const import PRECISION_WHOLE as PRECISION_WHOLE
8
10
  from homeassistant.core import HomeAssistant as HomeAssistant
9
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
+ from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
10
13
  from typing import Any
11
14
 
12
15
  SUPPORT_HVAC: Incomplete
@@ -0,0 +1,43 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .models import ELKM1Data as ELKM1Data
3
+ from _typeshed import Incomplete
4
+ from collections.abc import Iterable
5
+ from elkm1_lib.elements import Element as Element
6
+ from elkm1_lib.elk import Elk as Elk
7
+ from homeassistant.const import ATTR_CONNECTIONS as ATTR_CONNECTIONS
8
+ from homeassistant.core import callback as callback
9
+ from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
10
+ from homeassistant.helpers.entity import Entity as Entity
11
+ from typing import Any
12
+
13
+ _LOGGER: Incomplete
14
+
15
+ def create_elk_entities(elk_data: ELKM1Data, elk_elements: Iterable[Element], element_type: str, class_: Any, entities: list[ElkEntity]) -> list[ElkEntity] | None: ...
16
+
17
+ class ElkEntity(Entity):
18
+ _attr_has_entity_name: bool
19
+ _attr_should_poll: bool
20
+ _elk: Incomplete
21
+ _element: Incomplete
22
+ _mac: Incomplete
23
+ _prefix: Incomplete
24
+ _temperature_unit: Incomplete
25
+ _unique_id: Incomplete
26
+ _attr_name: Incomplete
27
+ def __init__(self, element: Element, elk: Elk, elk_data: ELKM1Data) -> None: ...
28
+ @property
29
+ def unique_id(self) -> str: ...
30
+ @property
31
+ def extra_state_attributes(self) -> dict[str, Any]: ...
32
+ @property
33
+ def available(self) -> bool: ...
34
+ def initial_attrs(self) -> dict[str, Any]: ...
35
+ def _element_changed(self, element: Element, changeset: dict[str, Any]) -> None: ...
36
+ def _element_callback(self, element: Element, changeset: dict[str, Any]) -> None: ...
37
+ async def async_added_to_hass(self) -> None: ...
38
+ @property
39
+ def device_info(self) -> DeviceInfo: ...
40
+
41
+ class ElkAttachedEntity(ElkEntity):
42
+ @property
43
+ def device_info(self) -> DeviceInfo: ...