homeassistant-stubs 2024.4.4__py3-none-any.whl → 2024.5.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 (360) hide show
  1. homeassistant-stubs/auth/__init__.pyi +3 -1
  2. homeassistant-stubs/auth/jwt_wrapper.pyi +1 -1
  3. homeassistant-stubs/auth/permissions/__init__.pyi +1 -2
  4. homeassistant-stubs/auth/permissions/events.pyi +3 -2
  5. homeassistant-stubs/auth/session.pyi +46 -0
  6. homeassistant-stubs/backports/enum.pyi +6 -2
  7. homeassistant-stubs/backports/functools.pyi +5 -15
  8. homeassistant-stubs/block_async_io.pyi +8 -1
  9. homeassistant-stubs/bootstrap.pyi +7 -1
  10. homeassistant-stubs/components/accuweather/__init__.pyi +9 -13
  11. homeassistant-stubs/components/accuweather/config_flow.pyi +2 -10
  12. homeassistant-stubs/components/accuweather/const.pyi +2 -2
  13. homeassistant-stubs/components/accuweather/coordinator.pyi +27 -0
  14. homeassistant-stubs/components/accuweather/diagnostics.pyi +1 -1
  15. homeassistant-stubs/components/accuweather/sensor.pyi +29 -8
  16. homeassistant-stubs/components/accuweather/weather.pyi +9 -5
  17. homeassistant-stubs/components/adax/climate.pyi +3 -1
  18. homeassistant-stubs/components/adguard/__init__.pyi +9 -1
  19. homeassistant-stubs/components/adguard/const.pyi +0 -2
  20. homeassistant-stubs/components/adguard/entity.pyi +4 -3
  21. homeassistant-stubs/components/adguard/sensor.pyi +3 -3
  22. homeassistant-stubs/components/adguard/switch.pyi +3 -3
  23. homeassistant-stubs/components/airtouch5/config_flow.pyi +3 -3
  24. homeassistant-stubs/components/airzone_cloud/entity.pyi +7 -0
  25. homeassistant-stubs/components/airzone_cloud/select.pyi +38 -0
  26. homeassistant-stubs/components/airzone_cloud/water_heater.pyi +35 -0
  27. homeassistant-stubs/components/alert/__init__.pyi +2 -2
  28. homeassistant-stubs/components/alexa/config.pyi +2 -0
  29. homeassistant-stubs/components/alexa/entities.pyi +0 -2
  30. homeassistant-stubs/components/alexa/intent.pyi +2 -1
  31. homeassistant-stubs/components/alexa/resources.pyi +3 -3
  32. homeassistant-stubs/components/alexa/state_report.pyi +3 -4
  33. homeassistant-stubs/components/ambient_network/__init__.pyi +10 -0
  34. homeassistant-stubs/components/ambient_network/config_flow.pyi +22 -0
  35. homeassistant-stubs/components/ambient_network/const.pyi +12 -0
  36. homeassistant-stubs/components/ambient_network/coordinator.pyi +18 -0
  37. homeassistant-stubs/components/ambient_network/entity.pyi +20 -0
  38. homeassistant-stubs/components/ambient_network/helper.pyi +4 -0
  39. homeassistant-stubs/components/ambient_network/sensor.pyi +46 -0
  40. homeassistant-stubs/components/ambient_station/sensor.pyi +3 -1
  41. homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -2
  42. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +1 -0
  43. homeassistant-stubs/components/apcupsd/sensor.pyi +1 -0
  44. homeassistant-stubs/components/api/__init__.pyi +2 -2
  45. homeassistant-stubs/components/apple_tv/remote.pyi +1 -1
  46. homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +5 -4
  47. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  48. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  49. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +5 -3
  50. homeassistant-stubs/components/auth/__init__.pyi +9 -2
  51. homeassistant-stubs/components/auth/login_flow.pyi +2 -2
  52. homeassistant-stubs/components/auth/mfa_setup_flow.pyi +1 -1
  53. homeassistant-stubs/components/automation/__init__.pyi +7 -9
  54. homeassistant-stubs/components/automation/logbook.pyi +3 -1
  55. homeassistant-stubs/components/axis/hub/event_source.pyi +23 -0
  56. homeassistant-stubs/components/axis/hub/hub.pyi +4 -9
  57. homeassistant-stubs/components/baf/fan.pyi +1 -0
  58. homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -2
  59. homeassistant-stubs/components/bluetooth/config_flow.pyi +6 -0
  60. homeassistant-stubs/components/bluetooth/diagnostics.pyi +1 -1
  61. homeassistant-stubs/components/bluetooth/util.pyi +2 -1
  62. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +2 -1
  63. homeassistant-stubs/components/bmw_connected_drive/const.pyi +1 -0
  64. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +4 -3
  65. homeassistant-stubs/components/camera/__init__.pyi +2 -2
  66. homeassistant-stubs/components/cloud/__init__.pyi +9 -4
  67. homeassistant-stubs/components/cloud/alexa_config.pyi +2 -2
  68. homeassistant-stubs/components/cloud/const.pyi +2 -1
  69. homeassistant-stubs/components/cloud/google_config.pyi +3 -3
  70. homeassistant-stubs/components/cloud/http_api.pyi +2 -2
  71. homeassistant-stubs/components/cloud/prefs.pyi +5 -3
  72. homeassistant-stubs/components/cloud/stt.pyi +1 -0
  73. homeassistant-stubs/components/cloud/tts.pyi +1 -0
  74. homeassistant-stubs/components/cloud/util.pyi +7 -0
  75. homeassistant-stubs/components/command_line/binary_sensor.pyi +4 -4
  76. homeassistant-stubs/components/command_line/const.pyi +4 -1
  77. homeassistant-stubs/components/command_line/cover.pyi +3 -3
  78. homeassistant-stubs/components/command_line/sensor.pyi +4 -5
  79. homeassistant-stubs/components/command_line/switch.pyi +3 -3
  80. homeassistant-stubs/components/config/__init__.pyi +1 -1
  81. homeassistant-stubs/components/deconz/binary_sensor.pyi +0 -1
  82. homeassistant-stubs/components/demo/notify.pyi +12 -10
  83. homeassistant-stubs/components/demo/sensor.pyi +1 -1
  84. homeassistant-stubs/components/derivative/sensor.pyi +2 -2
  85. homeassistant-stubs/components/device_tracker/config_entry.pyi +1 -1
  86. homeassistant-stubs/components/device_tracker/legacy.pyi +2 -1
  87. homeassistant-stubs/components/dhcp/__init__.pyi +2 -2
  88. homeassistant-stubs/components/dlna_dms/dms.pyi +2 -1
  89. homeassistant-stubs/components/ecovacs/event.pyi +1 -0
  90. homeassistant-stubs/components/ecovacs/select.pyi +1 -1
  91. homeassistant-stubs/components/ecovacs/util.pyi +5 -1
  92. homeassistant-stubs/components/ecovacs/vacuum.pyi +1 -0
  93. homeassistant-stubs/components/emulated_hue/config.pyi +2 -2
  94. homeassistant-stubs/components/emulated_hue/hue_api.pyi +2 -2
  95. homeassistant-stubs/components/energenie_power_sockets/__init__.pyi +12 -0
  96. homeassistant-stubs/components/energenie_power_sockets/config_flow.pyi +6 -0
  97. homeassistant-stubs/components/energenie_power_sockets/const.pyi +5 -0
  98. homeassistant-stubs/components/energenie_power_sockets/switch.pyi +27 -0
  99. homeassistant-stubs/components/energy/data.pyi +1 -0
  100. homeassistant-stubs/components/energy/sensor.pyi +4 -4
  101. homeassistant-stubs/components/energy/websocket_api.pyi +1 -1
  102. homeassistant-stubs/components/enigma2/__init__.pyi +11 -0
  103. homeassistant-stubs/components/enigma2/config_flow.pyi +17 -0
  104. homeassistant-stubs/components/enigma2/const.pyi +1 -0
  105. homeassistant-stubs/components/enigma2/media_player.pyi +9 -6
  106. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +1 -0
  107. homeassistant-stubs/components/eq3btsmart/__init__.pyi +18 -0
  108. homeassistant-stubs/components/eq3btsmart/climate.pyi +55 -0
  109. homeassistant-stubs/components/eq3btsmart/config_flow.pyi +17 -0
  110. homeassistant-stubs/components/eq3btsmart/const.pyi +38 -0
  111. homeassistant-stubs/components/eq3btsmart/entity.pyi +10 -0
  112. homeassistant-stubs/components/eq3btsmart/models.pyi +20 -0
  113. homeassistant-stubs/components/eq3btsmart/schemas.pyi +6 -0
  114. homeassistant-stubs/components/esphome/datetime.pyi +14 -0
  115. homeassistant-stubs/components/esphome/entry_data.pyi +4 -5
  116. homeassistant-stubs/components/esphome/event.pyi +16 -0
  117. homeassistant-stubs/components/esphome/manager.pyi +5 -4
  118. homeassistant-stubs/components/esphome/update.pyi +0 -1
  119. homeassistant-stubs/components/esphome/valve.pyi +30 -0
  120. homeassistant-stubs/components/esphome/voice_assistant.pyi +24 -8
  121. homeassistant-stubs/components/filter/sensor.pyi +2 -2
  122. homeassistant-stubs/components/fritz/__init__.pyi +2 -2
  123. homeassistant-stubs/components/fritz/button.pyi +16 -3
  124. homeassistant-stubs/components/fritz/common.pyi +6 -3
  125. homeassistant-stubs/components/fritz/config_flow.pyi +7 -2
  126. homeassistant-stubs/components/fritz/const.pyi +5 -1
  127. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  128. homeassistant-stubs/components/fritzbox/config_flow.pyi +2 -0
  129. homeassistant-stubs/components/fritzbox/coordinator.pyi +4 -2
  130. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +4 -2
  131. homeassistant-stubs/components/generic_thermostat/climate.pyi +2 -2
  132. homeassistant-stubs/components/geo_location/trigger.pyi +2 -2
  133. homeassistant-stubs/components/glances/coordinator.pyi +1 -0
  134. homeassistant-stubs/components/glances/sensor.pyi +6 -5
  135. homeassistant-stubs/components/group/entity.pyi +9 -13
  136. homeassistant-stubs/components/group/event.pyi +2 -2
  137. homeassistant-stubs/components/group/media_player.pyi +2 -2
  138. homeassistant-stubs/components/group/notify.pyi +2 -1
  139. homeassistant-stubs/components/group/registry.pyi +7 -4
  140. homeassistant-stubs/components/history/websocket_api.pyi +6 -6
  141. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -2
  142. homeassistant-stubs/components/history_stats/data.pyi +1 -2
  143. homeassistant-stubs/components/homeassistant/logbook.pyi +5 -3
  144. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -2
  145. homeassistant-stubs/components/homeassistant/triggers/state.pyi +2 -2
  146. homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -2
  147. homeassistant-stubs/components/homeassistant_alerts/__init__.pyi +3 -1
  148. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +7 -9
  149. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +60 -6
  150. homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +8 -0
  151. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +23 -2
  152. homeassistant-stubs/components/homekit/accessories.pyi +2 -2
  153. homeassistant-stubs/components/homekit/type_cameras.pyi +3 -2
  154. homeassistant-stubs/components/homekit/type_covers.pyi +2 -2
  155. homeassistant-stubs/components/homekit/type_humidifiers.pyi +2 -2
  156. homeassistant-stubs/components/homekit/type_thermostats.pyi +2 -2
  157. homeassistant-stubs/components/homekit/util.pyi +3 -4
  158. homeassistant-stubs/components/homeworks/__init__.pyi +7 -2
  159. homeassistant-stubs/components/homeworks/button.pyi +1 -1
  160. homeassistant-stubs/components/http/__init__.pyi +11 -7
  161. homeassistant-stubs/components/http/auth.pyi +11 -3
  162. homeassistant-stubs/components/http/const.pyi +7 -0
  163. homeassistant-stubs/components/http/session.pyi +29 -0
  164. homeassistant-stubs/components/hydrawise/__init__.pyi +3 -6
  165. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +1 -4
  166. homeassistant-stubs/components/hydrawise/config_flow.pyi +8 -9
  167. homeassistant-stubs/components/hydrawise/sensor.pyi +2 -4
  168. homeassistant-stubs/components/hydrawise/switch.pyi +2 -5
  169. homeassistant-stubs/components/image/__init__.pyi +2 -2
  170. homeassistant-stubs/components/imap/__init__.pyi +20 -4
  171. homeassistant-stubs/components/imap/config_flow.pyi +2 -1
  172. homeassistant-stubs/components/imap/const.pyi +5 -2
  173. homeassistant-stubs/components/imap/coordinator.pyi +5 -2
  174. homeassistant-stubs/components/integration/sensor.pyi +12 -13
  175. homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +1 -3
  176. homeassistant-stubs/components/islamic_prayer_times/coordinator.pyi +2 -2
  177. homeassistant-stubs/components/isy994/helpers.pyi +1 -1
  178. homeassistant-stubs/components/jvc_projector/select.pyi +30 -0
  179. homeassistant-stubs/components/knx/expose.pyi +2 -2
  180. homeassistant-stubs/components/knx/helpers/__init__.pyi +0 -0
  181. homeassistant-stubs/components/knx/notify.pyi +16 -3
  182. homeassistant-stubs/components/knx/repairs.pyi +7 -0
  183. homeassistant-stubs/components/logbook/__init__.pyi +1 -0
  184. homeassistant-stubs/components/logbook/helpers.pyi +5 -4
  185. homeassistant-stubs/components/logbook/models.pyi +4 -3
  186. homeassistant-stubs/components/logbook/processor.pyi +3 -2
  187. homeassistant-stubs/components/logger/helpers.pyi +4 -1
  188. homeassistant-stubs/components/media_extractor/__init__.pyi +4 -4
  189. homeassistant-stubs/components/media_extractor/const.pyi +5 -0
  190. homeassistant-stubs/components/min_max/sensor.pyi +2 -2
  191. homeassistant-stubs/components/minecraft_server/sensor.pyi +2 -2
  192. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  193. homeassistant-stubs/components/modbus/base_platform.pyi +1 -1
  194. homeassistant-stubs/components/modbus/climate.pyi +9 -3
  195. homeassistant-stubs/components/modbus/const.pyi +7 -0
  196. homeassistant-stubs/components/modbus/modbus.pyi +1 -0
  197. homeassistant-stubs/components/modbus/validators.pyi +2 -1
  198. homeassistant-stubs/components/mqtt/__init__.pyi +1 -2
  199. homeassistant-stubs/components/mqtt/client.pyi +30 -9
  200. homeassistant-stubs/components/mqtt/config_flow.pyi +9 -1
  201. homeassistant-stubs/components/mqtt/mixins.pyi +7 -4
  202. homeassistant-stubs/components/mqtt/models.pyi +1 -1
  203. homeassistant-stubs/components/mqtt/notify.pyi +31 -0
  204. homeassistant-stubs/components/netatmo/__init__.pyi +2 -0
  205. homeassistant-stubs/components/netatmo/binary_sensor.pyi +20 -0
  206. homeassistant-stubs/components/netatmo/camera.pyi +8 -11
  207. homeassistant-stubs/components/netatmo/climate.pyi +11 -19
  208. homeassistant-stubs/components/netatmo/cover.pyi +5 -7
  209. homeassistant-stubs/components/netatmo/entity.pyi +40 -10
  210. homeassistant-stubs/components/netatmo/fan.pyi +5 -8
  211. homeassistant-stubs/components/netatmo/light.pyi +11 -19
  212. homeassistant-stubs/components/netatmo/select.pyi +4 -7
  213. homeassistant-stubs/components/netatmo/sensor.pyi +36 -49
  214. homeassistant-stubs/components/netatmo/switch.pyi +5 -7
  215. homeassistant-stubs/components/nextdns/__init__.pyi +1 -38
  216. homeassistant-stubs/components/nextdns/binary_sensor.pyi +1 -1
  217. homeassistant-stubs/components/nextdns/button.pyi +1 -1
  218. homeassistant-stubs/components/nextdns/coordinator.pyi +42 -0
  219. homeassistant-stubs/components/nextdns/sensor.pyi +1 -1
  220. homeassistant-stubs/components/nextdns/switch.pyi +1 -1
  221. homeassistant-stubs/components/nfandroidtv/notify.pyi +2 -1
  222. homeassistant-stubs/components/notify/__init__.pyi +31 -2
  223. homeassistant-stubs/components/notify/const.pyi +2 -0
  224. homeassistant-stubs/components/number/const.pyi +1 -0
  225. homeassistant-stubs/components/number/significant_change.pyi +1 -1
  226. homeassistant-stubs/components/oncue/__init__.pyi +2 -1
  227. homeassistant-stubs/components/oncue/config_flow.pyi +7 -1
  228. homeassistant-stubs/components/open_meteo/weather.pyi +2 -1
  229. homeassistant-stubs/components/prometheus/__init__.pyi +1 -2
  230. homeassistant-stubs/components/proximity/__init__.pyi +1 -1
  231. homeassistant-stubs/components/proximity/coordinator.pyi +2 -2
  232. homeassistant-stubs/components/purpleair/config_flow.pyi +2 -2
  233. homeassistant-stubs/components/rabbitair/config_flow.pyi +4 -4
  234. homeassistant-stubs/components/recorder/__init__.pyi +1 -0
  235. homeassistant-stubs/components/recorder/auto_repairs/states/__init__.pyi +0 -0
  236. homeassistant-stubs/components/recorder/core.pyi +6 -5
  237. homeassistant-stubs/components/recorder/db_schema.pyi +3 -3
  238. homeassistant-stubs/components/recorder/history/__init__.pyi +5 -6
  239. homeassistant-stubs/components/recorder/history/legacy.pyi +7 -7
  240. homeassistant-stubs/components/recorder/history/modern.pyi +7 -7
  241. homeassistant-stubs/components/recorder/models/event.pyi +4 -1
  242. homeassistant-stubs/components/recorder/pool.pyi +1 -1
  243. homeassistant-stubs/components/recorder/services.pyi +1 -0
  244. homeassistant-stubs/components/recorder/statistics.pyi +4 -4
  245. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +4 -3
  246. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +5 -3
  247. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +3 -3
  248. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +2 -2
  249. homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +3 -3
  250. homeassistant-stubs/components/recorder/tasks.pyi +2 -1
  251. homeassistant-stubs/components/recorder/websocket_api.pyi +1 -1
  252. homeassistant-stubs/components/rest/__init__.pyi +2 -2
  253. homeassistant-stubs/components/rest/const.pyi +1 -0
  254. homeassistant-stubs/components/rest/data.pyi +1 -0
  255. homeassistant-stubs/components/rest/schema.pyi +1 -1
  256. homeassistant-stubs/components/rfxtrx/__init__.pyi +1 -1
  257. homeassistant-stubs/components/rfxtrx/config_flow.pyi +2 -2
  258. homeassistant-stubs/components/ring/__init__.pyi +25 -0
  259. homeassistant-stubs/components/ring/binary_sensor.pyi +35 -0
  260. homeassistant-stubs/components/ring/button.pyi +20 -0
  261. homeassistant-stubs/components/ring/camera.pyi +43 -0
  262. homeassistant-stubs/components/ring/config_flow.pyi +26 -0
  263. homeassistant-stubs/components/ring/const.pyi +12 -0
  264. homeassistant-stubs/components/ring/coordinator.pyi +25 -0
  265. homeassistant-stubs/components/ring/diagnostics.pyi +11 -0
  266. homeassistant-stubs/components/ring/entity.pyi +33 -0
  267. homeassistant-stubs/components/ring/light.pyi +34 -0
  268. homeassistant-stubs/components/ring/sensor.pyi +39 -0
  269. homeassistant-stubs/components/ring/siren.pyi +23 -0
  270. homeassistant-stubs/components/ring/switch.pyi +31 -0
  271. homeassistant-stubs/components/romy/binary_sensor.pyi +19 -0
  272. homeassistant-stubs/components/romy/config_flow.pyi +7 -7
  273. homeassistant-stubs/components/romy/sensor.pyi +20 -0
  274. homeassistant-stubs/components/sensor/__init__.pyi +1 -1
  275. homeassistant-stubs/components/sensor/significant_change.pyi +1 -1
  276. homeassistant-stubs/components/shelly/__init__.pyi +2 -4
  277. homeassistant-stubs/components/shelly/coordinator.pyi +8 -7
  278. homeassistant-stubs/components/starlink/coordinator.pyi +1 -0
  279. homeassistant-stubs/components/statistics/sensor.pyi +2 -2
  280. homeassistant-stubs/components/switch/light.pyi +2 -2
  281. homeassistant-stubs/components/synology_dsm/__init__.pyi +2 -2
  282. homeassistant-stubs/components/synology_dsm/camera.pyi +3 -2
  283. homeassistant-stubs/components/synology_dsm/common.pyi +6 -2
  284. homeassistant-stubs/components/synology_dsm/coordinator.pyi +4 -4
  285. homeassistant-stubs/components/synology_dsm/diagnostics.pyi +0 -1
  286. homeassistant-stubs/components/system_log/__init__.pyi +3 -3
  287. homeassistant-stubs/components/threshold/binary_sensor.pyi +2 -2
  288. homeassistant-stubs/components/tibber/sensor.pyi +1 -0
  289. homeassistant-stubs/components/tplink/coordinator.pyi +2 -0
  290. homeassistant-stubs/components/tplink/entity.pyi +1 -0
  291. homeassistant-stubs/components/tplink/light.pyi +1 -1
  292. homeassistant-stubs/components/tplink/sensor.pyi +4 -3
  293. homeassistant-stubs/components/tplink_omada/switch.pyi +12 -14
  294. homeassistant-stubs/components/trend/binary_sensor.pyi +2 -2
  295. homeassistant-stubs/components/unifi/__init__.pyi +2 -0
  296. homeassistant-stubs/components/unifi/button.pyi +2 -1
  297. homeassistant-stubs/components/unifi/hub/entity_helper.pyi +44 -0
  298. homeassistant-stubs/components/unifi/hub/hub.pyi +8 -13
  299. homeassistant-stubs/components/unifi/sensor.pyi +2 -1
  300. homeassistant-stubs/components/velbus/cover.pyi +2 -0
  301. homeassistant-stubs/components/weather/significant_change.pyi +1 -1
  302. homeassistant-stubs/components/websocket_api/commands.pyi +2 -2
  303. homeassistant-stubs/components/websocket_api/messages.pyi +1 -2
  304. homeassistant-stubs/components/websocket_api/sensor.pyi +3 -7
  305. homeassistant-stubs/components/withings/__init__.pyi +2 -8
  306. homeassistant-stubs/components/withings/config_flow.pyi +1 -1
  307. homeassistant-stubs/components/withings/const.pyi +0 -2
  308. homeassistant-stubs/components/zone/__init__.pyi +8 -10
  309. homeassistant-stubs/components/zone/trigger.pyi +2 -2
  310. homeassistant-stubs/components/zwave_js/config_flow.pyi +1 -1
  311. homeassistant-stubs/config.pyi +1 -1
  312. homeassistant-stubs/config_entries.pyi +32 -29
  313. homeassistant-stubs/const.pyi +11 -6
  314. homeassistant-stubs/core.pyi +56 -24
  315. homeassistant-stubs/data_entry_flow.pyi +3 -3
  316. homeassistant-stubs/exceptions.pyi +4 -2
  317. homeassistant-stubs/helpers/aiohttp_client.pyi +1 -0
  318. homeassistant-stubs/helpers/area_registry.pyi +28 -6
  319. homeassistant-stubs/helpers/backports/__init__.pyi +0 -0
  320. homeassistant-stubs/helpers/backports/aiohttp_resolver.pyi +21 -0
  321. homeassistant-stubs/helpers/category_registry.pyi +16 -6
  322. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
  323. homeassistant-stubs/helpers/deprecation.pyi +5 -0
  324. homeassistant-stubs/helpers/device_registry.pyi +25 -12
  325. homeassistant-stubs/helpers/dispatcher.pyi +1 -1
  326. homeassistant-stubs/helpers/entity.pyi +6 -3
  327. homeassistant-stubs/helpers/entity_registry.pyi +24 -16
  328. homeassistant-stubs/helpers/event.pyi +10 -17
  329. homeassistant-stubs/helpers/floor_registry.pyi +14 -3
  330. homeassistant-stubs/helpers/frame.pyi +2 -2
  331. homeassistant-stubs/helpers/httpx_client.pyi +1 -1
  332. homeassistant-stubs/helpers/icon.pyi +3 -2
  333. homeassistant-stubs/helpers/intent.pyi +1 -2
  334. homeassistant-stubs/helpers/label_registry.pyi +14 -3
  335. homeassistant-stubs/helpers/network.pyi +2 -2
  336. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +4 -6
  337. homeassistant-stubs/helpers/registry.pyi +19 -4
  338. homeassistant-stubs/helpers/reload.pyi +1 -1
  339. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +2 -2
  340. homeassistant-stubs/helpers/service.pyi +4 -1
  341. homeassistant-stubs/helpers/significant_change.pyi +4 -4
  342. homeassistant-stubs/helpers/start.pyi +3 -1
  343. homeassistant-stubs/helpers/template.pyi +6 -3
  344. homeassistant-stubs/helpers/translation.pyi +5 -9
  345. homeassistant-stubs/helpers/typing.pyi +11 -7
  346. homeassistant-stubs/requirements.pyi +2 -0
  347. homeassistant-stubs/setup.pyi +1 -0
  348. homeassistant-stubs/util/async_.pyi +1 -6
  349. homeassistant-stubs/util/dt.pyi +5 -4
  350. homeassistant-stubs/util/event_type.pyi +14 -0
  351. homeassistant-stubs/util/logging.pyi +3 -4
  352. homeassistant-stubs/util/loop.pyi +15 -0
  353. homeassistant-stubs/util/signal_type.pyi +1 -1
  354. homeassistant-stubs/util/timeout.pyi +6 -6
  355. homeassistant-stubs/util/yaml/loader.pyi +3 -4
  356. homeassistant-stubs/util/yaml/objects.pyi +12 -2
  357. {homeassistant_stubs-2024.4.4.dist-info → homeassistant_stubs-2024.5.0b0.dist-info}/METADATA +2 -2
  358. {homeassistant_stubs-2024.4.4.dist-info → homeassistant_stubs-2024.5.0b0.dist-info}/RECORD +360 -303
  359. {homeassistant_stubs-2024.4.4.dist-info → homeassistant_stubs-2024.5.0b0.dist-info}/LICENSE +0 -0
  360. {homeassistant_stubs-2024.4.4.dist-info → homeassistant_stubs-2024.5.0b0.dist-info}/WHEEL +0 -0
