homeassistant-stubs 2024.6.4__py3-none-any.whl → 2024.7.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (605) hide show
  1. homeassistant-stubs/auth/__init__.pyi +2 -0
  2. homeassistant-stubs/auth/auth_store.pyi +1 -0
  3. homeassistant-stubs/auth/providers/homeassistant.pyi +8 -1
  4. homeassistant-stubs/block_async_io.pyi +23 -0
  5. homeassistant-stubs/components/accuweather/sensor.pyi +5 -9
  6. homeassistant-stubs/components/accuweather/weather.pyi +1 -1
  7. homeassistant-stubs/components/acer_projector/switch.pyi +2 -1
  8. homeassistant-stubs/components/air_quality/__init__.pyi +4 -3
  9. homeassistant-stubs/components/airgradient/__init__.pyi +8 -0
  10. homeassistant-stubs/components/airgradient/button.pyi +28 -0
  11. homeassistant-stubs/components/airgradient/const.pyi +2 -0
  12. homeassistant-stubs/components/airgradient/coordinator.pyi +2 -2
  13. homeassistant-stubs/components/airgradient/number.pyi +32 -0
  14. homeassistant-stubs/components/airgradient/select.pyi +14 -12
  15. homeassistant-stubs/components/airgradient/sensor.pyi +28 -10
  16. homeassistant-stubs/components/airgradient/switch.pyi +33 -0
  17. homeassistant-stubs/components/airnow/const.pyi +1 -0
  18. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  19. homeassistant-stubs/components/airnow/sensor.pyi +1 -2
  20. homeassistant-stubs/components/airzone/__init__.pyi +4 -4
  21. homeassistant-stubs/components/airzone/binary_sensor.pyi +2 -2
  22. homeassistant-stubs/components/airzone/climate.pyi +3 -2
  23. homeassistant-stubs/components/airzone/diagnostics.pyi +2 -4
  24. homeassistant-stubs/components/airzone/entity.pyi +2 -1
  25. homeassistant-stubs/components/airzone/select.pyi +2 -2
  26. homeassistant-stubs/components/airzone/sensor.pyi +3 -2
  27. homeassistant-stubs/components/airzone/water_heater.pyi +3 -2
  28. homeassistant-stubs/components/airzone_cloud/__init__.pyi +3 -3
  29. homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +2 -3
  30. homeassistant-stubs/components/airzone_cloud/climate.pyi +8 -10
  31. homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +2 -4
  32. homeassistant-stubs/components/airzone_cloud/select.pyi +2 -3
  33. homeassistant-stubs/components/airzone_cloud/sensor.pyi +2 -3
  34. homeassistant-stubs/components/airzone_cloud/water_heater.pyi +2 -3
  35. homeassistant-stubs/components/aladdin_connect/api.pyi +0 -1
  36. homeassistant-stubs/components/aladdin_connect/coordinator.pyi +0 -2
  37. homeassistant-stubs/components/aladdin_connect/cover.pyi +0 -1
  38. homeassistant-stubs/components/aladdin_connect/entity.pyi +0 -1
  39. homeassistant-stubs/components/aladdin_connect/sensor.pyi +0 -2
  40. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +3 -3
  41. homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
  42. homeassistant-stubs/components/alexa/entities.pyi +25 -24
  43. homeassistant-stubs/components/alpha_vantage/sensor.pyi +2 -1
  44. homeassistant-stubs/components/ambient_network/coordinator.pyi +2 -0
  45. homeassistant-stubs/components/ambient_network/sensor.pyi +1 -0
  46. homeassistant-stubs/components/androidtv/entity.pyi +1 -0
  47. homeassistant-stubs/components/androidtv/remote.pyi +21 -0
  48. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +11 -1
  49. homeassistant-stubs/components/androidtv_remote/const.pyi +3 -0
  50. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -1
  51. homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -1
  52. homeassistant-stubs/components/androidtv_remote/remote.pyi +3 -0
  53. homeassistant-stubs/components/anel_pwrctrl/switch.pyi +2 -1
  54. homeassistant-stubs/components/apprise/notify.pyi +2 -1
  55. homeassistant-stubs/components/apsystems/__init__.pyi +9 -2
  56. homeassistant-stubs/components/apsystems/entity.pyi +10 -0
  57. homeassistant-stubs/components/apsystems/number.pyi +25 -0
  58. homeassistant-stubs/components/apsystems/sensor.pyi +6 -7
  59. homeassistant-stubs/components/aqualogic/sensor.pyi +2 -1
  60. homeassistant-stubs/components/aqualogic/switch.pyi +2 -1
  61. homeassistant-stubs/components/aquostv/media_player.pyi +2 -1
  62. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +8 -7
  63. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -1
  64. homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -0
  65. homeassistant-stubs/components/automation/__init__.pyi +10 -5
  66. homeassistant-stubs/components/automation/config.pyi +11 -1
  67. homeassistant-stubs/components/automation/trace.pyi +2 -2
  68. homeassistant-stubs/components/axis/config_flow.pyi +1 -0
  69. homeassistant-stubs/components/baf/binary_sensor.pyi +2 -4
  70. homeassistant-stubs/components/baf/entity.pyi +6 -1
  71. homeassistant-stubs/components/baf/number.pyi +2 -4
  72. homeassistant-stubs/components/baf/sensor.pyi +2 -4
  73. homeassistant-stubs/components/baf/switch.pyi +2 -4
  74. homeassistant-stubs/components/bang_olufsen/const.pyi +2 -0
  75. homeassistant-stubs/components/bang_olufsen/media_player.pyi +3 -2
  76. homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -1
  77. homeassistant-stubs/components/binary_sensor/__init__.pyi +3 -2
  78. homeassistant-stubs/components/bitcoin/sensor.pyi +2 -1
  79. homeassistant-stubs/components/blockchain/sensor.pyi +2 -1
  80. homeassistant-stubs/components/blueprint/errors.pyi +1 -1
  81. homeassistant-stubs/components/blueprint/websocket_api.pyi +6 -3
  82. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +3 -3
  83. homeassistant-stubs/components/bmw_connected_drive/const.pyi +0 -1
  84. homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -1
  85. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -1
  86. homeassistant-stubs/components/brother/config_flow.pyi +9 -1
  87. homeassistant-stubs/components/button/__init__.pyi +4 -3
  88. homeassistant-stubs/components/calendar/__init__.pyi +2 -4
  89. homeassistant-stubs/components/camera/__init__.pyi +8 -7
  90. homeassistant-stubs/components/cert_expiry/sensor.pyi +2 -1
  91. homeassistant-stubs/components/clickatell/notify.pyi +2 -1
  92. homeassistant-stubs/components/clicksend/notify.pyi +2 -1
  93. homeassistant-stubs/components/climate/__init__.pyi +5 -4
  94. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  95. homeassistant-stubs/components/cloud/account_link.pyi +1 -1
  96. homeassistant-stubs/components/cloud/binary_sensor.pyi +1 -1
  97. homeassistant-stubs/components/cloud/const.pyi +6 -1
  98. homeassistant-stubs/components/cloud/http_api.pyi +1 -1
  99. homeassistant-stubs/components/cloud/repairs.pyi +1 -3
  100. homeassistant-stubs/components/cloud/stt.pyi +1 -1
  101. homeassistant-stubs/components/cloud/system_health.pyi +1 -3
  102. homeassistant-stubs/components/cloud/tts.pyi +1 -1
  103. homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +1 -0
  104. homeassistant-stubs/components/config/scene.pyi +3 -1
  105. homeassistant-stubs/components/counter/__init__.pyi +2 -2
  106. homeassistant-stubs/components/cover/__init__.pyi +3 -2
  107. homeassistant-stubs/components/demo/tts.pyi +2 -1
  108. homeassistant-stubs/components/derivative/__init__.pyi +2 -1
  109. homeassistant-stubs/components/derivative/config_flow.pyi +11 -4
  110. homeassistant-stubs/components/derivative/sensor.pyi +3 -1
  111. homeassistant-stubs/components/device_automation/__init__.pyi +2 -2
  112. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
  113. homeassistant-stubs/components/dnsip/__init__.pyi +4 -2
  114. homeassistant-stubs/components/dnsip/config_flow.pyi +4 -3
  115. homeassistant-stubs/components/dnsip/const.pyi +2 -0
  116. homeassistant-stubs/components/dnsip/sensor.pyi +4 -3
  117. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +3 -3
  118. homeassistant-stubs/components/ecovacs/button.pyi +5 -5
  119. homeassistant-stubs/components/ecovacs/config_flow.pyi +1 -0
  120. homeassistant-stubs/components/ecovacs/controller.pyi +4 -4
  121. homeassistant-stubs/components/ecovacs/entity.pyi +8 -10
  122. homeassistant-stubs/components/ecovacs/event.pyi +3 -3
  123. homeassistant-stubs/components/ecovacs/image.pyi +2 -2
  124. homeassistant-stubs/components/ecovacs/lawn_mower.pyi +3 -3
  125. homeassistant-stubs/components/ecovacs/number.pyi +3 -3
  126. homeassistant-stubs/components/ecovacs/select.pyi +3 -3
  127. homeassistant-stubs/components/ecovacs/sensor.pyi +6 -6
  128. homeassistant-stubs/components/ecovacs/switch.pyi +4 -4
  129. homeassistant-stubs/components/ecovacs/vacuum.pyi +9 -5
  130. homeassistant-stubs/components/ecowitt/binary_sensor.pyi +1 -0
  131. homeassistant-stubs/components/efergy/__init__.pyi +3 -2
  132. homeassistant-stubs/components/efergy/sensor.pyi +3 -4
  133. homeassistant-stubs/components/electrasmart/__init__.pyi +12 -0
  134. homeassistant-stubs/components/electrasmart/climate.pyi +64 -0
  135. homeassistant-stubs/components/electrasmart/config_flow.pyi +24 -0
  136. homeassistant-stubs/components/electrasmart/const.pyi +10 -0
  137. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  138. homeassistant-stubs/components/elkm1/const.pyi +2 -1
  139. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  140. homeassistant-stubs/components/energy/websocket_api.pyi +5 -5
  141. homeassistant-stubs/components/enigma2/__init__.pyi +3 -2
  142. homeassistant-stubs/components/enigma2/config_flow.pyi +10 -1
  143. homeassistant-stubs/components/enigma2/media_player.pyi +3 -2
  144. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +8 -2
  145. homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
  146. homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -1
  147. homeassistant-stubs/components/esphome/__init__.pyi +5 -5
  148. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +3 -5
  149. homeassistant-stubs/components/esphome/binary_sensor.pyi +2 -3
  150. homeassistant-stubs/components/esphome/button.pyi +3 -5
  151. homeassistant-stubs/components/esphome/camera.pyi +3 -5
  152. homeassistant-stubs/components/esphome/climate.pyi +3 -6
  153. homeassistant-stubs/components/esphome/cover.pyi +3 -5
  154. homeassistant-stubs/components/esphome/date.pyi +3 -5
  155. homeassistant-stubs/components/esphome/datetime.pyi +3 -5
  156. homeassistant-stubs/components/esphome/diagnostics.pyi +3 -3
  157. homeassistant-stubs/components/esphome/domain_data.pyi +4 -8
  158. homeassistant-stubs/components/esphome/entity.pyi +2 -4
  159. homeassistant-stubs/components/esphome/entry_data.pyi +4 -3
  160. homeassistant-stubs/components/esphome/event.pyi +3 -5
  161. homeassistant-stubs/components/esphome/fan.pyi +3 -6
  162. homeassistant-stubs/components/esphome/light.pyi +3 -6
  163. homeassistant-stubs/components/esphome/lock.pyi +3 -5
  164. homeassistant-stubs/components/esphome/manager.pyi +4 -5
  165. homeassistant-stubs/components/esphome/media_player.pyi +3 -5
  166. homeassistant-stubs/components/esphome/number.pyi +3 -5
  167. homeassistant-stubs/components/esphome/select.pyi +2 -4
  168. homeassistant-stubs/components/esphome/switch.pyi +3 -5
  169. homeassistant-stubs/components/esphome/text.pyi +3 -5
  170. homeassistant-stubs/components/esphome/time.pyi +3 -5
  171. homeassistant-stubs/components/esphome/update.pyi +22 -2
  172. homeassistant-stubs/components/esphome/valve.pyi +3 -5
  173. homeassistant-stubs/components/event/__init__.pyi +3 -1
  174. homeassistant-stubs/components/evohome/__init__.pyi +8 -49
  175. homeassistant-stubs/components/evohome/climate.pyi +2 -2
  176. homeassistant-stubs/components/evohome/const.pyi +39 -16
  177. homeassistant-stubs/components/evohome/coordinator.pyi +33 -0
  178. homeassistant-stubs/components/evohome/helpers.pyi +13 -0
  179. homeassistant-stubs/components/fan/__init__.pyi +3 -2
  180. homeassistant-stubs/components/fastdotcom/__init__.pyi +2 -7
  181. homeassistant-stubs/components/fastdotcom/config_flow.pyi +0 -2
  182. homeassistant-stubs/components/feedreader/__init__.pyi +10 -5
  183. homeassistant-stubs/components/feedreader/config_flow.pyi +30 -0
  184. homeassistant-stubs/components/feedreader/const.pyi +5 -0
  185. homeassistant-stubs/components/feedreader/coordinator.pyi +4 -4
  186. homeassistant-stubs/components/filter/sensor.pyi +2 -1
  187. homeassistant-stubs/components/flux_led/light.pyi +4 -3
  188. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  189. homeassistant-stubs/components/fritzbox/climate.pyi +14 -9
  190. homeassistant-stubs/components/fronius/config_flow.pyi +3 -2
  191. homeassistant-stubs/components/frontend/__init__.pyi +9 -4
  192. homeassistant-stubs/components/fully_kiosk/camera.pyi +21 -0
  193. homeassistant-stubs/components/fully_kiosk/image.pyi +30 -0
  194. homeassistant-stubs/components/fully_kiosk/media_player.pyi +2 -0
  195. homeassistant-stubs/components/fully_kiosk/notify.pyi +25 -0
  196. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +4 -0
  197. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +19 -0
  198. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +7 -2
  199. homeassistant-stubs/components/generic_thermostat/__init__.pyi +6 -0
  200. homeassistant-stubs/components/generic_thermostat/climate.pyi +7 -1
  201. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +19 -0
  202. homeassistant-stubs/components/geo_location/__init__.pyi +4 -3
  203. homeassistant-stubs/components/glances/__init__.pyi +3 -2
  204. homeassistant-stubs/components/glances/sensor.pyi +2 -3
  205. homeassistant-stubs/components/goalzero/__init__.pyi +3 -5
  206. homeassistant-stubs/components/goalzero/binary_sensor.pyi +2 -3
  207. homeassistant-stubs/components/goalzero/coordinator.pyi +3 -1
  208. homeassistant-stubs/components/goalzero/sensor.pyi +2 -3
  209. homeassistant-stubs/components/goalzero/switch.pyi +2 -3
  210. homeassistant-stubs/components/google_assistant_sdk/__init__.pyi +2 -2
  211. homeassistant-stubs/components/google_assistant_sdk/diagnostics.pyi +9 -0
  212. homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +1 -0
  213. homeassistant-stubs/components/google_sheets/__init__.pyi +4 -3
  214. homeassistant-stubs/components/google_sheets/config_flow.pyi +3 -2
  215. homeassistant-stubs/components/gpsd/sensor.pyi +2 -1
  216. homeassistant-stubs/components/group/binary_sensor.pyi +2 -1
  217. homeassistant-stubs/components/group/cover.pyi +2 -1
  218. homeassistant-stubs/components/group/entity.pyi +2 -2
  219. homeassistant-stubs/components/group/event.pyi +2 -1
  220. homeassistant-stubs/components/group/fan.pyi +2 -1
  221. homeassistant-stubs/components/group/light.pyi +2 -1
  222. homeassistant-stubs/components/group/lock.pyi +2 -1
  223. homeassistant-stubs/components/group/media_player.pyi +2 -1
  224. homeassistant-stubs/components/group/notify.pyi +2 -1
  225. homeassistant-stubs/components/group/registry.pyi +8 -2
  226. homeassistant-stubs/components/group/switch.pyi +2 -1
  227. homeassistant-stubs/components/history_stats/sensor.pyi +4 -1
  228. homeassistant-stubs/components/homeassistant/const.pyi +3 -1
  229. homeassistant-stubs/components/homekit/aidmanager.pyi +2 -2
  230. homeassistant-stubs/components/homekit_controller/config_flow.pyi +1 -0
  231. homeassistant-stubs/components/homeworks/__init__.pyi +2 -5
  232. homeassistant-stubs/components/homeworks/config_flow.pyi +1 -6
  233. homeassistant-stubs/components/http/__init__.pyi +20 -3
  234. homeassistant-stubs/components/http/cors.pyi +1 -1
  235. homeassistant-stubs/components/http/data_validator.pyi +2 -1
  236. homeassistant-stubs/components/humidifier/__init__.pyi +3 -2
  237. homeassistant-stubs/components/humidifier/device_action.pyi +1 -1
  238. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +3 -3
  239. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +2 -3
  240. homeassistant-stubs/components/husqvarna_automower/button.pyi +22 -0
  241. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +2 -3
  242. homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +2 -2
  243. homeassistant-stubs/components/husqvarna_automower/entity.pyi +7 -1
  244. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +14 -5
  245. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -5
  246. homeassistant-stubs/components/husqvarna_automower/select.pyi +2 -3
  247. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +10 -5
  248. homeassistant-stubs/components/husqvarna_automower/switch.pyi +4 -8
  249. homeassistant-stubs/components/hydrawise/coordinator.pyi +3 -3
  250. homeassistant-stubs/components/hydrawise/sensor.pyi +3 -0
  251. homeassistant-stubs/components/ibeacon/config_flow.pyi +1 -0
  252. homeassistant-stubs/components/idasen_desk/coordinator.pyi +2 -5
  253. homeassistant-stubs/components/idasen_desk/sensor.pyi +3 -0
  254. homeassistant-stubs/components/image/__init__.pyi +3 -2
  255. homeassistant-stubs/components/image_upload/__init__.pyi +7 -3
  256. homeassistant-stubs/components/imap/__init__.pyi +5 -4
  257. homeassistant-stubs/components/imap/diagnostics.pyi +3 -5
  258. homeassistant-stubs/components/imap/sensor.pyi +5 -5
  259. homeassistant-stubs/components/input_button/__init__.pyi +3 -4
  260. homeassistant-stubs/components/input_select/__init__.pyi +2 -2
  261. homeassistant-stubs/components/input_text/__init__.pyi +3 -4
  262. homeassistant-stubs/components/integration/__init__.pyi +2 -0
  263. homeassistant-stubs/components/integration/config_flow.pyi +1 -1
  264. homeassistant-stubs/components/integration/const.pyi +1 -0
  265. homeassistant-stubs/components/integration/sensor.pyi +33 -12
  266. homeassistant-stubs/components/intent/timers.pyi +7 -3
  267. homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +4 -3
  268. homeassistant-stubs/components/islamic_prayer_times/sensor.pyi +3 -3
  269. homeassistant-stubs/components/isy994/services.pyi +3 -2
  270. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +6 -12
  271. homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -0
  272. homeassistant-stubs/components/jewish_calendar/sensor.pyi +8 -13
  273. homeassistant-stubs/components/knocki/__init__.pyi +12 -0
  274. homeassistant-stubs/components/knocki/config_flow.pyi +12 -0
  275. homeassistant-stubs/components/knocki/const.pyi +4 -0
  276. homeassistant-stubs/components/knocki/coordinator.pyi +13 -0
  277. homeassistant-stubs/components/knocki/event.pyi +25 -0
  278. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  279. homeassistant-stubs/components/knx/device_trigger.pyi +1 -1
  280. homeassistant-stubs/components/knx/trigger.pyi +2 -3
  281. homeassistant-stubs/components/knx/websocket.pyi +1 -0
  282. homeassistant-stubs/components/lacrosse/sensor.pyi +2 -1
  283. homeassistant-stubs/components/lamarzocco/__init__.pyi +8 -3
  284. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +4 -5
  285. homeassistant-stubs/components/lamarzocco/button.pyi +4 -5
  286. homeassistant-stubs/components/lamarzocco/calendar.pyi +9 -3
  287. homeassistant-stubs/components/lamarzocco/config_flow.pyi +7 -3
  288. homeassistant-stubs/components/lamarzocco/const.pyi +1 -2
  289. homeassistant-stubs/components/lamarzocco/coordinator.pyi +13 -11
  290. homeassistant-stubs/components/lamarzocco/diagnostics.pyi +10 -5
  291. homeassistant-stubs/components/lamarzocco/entity.pyi +3 -3
  292. homeassistant-stubs/components/lamarzocco/number.pyi +9 -13
  293. homeassistant-stubs/components/lamarzocco/select.pyi +13 -7
  294. homeassistant-stubs/components/lamarzocco/sensor.pyi +4 -5
  295. homeassistant-stubs/components/lamarzocco/switch.pyi +20 -7
  296. homeassistant-stubs/components/lamarzocco/update.pyi +5 -10
  297. homeassistant-stubs/components/lawn_mower/__init__.pyi +3 -2
  298. homeassistant-stubs/components/lidarr/__init__.pyi +12 -2
  299. homeassistant-stubs/components/lidarr/config_flow.pyi +2 -1
  300. homeassistant-stubs/components/lidarr/coordinator.pyi +0 -1
  301. homeassistant-stubs/components/lidarr/sensor.pyi +3 -4
  302. homeassistant-stubs/components/lifx/light.pyi +3 -2
  303. homeassistant-stubs/components/light/__init__.pyi +8 -6
  304. homeassistant-stubs/components/light/device_action.pyi +1 -1
  305. homeassistant-stubs/components/litterrobot/__init__.pyi +4 -3
  306. homeassistant-stubs/components/litterrobot/binary_sensor.pyi +2 -4
  307. homeassistant-stubs/components/litterrobot/button.pyi +2 -4
  308. homeassistant-stubs/components/litterrobot/select.pyi +2 -3
  309. homeassistant-stubs/components/litterrobot/sensor.pyi +2 -4
  310. homeassistant-stubs/components/litterrobot/switch.pyi +2 -4
  311. homeassistant-stubs/components/litterrobot/time.pyi +2 -4
  312. homeassistant-stubs/components/litterrobot/update.pyi +3 -4
  313. homeassistant-stubs/components/litterrobot/vacuum.pyi +2 -4
  314. homeassistant-stubs/components/lock/__init__.pyi +4 -3
  315. homeassistant-stubs/components/logbook/processor.pyi +4 -3
  316. homeassistant-stubs/components/london_underground/sensor.pyi +2 -1
  317. homeassistant-stubs/components/mastodon/notify.pyi +2 -1
  318. homeassistant-stubs/components/matrix/notify.pyi +2 -1
  319. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
  320. homeassistant-stubs/components/matter/discovery.pyi +3 -3
  321. homeassistant-stubs/components/matter/entity.pyi +8 -1
  322. homeassistant-stubs/components/matter/event.pyi +0 -2
  323. homeassistant-stubs/components/matter/lock.pyi +1 -0
  324. homeassistant-stubs/components/matter/models.pyi +1 -2
  325. homeassistant-stubs/components/matter/number.pyi +24 -0
  326. homeassistant-stubs/components/matter/sensor.pyi +1 -1
  327. homeassistant-stubs/components/media_player/__init__.pyi +3 -2
  328. homeassistant-stubs/components/media_player/intent.pyi +2 -1
  329. homeassistant-stubs/components/mikrotik/__init__.pyi +2 -1
  330. homeassistant-stubs/components/mikrotik/device_tracker.pyi +2 -3
  331. homeassistant-stubs/components/min_max/sensor.pyi +2 -1
  332. homeassistant-stubs/components/modbus/sensor.pyi +2 -2
  333. homeassistant-stubs/components/monzo/config_flow.pyi +5 -1
  334. homeassistant-stubs/components/monzo/coordinator.pyi +1 -0
  335. homeassistant-stubs/components/motionmount/select.pyi +5 -2
  336. homeassistant-stubs/components/mqtt/async_client.pyi +22 -0
  337. homeassistant-stubs/components/mqtt/client.pyi +13 -28
  338. homeassistant-stubs/components/mqtt/climate.pyi +2 -3
  339. homeassistant-stubs/components/mqtt/cover.pyi +2 -3
  340. homeassistant-stubs/components/mqtt/device_tracker.pyi +2 -3
  341. homeassistant-stubs/components/mqtt/event.pyi +2 -3
  342. homeassistant-stubs/components/mqtt/fan.pyi +2 -3
  343. homeassistant-stubs/components/mqtt/humidifier.pyi +2 -3
  344. homeassistant-stubs/components/mqtt/image.pyi +2 -3
  345. homeassistant-stubs/components/mqtt/lawn_mower.pyi +2 -3
  346. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  347. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +2 -3
  348. homeassistant-stubs/components/mqtt/light/schema_json.pyi +2 -3
  349. homeassistant-stubs/components/mqtt/light/schema_template.pyi +2 -3
  350. homeassistant-stubs/components/mqtt/mixins.pyi +4 -4
  351. homeassistant-stubs/components/mqtt/models.pyi +2 -3
  352. homeassistant-stubs/components/mqtt/number.pyi +2 -3
  353. homeassistant-stubs/components/mqtt/select.pyi +2 -3
  354. homeassistant-stubs/components/mqtt/sensor.pyi +2 -3
  355. homeassistant-stubs/components/mqtt/siren.pyi +2 -3
  356. homeassistant-stubs/components/mqtt/text.pyi +2 -3
  357. homeassistant-stubs/components/mqtt/update.pyi +2 -3
  358. homeassistant-stubs/components/mqtt/util.pyi +23 -2
  359. homeassistant-stubs/components/mqtt/vacuum.pyi +2 -3
  360. homeassistant-stubs/components/mqtt/valve.pyi +2 -3
  361. homeassistant-stubs/components/mqtt/water_heater.pyi +2 -3
  362. homeassistant-stubs/components/mysensors/config_flow.pyi +1 -0
  363. homeassistant-stubs/components/mysensors/sensor.pyi +1 -1
  364. homeassistant-stubs/components/myuplink/__init__.pyi +4 -1
  365. homeassistant-stubs/components/myuplink/binary_sensor.pyi +2 -4
  366. homeassistant-stubs/components/myuplink/diagnostics.pyi +2 -4
  367. homeassistant-stubs/components/myuplink/number.pyi +2 -4
  368. homeassistant-stubs/components/myuplink/sensor.pyi +3 -5
  369. homeassistant-stubs/components/myuplink/switch.pyi +2 -4
  370. homeassistant-stubs/components/myuplink/update.pyi +2 -4
  371. homeassistant-stubs/components/nam/const.pyi +1 -0
  372. homeassistant-stubs/components/nam/sensor.pyi +1 -1
  373. homeassistant-stubs/components/nanoleaf/__init__.pyi +6 -14
  374. homeassistant-stubs/components/nanoleaf/button.pyi +4 -7
  375. homeassistant-stubs/components/nanoleaf/coordinator.pyi +12 -0
  376. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -0
  377. homeassistant-stubs/components/nanoleaf/diagnostics.pyi +2 -4
  378. homeassistant-stubs/components/nanoleaf/entity.pyi +4 -4
  379. homeassistant-stubs/components/nanoleaf/event.pyi +18 -0
  380. homeassistant-stubs/components/nanoleaf/light.pyi +4 -7
  381. homeassistant-stubs/components/number/__init__.pyi +3 -1
  382. homeassistant-stubs/components/number/const.pyi +2 -1
  383. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -8
  384. homeassistant-stubs/components/ping/config_flow.pyi +2 -4
  385. homeassistant-stubs/components/ping/device_tracker.pyi +4 -14
  386. homeassistant-stubs/components/plugwise/button.pyi +20 -0
  387. homeassistant-stubs/components/plugwise/const.pyi +3 -0
  388. homeassistant-stubs/components/plugwise/coordinator.pyi +5 -3
  389. homeassistant-stubs/components/plugwise/number.pyi +2 -4
  390. homeassistant-stubs/components/plugwise/select.pyi +3 -5
  391. homeassistant-stubs/components/proximity/config_flow.pyi +2 -1
  392. homeassistant-stubs/components/radarr/__init__.pyi +14 -2
  393. homeassistant-stubs/components/radarr/binary_sensor.pyi +3 -4
  394. homeassistant-stubs/components/radarr/calendar.pyi +2 -4
  395. homeassistant-stubs/components/radarr/config_flow.pyi +3 -4
  396. homeassistant-stubs/components/radarr/coordinator.pyi +2 -2
  397. homeassistant-stubs/components/radarr/sensor.pyi +2 -4
  398. homeassistant-stubs/components/rainmachine/switch.pyi +1 -0
  399. homeassistant-stubs/components/recorder/const.pyi +3 -1
  400. homeassistant-stubs/components/recorder/core.pyi +2 -2
  401. homeassistant-stubs/components/recorder/db_schema.pyi +2 -1
  402. homeassistant-stubs/components/recorder/purge.pyi +1 -1
  403. homeassistant-stubs/components/recorder/statistics.pyi +7 -4
  404. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +3 -3
  405. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +1 -1
  406. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +3 -3
  407. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +1 -1
  408. homeassistant-stubs/components/recorder/util.pyi +4 -3
  409. homeassistant-stubs/components/remote/__init__.pyi +5 -4
  410. homeassistant-stubs/components/rest/binary_sensor.pyi +2 -1
  411. homeassistant-stubs/components/rest/notify.pyi +2 -1
  412. homeassistant-stubs/components/rest/sensor.pyi +2 -1
  413. homeassistant-stubs/components/rest/switch.pyi +2 -1
  414. homeassistant-stubs/components/rfxtrx/config_flow.pyi +1 -0
  415. homeassistant-stubs/components/roborock/__init__.pyi +30 -0
  416. homeassistant-stubs/components/roborock/binary_sensor.pyi +29 -0
  417. homeassistant-stubs/components/roborock/button.pyi +28 -0
  418. homeassistant-stubs/components/roborock/config_flow.pyi +30 -0
  419. homeassistant-stubs/components/roborock/const.pyi +13 -0
  420. homeassistant-stubs/components/roborock/coordinator.pyi +47 -0
  421. homeassistant-stubs/components/roborock/device.pyi +53 -0
  422. homeassistant-stubs/components/roborock/diagnostics.pyi +13 -0
  423. homeassistant-stubs/components/roborock/image.pyi +37 -0
  424. homeassistant-stubs/components/roborock/models.pyi +27 -0
  425. homeassistant-stubs/components/roborock/number.pyi +35 -0
  426. homeassistant-stubs/components/roborock/select.pyi +37 -0
  427. homeassistant-stubs/components/roborock/sensor.pyi +47 -0
  428. homeassistant-stubs/components/roborock/switch.pyi +37 -0
  429. homeassistant-stubs/components/roborock/time.pyi +38 -0
  430. homeassistant-stubs/components/roborock/vacuum.pyi +39 -0
  431. homeassistant-stubs/components/roku/media_player.pyi +2 -1
  432. homeassistant-stubs/components/schedule/__init__.pyi +5 -5
  433. homeassistant-stubs/components/select/__init__.pyi +3 -1
  434. homeassistant-stubs/components/sensor/__init__.pyi +3 -1
  435. homeassistant-stubs/components/sensor/const.pyi +3 -2
  436. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  437. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  438. homeassistant-stubs/components/shelly/__init__.pyi +1 -2
  439. homeassistant-stubs/components/shelly/climate.pyi +3 -0
  440. homeassistant-stubs/components/shelly/coordinator.pyi +2 -1
  441. homeassistant-stubs/components/shelly/switch.pyi +2 -18
  442. homeassistant-stubs/components/shelly/valve.pyi +1 -1
  443. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +4 -5
  444. homeassistant-stubs/components/siren/__init__.pyi +4 -3
  445. homeassistant-stubs/components/sql/sensor.pyi +2 -1
  446. homeassistant-stubs/components/starlink/const.pyi +1 -0
  447. homeassistant-stubs/components/starlink/device_tracker.pyi +6 -2
  448. homeassistant-stubs/components/statistics/__init__.pyi +6 -0
  449. homeassistant-stubs/components/statistics/config_flow.pyi +23 -0
  450. homeassistant-stubs/components/statistics/sensor.pyi +4 -1
  451. homeassistant-stubs/components/stream/fmp4utils.pyi +2 -2
  452. homeassistant-stubs/components/stream/worker.pyi +3 -2
  453. homeassistant-stubs/components/streamlabswater/__init__.pyi +1 -6
  454. homeassistant-stubs/components/streamlabswater/config_flow.pyi +0 -1
  455. homeassistant-stubs/components/suez_water/config_flow.pyi +0 -1
  456. homeassistant-stubs/components/suez_water/sensor.pyi +3 -8
  457. homeassistant-stubs/components/switch/__init__.pyi +4 -3
  458. homeassistant-stubs/components/switch/light.pyi +2 -1
  459. homeassistant-stubs/components/switcher_kis/__init__.pyi +3 -0
  460. homeassistant-stubs/components/switcher_kis/switch.pyi +3 -2
  461. homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
  462. homeassistant-stubs/components/systemmonitor/config_flow.pyi +0 -2
  463. homeassistant-stubs/components/systemmonitor/sensor.pyi +4 -7
  464. homeassistant-stubs/components/tag/__init__.pyi +4 -5
  465. homeassistant-stubs/components/tami4/__init__.pyi +1 -1
  466. homeassistant-stubs/components/tami4/coordinator.pyi +3 -5
  467. homeassistant-stubs/components/tami4/sensor.pyi +3 -3
  468. homeassistant-stubs/components/tautulli/__init__.pyi +3 -2
  469. homeassistant-stubs/components/tautulli/coordinator.pyi +2 -2
  470. homeassistant-stubs/components/tautulli/sensor.pyi +3 -3
  471. homeassistant-stubs/components/threshold/__init__.pyi +2 -1
  472. homeassistant-stubs/components/threshold/binary_sensor.pyi +11 -3
  473. homeassistant-stubs/components/threshold/config_flow.pyi +8 -0
  474. homeassistant-stubs/components/tibber/__init__.pyi +1 -0
  475. homeassistant-stubs/components/tibber/sensor.pyi +12 -6
  476. homeassistant-stubs/components/tibber/services.pyi +15 -0
  477. homeassistant-stubs/components/time_date/sensor.pyi +3 -3
  478. homeassistant-stubs/components/timer/__init__.pyi +2 -2
  479. homeassistant-stubs/components/todo/__init__.pyi +3 -2
  480. homeassistant-stubs/components/tplink/__init__.pyi +9 -6
  481. homeassistant-stubs/components/tplink/binary_sensor.pyi +22 -0
  482. homeassistant-stubs/components/tplink/button.pyi +22 -0
  483. homeassistant-stubs/components/tplink/climate.pyi +42 -0
  484. homeassistant-stubs/components/tplink/config_flow.pyi +4 -4
  485. homeassistant-stubs/components/tplink/const.pyi +3 -1
  486. homeassistant-stubs/components/tplink/coordinator.pyi +2 -2
  487. homeassistant-stubs/components/tplink/diagnostics.pyi +2 -4
  488. homeassistant-stubs/components/tplink/entity.pyi +49 -7
  489. homeassistant-stubs/components/tplink/fan.pyi +31 -0
  490. homeassistant-stubs/components/tplink/light.pyi +19 -19
  491. homeassistant-stubs/components/tplink/number.pyi +27 -0
  492. homeassistant-stubs/components/tplink/select.pyi +26 -0
  493. homeassistant-stubs/components/tplink/sensor.pyi +14 -22
  494. homeassistant-stubs/components/tplink/switch.pyi +14 -34
  495. homeassistant-stubs/components/tplink_omada/controller.pyi +4 -15
  496. homeassistant-stubs/components/tplink_omada/coordinator.pyi +20 -1
  497. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +36 -0
  498. homeassistant-stubs/components/transmission/__init__.pyi +9 -3
  499. homeassistant-stubs/components/transmission/sensor.pyi +2 -2
  500. homeassistant-stubs/components/transmission/switch.pyi +2 -4
  501. homeassistant-stubs/components/trend/__init__.pyi +2 -1
  502. homeassistant-stubs/components/trend/binary_sensor.pyi +6 -2
  503. homeassistant-stubs/components/tts/notify.pyi +2 -1
  504. homeassistant-stubs/components/unifi/config_flow.pyi +1 -1
  505. homeassistant-stubs/components/unifi/sensor.pyi +1 -0
  506. homeassistant-stubs/components/unifi/services.pyi +1 -0
  507. homeassistant-stubs/components/unifiprotect/__init__.pyi +8 -9
  508. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +29 -21
  509. homeassistant-stubs/components/unifiprotect/button.pyi +8 -9
  510. homeassistant-stubs/components/unifiprotect/camera.pyi +10 -10
  511. homeassistant-stubs/components/unifiprotect/const.pyi +0 -1
  512. homeassistant-stubs/components/unifiprotect/data.pyi +27 -14
  513. homeassistant-stubs/components/unifiprotect/diagnostics.pyi +2 -4
  514. homeassistant-stubs/components/unifiprotect/entity.pyi +27 -17
  515. homeassistant-stubs/components/unifiprotect/light.pyi +3 -6
  516. homeassistant-stubs/components/unifiprotect/lock.pyi +3 -8
  517. homeassistant-stubs/components/unifiprotect/media_player.pyi +4 -8
  518. homeassistant-stubs/components/unifiprotect/media_source.pyi +2 -3
  519. homeassistant-stubs/components/unifiprotect/migrate.pyi +5 -5
  520. homeassistant-stubs/components/unifiprotect/models.pyi +16 -17
  521. homeassistant-stubs/components/unifiprotect/number.pyi +8 -12
  522. homeassistant-stubs/components/unifiprotect/repairs.pyi +5 -3
  523. homeassistant-stubs/components/unifiprotect/select.pyi +9 -11
  524. homeassistant-stubs/components/unifiprotect/sensor.pyi +25 -23
  525. homeassistant-stubs/components/unifiprotect/services.pyi +0 -4
  526. homeassistant-stubs/components/unifiprotect/switch.pyi +15 -24
  527. homeassistant-stubs/components/unifiprotect/text.pyi +8 -11
  528. homeassistant-stubs/components/unifiprotect/utils.pyi +6 -11
  529. homeassistant-stubs/components/unifiprotect/views.pyi +2 -4
  530. homeassistant-stubs/components/update/__init__.pyi +3 -1
  531. homeassistant-stubs/components/vacuum/__init__.pyi +2 -1
  532. homeassistant-stubs/components/vallox/sensor.pyi +5 -1
  533. homeassistant-stubs/components/valve/__init__.pyi +3 -2
  534. homeassistant-stubs/components/water_heater/__init__.pyi +4 -3
  535. homeassistant-stubs/components/weather/__init__.pyi +4 -5
  536. homeassistant-stubs/components/webhook/__init__.pyi +1 -1
  537. homeassistant-stubs/components/webostv/__init__.pyi +7 -0
  538. homeassistant-stubs/components/websocket_api/__init__.pyi +3 -4
  539. homeassistant-stubs/components/websocket_api/decorators.pyi +2 -1
  540. homeassistant-stubs/components/wemo/entity.pyi +2 -2
  541. homeassistant-stubs/components/wemo/fan.pyi +2 -1
  542. homeassistant-stubs/components/withings/coordinator.pyi +3 -3
  543. homeassistant-stubs/components/withings/sensor.pyi +6 -2
  544. homeassistant-stubs/components/worldclock/sensor.pyi +2 -1
  545. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +1 -1
  546. homeassistant-stubs/components/zone/__init__.pyi +3 -3
  547. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  548. homeassistant-stubs/components/zwave_js/api.pyi +1 -5
  549. homeassistant-stubs/components/zwave_js/config_flow.pyi +8 -1
  550. homeassistant-stubs/components/zwave_js/const.pyi +5 -0
  551. homeassistant-stubs/components/zwave_js/discovery.pyi +4 -4
  552. homeassistant-stubs/components/zwave_js/helpers.pyi +2 -2
  553. homeassistant-stubs/components/zwave_js/sensor.pyi +2 -0
  554. homeassistant-stubs/components/zwave_js/services.pyi +3 -2
  555. homeassistant-stubs/config.pyi +4 -5
  556. homeassistant-stubs/config_entries.pyi +6 -3
  557. homeassistant-stubs/const.pyi +9 -3
  558. homeassistant-stubs/core.pyi +13 -8
  559. homeassistant-stubs/data_entry_flow.pyi +12 -2
  560. homeassistant-stubs/exceptions.pyi +6 -5
  561. homeassistant-stubs/helpers/__init__.pyi +0 -5
  562. homeassistant-stubs/helpers/collection.pyi +14 -11
  563. homeassistant-stubs/helpers/condition.pyi +3 -2
  564. homeassistant-stubs/helpers/config_validation.pyi +5 -4
  565. homeassistant-stubs/helpers/deprecation.pyi +10 -0
  566. homeassistant-stubs/helpers/device.pyi +8 -0
  567. homeassistant-stubs/helpers/device_registry.pyi +14 -2
  568. homeassistant-stubs/helpers/entity.pyi +3 -2
  569. homeassistant-stubs/helpers/entity_component.pyi +3 -4
  570. homeassistant-stubs/helpers/entity_platform.pyi +2 -3
  571. homeassistant-stubs/helpers/frame.pyi +1 -0
  572. homeassistant-stubs/helpers/http.pyi +1 -1
  573. homeassistant-stubs/helpers/intent.pyi +6 -4
  574. homeassistant-stubs/helpers/llm.pyi +17 -3
  575. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +2 -2
  576. homeassistant-stubs/helpers/script.pyi +3 -2
  577. homeassistant-stubs/helpers/selector.pyi +10 -8
  578. homeassistant-stubs/helpers/service.pyi +6 -3
  579. homeassistant-stubs/helpers/template.pyi +8 -6
  580. homeassistant-stubs/helpers/trace.pyi +3 -2
  581. homeassistant-stubs/helpers/typing.pyi +6 -1
  582. homeassistant-stubs/helpers/update_coordinator.pyi +3 -3
  583. homeassistant-stubs/loader.pyi +1 -2
  584. homeassistant-stubs/requirements.pyi +0 -3
  585. homeassistant-stubs/setup.pyi +4 -3
  586. homeassistant-stubs/util/loop.pyi +2 -1
  587. homeassistant-stubs/util/unit_conversion.pyi +7 -1
  588. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0b0.dist-info}/METADATA +2 -2
  589. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0b0.dist-info}/RECORD +591 -548
  590. homeassistant-stubs/auth/providers/legacy_api_password.pyi +0 -30
  591. homeassistant-stubs/components/air_quality/group.pyi +0 -5
  592. homeassistant-stubs/components/alarm_control_panel/group.pyi +0 -6
  593. homeassistant-stubs/components/climate/group.pyi +0 -6
  594. homeassistant-stubs/components/cover/group.pyi +0 -6
  595. homeassistant-stubs/components/device_tracker/group.pyi +0 -6
  596. homeassistant-stubs/components/fastdotcom/services.pyi +0 -7
  597. homeassistant-stubs/components/lock/group.pyi +0 -6
  598. homeassistant-stubs/components/media_player/group.pyi +0 -6
  599. homeassistant-stubs/components/sensor/group.pyi +0 -5
  600. homeassistant-stubs/components/vacuum/group.pyi +0 -6
  601. homeassistant-stubs/components/water_heater/group.pyi +0 -6
  602. homeassistant-stubs/components/weather/group.pyi +0 -5
  603. homeassistant-stubs/components/wled/binary_sensor.pyi +0 -20
  604. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0b0.dist-info}/LICENSE +0 -0
  605. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0b0.dist-info}/WHEEL +0 -0
