homeassistant-stubs 2024.9.2__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 (867) 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/aseko_pool_live/__init__.pyi +1 -2
  64. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +5 -8
  65. homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +0 -1
  66. homeassistant-stubs/components/aseko_pool_live/coordinator.pyi +6 -5
  67. homeassistant-stubs/components/aseko_pool_live/entity.pyi +8 -3
  68. homeassistant-stubs/components/aseko_pool_live/sensor.pyi +16 -14
  69. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
  70. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  71. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  72. homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
  73. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
  74. homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
  75. homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
  76. homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
  77. homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
  78. homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
  79. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
  80. homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
  81. homeassistant-stubs/components/asuswrt/const.pyi +3 -0
  82. homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
  83. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
  84. homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
  85. homeassistant-stubs/components/autarco/sensor.pyi +18 -2
  86. homeassistant-stubs/components/automation/__init__.pyi +5 -3
  87. homeassistant-stubs/components/automation/config.pyi +6 -2
  88. homeassistant-stubs/components/automation/const.pyi +2 -0
  89. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  90. homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
  91. homeassistant-stubs/components/bang_olufsen/__init__.pyi +1 -0
  92. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +2 -0
  93. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  94. homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
  95. homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
  96. homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
  97. homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
  98. homeassistant-stubs/components/bayesian/const.pyi +1 -0
  99. homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
  100. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
  101. homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
  102. homeassistant-stubs/components/blueprint/importer.pyi +1 -1
  103. homeassistant-stubs/components/blueprint/models.pyi +4 -3
  104. homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
  105. homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
  106. homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
  107. homeassistant-stubs/components/bluesound/const.pyi +8 -0
  108. homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
  109. homeassistant-stubs/components/bluesound/utils.pyi +3 -0
  110. homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
  111. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
  112. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
  113. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  114. homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
  115. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +3 -1
  116. homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
  117. homeassistant-stubs/components/button/__init__.pyi +2 -0
  118. homeassistant-stubs/components/calendar/__init__.pyi +7 -5
  119. homeassistant-stubs/components/calendar/const.pyi +5 -0
  120. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  121. homeassistant-stubs/components/camera/__init__.pyi +4 -4
  122. homeassistant-stubs/components/camera/const.pyi +12 -2
  123. homeassistant-stubs/components/camera/media_source.pyi +2 -4
  124. homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
  125. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
  126. homeassistant-stubs/components/climate/__init__.pyi +6 -2
  127. homeassistant-stubs/components/climate/const.pyi +1 -0
  128. homeassistant-stubs/components/climate/intent.pyi +1 -3
  129. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  130. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  131. homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
  132. homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
  133. homeassistant-stubs/components/config/automation.pyi +1 -1
  134. homeassistant-stubs/components/config/category_registry.pyi +1 -1
  135. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  136. homeassistant-stubs/components/config/entity_registry.pyi +1 -2
  137. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  138. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  139. homeassistant-stubs/components/config/scene.pyi +1 -1
  140. homeassistant-stubs/components/config/script.pyi +0 -1
  141. homeassistant-stubs/components/cover/__init__.pyi +3 -1
  142. homeassistant-stubs/components/cover/const.pyi +2 -0
  143. homeassistant-stubs/components/cover/intent.pyi +1 -4
  144. homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
  145. homeassistant-stubs/components/crownstone/light.pyi +2 -2
  146. homeassistant-stubs/components/deako/__init__.pyi +14 -0
  147. homeassistant-stubs/components/deako/config_flow.pyi +6 -0
  148. homeassistant-stubs/components/deako/const.pyi +2 -0
  149. homeassistant-stubs/components/deako/light.pyi +32 -0
  150. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  151. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
  152. homeassistant-stubs/components/deconz/button.pyi +4 -4
  153. homeassistant-stubs/components/deconz/climate.pyi +3 -3
  154. homeassistant-stubs/components/deconz/cover.pyi +3 -3
  155. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  156. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  157. homeassistant-stubs/components/deconz/fan.pyi +3 -3
  158. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  159. homeassistant-stubs/components/deconz/light.pyi +3 -3
  160. homeassistant-stubs/components/deconz/lock.pyi +3 -3
  161. homeassistant-stubs/components/deconz/number.pyi +3 -3
  162. homeassistant-stubs/components/deconz/scene.pyi +3 -3
  163. homeassistant-stubs/components/deconz/select.pyi +6 -6
  164. homeassistant-stubs/components/deconz/sensor.pyi +6 -5
  165. homeassistant-stubs/components/deconz/siren.pyi +3 -3
  166. homeassistant-stubs/components/deconz/switch.pyi +3 -3
  167. homeassistant-stubs/components/demo/lock.pyi +1 -2
  168. homeassistant-stubs/components/demo/notify.pyi +1 -1
  169. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  170. homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
  171. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
  172. homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
  173. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  174. homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
  175. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  176. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  177. homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
  178. homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
  179. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
  180. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  181. homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
  182. homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
  183. homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
  184. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  185. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
  186. homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
  187. homeassistant-stubs/components/downloader/__init__.pyi +1 -9
  188. homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
  189. homeassistant-stubs/components/dsmr/const.pyi +1 -0
  190. homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
  191. homeassistant-stubs/components/efergy/__init__.pyi +0 -9
  192. homeassistant-stubs/components/efergy/entity.pyi +11 -0
  193. homeassistant-stubs/components/efergy/sensor.pyi +2 -1
  194. homeassistant-stubs/components/elevenlabs/__init__.pyi +1 -0
  195. homeassistant-stubs/components/elevenlabs/config_flow.pyi +8 -2
  196. homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
  197. homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
  198. homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
  199. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  200. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
  201. homeassistant-stubs/components/elkm1/climate.pyi +4 -1
  202. homeassistant-stubs/components/elkm1/entity.pyi +43 -0
  203. homeassistant-stubs/components/elkm1/light.pyi +2 -1
  204. homeassistant-stubs/components/elkm1/scene.pyi +2 -1
  205. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  206. homeassistant-stubs/components/elkm1/switch.pyi +19 -1
  207. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +3 -1
  208. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
  209. homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
  210. homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
  211. homeassistant-stubs/components/esphome/__init__.pyi +3 -2
  212. homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
  213. homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
  214. homeassistant-stubs/components/esphome/const.pyi +1 -0
  215. homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
  216. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
  217. homeassistant-stubs/components/esphome/manager.pyi +2 -9
  218. homeassistant-stubs/components/esphome/media_player.pyi +7 -1
  219. homeassistant-stubs/components/esphome/repairs.pyi +5 -0
  220. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
  221. homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
  222. homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
  223. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  224. homeassistant-stubs/components/evohome/const.pyi +5 -5
  225. homeassistant-stubs/components/fan/__init__.pyi +2 -0
  226. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  227. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
  228. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  229. homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
  230. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  231. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  232. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  233. homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
  234. homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
  235. homeassistant-stubs/components/fritzbox/light.pyi +2 -2
  236. homeassistant-stubs/components/fritzbox/sensor.pyi +5 -3
  237. homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
  238. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  239. homeassistant-stubs/components/frontend/storage.pyi +1 -1
  240. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
  241. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
  242. homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
  243. homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
  244. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
  245. homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
  246. homeassistant-stubs/components/google/calendar.pyi +20 -6
  247. homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
  248. homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
  249. homeassistant-stubs/components/google_cloud/const.pyi +19 -0
  250. homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
  251. homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
  252. homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
  253. homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
  254. homeassistant-stubs/components/google_photos/api.pyi +15 -0
  255. homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
  256. homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
  257. homeassistant-stubs/components/google_photos/const.pyi +8 -0
  258. homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
  259. homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
  260. homeassistant-stubs/components/google_photos/services.pyi +15 -0
  261. homeassistant-stubs/components/google_photos/types.pyi +4 -0
  262. homeassistant-stubs/components/group/__init__.pyi +1 -3
  263. homeassistant-stubs/components/group/button.pyi +1 -1
  264. homeassistant-stubs/components/group/const.pyi +7 -3
  265. homeassistant-stubs/components/group/cover.pyi +1 -1
  266. homeassistant-stubs/components/group/entity.pyi +1 -1
  267. homeassistant-stubs/components/group/event.pyi +1 -1
  268. homeassistant-stubs/components/group/fan.pyi +1 -1
  269. homeassistant-stubs/components/group/lock.pyi +2 -2
  270. homeassistant-stubs/components/group/media_player.pyi +1 -1
  271. homeassistant-stubs/components/group/notify.pyi +1 -1
  272. homeassistant-stubs/components/group/registry.pyi +2 -1
  273. homeassistant-stubs/components/group/sensor.pyi +1 -1
  274. homeassistant-stubs/components/group/switch.pyi +1 -1
  275. homeassistant-stubs/components/guardian/__init__.pyi +0 -24
  276. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
  277. homeassistant-stubs/components/guardian/button.pyi +2 -1
  278. homeassistant-stubs/components/guardian/entity.pyi +29 -0
  279. homeassistant-stubs/components/guardian/sensor.pyi +2 -1
  280. homeassistant-stubs/components/guardian/switch.pyi +2 -1
  281. homeassistant-stubs/components/guardian/util.pyi +1 -1
  282. homeassistant-stubs/components/guardian/valve.pyi +2 -1
  283. homeassistant-stubs/components/history/websocket_api.pyi +1 -2
  284. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  285. homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
  286. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  287. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  288. homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
  289. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  290. homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
  291. homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
  292. homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
  293. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  294. homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
  295. homeassistant-stubs/components/homekit/util.pyi +1 -0
  296. homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
  297. homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
  298. homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
  299. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
  300. homeassistant-stubs/components/homeworks/button.pyi +2 -1
  301. homeassistant-stubs/components/homeworks/config_flow.pyi +6 -2
  302. homeassistant-stubs/components/homeworks/entity.pyi +16 -0
  303. homeassistant-stubs/components/homeworks/light.pyi +2 -1
  304. homeassistant-stubs/components/homeworks/util.pyi +1 -0
  305. homeassistant-stubs/components/http/__init__.pyi +1 -1
  306. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
  307. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
  308. homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
  309. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
  310. homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
  311. homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
  312. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
  313. homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
  314. homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
  315. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  316. homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
  317. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
  318. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  319. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
  320. homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
  321. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
  322. homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
  323. homeassistant-stubs/components/image/__init__.pyi +1 -1
  324. homeassistant-stubs/components/image/const.pyi +4 -0
  325. homeassistant-stubs/components/image/media_source.pyi +2 -5
  326. homeassistant-stubs/components/ios/__init__.pyi +1 -15
  327. homeassistant-stubs/components/ios/const.pyi +16 -0
  328. homeassistant-stubs/components/ios/notify.pyi +1 -1
  329. homeassistant-stubs/components/ios/sensor.pyi +2 -2
  330. homeassistant-stubs/components/iotty/cover.pyi +36 -0
  331. homeassistant-stubs/components/iotty/entity.pyi +19 -0
  332. homeassistant-stubs/components/iotty/switch.pyi +2 -11
  333. homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
  334. homeassistant-stubs/components/iqvia/entity.pyi +18 -0
  335. homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
  336. homeassistant-stubs/components/isy994/const.pyi +2 -1
  337. homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
  338. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
  339. homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
  340. homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
  341. homeassistant-stubs/components/jvc_projector/coordinator.pyi +2 -1
  342. homeassistant-stubs/components/knx/__init__.pyi +4 -2
  343. homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
  344. homeassistant-stubs/components/knx/button.pyi +2 -2
  345. homeassistant-stubs/components/knx/climate.pyi +9 -3
  346. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  347. homeassistant-stubs/components/knx/const.pyi +9 -3
  348. homeassistant-stubs/components/knx/cover.pyi +2 -2
  349. homeassistant-stubs/components/knx/date.pyi +2 -2
  350. homeassistant-stubs/components/knx/datetime.pyi +2 -2
  351. homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
  352. homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
  353. homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +10 -5
  354. homeassistant-stubs/components/knx/fan.pyi +2 -2
  355. homeassistant-stubs/components/knx/light.pyi +3 -9
  356. homeassistant-stubs/components/knx/notify.pyi +2 -2
  357. homeassistant-stubs/components/knx/number.pyi +2 -2
  358. homeassistant-stubs/components/knx/scene.pyi +2 -2
  359. homeassistant-stubs/components/knx/schema.pyi +8 -2
  360. homeassistant-stubs/components/knx/select.pyi +2 -2
  361. homeassistant-stubs/components/knx/sensor.pyi +2 -2
  362. homeassistant-stubs/components/knx/services.pyi +1 -1
  363. homeassistant-stubs/components/knx/switch.pyi +3 -9
  364. homeassistant-stubs/components/knx/text.pyi +2 -2
  365. homeassistant-stubs/components/knx/time.pyi +2 -2
  366. homeassistant-stubs/components/knx/weather.pyi +2 -2
  367. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  368. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
  369. homeassistant-stubs/components/laundrify/__init__.pyi +2 -0
  370. homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
  371. homeassistant-stubs/components/laundrify/config_flow.pyi +1 -0
  372. homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
  373. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  374. homeassistant-stubs/components/lcn/__init__.pyi +8 -30
  375. homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
  376. homeassistant-stubs/components/lcn/climate.pyi +5 -5
  377. homeassistant-stubs/components/lcn/config_flow.pyi +8 -3
  378. homeassistant-stubs/components/lcn/const.pyi +1 -0
  379. homeassistant-stubs/components/lcn/cover.pyi +6 -6
  380. homeassistant-stubs/components/lcn/entity.pyi +28 -0
  381. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  382. homeassistant-stubs/components/lcn/light.pyi +6 -6
  383. homeassistant-stubs/components/lcn/scene.pyi +4 -5
  384. homeassistant-stubs/components/lcn/sensor.pyi +6 -6
  385. homeassistant-stubs/components/lcn/services.pyi +16 -0
  386. homeassistant-stubs/components/lcn/switch.pyi +6 -6
  387. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  388. homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
  389. homeassistant-stubs/components/lektrico/button.pyi +27 -0
  390. homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
  391. homeassistant-stubs/components/lektrico/const.pyi +4 -0
  392. homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
  393. homeassistant-stubs/components/lektrico/entity.pyi +10 -0
  394. homeassistant-stubs/components/lektrico/number.pyi +29 -0
  395. homeassistant-stubs/components/lektrico/select.pyi +30 -0
  396. homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
  397. homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
  398. homeassistant-stubs/components/lidarr/entity.pyi +13 -0
  399. homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
  400. homeassistant-stubs/components/light/__init__.pyi +4 -2
  401. homeassistant-stubs/components/linkplay/const.pyi +1 -1
  402. homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
  403. homeassistant-stubs/components/linkplay/utils.pyi +1 -1
  404. homeassistant-stubs/components/local_todo/todo.pyi +1 -0
  405. homeassistant-stubs/components/lock/__init__.pyi +4 -2
  406. homeassistant-stubs/components/lock/const.pyi +11 -0
  407. homeassistant-stubs/components/lock/device_condition.pyi +2 -2
  408. homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
  409. homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
  410. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
  411. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  412. homeassistant-stubs/components/madvr/__init__.pyi +1 -1
  413. homeassistant-stubs/components/madvr/config_flow.pyi +2 -1
  414. homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
  415. homeassistant-stubs/components/matter/button.pyi +25 -0
  416. homeassistant-stubs/components/matter/entity.pyi +1 -4
  417. homeassistant-stubs/components/matter/light.pyi +0 -1
  418. homeassistant-stubs/components/matter/models.pyi +5 -3
  419. homeassistant-stubs/components/matter/number.pyi +2 -2
  420. homeassistant-stubs/components/matter/sensor.pyi +9 -0
  421. homeassistant-stubs/components/matter/valve.pyi +33 -0
  422. homeassistant-stubs/components/media_player/__init__.pyi +11 -4
  423. homeassistant-stubs/components/media_player/const.pyi +67 -63
  424. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
  425. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  426. homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
  427. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
  428. homeassistant-stubs/components/modbus/climate.pyi +1 -1
  429. homeassistant-stubs/components/modbus/cover.pyi +1 -1
  430. homeassistant-stubs/components/modbus/fan.pyi +1 -1
  431. homeassistant-stubs/components/modbus/light.pyi +1 -1
  432. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  433. homeassistant-stubs/components/modbus/switch.pyi +1 -1
  434. homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
  435. homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
  436. homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
  437. homeassistant-stubs/components/mold_indicator/sensor.pyi +60 -0
  438. homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
  439. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  440. homeassistant-stubs/components/motionmount/number.pyi +1 -0
  441. homeassistant-stubs/components/motionmount/select.pyi +5 -0
  442. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  443. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
  444. homeassistant-stubs/components/mqtt/button.pyi +1 -1
  445. homeassistant-stubs/components/mqtt/camera.pyi +1 -1
  446. homeassistant-stubs/components/mqtt/climate.pyi +1 -6
  447. homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
  448. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  450. homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
  451. homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
  452. homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
  454. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  455. homeassistant-stubs/components/mqtt/fan.pyi +1 -1
  456. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  457. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  458. homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
  459. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  460. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
  461. homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
  462. homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
  463. homeassistant-stubs/components/mqtt/lock.pyi +1 -1
  464. homeassistant-stubs/components/mqtt/notify.pyi +1 -1
  465. homeassistant-stubs/components/mqtt/number.pyi +1 -1
  466. homeassistant-stubs/components/mqtt/scene.pyi +1 -1
  467. homeassistant-stubs/components/mqtt/select.pyi +1 -1
  468. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  469. homeassistant-stubs/components/mqtt/siren.pyi +1 -1
  470. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  471. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  472. homeassistant-stubs/components/mqtt/text.pyi +1 -1
  473. homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
  474. homeassistant-stubs/components/mqtt/update.pyi +1 -1
  475. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  476. homeassistant-stubs/components/mqtt/valve.pyi +3 -3
  477. homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
  478. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  479. homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
  480. homeassistant-stubs/components/mysensors/climate.pyi +3 -2
  481. homeassistant-stubs/components/mysensors/cover.pyi +3 -2
  482. homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
  483. homeassistant-stubs/components/mysensors/handler.pyi +1 -1
  484. homeassistant-stubs/components/mysensors/light.pyi +3 -3
  485. homeassistant-stubs/components/mysensors/remote.pyi +1 -1
  486. homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
  487. homeassistant-stubs/components/mysensors/switch.pyi +1 -1
  488. homeassistant-stubs/components/mysensors/text.pyi +2 -2
  489. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
  490. homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
  491. homeassistant-stubs/components/nest/media_source.pyi +1 -2
  492. homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
  493. homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
  494. homeassistant-stubs/components/network/websocket.pyi +1 -1
  495. homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
  496. homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
  497. homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
  498. homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
  499. homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
  500. homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
  501. homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
  502. homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
  503. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
  504. homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
  505. homeassistant-stubs/components/notify/__init__.pyi +3 -2
  506. homeassistant-stubs/components/notify/legacy.pyi +5 -6
  507. homeassistant-stubs/components/notify/repairs.pyi +1 -2
  508. homeassistant-stubs/components/notion/__init__.pyi +1 -23
  509. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
  510. homeassistant-stubs/components/notion/entity.pyi +33 -0
  511. homeassistant-stubs/components/notion/sensor.pyi +1 -2
  512. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  513. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  514. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  515. homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
  516. homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
  517. homeassistant-stubs/components/openuv/__init__.pyi +0 -11
  518. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
  519. homeassistant-stubs/components/openuv/entity.pyi +14 -0
  520. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  521. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  522. homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
  523. homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
  524. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  525. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
  526. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
  527. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
  528. homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
  529. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
  530. homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
  531. homeassistant-stubs/components/pi_hole/update.pyi +2 -1
  532. homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
  533. homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
  534. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  535. homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
  536. homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
  537. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  538. homeassistant-stubs/components/prusalink/camera.pyi +1 -1
  539. homeassistant-stubs/components/prusalink/entity.pyi +9 -0
  540. homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
  541. homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
  542. homeassistant-stubs/components/purpleair/entity.pyi +21 -0
  543. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  544. homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
  545. homeassistant-stubs/components/radarr/__init__.pyi +2 -15
  546. homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
  547. homeassistant-stubs/components/radarr/calendar.pyi +2 -1
  548. homeassistant-stubs/components/radarr/entity.pyi +16 -0
  549. homeassistant-stubs/components/radarr/sensor.pyi +2 -1
  550. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
  551. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
  552. homeassistant-stubs/components/rainmachine/button.pyi +2 -2
  553. homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
  554. homeassistant-stubs/components/rainmachine/select.pyi +2 -2
  555. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  556. homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
  557. homeassistant-stubs/components/rainmachine/update.pyi +2 -2
  558. homeassistant-stubs/components/recorder/const.pyi +2 -2
  559. homeassistant-stubs/components/recorder/core.pyi +3 -7
  560. homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
  561. homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
  562. homeassistant-stubs/components/recorder/migration.pyi +28 -25
  563. homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
  564. homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
  565. homeassistant-stubs/components/recorder/models/time.pyi +0 -1
  566. homeassistant-stubs/components/recorder/statistics.pyi +2 -1
  567. homeassistant-stubs/components/recorder/tasks.pyi +4 -17
  568. homeassistant-stubs/components/recorder/util.pyi +6 -2
  569. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -3
  570. homeassistant-stubs/components/remote/__init__.pyi +2 -0
  571. homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
  572. homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
  573. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
  574. homeassistant-stubs/components/renault/services.pyi +4 -0
  575. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
  576. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
  577. homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
  578. homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
  579. homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
  580. homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
  581. homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
  582. homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
  583. homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
  584. homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
  585. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
  586. homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
  587. homeassistant-stubs/components/ring/__init__.pyi +10 -9
  588. homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
  589. homeassistant-stubs/components/ring/button.pyi +2 -4
  590. homeassistant-stubs/components/ring/camera.pyi +2 -4
  591. homeassistant-stubs/components/ring/config_flow.pyi +2 -1
  592. homeassistant-stubs/components/ring/const.pyi +1 -1
  593. homeassistant-stubs/components/ring/coordinator.pyi +22 -7
  594. homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
  595. homeassistant-stubs/components/ring/entity.pyi +27 -7
  596. homeassistant-stubs/components/ring/event.pyi +30 -0
  597. homeassistant-stubs/components/ring/light.pyi +2 -4
  598. homeassistant-stubs/components/ring/number.pyi +33 -0
  599. homeassistant-stubs/components/ring/sensor.pyi +6 -8
  600. homeassistant-stubs/components/ring/siren.pyi +30 -14
  601. homeassistant-stubs/components/ring/switch.pyi +25 -17
  602. homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
  603. homeassistant-stubs/components/roborock/button.pyi +1 -1
  604. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  605. homeassistant-stubs/components/roborock/image.pyi +1 -1
  606. homeassistant-stubs/components/roborock/number.pyi +3 -2
  607. homeassistant-stubs/components/roborock/select.pyi +2 -1
  608. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  609. homeassistant-stubs/components/roborock/switch.pyi +3 -2
  610. homeassistant-stubs/components/roborock/time.pyi +3 -2
  611. homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
  612. homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
  613. homeassistant-stubs/components/scene/__init__.pyi +2 -0
  614. homeassistant-stubs/components/schedule/__init__.pyi +5 -1
  615. homeassistant-stubs/components/schedule/const.pyi +1 -0
  616. homeassistant-stubs/components/script/helpers.pyi +1 -1
  617. homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
  618. homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
  619. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
  620. homeassistant-stubs/components/sensor/recorder.pyi +10 -6
  621. homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
  622. homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
  623. homeassistant-stubs/components/sensoterra/const.pyi +9 -0
  624. homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
  625. homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
  626. homeassistant-stubs/components/shelly/cover.pyi +7 -1
  627. homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
  628. homeassistant-stubs/components/shelly/update.pyi +1 -0
  629. homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
  630. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
  631. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
  632. homeassistant-stubs/components/simplisafe/button.pyi +2 -1
  633. homeassistant-stubs/components/simplisafe/const.pyi +6 -0
  634. homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
  635. homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
  636. homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
  637. homeassistant-stubs/components/siren/__init__.pyi +2 -0
  638. homeassistant-stubs/components/slack/__init__.pyi +1 -13
  639. homeassistant-stubs/components/slack/entity.pyi +15 -0
  640. homeassistant-stubs/components/slack/sensor.pyi +1 -1
  641. homeassistant-stubs/components/smlight/__init__.pyi +18 -0
  642. homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
  643. homeassistant-stubs/components/smlight/button.pyi +32 -0
  644. homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
  645. homeassistant-stubs/components/smlight/const.pyi +11 -0
  646. homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
  647. homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
  648. homeassistant-stubs/components/smlight/entity.pyi +10 -0
  649. homeassistant-stubs/components/smlight/sensor.pyi +56 -0
  650. homeassistant-stubs/components/smlight/switch.pyi +39 -0
  651. homeassistant-stubs/components/smlight/update.pyi +48 -0
  652. homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
  653. homeassistant-stubs/components/solarlog/config_flow.pyi +27 -0
  654. homeassistant-stubs/components/solarlog/const.pyi +4 -0
  655. homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
  656. homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
  657. homeassistant-stubs/components/solarlog/entity.pyi +23 -0
  658. homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
  659. homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
  660. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
  661. homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
  662. homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
  663. homeassistant-stubs/components/squeezebox/const.pyi +29 -0
  664. homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
  665. homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
  666. homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
  667. homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
  668. homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
  669. homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
  670. homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
  671. homeassistant-stubs/components/stt/const.pyi +6 -2
  672. homeassistant-stubs/components/surepetcare/config_flow.pyi +2 -6
  673. homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
  674. homeassistant-stubs/components/switch/__init__.pyi +2 -0
  675. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  676. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
  677. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  678. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
  679. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  680. homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
  681. homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
  682. homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
  683. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  684. homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
  685. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  686. homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
  687. homeassistant-stubs/components/tailscale/entity.pyi +15 -0
  688. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  689. homeassistant-stubs/components/tailwind/cover.pyi +1 -1
  690. homeassistant-stubs/components/tami4/button.pyi +14 -1
  691. homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
  692. homeassistant-stubs/components/tautulli/entity.pyi +15 -0
  693. homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
  694. homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
  695. homeassistant-stubs/components/tcp/common.pyi +0 -17
  696. homeassistant-stubs/components/tcp/entity.pyi +21 -0
  697. homeassistant-stubs/components/tcp/sensor.pyi +2 -1
  698. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
  699. homeassistant-stubs/components/threshold/const.pyi +20 -5
  700. homeassistant-stubs/components/tibber/services.pyi +2 -2
  701. homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
  702. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  703. homeassistant-stubs/components/todo/const.pyi +4 -0
  704. homeassistant-stubs/components/todo/intent.pyi +2 -2
  705. homeassistant-stubs/components/tolo/__init__.pyi +3 -22
  706. homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
  707. homeassistant-stubs/components/tolo/button.pyi +2 -1
  708. homeassistant-stubs/components/tolo/climate.pyi +2 -1
  709. homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
  710. homeassistant-stubs/components/tolo/entity.pyi +11 -0
  711. homeassistant-stubs/components/tolo/fan.pyi +2 -1
  712. homeassistant-stubs/components/tolo/light.pyi +2 -1
  713. homeassistant-stubs/components/tolo/number.pyi +2 -1
  714. homeassistant-stubs/components/tolo/select.pyi +2 -1
  715. homeassistant-stubs/components/tolo/sensor.pyi +2 -1
  716. homeassistant-stubs/components/tolo/switch.pyi +2 -1
  717. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
  718. homeassistant-stubs/components/tplink/button.pyi +2 -1
  719. homeassistant-stubs/components/tplink/deprecate.pyi +18 -0
  720. homeassistant-stubs/components/tplink/entity.pyi +8 -4
  721. homeassistant-stubs/components/tplink/number.pyi +3 -1
  722. homeassistant-stubs/components/tplink/select.pyi +1 -1
  723. homeassistant-stubs/components/tplink/sensor.pyi +2 -1
  724. homeassistant-stubs/components/tplink/siren.pyi +22 -0
  725. homeassistant-stubs/components/tplink/switch.pyi +1 -1
  726. homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
  727. homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
  728. homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
  729. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
  730. homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
  731. homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
  732. homeassistant-stubs/components/trace/__init__.pyi +1 -2
  733. homeassistant-stubs/components/trace/const.pyi +7 -3
  734. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
  735. homeassistant-stubs/components/tradfri/cover.pyi +1 -1
  736. homeassistant-stubs/components/tradfri/fan.pyi +1 -1
  737. homeassistant-stubs/components/tradfri/light.pyi +1 -1
  738. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  739. homeassistant-stubs/components/tradfri/switch.pyi +1 -1
  740. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  741. homeassistant-stubs/components/tts/const.pyi +6 -1
  742. homeassistant-stubs/components/tts/helper.pyi +2 -3
  743. homeassistant-stubs/components/tts/legacy.pyi +0 -1
  744. homeassistant-stubs/components/tts/media_source.pyi +3 -3
  745. homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
  746. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  747. homeassistant-stubs/components/unifi/switch.pyi +1 -1
  748. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
  749. homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
  750. homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
  751. homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
  752. homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
  753. homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
  754. homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
  755. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
  756. homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
  757. homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
  758. homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
  759. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
  760. homeassistant-stubs/components/upcloud/const.pyi +1 -0
  761. homeassistant-stubs/components/upcloud/entity.pyi +38 -0
  762. homeassistant-stubs/components/upcloud/switch.pyi +4 -1
  763. homeassistant-stubs/components/update/__init__.pyi +1 -0
  764. homeassistant-stubs/components/uvc/__init__.pyi +0 -0
  765. homeassistant-stubs/components/uvc/camera.pyi +54 -0
  766. homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
  767. homeassistant-stubs/components/vallox/__init__.pyi +6 -9
  768. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  769. homeassistant-stubs/components/vallox/config_flow.pyi +5 -2
  770. homeassistant-stubs/components/vallox/const.pyi +3 -3
  771. homeassistant-stubs/components/vallox/date.pyi +1 -1
  772. homeassistant-stubs/components/vallox/entity.pyi +12 -0
  773. homeassistant-stubs/components/vallox/fan.pyi +2 -2
  774. homeassistant-stubs/components/vallox/number.pyi +1 -1
  775. homeassistant-stubs/components/vallox/sensor.pyi +2 -2
  776. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  777. homeassistant-stubs/components/valve/__init__.pyi +3 -1
  778. homeassistant-stubs/components/valve/const.pyi +9 -0
  779. homeassistant-stubs/components/velbus/climate.pyi +4 -1
  780. homeassistant-stubs/components/wallbox/const.pyi +4 -0
  781. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
  782. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  783. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  784. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  785. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  786. homeassistant-stubs/components/weather/const.pyi +5 -0
  787. homeassistant-stubs/components/weather/intent.pyi +1 -3
  788. homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
  789. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  790. homeassistant-stubs/components/withings/config_flow.pyi +1 -1
  791. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
  792. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
  793. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
  794. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
  795. homeassistant-stubs/components/youtube/const.pyi +1 -0
  796. homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
  797. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  798. homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
  799. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  800. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  801. homeassistant-stubs/components/zwave_js/const.pyi +1 -0
  802. homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
  803. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
  804. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
  805. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
  806. homeassistant-stubs/components/zwave_js/entity.pyi +1 -2
  807. homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
  808. homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
  809. homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
  810. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +1 -1
  811. homeassistant-stubs/config_entries.pyi +9 -4
  812. homeassistant-stubs/const.pyi +19 -8
  813. homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
  814. homeassistant-stubs/helpers/condition.pyi +2 -0
  815. homeassistant-stubs/helpers/config_validation.pyi +5 -1
  816. homeassistant-stubs/helpers/discovery.pyi +1 -1
  817. homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
  818. homeassistant-stubs/helpers/frame.pyi +1 -1
  819. homeassistant-stubs/helpers/llm.pyi +5 -5
  820. homeassistant-stubs/helpers/script.pyi +1 -1
  821. homeassistant-stubs/helpers/state.pyi +2 -1
  822. homeassistant-stubs/helpers/template.pyi +5 -1
  823. homeassistant-stubs/util/aiohttp.pyi +10 -0
  824. homeassistant-stubs/util/package.pyi +3 -0
  825. homeassistant-stubs/util/ssl.pyi +8 -4
  826. homeassistant-stubs/util/unit_conversion.pyi +2 -0
  827. homeassistant-stubs/util/unit_system.pyi +1 -0
  828. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/METADATA +14 -16
  829. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/RECORD +904 -779
  830. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info}/WHEEL +1 -1
  831. homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
  832. homeassistant-stubs/components/notion/model.pyi +0 -7
  833. homeassistant-stubs/components/overkiz/climate.pyi +0 -10
  834. homeassistant-stubs/components/overkiz/cover.pyi +0 -11
  835. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
  836. homeassistant-stubs/components/rainmachine/model.pyi +0 -7
  837. homeassistant-stubs/components/recorder/history/common.pyi +0 -4
  838. homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
  839. /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
  840. /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
  841. /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
  842. /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
  843. /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
  844. /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
  845. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
  846. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
  847. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
  848. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
  849. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
  850. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
  851. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
  852. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
  853. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
  854. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
  855. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
  856. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
  857. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
  858. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
  859. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
  860. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
  861. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
  862. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
  863. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
  864. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
  865. /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
  866. /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
  867. {homeassistant_stubs-2024.9.2.dist-info → homeassistant_stubs-2024.10.0.dist-info/licenses}/LICENSE +0 -0