@@ -3,6 +3,7 @@ from .const import ACCESS_TOKEN_EXPIRATION as ACCESS_TOKEN_EXPIRATION, GROUP_ID_
3
3
  from .mfa_modules import MultiFactorAuthModule as MultiFactorAuthModule, auth_mfa_module_from_config as auth_mfa_module_from_config
4
4
  from .models import AuthFlowResult as AuthFlowResult
5
5
  from .providers import AuthProvider as AuthProvider, LoginFlow as LoginFlow, auth_provider_from_config as auth_provider_from_config
6
+ from .session import SessionManager as SessionManager
6
7
  from _typeshed import Incomplete
7
8
  from datetime import datetime, timedelta
8
9
  from homeassistant import data_entry_flow as data_entry_flow
@@ -38,8 +39,9 @@ class AuthManager:
38
39
  _revoke_callbacks: Incomplete
39
40
  _expire_callback: Incomplete
40
41
  _remove_expired_job: Incomplete
42
+ session: Incomplete
41
43
  def __init__(self, hass: HomeAssistant, store: auth_store.AuthStore, providers: _ProviderDict, mfa_modules: _MfaModuleDict) -> None: ...
42
- def async_setup(self) -> None: ...
44
+ async def async_setup(self) -> None: ...
43
45
  @property