@@ -5,7 +5,7 @@ from .data import HistoryStats as HistoryStats
5
5
  from .helpers import pretty_ratio as pretty_ratio
6
6
  from _typeshed import Incomplete
7
7
  from abc import abstractmethod
8
- from homeassistant.components.sensor import PLATFORM_SCHEMA as PLATFORM_SCHEMA, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
8
+ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorStateClass as SensorStateClass
9
9
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_STATE as CONF_STATE, CONF_TYPE as CONF_TYPE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
11
  from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
@@ -28,6 +28,9 @@ UNITS: dict[str, str]
28
28
  ICON: str
29
29
 
30
30
  def exactly_two_period_keys(conf: _T) -> _T: ...
31
+
32
+ PLATFORM_SCHEMA: Incomplete
33
+
31
34
  async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
32
35
 
33
36
  class HistoryStatsSensorBase(CoordinatorEntity[HistoryStatsUpdateCoordinator], SensorEntity, metaclass=abc.ABCMeta):
@@ -1,8 +1,10 @@
1
+ from .exposed_entities import ExposedEntities as ExposedEntities
1
2
  from _typeshed import Incomplete
3
+ from homeassistant.util.hass_dict import HassKey as HassKey
2
4
  from typing import Final
3
5
 
4
6
  DOMAIN: Incomplete