@@ -1,5 +1,6 @@
1
- from . import HomeworksData as HomeworksData, HomeworksEntity as HomeworksEntity, HomeworksKeypad as HomeworksKeypad
1
+ from . import HomeworksData as HomeworksData, HomeworksKeypad as HomeworksKeypad
2
2
  from .const import CONF_ADDR as CONF_ADDR, CONF_BUTTONS as CONF_BUTTONS, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_KEYPADS as CONF_KEYPADS, CONF_LED as CONF_LED, CONF_NUMBER as CONF_NUMBER, DOMAIN as DOMAIN
3
+ from .entity import HomeworksEntity as HomeworksEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.binary_sensor import BinarySensorEntity as BinarySensorEntity
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,5 +1,6 @@
1
- from . import HomeworksData as HomeworksData, HomeworksEntity as HomeworksEntity
1
+ from . import HomeworksData as HomeworksData
2
2
  from .const import CONF_ADDR as CONF_ADDR, CONF_BUTTONS as CONF_BUTTONS, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_KEYPADS as CONF_KEYPADS, CONF_NUMBER as CONF_NUMBER, CONF_RELEASE_DELAY as CONF_RELEASE_DELAY, DOMAIN as DOMAIN
3
+ from .entity import HomeworksEntity as HomeworksEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.button import ButtonEntity as ButtonEntity
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,7 +1,8 @@
1
1
  import voluptuous as vol