44
46
  def auth_providers(self) -> list[AuthProvider]: ...
45
47
  @property
@@ -10,7 +10,7 @@ class _PyJWSWithLoadCache(PyJWS):
10
10
 
11
11
  class _PyJWTWithVerify(PyJWT):
12
12
  def decode_payload(self, jwt: str, key: str, options: dict[str, Any], algorithms: list[str]) -> dict[str, Any]: ...
13
- def verify_and_decode(self, jwt: str, key: str, algorithms: list[str], issuer: str | None = None, leeway: int | float | timedelta = 0, options: dict[str, Any] | None = None) -> dict[str, Any]: ...
13
+ def verify_and_decode(self, jwt: str, key: str, algorithms: list[str], issuer: str | None = None, leeway: float | timedelta = 0, options: dict[str, Any] | None = None) -> dict[str, Any]: ...
14
14
 
15
15
  verify_and_decode: Incomplete
16
16
  unverified_hs256_token_decode: Incomplete
@@ -3,7 +3,6 @@ from .models import PermissionLookup as PermissionLookup
3
3
  from .types import PolicyType as PolicyType
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable
6
- from typing import Any
7
6
 
8
7
  __all__ = ['POLICY_SCHEMA', 'merge_policies', 'PermissionLookup', 'PolicyType', 'AbstractPermissions', 'PolicyPermissions', 'OwnerPermissions']