5
- DATA_EXPOSED_ENTITIES: Incomplete
7
+ DATA_EXPOSED_ENTITIES: HassKey[ExposedEntities]
6
8
  DATA_STOP_HANDLER: Incomplete
7
9
  SERVICE_HOMEASSISTANT_STOP: Final[str]
8
10
  SERVICE_HOMEASSISTANT_RESTART: Final[str]
@@ -1,9 +1,9 @@
1
1
  from .util import get_aid_storage_filename_for_entry_id as get_aid_storage_filename_for_entry_id
2
2
  from _typeshed import Incomplete
3
- from collections.abc import Generator
4
3
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
4
  from homeassistant.helpers import entity_registry as er
6
5
  from homeassistant.helpers.storage import Store as Store
6
+ from typing_extensions import Generator
7
7
 
8
8
  AID_MANAGER_STORAGE_VERSION: int
9
9
  AID_MANAGER_SAVE_DELAY: int
@@ -14,7 +14,7 @@ AID_MIN: int
14
14
  AID_MAX: int
15
15
 
16
16
  def get_system_unique_id(entity: er.RegistryEntry, entity_unique_id: str) -> str: ...
17
- def _generate_aids(unique_id: str | None, entity_id: str) -> Generator[int, None, None]: ...
17
+ def _generate_aids(unique_id: str | None, entity_id: str) -> Generator[int]: ...
18
18
 