2
- from . import DEFAULT_FADE_RATE as DEFAULT_FADE_RATE, calculate_unique_id as calculate_unique_id
3
2
  from .const import CONF_ADDR as CONF_ADDR, CONF_BUTTONS as CONF_BUTTONS, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_DIMMERS as CONF_DIMMERS, CONF_INDEX as CONF_INDEX, CONF_KEYPADS as CONF_KEYPADS, CONF_LED as CONF_LED, CONF_NUMBER as CONF_NUMBER, CONF_RATE as CONF_RATE, CONF_RELEASE_DELAY as CONF_RELEASE_DELAY, DEFAULT_BUTTON_NAME as DEFAULT_BUTTON_NAME, DEFAULT_KEYPAD_NAME as DEFAULT_KEYPAD_NAME, DEFAULT_LIGHT_NAME as DEFAULT_LIGHT_NAME, DOMAIN as DOMAIN
3
+ from .util import calculate_unique_id as calculate_unique_id
4
4
  from _typeshed import Incomplete
5
+ from collections.abc import Mapping
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
7
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_USERNAME as CONF_USERNAME
7
8
  from homeassistant.core import async_get_hass as async_get_hass, callback as callback
@@ -14,6 +15,7 @@ from homeassistant.util import slugify as slugify
14
15
  from typing import Any