9
8
 
@@ -21,7 +20,7 @@ class PolicyPermissions(AbstractPermissions):
21
20
  def __init__(self, policy: PolicyType, perm_lookup: PermissionLookup) -> None: ...
22
21
  def access_all_entities(self, key: str) -> bool: ...
23
22
  def _entity_func(self) -> Callable[[str, str], bool]: ...
24
- def __eq__(self, other: Any) -> bool: ...
23
+ def __eq__(self, other: object) -> bool: ...
25
24
 
26
25
  class _OwnerPermissions(AbstractPermissions):
27
26
  def access_all_entities(self, key: str) -> bool: ...
@@ -3,6 +3,7 @@ from homeassistant.helpers.area_registry import EVENT_AREA_REGISTRY_UPDATED as E
3
3
  from homeassistant.helpers.device_registry import EVENT_DEVICE_REGISTRY_UPDATED as EVENT_DEVICE_REGISTRY_UPDATED
4
4
  from homeassistant.helpers.entity_registry import EVENT_ENTITY_REGISTRY_UPDATED as EVENT_ENTITY_REGISTRY_UPDATED
5
5
  from homeassistant.helpers.issue_registry import EVENT_REPAIRS_ISSUE_REGISTRY_UPDATED as EVENT_REPAIRS_ISSUE_REGISTRY_UPDATED
6
- from typing import Final
6
+ from homeassistant.util.event_type import EventType as EventType
7
+ from typing import Any, Final
7
8
 
8
- SUBSCRIBE_ALLOWLIST: Final[set[str]]
9
+ SUBSCRIBE_ALLOWLIST: Final[set[EventType[Any] | str]]
@@ -0,0 +1,46 @@
1
+ from . import AuthManager as AuthManager
2
+ from .models import RefreshToken as RefreshToken
3
+ from _typeshed import Incomplete
4
+ from aiohttp.web import Request as Request
5
+ from aiohttp_session import Session as Session
6
+ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.helpers.event import async_call_later as async_call_later
8
+ from homeassistant.helpers.storage import Store as Store
9
+ from typing import TypedDict
10
+
11
+ TEMP_TIMEOUT: Incomplete
12
+ TEMP_TIMEOUT_SECONDS: Incomplete
13
+ SESSION_ID: str
14
+ STORAGE_VERSION: int
15
+ STORAGE_KEY: str
16
+
17
+ class StrictConnectionTempSessionData:
18
+ __slots__: Incomplete
19
+ cancel_remove: Incomplete
20
+ absolute_expiry: Incomplete
21
+ def __init__(self, cancel_remove: CALLBACK_TYPE) -> None: ...
22
+
23
+ class StoreData(TypedDict):
24
+ unauthorized_sessions: dict[str, str]
25
+ key: str
26
+
27
+ class SessionManager:
28
+ _auth: Incomplete
29
+ _hass: Incomplete
30
+ _temp_sessions: Incomplete
31
+ _strict_connection_sessions: Incomplete
32
+ _store: Incomplete
33
+ _key: Incomplete
34
+ _refresh_token_revoke_callbacks: Incomplete
35
+ def __init__(self, hass: HomeAssistant, auth: AuthManager) -> None: ...
36
+ @property
37
+ def key(self) -> str: ...
38
+ async def async_validate_request_for_strict_connection_session(self, request: Request) -> bool: ...
39
+ def async_validate_strict_connection_session(self, session: Session) -> bool: ...
40
+ def _async_register_revoke_token_callback(self, refresh_token_id: str) -> None: ...
41
+ async def async_create_session(self, request: Request, refresh_token: RefreshToken) -> None: ...
42
+ async def async_create_temp_unauthorized_session(self, request: Request) -> None: ...
43
+ async def _async_create_new_session(self, request: Request, *, max_age: int | None = None) -> str: ...
44
+ def _async_schedule_save(self, delay: float = 1) -> None: ...
45
+ def _data_to_save(self) -> StoreData: ...
46
+ async def async_setup(self) -> None: ...
@@ -1,3 +1,7 @@
1
- from enum import StrEnum as StrEnum
1
+ from _typeshed import Incomplete
2
+ from homeassistant.helpers.deprecation import DeprecatedAlias as DeprecatedAlias, 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
2
3
 