19
19
  class AccessoryAidStorage:
20
20
  hass: Incomplete
@@ -9,6 +9,7 @@ from homeassistant.components import bluetooth as bluetooth, zeroconf as zerocon
9
9
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
10
10
  from homeassistant.core import callback as callback
11
11
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
12
+ from homeassistant.helpers.typing import VolDictType as VolDictType
12
13
  from typing import Any
13
14
 
14
15
  HOMEKIT_DIR: str
@@ -1,8 +1,8 @@
1
- from .const import CONF_ADDR as CONF_ADDR, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_DIMMERS as CONF_DIMMERS, CONF_KEYPADS as CONF_KEYPADS, CONF_RATE as CONF_RATE, DOMAIN as DOMAIN
1
+ from .const import CONF_ADDR as CONF_ADDR, CONF_CONTROLLER_ID as CONF_CONTROLLER_ID, CONF_KEYPADS as CONF_KEYPADS, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Mapping
4
4
  from dataclasses import dataclass
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_ID as CONF_ID, CONF_NAME as CONF_NAME, CONF_PORT as CONF_PORT, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
7
7
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
8
8
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady, ServiceValidationError as ServiceValidationError
@@ -21,9 +21,6 @@ EVENT_BUTTON_PRESS: str
21
21
  EVENT_BUTTON_RELEASE: str