15
16
 
16
17
  _LOGGER: Incomplete
18
+ DEFAULT_FADE_RATE: float
17
19
  CONTROLLER_EDIT: Incomplete
18
20
  LIGHT_EDIT: VolDictType
19
21
  BUTTON_EDIT: VolDictType
@@ -51,8 +53,10 @@ DATA_SCHEMA_EDIT_LIGHT: Incomplete
51
53
  OPTIONS_FLOW: Incomplete
52
54
 
53
55
  class HomeworksConfigFlowHandler(ConfigFlow, domain=DOMAIN):
56
+ _context_entry: ConfigEntry
54
57
  async def _validate_edit_controller(self, user_input: dict[str, Any]) -> dict[str, Any]: ...
55
- async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
58
+ async def async_step_reconfigure(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
59
+ async def async_step_reconfigure_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
56
60
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
57
61
  @staticmethod
58
62
  def async_get_options_flow(config_entry: ConfigEntry) -> SchemaOptionsFlowHandler: ...
@@ -0,0 +1,16 @@
1
+ from .util import calculate_unique_id as calculate_unique_id
2
+ from _typeshed import Incomplete
3
+ from homeassistant.helpers.entity import Entity as Entity
4
+ from pyhomeworks.pyhomeworks import Homeworks as Homeworks
5
+
6
+ class HomeworksEntity(Entity):
7
+ _attr_has_entity_name: bool
8
+ _attr_should_poll: bool
9
+ _addr: Incomplete
10
+ _idx: Incomplete
11
+ _controller_id: Incomplete
12
+ _attr_name: Incomplete
13
+ _attr_unique_id: Incomplete
14
+ _controller: Incomplete
15
+ _attr_extra_state_attributes: Incomplete
16
+ def __init__(self, controller: Homeworks, controller_id: str, addr: str, idx: int, name: str | None) -> None: ...
@@ -1,5 +1,6 @@
1
- from . import HomeworksData as HomeworksData, HomeworksEntity as HomeworksEntity
1
+ from . import HomeworksData as HomeworksData
2
2
  from .const import CONF_ADDR as CONF_ADDR, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_DIMMERS as CONF_DIMMERS, CONF_RATE as CONF_RATE, DOMAIN as DOMAIN
3
+ from .entity import HomeworksEntity as HomeworksEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ColorMode as ColorMode, LightEntity as LightEntity
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -0,0 +1 @@
1
+ def calculate_unique_id(controller_id: str, addr: str, idx: int) -> str: ...
@@ -22,7 +22,7 @@ from aiohttp.web_protocol import RequestHandler as RequestHandler
22
22
  from collections.abc import Collection
23
23
  from dataclasses import dataclass
24
24
  from homeassistant.components.network import async_get_source_ip as async_get_source_ip
25
- from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, SERVER_PORT as SERVER_PORT
25
+ from homeassistant.const import EVENT_HOMEASSISTANT_START as EVENT_HOMEASSISTANT_START, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, SERVER_PORT as SERVER_PORT
26
26
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
27
27
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
28
28
  from homeassistant.helpers import frame as frame, storage as storage
@@ -9,8 +9,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as Se
9
9
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
10
10
  from homeassistant.helpers import discovery as discovery
11
11
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
12
- from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, dispatcher_send as dispatcher_send
13
- from homeassistant.helpers.entity import Entity as Entity
12
+ from homeassistant.helpers.dispatcher import dispatcher_send as dispatcher_send
14
13
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
15
14
  from homeassistant.helpers.service import async_register_admin_service as async_register_admin_service
16
15
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -58,25 +57,3 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ..
58
57
  async def async_unload_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
59
58
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
60
59
  async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
61
-
62
- class HuaweiLteBaseEntity(Entity):
63
- _available: bool
64
- _attr_has_entity_name: bool
65
- _attr_should_poll: bool
66
- router: Incomplete
67
- _unsub_handlers: Incomplete
68
- def __init__(self, router: Router) -> None: ...
69
- @property
70
- def _device_unique_id(self) -> str: ...
71
- @property
72
- def unique_id(self) -> str: ...
73
- @property
74
- def available(self) -> bool: ...
75
- async def async_update(self) -> None: ...
76
- async def async_added_to_hass(self) -> None: ...
77
- async def _async_maybe_update(self, config_entry_unique_id: str) -> None: ...
78
- async def async_will_remove_from_hass(self) -> None: ...
79
-
80
- class HuaweiLteBaseEntityWithDevice(HuaweiLteBaseEntity):
81
- @property
82
- def device_info(self) -> DeviceInfo: ...
@@ -1,5 +1,5 @@
1
- from . import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
2
1
  from .const import DOMAIN as DOMAIN, KEY_MONITORING_CHECK_NOTIFICATIONS as KEY_MONITORING_CHECK_NOTIFICATIONS, KEY_MONITORING_STATUS as KEY_MONITORING_STATUS, KEY_WLAN_WIFI_FEATURE_SWITCH as KEY_WLAN_WIFI_FEATURE_SWITCH
2
+ from .entity import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.binary_sensor import BinarySensorEntity as BinarySensorEntity
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,5 +1,5 @@
1
- from . import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
2
1
  from .const import DOMAIN as DOMAIN
2
+ from .entity import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceClass, ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,7 +1,8 @@
1
- from . import HuaweiLteBaseEntity as HuaweiLteBaseEntity, Router as Router
1
+ from . import Router as Router
2
2
  from .const import CONF_TRACK_WIRED_CLIENTS as CONF_TRACK_WIRED_CLIENTS, DEFAULT_TRACK_WIRED_CLIENTS as DEFAULT_TRACK_WIRED_CLIENTS, DOMAIN as DOMAIN, KEY_LAN_HOST_INFO as KEY_LAN_HOST_INFO, KEY_WLAN_HOST_LIST as KEY_WLAN_HOST_LIST, UPDATE_SIGNAL as UPDATE_SIGNAL
3
+ from .entity import HuaweiLteBaseEntity as HuaweiLteBaseEntity
3
4
  from _typeshed import Incomplete
4
- from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity, SourceType as SourceType
5
+ from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
8
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
@@ -33,8 +34,6 @@ class HuaweiLteScannerEntity(HuaweiLteBaseEntity, ScannerEntity):
33
34
  @property
34
35
  def _device_unique_id(self) -> str: ...
35
36
  @property
36
- def source_type(self) -> SourceType: ...
37
- @property
38
37
  def ip_address(self) -> str | None: ...
39
38
  @property
40
39
  def mac_address(self) -> str: ...
@@ -0,0 +1,31 @@
1
+ from . import Router as Router
2
+ from .const import UPDATE_SIGNAL as UPDATE_SIGNAL
3
+ from _typeshed import Incomplete
4
+ from collections.abc import Callable as Callable
5
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
6
+ from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
7
+ from homeassistant.helpers.entity import Entity as Entity
8
+
9
+ SCAN_INTERVAL: Incomplete
10
+
11
+ class HuaweiLteBaseEntity(Entity):
12
+ _available: bool
13
+ _attr_has_entity_name: bool
14
+ _attr_should_poll: bool
15
+ router: Incomplete
16
+ _unsub_handlers: Incomplete
17
+ def __init__(self, router: Router) -> None: ...
18
+ @property
19
+ def _device_unique_id(self) -> str: ...
20
+ @property
21
+ def unique_id(self) -> str: ...
22
+ @property
23
+ def available(self) -> bool: ...
24
+ async def async_update(self) -> None: ...
25
+ async def async_added_to_hass(self) -> None: ...
26
+ async def _async_maybe_update(self, config_entry_unique_id: str) -> None: ...
27
+ async def async_will_remove_from_hass(self) -> None: ...
28
+
29
+ class HuaweiLteBaseEntityWithDevice(HuaweiLteBaseEntity):
30
+ @property
31
+ def device_info(self) -> DeviceInfo: ...
@@ -1,5 +1,6 @@
1
- from . import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice, Router as Router
1
+ from . import Router as Router
2
2
  from .const import DOMAIN as DOMAIN, KEY_NET_NET_MODE as KEY_NET_NET_MODE
3
+ from .entity import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Callable as Callable
5
6
  from dataclasses import dataclass
@@ -1,6 +1,7 @@
1
1
  import re
2
- from . import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice, Router as Router
2
+ from . import Router as Router
3
3
  from .const import DOMAIN as DOMAIN, KEY_DEVICE_INFORMATION as KEY_DEVICE_INFORMATION, KEY_DEVICE_SIGNAL as KEY_DEVICE_SIGNAL, KEY_MONITORING_CHECK_NOTIFICATIONS as KEY_MONITORING_CHECK_NOTIFICATIONS, KEY_MONITORING_MONTH_STATISTICS as KEY_MONITORING_MONTH_STATISTICS, KEY_MONITORING_STATUS as KEY_MONITORING_STATUS, KEY_MONITORING_TRAFFIC_STATISTICS as KEY_MONITORING_TRAFFIC_STATISTICS, KEY_NET_CURRENT_PLMN as KEY_NET_CURRENT_PLMN, KEY_NET_NET_MODE as KEY_NET_NET_MODE, KEY_SMS_SMS_COUNT as KEY_SMS_SMS_COUNT, SENSOR_KEYS as SENSOR_KEYS
4
+ from .entity import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Callable as Callable, Sequence
6
7
  from dataclasses import dataclass
@@ -1,5 +1,5 @@
1
- from . import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
2
1
  from .const import DOMAIN as DOMAIN, KEY_DIALUP_MOBILE_DATASWITCH as KEY_DIALUP_MOBILE_DATASWITCH, KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH as KEY_WLAN_WIFI_GUEST_NETWORK_SWITCH
2
+ from .entity import HuaweiLteBaseEntityWithDevice as HuaweiLteBaseEntityWithDevice
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,18 +1,21 @@
1
- from .const import ATTR_ACTION as ATTR_ACTION, ATTR_AVAILABLE_MODES as ATTR_AVAILABLE_MODES, ATTR_CURRENT_HUMIDITY as ATTR_CURRENT_HUMIDITY, ATTR_HUMIDITY as ATTR_HUMIDITY, ATTR_MAX_HUMIDITY as ATTR_MAX_HUMIDITY, ATTR_MIN_HUMIDITY as ATTR_MIN_HUMIDITY, DEFAULT_MAX_HUMIDITY as DEFAULT_MAX_HUMIDITY, DEFAULT_MIN_HUMIDITY as DEFAULT_MIN_HUMIDITY, DOMAIN as DOMAIN, HumidifierAction as HumidifierAction, HumidifierEntityFeature as HumidifierEntityFeature, MODE_AUTO as MODE_AUTO, MODE_AWAY as MODE_AWAY, MODE_NORMAL as MODE_NORMAL, SERVICE_SET_HUMIDITY as SERVICE_SET_HUMIDITY, SERVICE_SET_MODE as SERVICE_SET_MODE, _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER as _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER, _DEPRECATED_DEVICE_CLASS_HUMIDIFIER as _DEPRECATED_DEVICE_CLASS_HUMIDIFIER, _DEPRECATED_SUPPORT_MODES as _DEPRECATED_SUPPORT_MODES
1
+ from .const import ATTR_ACTION as ATTR_ACTION, ATTR_AVAILABLE_MODES as ATTR_AVAILABLE_MODES, ATTR_CURRENT_HUMIDITY as ATTR_CURRENT_HUMIDITY, ATTR_HUMIDITY as ATTR_HUMIDITY, ATTR_MAX_HUMIDITY as ATTR_MAX_HUMIDITY, ATTR_MIN_HUMIDITY as ATTR_MIN_HUMIDITY, DEFAULT_MAX_HUMIDITY as DEFAULT_MAX_HUMIDITY, DEFAULT_MIN_HUMIDITY as DEFAULT_MIN_HUMIDITY, DOMAIN as DOMAIN, HumidifierAction as HumidifierAction, HumidifierEntityFeature as HumidifierEntityFeature, MODE_AUTO as MODE_AUTO, MODE_AWAY as MODE_AWAY, MODE_BABY as MODE_BABY, MODE_BOOST as MODE_BOOST, MODE_COMFORT as MODE_COMFORT, MODE_ECO as MODE_ECO, MODE_HOME as MODE_HOME, MODE_NORMAL as MODE_NORMAL, MODE_SLEEP as MODE_SLEEP, SERVICE_SET_HUMIDITY as SERVICE_SET_HUMIDITY, SERVICE_SET_MODE as SERVICE_SET_MODE, _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER as _DEPRECATED_DEVICE_CLASS_DEHUMIDIFIER, _DEPRECATED_DEVICE_CLASS_HUMIDIFIER as _DEPRECATED_DEVICE_CLASS_HUMIDIFIER, _DEPRECATED_SUPPORT_MODES as _DEPRECATED_SUPPORT_MODES
2
2
  from _typeshed import Incomplete
3
3
  from enum import StrEnum
4
4
  from functools import cached_property as cached_property
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import ATTR_MODE as ATTR_MODE, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_ON as STATE_ON
7
- from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
8
+ from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
8
9
  from homeassistant.helpers.deprecation import all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
9
10
  from homeassistant.helpers.entity import ToggleEntity as ToggleEntity, ToggleEntityDescription as ToggleEntityDescription
10
11
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
11
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
13
  from homeassistant.loader import bind_hass as bind_hass
14
+ from homeassistant.util.hass_dict import HassKey as HassKey
13
15
  from typing import Any
14
16
 
15
17
  _LOGGER: Incomplete
18
+ DATA_COMPONENT: HassKey[EntityComponent[HumidifierEntity]]
16
19
  ENTITY_ID_FORMAT: Incomplete
17
20
  PLATFORM_SCHEMA: Incomplete
18
21
  PLATFORM_SCHEMA_BASE: Incomplete
@@ -77,6 +80,8 @@ class HumidifierEntity(ToggleEntity, cached_properties=CACHED_PROPERTIES_WITH_AT
77
80
  @property
78
81
  def supported_features_compat(self) -> HumidifierEntityFeature: ...
79
82
 
83
+ async def async_service_humidity_set(entity: HumidifierEntity, service_call: ServiceCall) -> None: ...
84
+
80
85
  __getattr__: Incomplete
81
86
  __dir__: Incomplete
82
87
  __all__: Incomplete
@@ -1,4 +1,5 @@
1
1
  from . import api as api
2
+ from .const import DOMAIN as DOMAIN
2
3
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -13,3 +14,4 @@ AutomowerConfigEntry = ConfigEntry[AutomowerDataUpdateCoordinator]
13
14
 
14
15
  async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
15
16
  async def async_unload_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
17
+ def cleanup_removed_devices(hass: HomeAssistant, config_entry: ConfigEntry, available_devices: list[str]) -> None: ...
@@ -1,21 +1,35 @@
1
1
  from . import AutomowerConfigEntry as AutomowerConfigEntry
2
- from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
4
- from .entity import AutomowerAvailableEntity as AutomowerAvailableEntity
3
+ from .entity import AutomowerAvailableEntity as AutomowerAvailableEntity, _check_error_free as _check_error_free, handle_sending_exception as handle_sending_exception
5
4
  from _typeshed import Incomplete
6
- from homeassistant.components.button import ButtonEntity as ButtonEntity
5
+ from aioautomower.model import MowerAttributes as MowerAttributes
6
+ from aioautomower.session import AutomowerSession as AutomowerSession
7
+ from collections.abc import Awaitable, Callable as Callable
8
+ from dataclasses import dataclass
9
+ from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
7
10
  from homeassistant.core import HomeAssistant as HomeAssistant
8
- from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
+ from typing import Any
10
13
 
11
14
  _LOGGER: Incomplete
12
15
 
16
+ async def _async_set_time(session: AutomowerSession, mower_id: str) -> None: ...
17
+
18
+ @dataclass(frozen=True, kw_only=True)
19
+ class AutomowerButtonEntityDescription(ButtonEntityDescription):
20
+ available_fn: Callable[[MowerAttributes], bool] = ...
21
+ exists_fn: Callable[[MowerAttributes], bool] = ...
22
+ press_fn: Callable[[AutomowerSession, str], Awaitable[Any]]
23
+ 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=..., available_fn=..., exists_fn=..., press_fn) -> None: ...
24
+
25
+ BUTTON_TYPES: tuple[AutomowerButtonEntityDescription, ...]
26
+
13
27
  async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
28
 
15
29
  class AutomowerButtonEntity(AutomowerAvailableEntity, ButtonEntity):
16
- _attr_translation_key: str
30
+ entity_description: AutomowerButtonEntityDescription
17
31
  _attr_unique_id: Incomplete
18
- def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
32
+ def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator, description: AutomowerButtonEntityDescription) -> None: ...
19
33
  @property