3
- __all__ = ['StrEnum']
4
+ _DEPRECATED_StrEnum: Incomplete
5
+ __getattr__: Incomplete
6
+ __dir__: Incomplete
7
+ __all__: Incomplete
@@ -1,17 +1,7 @@
1
1
  from _typeshed import Incomplete
2
- from collections.abc import Callable as Callable
3
- from typing import Any, Generic, Self, TypeVar, overload
2
+ from homeassistant.helpers.deprecation import DeprecatedAlias as DeprecatedAlias, 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
4
3
 
5
- _T = TypeVar('_T')
6
-
7
- class cached_property(Generic[_T]):
8
- func: Incomplete
9
- attrname: Incomplete
10
- __doc__: Incomplete
11
- def __init__(self, func: Callable[[Any], _T]) -> None: ...
12
- def __set_name__(self, owner: type[Any], name: str) -> None: ...
13
- @overload
14
- def __get__(self, instance: None, owner: type[Any] | None = None) -> Self: ...
15
- @overload
16
- def __get__(self, instance: Any, owner: type[Any] | None = None) -> _T: ...
17
- __class_getitem__: Incomplete
4
+ _DEPRECATED_cached_property: Incomplete
5
+ __getattr__: Incomplete
6
+ __dir__: Incomplete
7
+ __all__: Incomplete
@@ -1,3 +1,10 @@
1
- from .util.async_ import protect_loop as protect_loop
1
+ from .helpers.frame import get_current_frame as get_current_frame
2
+ from .util.loop import protect_loop as protect_loop
3
+ from _typeshed import Incomplete
4
+ from typing import Any
2
5
 
6
+ _IN_TESTS: Incomplete
7
+
8
+ def _check_import_call_allowed(mapped_args: dict[str, Any]) -> bool: ...
9
+ def _check_sleep_call_allowed(mapped_args: dict[str, Any]) -> bool: ...
3
10
  def enable() -> None: ...
@@ -1,4 +1,6 @@
1
- from . import config_entries as config_entries, core as core, loader as loader, requirements as requirements
1
+ import logging
2
+ import logging.handlers
3
+ from . import block_async_io as block_async_io, config_entries as config_entries, core as core, loader as loader, requirements as requirements
2
4
  from .components import http as http
3
5
  from .const import FORMAT_DATETIME as FORMAT_DATETIME, REQUIRED_NEXT_PYTHON_HA_RELEASE as REQUIRED_NEXT_PYTHON_HA_RELEASE, REQUIRED_NEXT_PYTHON_VER as REQUIRED_NEXT_PYTHON_VER, SIGNAL_BOOTSTRAP_INTEGRATIONS as SIGNAL_BOOTSTRAP_INTEGRATIONS
4
6
  from .exceptions import HomeAssistantError as HomeAssistantError
@@ -45,6 +47,10 @@ def open_hass_ui(hass: core.HomeAssistant) -> None: ...
45
47
  async def async_load_base_functionality(hass: core.HomeAssistant) -> None: ...
46
48
  async def async_from_config_dict(config: ConfigType, hass: core.HomeAssistant) -> core.HomeAssistant | None: ...
47
49
  def async_enable_logging(hass: core.HomeAssistant, verbose: bool = False, log_rotate_days: int | None = None, log_file: str | None = None, log_no_color: bool = False) -> None: ...
50
+
51
+ class _RotatingFileHandlerWithoutShouldRollOver(logging.handlers.RotatingFileHandler):
52
+ def shouldRollover(self, record: logging.LogRecord) -> bool: ...
53
+
48
54
  async def async_mount_local_lib_path(config_dir: str) -> str: ...
49
55
  def _get_domains(hass: core.HomeAssistant, config: dict[str, Any]) -> set[str]: ...
50
56
 
@@ -1,25 +1,21 @@
1
- from .const import ATTR_FORECAST as ATTR_FORECAST, CONF_FORECAST as CONF_FORECAST, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
1
+ from .const import DOMAIN as DOMAIN, UPDATE_INTERVAL_DAILY_FORECAST as UPDATE_INTERVAL_DAILY_FORECAST, UPDATE_INTERVAL_OBSERVATION as UPDATE_INTERVAL_OBSERVATION
2
+ from .coordinator import AccuWeatherDailyForecastDataUpdateCoordinator as AccuWeatherDailyForecastDataUpdateCoordinator, AccuWeatherObservationDataUpdateCoordinator as AccuWeatherObservationDataUpdateCoordinator
2
3
  from _typeshed import Incomplete
3
- from aiohttp import ClientSession as ClientSession
4
+ from dataclasses import dataclass
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_NAME as CONF_NAME, Platform as Platform
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
- from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
9
- from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
10
- from typing import Any
11
9
 
12
10
  _LOGGER: Incomplete
13
11
  PLATFORMS: Incomplete
14
12
 
13
+ @dataclass
14
+ class AccuWeatherData:
15
+ coordinator_observation: AccuWeatherObservationDataUpdateCoordinator
16
+ coordinator_daily_forecast: AccuWeatherDailyForecastDataUpdateCoordinator
17
+ def __init__(self, coordinator_observation, coordinator_daily_forecast) -> None: ...
18
+
15
19
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
20
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
17
21
  async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
18
-
19
- class AccuWeatherDataUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
20
- location_key: Incomplete
21
- forecast: Incomplete
22
- accuweather: Incomplete
23
- device_info: Incomplete
24
- def __init__(self, hass: HomeAssistant, session: ClientSession, api_key: str, location_key: str, forecast: bool, name: str) -> None: ...
25
- async def _async_update_data(self) -> dict[str, Any]: ...
@@ -1,17 +1,9 @@
1
- from .const import CONF_FORECAST as CONF_FORECAST, DOMAIN as DOMAIN
2
- from _typeshed import Incomplete
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
1
+ from .const import DOMAIN as DOMAIN
2
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
3
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE, CONF_NAME as CONF_NAME
5
- from homeassistant.core import callback as callback
6
4
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
7
- from homeassistant.helpers.schema_config_entry_flow import SchemaFlowFormStep as SchemaFlowFormStep, SchemaOptionsFlowHandler as SchemaOptionsFlowHandler
8
5
  from typing import Any
9
6
 
10
- OPTIONS_SCHEMA: Incomplete
11
- OPTIONS_FLOW: Incomplete
12
-
13
7
  class AccuWeatherFlowHandler(ConfigFlow, domain=DOMAIN):
14
8
  VERSION: int
15
9
  async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
16
- @staticmethod
17
- def async_get_options_flow(config_entry: ConfigEntry) -> SchemaOptionsFlowHandler: ...
@@ -8,12 +8,12 @@ ATTR_CATEGORY: Final[str]
8
8
  ATTR_DIRECTION: Final[str]
9
9
  ATTR_ENGLISH: Final[str]
10
10
  ATTR_LEVEL: Final[str]
11
- ATTR_FORECAST: Final[str]
12
11
  ATTR_SPEED: Final[str]
13
12
  ATTR_VALUE: Final[str]
14
- CONF_FORECAST: Final[str]
15
13
  DOMAIN: Final[str]
16
14
  MANUFACTURER: Final[str]
17
15
  MAX_FORECAST_DAYS: Final[int]
18
16
  CONDITION_CLASSES: Final[dict[str, list[int]]]
19
17
  CONDITION_MAP: Incomplete