22
22
  DEFAULT_FADE_RATE: float
23
23
  KEYPAD_LEDSTATE_POLL_COOLDOWN: float
24
- CV_FADE_RATE: Incomplete
25
- DIMMER_SCHEMA: Incomplete
26
- KEYPAD_SCHEMA: Incomplete
27
24
  CONFIG_SCHEMA: Incomplete
28
25
  SERVICE_SEND_COMMAND_SCHEMA: Incomplete
29
26
 
@@ -4,7 +4,7 @@ from .const import CONF_ADDR as CONF_ADDR, CONF_BUTTONS as CONF_BUTTONS, CONF_CO
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
6
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_PORT as CONF_PORT
7
- from homeassistant.core import HomeAssistant as HomeAssistant, async_get_hass as async_get_hass, callback as callback
7
+ from homeassistant.core import async_get_hass as async_get_hass, callback as callback
8
8
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow
9
9
  from homeassistant.helpers import selector as selector
10
10
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaFlowError as SchemaFlowError, SchemaFlowFormStep as SchemaFlowFormStep, SchemaFlowMenuStep as SchemaFlowMenuStep, SchemaOptionsFlowHandler as SchemaOptionsFlowHandler
@@ -20,7 +20,6 @@ validate_addr: Incomplete
20
20
 