20
34
  def available(self) -> bool: ...
21
35
  async def async_press(self) -> None: ...
@@ -0,0 +1,21 @@
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
+ from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
+ from .entity import AutomowerBaseEntity as AutomowerBaseEntity
4
+ from _typeshed import Incomplete
5
+ from datetime import datetime
6
+ from homeassistant.components.calendar import CalendarEntity as CalendarEntity, CalendarEvent as CalendarEvent
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+
10
+ _LOGGER: Incomplete
11
+
12
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
13
+
14
+ class AutomowerCalendarEntity(AutomowerBaseEntity, CalendarEntity):
15
+ _attr_name: str | None
16
+ _attr_unique_id: Incomplete
17
+ _event: Incomplete
18
+ def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
19
+ @property
20
+ def event(self) -> CalendarEvent | None: ...
21
+ async def async_get_events(self, hass: HomeAssistant, start_date: datetime, end_date: datetime) -> list[CalendarEvent]: ...
@@ -12,6 +12,7 @@ MAX_WS_RECONNECT_TIME: int
12
12
  SCAN_INTERVAL: Incomplete
13
13
 
14
14
  class AutomowerDataUpdateCoordinator(DataUpdateCoordinator[dict[str, MowerAttributes]]):
15
+ config_entry: ConfigEntry
15
16
  api: Incomplete