18
+ UPDATE_INTERVAL_OBSERVATION: Incomplete
19
+ UPDATE_INTERVAL_DAILY_FORECAST: Incomplete
@@ -0,0 +1,27 @@
1
+ from .const import DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
2
+ from _typeshed import Incomplete
3
+ from accuweather import AccuWeather as AccuWeather
4
+ from datetime import timedelta
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
7
+ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, TimestampDataUpdateCoordinator as TimestampDataUpdateCoordinator, UpdateFailed as UpdateFailed
8
+ from typing import Any
9
+
10
+ EXCEPTIONS: Incomplete
11
+ _LOGGER: Incomplete
12
+
13
+ class AccuWeatherObservationDataUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
14
+ accuweather: Incomplete
15
+ location_key: Incomplete
16
+ device_info: Incomplete
17
+ def __init__(self, hass: HomeAssistant, accuweather: AccuWeather, name: str, coordinator_type: str, update_interval: timedelta) -> None: ...
18
+ async def _async_update_data(self) -> dict[str, Any]: ...
19
+
20
+ class AccuWeatherDailyForecastDataUpdateCoordinator(TimestampDataUpdateCoordinator[list[dict[str, Any]]]):
21
+ accuweather: Incomplete
22
+ location_key: Incomplete
23
+ device_info: Incomplete
24
+ def __init__(self, hass: HomeAssistant, accuweather: AccuWeather, name: str, coordinator_type: str, update_interval: timedelta) -> None: ...
25
+ async def _async_update_data(self) -> list[dict[str, Any]]: ...
26
+
27
+ def _get_device_info(location_key: str, name: str) -> DeviceInfo: ...
@@ -1,4 +1,4 @@
1
- from . import AccuWeatherDataUpdateCoordinator as AccuWeatherDataUpdateCoordinator
1
+ from . import AccuWeatherData as AccuWeatherData
2
2
  from .const import DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
@@ -1,5 +1,6 @@
1
- from . import AccuWeatherDataUpdateCoordinator as AccuWeatherDataUpdateCoordinator
2
- from .const import API_METRIC as API_METRIC, ATTRIBUTION as ATTRIBUTION, ATTR_CATEGORY as ATTR_CATEGORY, ATTR_DIRECTION as ATTR_DIRECTION, ATTR_ENGLISH as ATTR_ENGLISH, ATTR_FORECAST as ATTR_FORECAST, ATTR_LEVEL as ATTR_LEVEL, ATTR_SPEED as ATTR_SPEED, ATTR_VALUE as ATTR_VALUE, DOMAIN as DOMAIN, MAX_FORECAST_DAYS as MAX_FORECAST_DAYS
1
+ from . import AccuWeatherData as AccuWeatherData
2
+ from .const import API_METRIC as API_METRIC, ATTRIBUTION as ATTRIBUTION, ATTR_CATEGORY as ATTR_CATEGORY, ATTR_DIRECTION as ATTR_DIRECTION, ATTR_ENGLISH as ATTR_ENGLISH, ATTR_LEVEL as ATTR_LEVEL, ATTR_SPEED as ATTR_SPEED, ATTR_VALUE as ATTR_VALUE, DOMAIN as DOMAIN, MAX_FORECAST_DAYS as MAX_FORECAST_DAYS
3
+ from .coordinator import AccuWeatherDailyForecastDataUpdateCoordinator as AccuWeatherDailyForecastDataUpdateCoordinator, AccuWeatherObservationDataUpdateCoordinator as AccuWeatherObservationDataUpdateCoordinator
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Callable as Callable
5
6
  from dataclasses import dataclass
@@ -17,27 +18,47 @@ PARALLEL_UPDATES: int
17
18
  class AccuWeatherSensorDescription(SensorEntityDescription):
18
19
  value_fn: Callable[[dict[str, Any]], str | int | float | None]
19
20
  attr_fn: Callable[[dict[str, Any]], dict[str, Any]] = ...
20
- day: int | None = ...
21
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn, attr_fn) -> None: ...
22
+
23
+ @dataclass(frozen=True, kw_only=True)
24
+ class AccuWeatherForecastSensorDescription(AccuWeatherSensorDescription):
25
+ day: int
21
26
  def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn, attr_fn, day) -> None: ...
22
27
 
23
- FORECAST_SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...]
28
+ FORECAST_SENSOR_TYPES: tuple[AccuWeatherForecastSensorDescription, ...]
24
29
  SENSOR_TYPES: tuple[AccuWeatherSensorDescription, ...]
25
30
 
26
31
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
27
32
 
28
- class AccuWeatherSensor(CoordinatorEntity[AccuWeatherDataUpdateCoordinator], SensorEntity):
33
+ class AccuWeatherSensor(CoordinatorEntity[AccuWeatherObservationDataUpdateCoordinator], SensorEntity):
29
34
  _attr_attribution = ATTRIBUTION
30
35
  _attr_has_entity_name: bool
31
36
  entity_description: AccuWeatherSensorDescription
32
- forecast_day: Incomplete
33
37
  _sensor_data: Incomplete
34
38
  _attr_unique_id: Incomplete
35
39
  _attr_device_info: Incomplete
36
- def __init__(self, coordinator: AccuWeatherDataUpdateCoordinator, description: AccuWeatherSensorDescription) -> None: ...
40
+ def __init__(self, coordinator: AccuWeatherObservationDataUpdateCoordinator, description: AccuWeatherSensorDescription) -> None: ...
37
41
  @property
38
42
  def native_value(self) -> str | int | float | None: ...
39
43
  @property
40
44
  def extra_state_attributes(self) -> dict[str, Any]: ...
41
45
  def _handle_coordinator_update(self) -> None: ...
46
+ @staticmethod
47
+ def _get_sensor_data(sensors: dict[str, Any], kind: str) -> Any: ...
42
48
 
43
- def _get_sensor_data(sensors: dict[str, Any], kind: str, forecast_day: int | None = None) -> Any: ...
49
+ class AccuWeatherForecastSensor(CoordinatorEntity[AccuWeatherDailyForecastDataUpdateCoordinator], SensorEntity):
50
+ _attr_attribution = ATTRIBUTION
51
+ _attr_has_entity_name: bool
52
+ entity_description: AccuWeatherForecastSensorDescription
53
+ forecast_day: Incomplete
54
+ _sensor_data: Incomplete
55
+ _attr_unique_id: Incomplete
56
+ _attr_device_info: Incomplete
57
+ def __init__(self, coordinator: AccuWeatherDailyForecastDataUpdateCoordinator, description: AccuWeatherForecastSensorDescription) -> None: ...
58
+ @property
59
+ def native_value(self) -> str | int | float | None: ...
60
+ @property
61
+ def extra_state_attributes(self) -> dict[str, Any]: ...
62
+ def _handle_coordinator_update(self) -> None: ...
63
+ @staticmethod
64
+ def _get_sensor_data(sensors: list[dict[str, Any]], kind: str, forecast_day: int) -> Any: ...
@@ -1,18 +1,20 @@
1
- from . import AccuWeatherDataUpdateCoordinator as AccuWeatherDataUpdateCoordinator
2
- from .const import API_METRIC as API_METRIC, ATTRIBUTION as ATTRIBUTION, ATTR_DIRECTION as ATTR_DIRECTION, ATTR_FORECAST as ATTR_FORECAST, ATTR_SPEED as ATTR_SPEED, ATTR_VALUE as ATTR_VALUE, CONDITION_MAP as CONDITION_MAP, DOMAIN as DOMAIN
1
+ from . import AccuWeatherData as AccuWeatherData
2
+ from .const import API_METRIC as API_METRIC, ATTRIBUTION as ATTRIBUTION, ATTR_DIRECTION as ATTR_DIRECTION, ATTR_SPEED as ATTR_SPEED, ATTR_VALUE as ATTR_VALUE, CONDITION_MAP as CONDITION_MAP, DOMAIN as DOMAIN
3
+ from .coordinator import AccuWeatherDailyForecastDataUpdateCoordinator as AccuWeatherDailyForecastDataUpdateCoordinator, AccuWeatherObservationDataUpdateCoordinator as AccuWeatherObservationDataUpdateCoordinator
3
4
  from _typeshed import Incomplete