21
21
  async def validate_add_controller(handler: ConfigFlow | SchemaOptionsFlowHandler, user_input: dict[str, Any]) -> dict[str, Any]: ...
22
22
  async def _try_connection(user_input: dict[str, Any]) -> None: ...
23
- def _create_import_issue(hass: HomeAssistant) -> None: ...
24
23
  def _validate_address(handler: SchemaCommonFlowHandler, addr: str) -> None: ...
25
24
  def _validate_button_number(handler: SchemaCommonFlowHandler, number: int) -> None: ...
26
25
  async def validate_add_button(handler: SchemaCommonFlowHandler, user_input: dict[str, Any]) -> dict[str, Any]: ...
@@ -50,10 +49,6 @@ DATA_SCHEMA_EDIT_LIGHT: Incomplete
50
49
  OPTIONS_FLOW: Incomplete
51
50
 
52
51
  class HomeworksConfigFlowHandler(ConfigFlow, domain=DOMAIN):
53
- import_config: dict[str, Any]
54
- async def async_step_import(self, config: dict[str, Any]) -> ConfigFlowResult: ...
55
- async def async_step_import_controller_name(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
56
- async def async_step_import_finish(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
57
52
  async def _validate_edit_controller(self, user_input: dict[str, Any]) -> dict[str, Any]: ...
58
53
  async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
59
54
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -19,12 +19,14 @@ from aiohttp.streams import StreamReader as StreamReader
19
19
  from aiohttp.typedefs import JSONDecoder as JSONDecoder, StrOrURL as StrOrURL
20
20
  from aiohttp.web_exceptions import HTTPRedirection as HTTPRedirection
21
21
  from aiohttp.web_protocol import RequestHandler as RequestHandler
22
+ from collections.abc import Collection
23
+ from dataclasses import dataclass
22
24
  from homeassistant.components.network import async_get_source_ip as async_get_source_ip
23
25
  from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, SERVER_PORT as SERVER_PORT
24
- from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant
26
+ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
25
27
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
26
- from homeassistant.helpers import storage as storage
27
- from homeassistant.helpers.http import HomeAssistantView as HomeAssistantView, KEY_ALLOW_CONFIGRED_CORS as KEY_ALLOW_CONFIGRED_CORS, KEY_AUTHENTICATED as KEY_AUTHENTICATED, KEY_HASS as KEY_HASS, current_request as current_request
28
+ from homeassistant.helpers import frame as frame, storage as storage
29
+ from homeassistant.helpers.http import HomeAssistantView as HomeAssistantView, KEY_ALLOW_CONFIGURED_CORS as KEY_ALLOW_CONFIGURED_CORS, KEY_AUTHENTICATED as KEY_AUTHENTICATED, KEY_HASS as KEY_HASS, current_request as current_request
28
30
  from homeassistant.helpers.importlib import async_import_module as async_import_module
29
31
  from homeassistant.helpers.network import NoURLAvailableError as NoURLAvailableError, get_url as get_url
30
32
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -64,6 +66,15 @@ _DEFAULT_BIND: Incomplete
64
66
  HTTP_SCHEMA: Final[Incomplete]
65
67
  CONFIG_SCHEMA: Final[Incomplete]
66
68
 
69
+ @dataclass(slots=True)
70
+ class StaticPathConfig:
71
+ url_path: str
72
+ path: str
73
+ cache_headers: bool = ...
74
+ def __init__(self, url_path, path, cache_headers) -> None: ...
75
+
76
+ _STATIC_CLASSES: Incomplete
77
+
67
78
  class ConfData(TypedDict, total=False):
68
79
  server_host: list[str]
69
80
  server_port: int
@@ -96,6 +107,9 @@ class HomeAssistantRequest(web.Request):
96
107
  class HomeAssistantApplication(web.Application):
97
108
  def _make_request(self, message: RawRequestMessage, payload: StreamReader, protocol: RequestHandler, writer: AbstractStreamWriter, task: asyncio.Task[None], _cls: type[web.Request] = ...) -> web.Request: ...
98
109
 
110
+ async def _serve_file_with_cache_headers(path: str, request: web.Request) -> web.FileResponse: ...
111
+ async def _serve_file(path: str, request: web.Request) -> web.FileResponse: ...
112
+
99
113
  class HomeAssistantHTTP:
100
114
  app: Incomplete
101
115
  hass: Incomplete
@@ -113,6 +127,9 @@ class HomeAssistantHTTP:
113
127
  async def async_initialize(self, *, cors_origins: list[str], use_x_forwarded_for: bool, login_threshold: int, is_ban_enabled: bool, use_x_frame_options: bool) -> None: ...
114
128
  def register_view(self, view: HomeAssistantView | type[HomeAssistantView]) -> None: ...
115
129
  def register_redirect(self, url: str, redirect_to: StrOrURL, *, redirect_exc: type[HTTPRedirection] = ...) -> None: ...
130
+ def _make_static_resources(self, configs: Collection[StaticPathConfig]) -> dict[str, CachingStaticResource | web.StaticResource | None]: ...
131
+ async def async_register_static_paths(self, configs: Collection[StaticPathConfig]) -> None: ...
132
+ def _async_register_static_paths(self, configs: Collection[StaticPathConfig], resources: dict[str, CachingStaticResource | web.StaticResource | None]) -> None: ...
116
133
  def register_static_path(self, url_path: str, path: str, cache_headers: bool = True) -> None: ...
117
134
  def _create_ssl_context(self) -> ssl.SSLContext | None: ...
118
135
  def _create_emergency_ssl_context(self) -> ssl.SSLContext: ...
@@ -3,7 +3,7 @@ from aiohttp.web import Application as Application
3
3
  from aiohttp.web_urldispatcher import AbstractResource as AbstractResource
4
4
  from homeassistant.const import HTTP_HEADER_X_REQUESTED_WITH as HTTP_HEADER_X_REQUESTED_WITH
5
5
  from homeassistant.core import callback as callback
6
- from homeassistant.helpers.http import AllowCorsType as AllowCorsType, KEY_ALLOW_ALL_CORS as KEY_ALLOW_ALL_CORS, KEY_ALLOW_CONFIGRED_CORS as KEY_ALLOW_CONFIGRED_CORS
6
+ from homeassistant.helpers.http import AllowCorsType as AllowCorsType, KEY_ALLOW_ALL_CORS as KEY_ALLOW_ALL_CORS, KEY_ALLOW_CONFIGURED_CORS as KEY_ALLOW_CONFIGURED_CORS
7
7
  from typing import Final
8
8
 
9
9
  ALLOWED_CORS_HEADERS: Final[list[str]]
@@ -3,6 +3,7 @@ from .view import HomeAssistantView as HomeAssistantView
3
3
  from _typeshed import Incomplete
4
4
  from aiohttp import web as web
5
5
  from collections.abc import Awaitable as Awaitable, Callable as Callable, Coroutine
6
+ from homeassistant.helpers.typing import VolDictType as VolDictType
6
7
  from typing import Any, Concatenate
7
8
 
8
9
  _LOGGER: Incomplete
@@ -10,5 +11,5 @@ _LOGGER: Incomplete
10
11
  class RequestDataValidator:
11
12
  _schema: Incomplete
12
13
  _allow_empty: Incomplete
13
- def __init__(self, schema: vol.Schema, allow_empty: bool = False) -> None: ...
14
+ def __init__(self, schema: VolDictType | vol.Schema, allow_empty: bool = False) -> None: ...
14
15
  def __call__(self, method: Callable[Concatenate[_HassViewT, web.Request, dict[str, Any], _P], Awaitable[web.Response]]) -> Callable[Concatenate[_HassViewT, web.Request, _P], Coroutine[Any, Any, web.Response]]: ...
@@ -5,7 +5,6 @@ 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
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
- from homeassistant.helpers.config_validation import PLATFORM_SCHEMA as PLATFORM_SCHEMA, PLATFORM_SCHEMA_BASE as PLATFORM_SCHEMA_BASE
9
8
  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
10
9
  from homeassistant.helpers.entity import ToggleEntity as ToggleEntity, ToggleEntityDescription as ToggleEntityDescription
11
10
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
@@ -14,8 +13,10 @@ from homeassistant.loader import bind_hass as bind_hass
14
13
  from typing import Any
15
14
 
16
15
  _LOGGER: Incomplete
17
- SCAN_INTERVAL: Incomplete
18
16
  ENTITY_ID_FORMAT: Incomplete
17
+ PLATFORM_SCHEMA: Incomplete
18
+ PLATFORM_SCHEMA_BASE: Incomplete
19
+ SCAN_INTERVAL: Incomplete
19
20
 
20
21
  class HumidifierDeviceClass(StrEnum):
21
22
  HUMIDIFIER: str
@@ -6,7 +6,7 @@ from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, ATTR_MODE as A
6
6
  from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant
7
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
8
8
  from homeassistant.helpers.entity import get_capability as get_capability, get_supported_features as get_supported_features
9
- from homeassistant.helpers.typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType
9
+ from homeassistant.helpers.typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType, VolDictType as VolDictType
10
10
 
11
11
  SET_HUMIDITY_SCHEMA: Incomplete
12
12
  SET_MODE_SCHEMA: Incomplete
@@ -1,5 +1,4 @@
1
1
  from . import api as api
2
- from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
4
3
  from _typeshed import Incomplete
5
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -10,6 +9,7 @@ from homeassistant.helpers import aiohttp_client as aiohttp_client, config_entry
10
9
 
11
10
  _LOGGER: Incomplete
12
11
  PLATFORMS: list[Platform]
12
+ AutomowerConfigEntry = ConfigEntry[AutomowerDataUpdateCoordinator]
13
13
 
14
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
15
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
14
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
15
+ async def async_unload_entry(hass: HomeAssistant, entry: AutomowerConfigEntry) -> bool: ...
@@ -1,4 +1,4 @@
1
- from .const import DOMAIN as DOMAIN
1
+ 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
@@ -6,7 +6,6 @@ from aioautomower.model import MowerAttributes as MowerAttributes
6
6
  from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
9
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
10
9
  from homeassistant.core import HomeAssistant as HomeAssistant
11
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
11
 
@@ -19,7 +18,7 @@ class AutomowerBinarySensorEntityDescription(BinarySensorEntityDescription):
19
18
 
20
19
  BINARY_SENSOR_TYPES: tuple[AutomowerBinarySensorEntityDescription, ...]
21
20
 
22
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
21
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
23
22
 
24
23
  class AutomowerBinarySensorEntity(AutomowerBaseEntity, BinarySensorEntity):
25
24
  entity_description: AutomowerBinarySensorEntityDescription
@@ -0,0 +1,22 @@
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
+ from .const import DOMAIN as DOMAIN
3
+ from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
4
+ from .entity import AutomowerAvailableEntity as AutomowerAvailableEntity
5
+ from _typeshed import Incomplete
6
+ from homeassistant.components.button import ButtonEntity as ButtonEntity
7
+ from homeassistant.core import HomeAssistant as HomeAssistant
8
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
9
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
+
11
+ _LOGGER: Incomplete
12
+
13
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
+
15
+ class AutomowerButtonEntity(AutomowerAvailableEntity, ButtonEntity):
16
+ _attr_translation_key: str
17
+ _attr_entity_registry_enabled_default: bool
18
+ _attr_unique_id: Incomplete
19
+ def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
20
+ @property
21
+ def available(self) -> bool: ...
22
+ async def async_press(self) -> None: ...
@@ -1,13 +1,12 @@
1
- from .const import DOMAIN as DOMAIN
1
+ 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
5
  from homeassistant.components.device_tracker import SourceType as SourceType, TrackerEntity as TrackerEntity
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
8
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
8
 
10
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
9
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
10
 
12
11
  class AutomowerDeviceTrackerEntity(AutomowerBaseEntity, TrackerEntity):
13
12
  _attr_name: Incomplete
@@ -1,5 +1,5 @@
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
1
2
  from .const import DOMAIN as DOMAIN
2
- from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -14,4 +14,4 @@ TO_REDACT: Incomplete
14
14
  _LOGGER: Incomplete
15
15
 
16
16
  async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: ConfigEntry) -> dict[str, Any]: ...
17
- async def async_get_device_diagnostics(hass: HomeAssistant, entry: ConfigEntry, device: DeviceEntry) -> dict[str, Any]: ...
17
+ async def async_get_device_diagnostics(hass: HomeAssistant, entry: AutomowerConfigEntry, device: DeviceEntry) -> dict[str, Any]: ...
@@ -6,6 +6,8 @@ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
6
6
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
7
7
 
8
8
  _LOGGER: Incomplete
9
+ ERROR_ACTIVITIES: Incomplete
10
+ ERROR_STATES: Incomplete
9
11
 
10
12
  class AutomowerBaseEntity(CoordinatorEntity[AutomowerDataUpdateCoordinator]):
11
13
  _attr_has_entity_name: bool
@@ -15,6 +17,10 @@ class AutomowerBaseEntity(CoordinatorEntity[AutomowerDataUpdateCoordinator]):
15
17
  @property
16
18
  def mower_attributes(self) -> MowerAttributes: ...
17
19
 
18
- class AutomowerControlEntity(AutomowerBaseEntity):
20
+ class AutomowerAvailableEntity(AutomowerBaseEntity):
21
+ @property
22
+ def available(self) -> bool: ...
23
+
24
+ class AutomowerControlEntity(AutomowerAvailableEntity):
19
25
  @property
20
26
  def available(self) -> bool: ...
@@ -1,22 +1,30 @@
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
1
2
  from .const import DOMAIN as DOMAIN
2
3
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
- from .entity import AutomowerControlEntity as AutomowerControlEntity
4
+ from .entity import AutomowerAvailableEntity as AutomowerAvailableEntity
4
5
  from _typeshed import Incomplete
6
+ from collections.abc import Awaitable, Callable as Callable, Coroutine
7
+ from datetime import timedelta
5
8
  from homeassistant.components.lawn_mower import LawnMowerActivity as LawnMowerActivity, LawnMowerEntity as LawnMowerEntity, LawnMowerEntityFeature as LawnMowerEntityFeature
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
9
  from homeassistant.core import HomeAssistant as HomeAssistant
8
10
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
+ from homeassistant.helpers import entity_platform as entity_platform
9
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
+ from typing import Any
10
14
 
11
- SUPPORT_STATE_SERVICES: Incomplete
12
15
  DOCKED_ACTIVITIES: Incomplete
13
16
  MOWING_ACTIVITIES: Incomplete
14
17
  PAUSED_STATES: Incomplete
18
+ SUPPORT_STATE_SERVICES: Incomplete
19
+ MOW: str
20
+ PARK: str
21
+ OVERRIDE_MODES: Incomplete
15
22
  _LOGGER: Incomplete
16
23
 
17
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
24
+ def handle_sending_exception(func: Callable[..., Awaitable[Any]]) -> Callable[..., Coroutine[Any, Any, None]]: ...
25
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
18
26
 
19
- class AutomowerLawnMowerEntity(AutomowerControlEntity, LawnMowerEntity):
27
+ class AutomowerLawnMowerEntity(AutomowerAvailableEntity, LawnMowerEntity):
20
28
  _attr_name: Incomplete
21
29
  _attr_supported_features = SUPPORT_STATE_SERVICES
22
30
  _attr_unique_id: Incomplete
@@ -26,3 +34,4 @@ class AutomowerLawnMowerEntity(AutomowerControlEntity, LawnMowerEntity):
26
34
  async def async_start_mowing(self) -> None: ...
27
35
  async def async_pause(self) -> None: ...
28
36
  async def async_dock(self) -> None: ...
37
+ async def async_override_schedule(self, override_mode: str, duration: timedelta) -> None: ...
@@ -1,4 +1,5 @@
1
- from .const import DOMAIN as DOMAIN, EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
+ from .const import EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
2
3
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
4
  from .entity import AutomowerControlEntity as AutomowerControlEntity
4
5
  from _typeshed import Incomplete
@@ -7,7 +8,6 @@ from aioautomower.session import AutomowerSession as AutomowerSession
7
8
  from collections.abc import Awaitable, Callable as Callable
8
9
  from dataclasses import dataclass
9
10
  from homeassistant.components.number import NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
10
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
11
11
  from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, Platform as Platform
12
12
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
13
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -39,7 +39,7 @@ class AutomowerWorkAreaNumberEntityDescription(NumberEntityDescription):
39
39
 
40
40
  WORK_AREA_NUMBER_TYPES: tuple[AutomowerWorkAreaNumberEntityDescription, ...]
41
41
 
42
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
42
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
43
43
 
44
44
  class AutomowerNumberEntity(AutomowerControlEntity, NumberEntity):
45
45
  entity_description: AutomowerNumberEntityDescription
@@ -51,7 +51,6 @@ class AutomowerNumberEntity(AutomowerControlEntity, NumberEntity):
51
51
 
52
52
  class AutomowerWorkAreaNumberEntity(AutomowerControlEntity, NumberEntity):
53
53
  entity_description: AutomowerWorkAreaNumberEntityDescription
54
- coordinator: Incomplete
55
54
  work_area_id: Incomplete
56
55
  _attr_unique_id: Incomplete
57
56
  _attr_translation_placeholders: Incomplete
@@ -64,4 +63,4 @@ class AutomowerWorkAreaNumberEntity(AutomowerControlEntity, NumberEntity):
64
63
  def native_value(self) -> float: ...
65
64
  async def async_set_native_value(self, value: float) -> None: ...
66
65
 
67
- def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, config_entry: ConfigEntry, mower_id: str) -> None: ...
66
+ def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, entry: AutomowerConfigEntry, mower_id: str) -> None: ...
@@ -1,9 +1,8 @@
1
- from .const import DOMAIN as DOMAIN
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
2
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
3
  from .entity import AutomowerControlEntity as AutomowerControlEntity
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.select import SelectEntity as SelectEntity
6
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
6
  from homeassistant.const import EntityCategory as EntityCategory
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
9
8
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -12,7 +11,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
12
11
  _LOGGER: Incomplete