16
17
  ws_connected: bool
17
18
  def __init__(self, hass: HomeAssistant, api: AutomowerSession, entry: ConfigEntry) -> None: ...
@@ -2,7 +2,7 @@ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
3
  from .entity import AutomowerBaseEntity as AutomowerBaseEntity
4
4
  from _typeshed import Incomplete
5
- from homeassistant.components.device_tracker import SourceType as SourceType, TrackerEntity as TrackerEntity
5
+ from homeassistant.components.device_tracker import TrackerEntity as TrackerEntity
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
 
@@ -13,8 +13,6 @@ class AutomowerDeviceTrackerEntity(AutomowerBaseEntity, TrackerEntity):
13
13
  _attr_unique_id: Incomplete
14
14
  def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
15
15
  @property
16
- def source_type(self) -> SourceType: ...
17
- @property
18
16
  def latitude(self) -> float: ...
19
17
  @property
20
18
  def longitude(self) -> float: ...
@@ -1,8 +1,9 @@
1
- from . import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry, AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
2
2
  from .const import DOMAIN as DOMAIN, EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
3
3
  from _typeshed import Incomplete
4
- from aioautomower.model import MowerAttributes as MowerAttributes
4
+ from aioautomower.model import MowerAttributes as MowerAttributes, WorkArea as WorkArea
5
5
  from collections.abc import Awaitable, Callable as Callable, Coroutine
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
6
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
8
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
8
9
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
@@ -12,6 +13,9 @@ _LOGGER: Incomplete
12
13
  ERROR_ACTIVITIES: Incomplete