4
- from homeassistant.components.weather import ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_NATIVE_APPARENT_TEMP as ATTR_FORECAST_NATIVE_APPARENT_TEMP, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, ATTR_FORECAST_NATIVE_TEMP as ATTR_FORECAST_NATIVE_TEMP, ATTR_FORECAST_NATIVE_TEMP_LOW as ATTR_FORECAST_NATIVE_TEMP_LOW, ATTR_FORECAST_NATIVE_WIND_GUST_SPEED as ATTR_FORECAST_NATIVE_WIND_GUST_SPEED, ATTR_FORECAST_NATIVE_WIND_SPEED as ATTR_FORECAST_NATIVE_WIND_SPEED, ATTR_FORECAST_PRECIPITATION_PROBABILITY as ATTR_FORECAST_PRECIPITATION_PROBABILITY, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_UV_INDEX as ATTR_FORECAST_UV_INDEX, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, Forecast as Forecast, SingleCoordinatorWeatherEntity as SingleCoordinatorWeatherEntity, WeatherEntityFeature as WeatherEntityFeature
5
+ from homeassistant.components.weather import ATTR_FORECAST_CLOUD_COVERAGE as ATTR_FORECAST_CLOUD_COVERAGE, ATTR_FORECAST_CONDITION as ATTR_FORECAST_CONDITION, ATTR_FORECAST_NATIVE_APPARENT_TEMP as ATTR_FORECAST_NATIVE_APPARENT_TEMP, ATTR_FORECAST_NATIVE_PRECIPITATION as ATTR_FORECAST_NATIVE_PRECIPITATION, ATTR_FORECAST_NATIVE_TEMP as ATTR_FORECAST_NATIVE_TEMP, ATTR_FORECAST_NATIVE_TEMP_LOW as ATTR_FORECAST_NATIVE_TEMP_LOW, ATTR_FORECAST_NATIVE_WIND_GUST_SPEED as ATTR_FORECAST_NATIVE_WIND_GUST_SPEED, ATTR_FORECAST_NATIVE_WIND_SPEED as ATTR_FORECAST_NATIVE_WIND_SPEED, ATTR_FORECAST_PRECIPITATION_PROBABILITY as ATTR_FORECAST_PRECIPITATION_PROBABILITY, ATTR_FORECAST_TIME as ATTR_FORECAST_TIME, ATTR_FORECAST_UV_INDEX as ATTR_FORECAST_UV_INDEX, ATTR_FORECAST_WIND_BEARING as ATTR_FORECAST_WIND_BEARING, CoordinatorWeatherEntity as CoordinatorWeatherEntity, Forecast as Forecast, WeatherEntityFeature as WeatherEntityFeature
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
7
  from homeassistant.const import UnitOfLength as UnitOfLength, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
+ from homeassistant.helpers.update_coordinator import TimestampDataUpdateCoordinator as TimestampDataUpdateCoordinator
9
11
  from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp
10
12
 
11
13
  PARALLEL_UPDATES: int
12
14
 
13
15
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
16
 
15
- class AccuWeatherEntity(SingleCoordinatorWeatherEntity[AccuWeatherDataUpdateCoordinator]):
17
+ class AccuWeatherEntity(CoordinatorWeatherEntity[AccuWeatherObservationDataUpdateCoordinator, AccuWeatherDailyForecastDataUpdateCoordinator, TimestampDataUpdateCoordinator, TimestampDataUpdateCoordinator]):
16
18
  _attr_has_entity_name: bool
17
19
  _attr_name: Incomplete
18
20
  _attr_native_precipitation_unit: Incomplete