13
12
  HEADLIGHT_MODES: list
14
13
 
15
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
15
 
17
16
  class AutomowerSelectEntity(AutomowerControlEntity, SelectEntity):
18
17
  _attr_options = HEADLIGHT_MODES
@@ -1,4 +1,4 @@
1
- from .const import DOMAIN as DOMAIN
1
+ 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
@@ -7,9 +7,8 @@ from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from datetime import datetime
9
9
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
10
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
11
10
  from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfLength as UnitOfLength, UnitOfTime as UnitOfTime
12
- from homeassistant.core import HomeAssistant as HomeAssistant
11
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
14
13
  from homeassistant.helpers.typing import StateType as StateType
15
14
 
@@ -17,15 +16,19 @@ _LOGGER: Incomplete
17
16
  ERROR_KEY_LIST: Incomplete
18
17
  RESTRICTED_REASONS: list
19
18
 
19
+ def _get_work_area_names(data: MowerAttributes) -> list[str]: ...
20
+ def _get_current_work_area_name(data: MowerAttributes) -> str: ...
21
+
20
22
  @dataclass(frozen=True, kw_only=True)
21
23
  class AutomowerSensorEntityDescription(SensorEntityDescription):
22
24
  exists_fn: Callable[[MowerAttributes], bool] = ...