13
14
  ERROR_STATES: Incomplete
14
15
 
16
+ def _check_error_free(mower_attributes: MowerAttributes) -> bool: ...
17
+ def _work_area_translation_key(work_area_id: int, key: str) -> str: ...
18
+ def async_remove_work_area_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, entry: AutomowerConfigEntry, mower_id: str) -> None: ...
15
19
  def handle_sending_exception(poll_after_sending: bool = False) -> Callable[[Callable[..., Awaitable[Any]]], Callable[..., Coroutine[Any, Any, None]]]: ...
16
20
 
17
21
  class AutomowerBaseEntity(CoordinatorEntity[AutomowerDataUpdateCoordinator]):
@@ -29,3 +33,13 @@ class AutomowerAvailableEntity(AutomowerBaseEntity):
29
33
  class AutomowerControlEntity(AutomowerAvailableEntity):
30
34
  @property
31
35
  def available(self) -> bool: ...
36
+
37
+ class WorkAreaControlEntity(AutomowerControlEntity):
38
+ work_area_id: Incomplete
39
+ def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator, work_area_id: int) -> None: ...
40
+ @property
41
+ def work_areas(self) -> dict[int, WorkArea]: ...
42
+ @property
43
+ def work_area_attributes(self) -> WorkArea: ...
44
+ @property
45
+ def available(self) -> bool: ...
@@ -1,13 +1,13 @@
1
1
  from . import AutomowerConfigEntry as AutomowerConfigEntry
2
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
- from .entity import AutomowerControlEntity as AutomowerControlEntity, handle_sending_exception as handle_sending_exception
3
+ from .entity import AutomowerControlEntity as AutomowerControlEntity, WorkAreaControlEntity as WorkAreaControlEntity, _work_area_translation_key as _work_area_translation_key, async_remove_work_area_entities as async_remove_work_area_entities, handle_sending_exception as handle_sending_exception
4
4
  from _typeshed import Incomplete
5
5
  from aioautomower.model import MowerAttributes as MowerAttributes, WorkArea as WorkArea
6
6
  from aioautomower.session import AutomowerSession as AutomowerSession
7
7
  from collections.abc import Awaitable, Callable as Callable
8
8
  from dataclasses import dataclass
9
9
  from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
10
- from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, Platform as Platform
10
+ from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE
11
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
13
  from typing import Any
@@ -15,7 +15,6 @@ from typing import Any
15
15
  _LOGGER: Incomplete
16
16
 
17
17
  def _async_get_cutting_height(data: MowerAttributes) -> int: ...
18
- def _work_area_translation_key(work_area_id: int) -> str: ...
19
18
  async def async_set_work_area_cutting_height(coordinator: AutomowerDataUpdateCoordinator, mower_id: str, cheight: float, work_area_id: int) -> None: ...
20
19
  async def async_set_cutting_height(session: AutomowerSession, mower_id: str, cheight: float) -> None: ...
21
20
 
@@ -31,7 +30,7 @@ NUMBER_TYPES: tuple[AutomowerNumberEntityDescription, ...]
31
30
  @dataclass(frozen=True, kw_only=True)
32
31
  class AutomowerWorkAreaNumberEntityDescription(NumberEntityDescription):
33
32
  value_fn: Callable[[WorkArea], int]
34
- translation_key_fn: Callable[[int], str]
33
+ translation_key_fn: Callable[[int, str], str]
35
34
  set_value_fn: Callable[[AutomowerDataUpdateCoordinator, str, float, int], Awaitable[Any]]
36
35
  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=..., max_value=..., min_value=..., mode=..., native_max_value=..., native_min_value=..., native_step=..., native_unit_of_measurement=..., step=..., value_fn, translation_key_fn, set_value_fn) -> None: ...
37
36
 
@@ -47,18 +46,13 @@ class AutomowerNumberEntity(AutomowerControlEntity, NumberEntity):
47
46
  def native_value(self) -> float: ...
48
47
  async def async_set_native_value(self, value: float) -> None: ...
49
48
 
50
- class AutomowerWorkAreaNumberEntity(AutomowerControlEntity, NumberEntity):
49
+ class AutomowerWorkAreaNumberEntity(WorkAreaControlEntity, NumberEntity):
51
50
  entity_description: AutomowerWorkAreaNumberEntityDescription
52
- work_area_id: Incomplete
53
51
  _attr_unique_id: Incomplete
54
52
  _attr_translation_placeholders: Incomplete
55
53
  def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator, description: AutomowerWorkAreaNumberEntityDescription, work_area_id: int) -> None: ...
56
54
  @property
57
- def work_area(self) -> WorkArea: ...
58
- @property
59
55
  def translation_key(self) -> str: ...
60
56
  @property
61
57
  def native_value(self) -> float: ...
62
58
  async def async_set_native_value(self, value: float) -> None: ...
63
-
64
- def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, entry: AutomowerConfigEntry, mower_id: str) -> None: ...
@@ -1,6 +1,6 @@
1
1
  from . import AutomowerConfigEntry as AutomowerConfigEntry
2
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
- from .entity import AutomowerControlEntity as AutomowerControlEntity, handle_sending_exception as handle_sending_exception
3
+ from .entity import AutomowerControlEntity as AutomowerControlEntity, WorkAreaControlEntity as WorkAreaControlEntity, _work_area_translation_key as _work_area_translation_key, handle_sending_exception as handle_sending_exception
4
4
  from _typeshed import Incomplete
5
5
  from aioautomower.model import StayOutZones as StayOutZones, Zone as Zone
6
6
  from homeassistant.components.switch import SwitchEntity as SwitchEntity
@@ -40,4 +40,15 @@ class AutomowerStayOutZoneSwitchEntity(AutomowerControlEntity, SwitchEntity):
40
40
  async def async_turn_off(self, **kwargs: Any) -> None: ...
41
41
  async def async_turn_on(self, **kwargs: Any) -> None: ...
42
42
 
43
+ class WorkAreaSwitchEntity(WorkAreaControlEntity, SwitchEntity):
44
+ _attr_translation_key: Incomplete
45
+ _attr_unique_id: Incomplete
46
+ _attr_translation_placeholders: Incomplete
47
+ _attr_name: Incomplete
48
+ def __init__(self, coordinator: AutomowerDataUpdateCoordinator, mower_id: str, work_area_id: int) -> None: ...
49
+ @property
50
+ def is_on(self) -> bool: ...
51
+ async def async_turn_off(self, **kwargs: Any) -> None: ...
52
+ async def async_turn_on(self, **kwargs: Any) -> None: ...
53
+
43
54
  def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, entry: AutomowerConfigEntry, mower_id: str) -> None: ...
@@ -1,5 +1,5 @@
1
1
  import httpx
2
- from .const import DOMAIN as DOMAIN, IMAGE_TIMEOUT as IMAGE_TIMEOUT
2
+ from .const import DATA_COMPONENT as DATA_COMPONENT, DOMAIN as DOMAIN, IMAGE_TIMEOUT as IMAGE_TIMEOUT
3
3
  from _typeshed import Incomplete
4
4
  from aiohttp import web
5
5
  from dataclasses import dataclass
@@ -1,4 +1,8 @@
1
+ from . import ImageEntity as ImageEntity
2
+ from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
3
+ from homeassistant.util.hass_dict import HassKey as HassKey
1
4
  from typing import Final
2
5
 
3
6
  DOMAIN: Final[str]
7
+ DATA_COMPONENT: HassKey[EntityComponent[ImageEntity]]
4
8
  IMAGE_TIMEOUT: Final[int]
@@ -1,12 +1,9 @@
1
- from . import ImageEntity as ImageEntity
2
- from .const import DOMAIN as DOMAIN
1
+ from .const import DATA_COMPONENT as DATA_COMPONENT, DOMAIN as DOMAIN
3
2
  from _typeshed import Incomplete
4
3
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass
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, PlayMedia as PlayMedia
4
+ from homeassistant.components.media_source import BrowseMediaSource as BrowseMediaSource, MediaSource as MediaSource, MediaSourceItem as MediaSourceItem, PlayMedia as PlayMedia, Unresolvable as Unresolvable
7
5
  from homeassistant.const import ATTR_FRIENDLY_NAME as ATTR_FRIENDLY_NAME
8
6
  from homeassistant.core import HomeAssistant as HomeAssistant, State as State
9
- from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
10
7
 
11
8
  async def async_get_media_source(hass: HomeAssistant) -> ImageMediaSource: ...
12
9
 