@@ -24,7 +26,9 @@ class AccuWeatherEntity(SingleCoordinatorWeatherEntity[AccuWeatherDataUpdateCoor
24
26
  _attr_attribution: Incomplete
25
27
  _attr_device_info: Incomplete
26
28
  _attr_supported_features: Incomplete
27
- def __init__(self, coordinator: AccuWeatherDataUpdateCoordinator) -> None: ...
29
+ observation_coordinator: Incomplete
30
+ daily_coordinator: Incomplete
31
+ def __init__(self, accuweather_data: AccuWeatherData) -> None: ...
28
32
  @property
29
33
  def condition(self) -> str | None: ...
30
34
  @property
@@ -47,8 +47,10 @@ class LocalAdaxDevice(ClimateEntity):
47
47
  _attr_unique_id: Incomplete
48
48
  _attr_device_info: Incomplete
49
49
  def __init__(self, adax_data_handler: AdaxLocal, unique_id: str) -> None: ...
50
+ async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
50
51
  async def async_set_temperature(self, **kwargs: Any) -> None: ...
51
- _attr_target_temperature: Incomplete
52
52
  _attr_current_temperature: Incomplete
53
53
  _attr_available: Incomplete
54
+ _attr_icon: str
55
+ _attr_target_temperature: Incomplete
54
56
  async def async_update(self) -> None: ...
@@ -1,5 +1,7 @@
1
- from .const import CONF_FORCE as CONF_FORCE, DATA_ADGUARD_CLIENT as DATA_ADGUARD_CLIENT, DOMAIN as DOMAIN, SERVICE_ADD_URL as SERVICE_ADD_URL, SERVICE_DISABLE_URL as SERVICE_DISABLE_URL, SERVICE_ENABLE_URL as SERVICE_ENABLE_URL, SERVICE_REFRESH as SERVICE_REFRESH, SERVICE_REMOVE_URL as SERVICE_REMOVE_URL
1
+ from .const import CONF_FORCE as CONF_FORCE, DOMAIN as DOMAIN, SERVICE_ADD_URL as SERVICE_ADD_URL, SERVICE_DISABLE_URL as SERVICE_DISABLE_URL, SERVICE_ENABLE_URL as SERVICE_ENABLE_URL, SERVICE_REFRESH as SERVICE_REFRESH, SERVICE_REMOVE_URL as SERVICE_REMOVE_URL
2
2
  from _typeshed import Incomplete
3
+ from adguardhome import AdGuardHome
4
+ from dataclasses import dataclass
3
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
6
  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_SSL as CONF_SSL, CONF_URL as CONF_URL, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, Platform as Platform
5
7
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
@@ -11,5 +13,11 @@ SERVICE_ADD_URL_SCHEMA: Incomplete
11
13
  SERVICE_REFRESH_SCHEMA: Incomplete
12
14
  PLATFORMS: Incomplete
13
15
 
16
+ @dataclass
17
+ class AdGuardData:
18
+ client: AdGuardHome
19
+ version: str
20
+ def __init__(self, client, version) -> None: ...
21
+
14
22
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
15
23
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -2,8 +2,6 @@ from _typeshed import Incomplete
2
2
 
3
3
  DOMAIN: str
4
4
  LOGGER: Incomplete
5
- DATA_ADGUARD_CLIENT: str
6
- DATA_ADGUARD_VERSION: str
7
5
  CONF_FORCE: str
8
6
  SERVICE_ADD_URL: str
9
7
  SERVICE_DISABLE_URL: str
@@ -1,6 +1,6 @@
1
- from .const import DATA_ADGUARD_VERSION as DATA_ADGUARD_VERSION, DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from . import AdGuardData as AdGuardData
2
+ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
3
  from _typeshed import Incomplete
3
- from adguardhome import AdGuardHome as AdGuardHome
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_HASSIO as SOURCE_HASSIO
5
5
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
6
6
  from homeassistant.helpers.entity import Entity as Entity
@@ -9,8 +9,9 @@ class AdGuardHomeEntity(Entity):
9
9
  _attr_has_entity_name: bool
10
10
  _attr_available: bool
11
11
  _entry: Incomplete
12
+ data: Incomplete
12
13
  adguard: Incomplete
13
- def __init__(self, adguard: AdGuardHome, entry: ConfigEntry) -> None: ...
14
+ def __init__(self, data: AdGuardData, entry: ConfigEntry) -> None: ...
14
15
  async def async_update(self) -> None: ...
15
16
  async def _adguard_update(self) -> None: ...
16
17
  @property
@@ -1,4 +1,5 @@
1
- from .const import DATA_ADGUARD_CLIENT as DATA_ADGUARD_CLIENT, DATA_ADGUARD_VERSION as DATA_ADGUARD_VERSION, DOMAIN as DOMAIN
1
+ from . import AdGuardData as AdGuardData
2
+ from .const import DOMAIN as DOMAIN
2
3
  from .entity import AdGuardHomeEntity as AdGuardHomeEntity
3
4
  from _typeshed import Incomplete
4
5
  from adguardhome import AdGuardHome as AdGuardHome
@@ -8,7 +9,6 @@ from homeassistant.components.sensor import SensorEntity as SensorEntity, Sensor
8
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
10
  from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfTime as UnitOfTime
10
11
  from homeassistant.core import HomeAssistant as HomeAssistant
11
- from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
13
  from typing import Any
14
14
 
@@ -27,6 +27,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
27
27
  class AdGuardHomeSensor(AdGuardHomeEntity, SensorEntity):
28
28
  entity_description: AdGuardHomeEntityDescription
29
29
  _attr_unique_id: Incomplete
30
- def __init__(self, adguard: AdGuardHome, entry: ConfigEntry, description: AdGuardHomeEntityDescription) -> None: ...
30
+ def __init__(self, data: AdGuardData, entry: ConfigEntry, description: AdGuardHomeEntityDescription) -> None: ...
31
31
  _attr_native_value: Incomplete
32
32
  async def _adguard_update(self) -> None: ...
@@ -1,4 +1,5 @@
1
- from .const import DATA_ADGUARD_CLIENT as DATA_ADGUARD_CLIENT, DATA_ADGUARD_VERSION as DATA_ADGUARD_VERSION, DOMAIN as DOMAIN, LOGGER as LOGGER
1
+ from . import AdGuardData as AdGuardData
2
+ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
3
  from .entity import AdGuardHomeEntity as AdGuardHomeEntity
3
4
  from _typeshed import Incomplete
4
5
  from adguardhome import AdGuardHome as AdGuardHome
@@ -7,7 +8,6 @@ from dataclasses import dataclass
7
8
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
8
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
10
  from homeassistant.core import HomeAssistant as HomeAssistant
10
- from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
11
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
12
  from typing import Any
13
13
 
@@ -28,7 +28,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
28
28
  class AdGuardHomeSwitch(AdGuardHomeEntity, SwitchEntity):
29
29
  entity_description: AdGuardHomeSwitchEntityDescription
30
30
  _attr_unique_id: Incomplete
31
- def __init__(self, adguard: AdGuardHome, entry: ConfigEntry, description: AdGuardHomeSwitchEntityDescription) -> None: ...
31
+ def __init__(self, data: AdGuardData, entry: ConfigEntry, description: AdGuardHomeSwitchEntityDescription) -> None: ...
32
32
  _attr_available: bool
33
33
  async def async_turn_off(self, **kwargs: Any) -> None: ...
34
34
  async def async_turn_on(self, **kwargs: Any) -> None: ...
@@ -1,12 +1,12 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
- from homeassistant import config_entries as config_entries
3
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST
5
5
  from typing import Any
6
6
 
7
7
  _LOGGER: Incomplete
8
8
  STEP_USER_DATA_SCHEMA: Incomplete
9
9
 
10
- class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
10
+ class AirTouch5ConfigFlow(ConfigFlow, domain=DOMAIN):
11
11
  VERSION: int
12
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> config_entries.ConfigFlowResult: ...
12
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -32,6 +32,13 @@ class AirzoneGroupEntity(AirzoneEntity):
32
32
  def get_airzone_value(self, key: str) -> Any: ...
33
33
  async def _async_update_params(self, params: dict[str, Any]) -> None: ...
34
34
 
35
+ class AirzoneHotWaterEntity(AirzoneEntity):
36
+ dhw_id: Incomplete
37
+ _attr_device_info: Incomplete
38
+ def __init__(self, coordinator: AirzoneUpdateCoordinator, dhw_id: str, dhw_data: dict[str, Any]) -> None: ...
39
+ def get_airzone_value(self, key: str) -> Any: ...
40
+ async def _async_update_params(self, params: dict[str, Any]) -> None: ...
41
+
35
42
  class AirzoneInstallationEntity(AirzoneEntity):
36
43
  inst_id: Incomplete
37
44
  _attr_device_info: Incomplete
@@ -0,0 +1,38 @@
1
+ import abc
2
+ from .const import DOMAIN as DOMAIN
3
+ from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
4
+ from .entity import AirzoneEntity as AirzoneEntity, AirzoneZoneEntity as AirzoneZoneEntity
5
+ from _typeshed import Incomplete
6
+ from dataclasses import dataclass
7
+ from homeassistant.components.select import SelectEntity as SelectEntity, SelectEntityDescription as SelectEntityDescription
8
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
+ from homeassistant.const import EntityCategory as EntityCategory
10
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
+ from typing import Any, Final
13
+
14
+ @dataclass(frozen=True, kw_only=True)
15
+ class AirzoneSelectDescription(SelectEntityDescription):
16
+ api_param: str
17
+ options_dict: dict[str, str]
18
+ 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, options, api_param, options_dict) -> None: ...
19
+
20
+ AIR_QUALITY_MAP: Final[dict[str, str]]
21
+ ZONE_SELECT_TYPES: Final[tuple[AirzoneSelectDescription, ...]]
22
+
23
+ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
24
+
25
+ class AirzoneBaseSelect(AirzoneEntity, SelectEntity, metaclass=abc.ABCMeta):
26
+ entity_description: AirzoneSelectDescription
27
+ values_dict: dict[str, str]
28
+ def _handle_coordinator_update(self) -> None: ...
29
+ def _get_current_option(self) -> str | None: ...
30
+ _attr_current_option: Incomplete
31
+ def _async_update_attrs(self) -> None: ...
32
+
33
+ class AirzoneZoneSelect(AirzoneZoneEntity, AirzoneBaseSelect):
34
+ _attr_unique_id: Incomplete
35
+ entity_description: Incomplete
36
+ values_dict: Incomplete
37
+ def __init__(self, coordinator: AirzoneUpdateCoordinator, description: AirzoneSelectDescription, zone_id: str, zone_data: dict[str, Any]) -> None: ...
38
+ async def async_select_option(self, option: str) -> None: ...
@@ -0,0 +1,35 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .coordinator import AirzoneUpdateCoordinator as AirzoneUpdateCoordinator
3
+ from .entity import AirzoneHotWaterEntity as AirzoneHotWaterEntity
4
+ from _typeshed import Incomplete
5
+ from aioairzone_cloud.common import HotWaterOperation
6
+ from homeassistant.components.water_heater import STATE_ECO as STATE_ECO, STATE_PERFORMANCE as STATE_PERFORMANCE, WaterHeaterEntity as WaterHeaterEntity, WaterHeaterEntityFeature as WaterHeaterEntityFeature
7
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
+ from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, STATE_OFF as STATE_OFF, UnitOfTemperature as UnitOfTemperature
9
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
+ from typing import Any, Final
12
+
13
+ OPERATION_LIB_TO_HASS: Final[dict[HotWaterOperation, str]]
14
+ OPERATION_MODE_TO_DHW_PARAMS: Final[dict[str, dict[str, Any]]]
15
+
16
+ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
17
+
18
+ class AirzoneWaterHeater(AirzoneHotWaterEntity, WaterHeaterEntity):
19
+ _attr_name: Incomplete
20
+ _attr_supported_features: Incomplete
21
+ _attr_temperature_unit: Incomplete
22
+ _attr_unique_id: Incomplete
23
+ _attr_operation_list: Incomplete
24
+ def __init__(self, coordinator: AirzoneUpdateCoordinator, dhw_id: str, dhw_data: dict) -> None: ...
25
+ async def async_turn_off(self, **kwargs: Any) -> None: ...
26
+ async def async_turn_on(self, **kwargs: Any) -> None: ...
27
+ async def async_set_operation_mode(self, operation_mode: str) -> None: ...
28
+ async def async_set_temperature(self, **kwargs: Any) -> None: ...
29
+ def _handle_coordinator_update(self) -> None: ...
30
+ _attr_current_temperature: Incomplete
31
+ _attr_current_operation: Incomplete
32
+ _attr_max_temp: Incomplete
33
+ _attr_min_temp: Incomplete
34
+ _attr_target_temperature: Incomplete
35
+ def _async_update_attrs(self) -> None: ...
@@ -3,11 +3,11 @@ from _typeshed import Incomplete
3
3
  from collections.abc import Callable as Callable
4
4
  from homeassistant.components.notify import ATTR_DATA as ATTR_DATA, ATTR_MESSAGE as ATTR_MESSAGE, ATTR_TITLE as ATTR_TITLE
5
5
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_REPEAT as CONF_REPEAT, CONF_STATE as CONF_STATE, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_IDLE as STATE_IDLE, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON
6
- from homeassistant.core import Event as Event, HassJob as HassJob, HomeAssistant as HomeAssistant
6
+ from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HassJob as HassJob, HomeAssistant as HomeAssistant
7
7
  from homeassistant.exceptions import ServiceNotFound as ServiceNotFound
8
8
  from homeassistant.helpers.entity import Entity as Entity
9
9
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
10
- from homeassistant.helpers.event import EventStateChangedData as EventStateChangedData, async_track_point_in_time as async_track_point_in_time, async_track_state_change_event as async_track_state_change_event
10
+ from homeassistant.helpers.event import async_track_point_in_time as async_track_point_in_time, async_track_state_change_event as async_track_state_change_event
11
11
  from homeassistant.helpers.template import Template as Template
12
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
13
13
  from homeassistant.util.dt import now as now