25
+ option_fn: Callable[[MowerAttributes], list[str] | None] = ...
23
26
  value_fn: Callable[[MowerAttributes], StateType | datetime]
24
- def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, exists_fn, value_fn) -> None: ...
27
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, exists_fn, option_fn, value_fn) -> None: ...
25
28
 
26
29
  SENSOR_TYPES: tuple[AutomowerSensorEntityDescription, ...]
27
30
 
28
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
31
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
29
32
 
30
33
  class AutomowerSensorEntity(AutomowerBaseEntity, SensorEntity):
31
34
  entity_description: AutomowerSensorEntityDescription
@@ -33,3 +36,5 @@ class AutomowerSensorEntity(AutomowerBaseEntity, SensorEntity):
33
36
  def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator, description: AutomowerSensorEntityDescription) -> None: ...
34
37
  @property
35
38
  def native_value(self) -> StateType | datetime: ...
39
+ @property
40
+ def options(self) -> list[str] | None: ...
@@ -1,10 +1,10 @@
1
- from .const import DOMAIN as DOMAIN, EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
1
+ from . import AutomowerConfigEntry as AutomowerConfigEntry
2
+ from .const import EXECUTION_TIME_DELAY as EXECUTION_TIME_DELAY
2
3
  from .coordinator import AutomowerDataUpdateCoordinator as AutomowerDataUpdateCoordinator
3
4
  from .entity import AutomowerControlEntity as AutomowerControlEntity
4
5
  from _typeshed import Incomplete
5
6
  from aioautomower.model import StayOutZones as StayOutZones, Zone as Zone
6
7
  from homeassistant.components.switch import SwitchEntity as SwitchEntity
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import Platform as Platform
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
10
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -12,10 +12,8 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
12
12
  from typing import Any
13
13
 
14
14
  _LOGGER: Incomplete
15
- ERROR_ACTIVITIES: Incomplete
16
- ERROR_STATES: Incomplete
17
15
 
18
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
+ async def async_setup_entry(hass: HomeAssistant, entry: AutomowerConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
19
17
 
20
18
  class AutomowerScheduleSwitchEntity(AutomowerControlEntity, SwitchEntity):
21
19
  _attr_translation_key: str
@@ -23,8 +21,6 @@ class AutomowerScheduleSwitchEntity(AutomowerControlEntity, SwitchEntity):
23
21
  def __init__(self, mower_id: str, coordinator: AutomowerDataUpdateCoordinator) -> None: ...
24
22
  @property
25
23
  def is_on(self) -> bool: ...
26
- @property
27
- def available(self) -> bool: ...
28
24
  async def async_turn_off(self, **kwargs: Any) -> None: ...
29
25
  async def async_turn_on(self, **kwargs: Any) -> None: ...
30
26
 
@@ -46,4 +42,4 @@ class AutomowerStayOutZoneSwitchEntity(AutomowerControlEntity, SwitchEntity):
46
42
  async def async_turn_off(self, **kwargs: Any) -> None: ...
47
43
  async def async_turn_on(self, **kwargs: Any) -> None: ...
48
44
 
49
- def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, config_entry: ConfigEntry, mower_id: str) -> None: ...
45
+ def async_remove_entities(hass: HomeAssistant, coordinator: AutomowerDataUpdateCoordinator, entry: AutomowerConfigEntry, mower_id: str) -> None: ...
@@ -5,7 +5,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
6
6
  from homeassistant.util.dt import now as now
7
7
  from pydrawise import Hydrawise as Hydrawise
8
- from pydrawise.schema import Controller as Controller, ControllerWaterUseSummary, Sensor as Sensor, User as User, Zone as Zone
8
+ from pydrawise.schema import Controller as Controller, ControllerWaterUseSummary as ControllerWaterUseSummary, Sensor as Sensor, User as User, Zone as Zone
9
9
 
10
10
  @dataclass
11
11
  class HydrawiseData:
@@ -13,8 +13,8 @@ class HydrawiseData:
13
13
  controllers: dict[int, Controller]
14
14
  zones: dict[int, Zone]
15
15
  sensors: dict[int, Sensor]
16
- daily_water_use: dict[int, ControllerWaterUseSummary]
17
- def __init__(self, user, controllers, zones, sensors, daily_water_use) -> None: ...
16
+ daily_water_summary: dict[int, ControllerWaterUseSummary]
17
+ def __init__(self, user, controllers, zones, sensors, daily_water_summary) -> None: ...
18
18
 
19
19
  class HydrawiseDataUpdateCoordinator(DataUpdateCoordinator[HydrawiseData]):
20
20
  api: Hydrawise
@@ -20,10 +20,13 @@ class HydrawiseSensorEntityDescription(SensorEntityDescription):
20
20
  def _get_zone_watering_time(sensor: HydrawiseSensor) -> int: ...
21
21
  def _get_zone_next_cycle(sensor: HydrawiseSensor) -> datetime | None: ...
22
22
  def _get_zone_daily_active_water_use(sensor: HydrawiseSensor) -> float: ...
23
+ def _get_zone_daily_active_water_time(sensor: HydrawiseSensor) -> float | None: ...
23
24
  def _get_controller_daily_active_water_use(sensor: HydrawiseSensor) -> float | None: ...
24
25
  def _get_controller_daily_inactive_water_use(sensor: HydrawiseSensor) -> float | None: ...
26
+ def _get_controller_daily_active_water_time(sensor: HydrawiseSensor) -> float: ...
25
27
  def _get_controller_daily_total_water_use(sensor: HydrawiseSensor) -> float | None: ...
26
28
 
29
+ CONTROLLER_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
27
30
  FLOW_CONTROLLER_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
28
31
  FLOW_ZONE_SENSORS: tuple[SensorEntityDescription, ...]
29
32
  ZONE_SENSORS: tuple[HydrawiseSensorEntityDescription, ...]
@@ -3,6 +3,7 @@ from _typeshed import Incomplete
3
3
  from homeassistant.components import bluetooth as bluetooth
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
5
5
  from homeassistant.core import callback as callback
6
+ from homeassistant.helpers.typing import VolDictType as VolDictType
6
7
  from typing import Any
7
8
 
8
9
  class IBeaconConfigFlow(ConfigFlow, domain=DOMAIN):
@@ -1,7 +1,7 @@
1
1
  import logging
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components import bluetooth as bluetooth
4
- from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
4
+ from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
6
6
 
7
7
  _LOGGER: Incomplete
@@ -9,11 +9,8 @@ _LOGGER: Incomplete
9
9
  class IdasenDeskCoordinator(DataUpdateCoordinator[int | None]):
10
10
  _address: Incomplete
11
11
  _expected_connected: bool
12
- _connection_lost: bool
13
- _disconnect_lock: Incomplete
14
12
  desk: Incomplete
15
13
  def __init__(self, hass: HomeAssistant, logger: logging.Logger, name: str, address: str) -> None: ...
16
14
  async def async_connect(self) -> bool: ...
17
15
  async def async_disconnect(self) -> None: ...
18
- async def async_ensure_connection_state(self) -> None: ...
19
- def async_set_updated_data(self, data: int | None) -> None: ...
16
+ async def async_connect_if_expected(self) -> None: ...
@@ -27,8 +27,11 @@ class IdasenDeskSensor(CoordinatorEntity[IdasenDeskCoordinator], SensorEntity):
27
27
  _attr_unique_id: Incomplete
28
28
  _attr_device_info: Incomplete
29
29
  _address: Incomplete
30
+ _desk: Incomplete
30
31
  def __init__(self, address: str, device_info: DeviceInfo, coordinator: IdasenDeskCoordinator, description: IdasenDeskSensorDescription) -> None: ...
31
32
  async def async_added_to_hass(self) -> None: ...
33
+ @property
34
+ def available(self) -> bool: ...
32
35
  def _handle_coordinator_update(self, *args: Any) -> None: ...
33
36
  _attr_native_value: Incomplete
34
37
  def _update_native_value(self) -> None: ...
@@ -10,7 +10,6 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
10
10
  from homeassistant.const import CONTENT_TYPE_MULTIPART as CONTENT_TYPE_MULTIPART, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP
11
11
  from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
12
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
13
- from homeassistant.helpers.config_validation import PLATFORM_SCHEMA as PLATFORM_SCHEMA, PLATFORM_SCHEMA_BASE as PLATFORM_SCHEMA_BASE
14
13
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
15
14
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
16
15
  from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event, async_track_time_interval as async_track_time_interval
@@ -19,8 +18,10 @@ from homeassistant.helpers.typing import ConfigType as ConfigType, UNDEFINED as
19
18
  from typing import Final
20
19
 
21
20
  _LOGGER: Incomplete
22
- SCAN_INTERVAL: Final[Incomplete]
23
21
  ENTITY_ID_FORMAT: Final[Incomplete]
22
+ PLATFORM_SCHEMA: Incomplete
23
+ PLATFORM_SCHEMA_BASE: Incomplete
24
+ SCAN_INTERVAL: Final[Incomplete]
24
25
  DEFAULT_CONTENT_TYPE: Final[str]
25
26
  ENTITY_IMAGE_URL: Final[str]
26
27
  TOKEN_CHANGE_INTERVAL: Final[Incomplete]