@@ -1,4 +1,4 @@
1
- from .const import CONF_ACTIONS as CONF_ACTIONS, CONF_ACTION_BACKGROUND_COLOR as CONF_ACTION_BACKGROUND_COLOR, CONF_ACTION_ICON as CONF_ACTION_ICON, CONF_ACTION_ICON_COLOR as CONF_ACTION_ICON_COLOR, CONF_ACTION_ICON_ICON as CONF_ACTION_ICON_ICON, CONF_ACTION_LABEL as CONF_ACTION_LABEL, CONF_ACTION_LABEL_COLOR as CONF_ACTION_LABEL_COLOR, CONF_ACTION_LABEL_TEXT as CONF_ACTION_LABEL_TEXT, CONF_ACTION_NAME as CONF_ACTION_NAME, CONF_ACTION_SHOW_IN_CARPLAY as CONF_ACTION_SHOW_IN_CARPLAY, CONF_ACTION_SHOW_IN_WATCH as CONF_ACTION_SHOW_IN_WATCH, CONF_ACTION_USE_CUSTOM_COLORS as CONF_ACTION_USE_CUSTOM_COLORS, DOMAIN as DOMAIN
1
+ from .const import ATTR_BATTERY as ATTR_BATTERY, ATTR_BATTERY_LEVEL as ATTR_BATTERY_LEVEL, ATTR_BATTERY_STATE as ATTR_BATTERY_STATE, ATTR_DEVICE as ATTR_DEVICE, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_DEVICE_NAME as ATTR_DEVICE_NAME, ATTR_DEVICE_PERMANENT_ID as ATTR_DEVICE_PERMANENT_ID, ATTR_DEVICE_SYSTEM_VERSION as ATTR_DEVICE_SYSTEM_VERSION, ATTR_DEVICE_TYPE as ATTR_DEVICE_TYPE, BATTERY_STATES as BATTERY_STATES, CONF_ACTIONS as CONF_ACTIONS, CONF_ACTION_BACKGROUND_COLOR as CONF_ACTION_BACKGROUND_COLOR, CONF_ACTION_ICON as CONF_ACTION_ICON, CONF_ACTION_ICON_COLOR as CONF_ACTION_ICON_COLOR, CONF_ACTION_ICON_ICON as CONF_ACTION_ICON_ICON, CONF_ACTION_LABEL as CONF_ACTION_LABEL, CONF_ACTION_LABEL_COLOR as CONF_ACTION_LABEL_COLOR, CONF_ACTION_LABEL_TEXT as CONF_ACTION_LABEL_TEXT, CONF_ACTION_NAME as CONF_ACTION_NAME, CONF_ACTION_SHOW_IN_CARPLAY as CONF_ACTION_SHOW_IN_CARPLAY, CONF_ACTION_SHOW_IN_WATCH as CONF_ACTION_SHOW_IN_WATCH, CONF_ACTION_USE_CUSTOM_COLORS as CONF_ACTION_USE_CUSTOM_COLORS, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from aiohttp import web as web
4
4
  from homeassistant import config_entries as config_entries
@@ -35,20 +35,13 @@ ATTR_DEFAULT_BEHAVIOR: str
35
35
  ATTR_TEXT_INPUT_BEHAVIOR: str
36
36
  BEHAVIORS: Incomplete
37
37
  ATTR_LAST_SEEN_AT: str
38
- ATTR_DEVICE: str
39
38
  ATTR_PUSH_TOKEN: str
40
39
  ATTR_APP: str
41
40
  ATTR_PERMISSIONS: str
42
41
  ATTR_PUSH_ID: str
43
- ATTR_DEVICE_ID: str
44
42
  ATTR_PUSH_SOUNDS: str
45
- ATTR_BATTERY: str
46
- ATTR_DEVICE_NAME: str
47
43
  ATTR_DEVICE_LOCALIZED_MODEL: str
48
44
  ATTR_DEVICE_MODEL: str
49
- ATTR_DEVICE_PERMANENT_ID: str
50
- ATTR_DEVICE_SYSTEM_VERSION: str
51
- ATTR_DEVICE_TYPE: str
52
45
  ATTR_DEVICE_SYSTEM_NAME: str
53
46
  ATTR_APP_BUNDLE_IDENTIFIER: str
54
47
  ATTR_APP_BUILD_NUMBER: str
@@ -56,13 +49,6 @@ ATTR_APP_VERSION_NUMBER: str
56
49
  ATTR_LOCATION_PERMISSION: str
57
50
  ATTR_NOTIFICATIONS_PERMISSION: str
58
51
  PERMISSIONS: Incomplete
59
- ATTR_BATTERY_STATE: str
60
- ATTR_BATTERY_LEVEL: str
61
- ATTR_BATTERY_STATE_UNPLUGGED: str
62
- ATTR_BATTERY_STATE_CHARGING: str
63
- ATTR_BATTERY_STATE_FULL: str
64
- ATTR_BATTERY_STATE_UNKNOWN: str
65
- BATTERY_STATES: Incomplete
66
52
  ATTR_DEVICES: str
67
53
  PUSH_ACTION_SCHEMA: Incomplete
68
54
  PUSH_ACTION_LIST_SCHEMA: Incomplete
@@ -1,4 +1,20 @@
1
+ from _typeshed import Incomplete
2
+
1
3
  DOMAIN: str
4
+ ATTR_BATTERY: str
5
+ ATTR_BATTERY_LEVEL: str
6
+ ATTR_BATTERY_STATE: str
7
+ ATTR_BATTERY_STATE_UNPLUGGED: str
8
+ ATTR_BATTERY_STATE_CHARGING: str
9
+ ATTR_BATTERY_STATE_FULL: str
10
+ ATTR_BATTERY_STATE_UNKNOWN: str
11
+ BATTERY_STATES: Incomplete
12
+ ATTR_DEVICE: str
13
+ ATTR_DEVICE_ID: str
14
+ ATTR_DEVICE_NAME: str
15
+ ATTR_DEVICE_PERMANENT_ID: str
16
+ ATTR_DEVICE_SYSTEM_VERSION: str
17
+ ATTR_DEVICE_TYPE: str
2
18
  CONF_ACTION_NAME: str
3
19
  CONF_ACTION_BACKGROUND_COLOR: str
4
20
  CONF_ACTION_LABEL: str
@@ -1,4 +1,4 @@
1
- from .. import ios as ios
1
+ from . import device_name_for_push_id as device_name_for_push_id, devices_with_push as devices_with_push, enabled_push_ids as enabled_push_ids
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components.notify import ATTR_DATA as ATTR_DATA, ATTR_MESSAGE as ATTR_MESSAGE, ATTR_TARGET as ATTR_TARGET, ATTR_TITLE as ATTR_TITLE, ATTR_TITLE_DEFAULT as ATTR_TITLE_DEFAULT, BaseNotificationService as BaseNotificationService
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -1,5 +1,5 @@
1
- from .. import ios as ios
2
- from .const import DOMAIN as DOMAIN
1
+ from . import devices as devices
2
+ from .const import ATTR_BATTERY as ATTR_BATTERY, ATTR_BATTERY_LEVEL as ATTR_BATTERY_LEVEL, ATTR_BATTERY_STATE as ATTR_BATTERY_STATE, ATTR_BATTERY_STATE_FULL as ATTR_BATTERY_STATE_FULL, ATTR_BATTERY_STATE_UNKNOWN as ATTR_BATTERY_STATE_UNKNOWN, ATTR_BATTERY_STATE_UNPLUGGED as ATTR_BATTERY_STATE_UNPLUGGED, ATTR_DEVICE as ATTR_DEVICE, ATTR_DEVICE_ID as ATTR_DEVICE_ID, ATTR_DEVICE_NAME as ATTR_DEVICE_NAME, ATTR_DEVICE_PERMANENT_ID as ATTR_DEVICE_PERMANENT_ID, ATTR_DEVICE_SYSTEM_VERSION as ATTR_DEVICE_SYSTEM_VERSION, ATTR_DEVICE_TYPE as ATTR_DEVICE_TYPE, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -0,0 +1,36 @@
1
+ from . import IottyConfigEntry as IottyConfigEntry
2
+ from .api import IottyProxy as IottyProxy
3
+ from .coordinator import IottyDataUpdateCoordinator as IottyDataUpdateCoordinator
4
+ from .entity import IottyEntity as IottyEntity
5
+ from _typeshed import Incomplete
6
+ from homeassistant.components.cover import ATTR_POSITION as ATTR_POSITION, CoverDeviceClass as CoverDeviceClass, CoverEntity as CoverEntity, CoverEntityFeature as CoverEntityFeature
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
+ from iottycloud.device import Device as Device
10
+ from iottycloud.shutter import Shutter
11
+ from typing import Any
12
+
13
+ _LOGGER: Incomplete
14
+
15
+ async def async_setup_entry(hass: HomeAssistant, config_entry: IottyConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
+
17
+ class IottyShutter(IottyEntity, CoverEntity):
18
+ _attr_device_class: Incomplete
19
+ _iotty_device: Shutter
20
+ _attr_supported_features: CoverEntityFeature
21
+ def __init__(self, coordinator: IottyDataUpdateCoordinator, iotty_cloud: IottyProxy, iotty_device: Shutter) -> None: ...
22
+ @property
23
+ def current_cover_position(self) -> int | None: ...
24
+ @property
25
+ def is_closed(self) -> bool: ...
26
+ @property
27
+ def is_opening(self) -> bool: ...
28
+ @property
29
+ def is_closing(self) -> bool: ...
30
+ @property
31
+ def supported_features(self) -> CoverEntityFeature: ...
32
+ async def async_open_cover(self, **kwargs: Any) -> None: ...
33
+ async def async_close_cover(self, **kwargs: Any) -> None: ...
34
+ async def async_set_cover_position(self, **kwargs: Any) -> None: ...
35
+ async def async_stop_cover(self, **kwargs: Any) -> None: ...
36
+ def _handle_coordinator_update(self) -> None: ...