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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (618) 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 +10 -2
  4. homeassistant-stubs/block_async_io.pyi +23 -0
  5. homeassistant-stubs/bootstrap.pyi +4 -3
  6. homeassistant-stubs/components/accuweather/sensor.pyi +5 -9
  7. homeassistant-stubs/components/accuweather/weather.pyi +1 -1
  8. homeassistant-stubs/components/acer_projector/switch.pyi +2 -1
  9. homeassistant-stubs/components/air_quality/__init__.pyi +4 -3
  10. homeassistant-stubs/components/airgradient/__init__.pyi +8 -0
  11. homeassistant-stubs/components/airgradient/button.pyi +28 -0
  12. homeassistant-stubs/components/airgradient/const.pyi +2 -0
  13. homeassistant-stubs/components/airgradient/coordinator.pyi +2 -2
  14. homeassistant-stubs/components/airgradient/number.pyi +32 -0
  15. homeassistant-stubs/components/airgradient/select.pyi +14 -12
  16. homeassistant-stubs/components/airgradient/sensor.pyi +28 -10
  17. homeassistant-stubs/components/airgradient/switch.pyi +33 -0
  18. homeassistant-stubs/components/airnow/const.pyi +1 -0
  19. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  20. homeassistant-stubs/components/airnow/sensor.pyi +1 -2
  21. homeassistant-stubs/components/airzone/__init__.pyi +4 -4
  22. homeassistant-stubs/components/airzone/binary_sensor.pyi +2 -2
  23. homeassistant-stubs/components/airzone/climate.pyi +3 -2
  24. homeassistant-stubs/components/airzone/diagnostics.pyi +2 -4
  25. homeassistant-stubs/components/airzone/entity.pyi +2 -1
  26. homeassistant-stubs/components/airzone/select.pyi +2 -2
  27. homeassistant-stubs/components/airzone/sensor.pyi +3 -2
  28. homeassistant-stubs/components/airzone/water_heater.pyi +3 -2
  29. homeassistant-stubs/components/airzone_cloud/__init__.pyi +3 -3
  30. homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +2 -3
  31. homeassistant-stubs/components/airzone_cloud/climate.pyi +8 -10
  32. homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +2 -4
  33. homeassistant-stubs/components/airzone_cloud/select.pyi +2 -3
  34. homeassistant-stubs/components/airzone_cloud/sensor.pyi +2 -3
  35. homeassistant-stubs/components/airzone_cloud/water_heater.pyi +2 -3
  36. homeassistant-stubs/components/aladdin_connect/__init__.pyi +4 -13
  37. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +3 -16
  38. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +3 -3
  39. homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
  40. homeassistant-stubs/components/alexa/entities.pyi +25 -24
  41. homeassistant-stubs/components/alpha_vantage/sensor.pyi +2 -1
  42. homeassistant-stubs/components/ambient_network/coordinator.pyi +2 -0
  43. homeassistant-stubs/components/ambient_network/sensor.pyi +1 -0
  44. homeassistant-stubs/components/androidtv/entity.pyi +1 -0
  45. homeassistant-stubs/components/androidtv/remote.pyi +21 -0
  46. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +11 -1
  47. homeassistant-stubs/components/androidtv_remote/const.pyi +3 -0
  48. homeassistant-stubs/components/androidtv_remote/entity.pyi +2 -1
  49. homeassistant-stubs/components/androidtv_remote/media_player.pyi +4 -1
  50. homeassistant-stubs/components/androidtv_remote/remote.pyi +3 -0
  51. homeassistant-stubs/components/anel_pwrctrl/switch.pyi +2 -1
  52. homeassistant-stubs/components/apprise/notify.pyi +2 -1
  53. homeassistant-stubs/components/apsystems/__init__.pyi +9 -2
  54. homeassistant-stubs/components/apsystems/entity.pyi +10 -0
  55. homeassistant-stubs/components/apsystems/number.pyi +25 -0
  56. homeassistant-stubs/components/apsystems/sensor.pyi +6 -7
  57. homeassistant-stubs/components/aqualogic/sensor.pyi +2 -1
  58. homeassistant-stubs/components/aqualogic/switch.pyi +2 -1
  59. homeassistant-stubs/components/aquostv/media_player.pyi +2 -1
  60. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +8 -7
  61. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -1
  62. homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -0
  63. homeassistant-stubs/components/automation/__init__.pyi +10 -5
  64. homeassistant-stubs/components/automation/config.pyi +11 -1
  65. homeassistant-stubs/components/automation/trace.pyi +2 -2
  66. homeassistant-stubs/components/axis/config_flow.pyi +1 -0
  67. homeassistant-stubs/components/baf/binary_sensor.pyi +2 -4
  68. homeassistant-stubs/components/baf/entity.pyi +6 -1
  69. homeassistant-stubs/components/baf/number.pyi +2 -4
  70. homeassistant-stubs/components/baf/sensor.pyi +2 -4
  71. homeassistant-stubs/components/baf/switch.pyi +2 -4
  72. homeassistant-stubs/components/bang_olufsen/const.pyi +2 -0
  73. homeassistant-stubs/components/bang_olufsen/media_player.pyi +3 -2
  74. homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -1
  75. homeassistant-stubs/components/binary_sensor/__init__.pyi +3 -2
  76. homeassistant-stubs/components/bitcoin/sensor.pyi +2 -1
  77. homeassistant-stubs/components/blockchain/sensor.pyi +2 -1
  78. homeassistant-stubs/components/blueprint/errors.pyi +1 -1
  79. homeassistant-stubs/components/blueprint/websocket_api.pyi +6 -3
  80. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +3 -3
  81. homeassistant-stubs/components/bmw_connected_drive/const.pyi +0 -1
  82. homeassistant-stubs/components/bmw_connected_drive/select.pyi +1 -1
  83. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +1 -1
  84. homeassistant-stubs/components/brother/config_flow.pyi +9 -1
  85. homeassistant-stubs/components/button/__init__.pyi +4 -3
  86. homeassistant-stubs/components/calendar/__init__.pyi +2 -4
  87. homeassistant-stubs/components/camera/__init__.pyi +8 -7
  88. homeassistant-stubs/components/cert_expiry/sensor.pyi +2 -1
  89. homeassistant-stubs/components/clickatell/notify.pyi +2 -1
  90. homeassistant-stubs/components/clicksend/notify.pyi +2 -1
  91. homeassistant-stubs/components/climate/__init__.pyi +5 -4
  92. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  93. homeassistant-stubs/components/cloud/account_link.pyi +1 -1
  94. homeassistant-stubs/components/cloud/binary_sensor.pyi +1 -1
  95. homeassistant-stubs/components/cloud/const.pyi +6 -1
  96. homeassistant-stubs/components/cloud/http_api.pyi +1 -1
  97. homeassistant-stubs/components/cloud/repairs.pyi +1 -3
  98. homeassistant-stubs/components/cloud/stt.pyi +1 -1
  99. homeassistant-stubs/components/cloud/system_health.pyi +1 -3
  100. homeassistant-stubs/components/cloud/tts.pyi +1 -1
  101. homeassistant-stubs/components/config/auth_provider_homeassistant.pyi +1 -0
  102. homeassistant-stubs/components/config/scene.pyi +3 -1
  103. homeassistant-stubs/components/counter/__init__.pyi +2 -2
  104. homeassistant-stubs/components/cover/__init__.pyi +3 -2
  105. homeassistant-stubs/components/demo/tts.pyi +2 -1
  106. homeassistant-stubs/components/derivative/__init__.pyi +2 -1
  107. homeassistant-stubs/components/derivative/config_flow.pyi +11 -4
  108. homeassistant-stubs/components/derivative/sensor.pyi +3 -1
  109. homeassistant-stubs/components/device_automation/__init__.pyi +2 -2
  110. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -0
  111. homeassistant-stubs/components/dnsip/__init__.pyi +4 -2
  112. homeassistant-stubs/components/dnsip/config_flow.pyi +4 -3
  113. homeassistant-stubs/components/dnsip/const.pyi +2 -0
  114. homeassistant-stubs/components/dnsip/sensor.pyi +4 -3
  115. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +3 -3
  116. homeassistant-stubs/components/ecovacs/button.pyi +5 -5
  117. homeassistant-stubs/components/ecovacs/config_flow.pyi +1 -0
  118. homeassistant-stubs/components/ecovacs/controller.pyi +4 -4
  119. homeassistant-stubs/components/ecovacs/entity.pyi +8 -10
  120. homeassistant-stubs/components/ecovacs/event.pyi +3 -3
  121. homeassistant-stubs/components/ecovacs/image.pyi +2 -2
  122. homeassistant-stubs/components/ecovacs/lawn_mower.pyi +3 -3
  123. homeassistant-stubs/components/ecovacs/number.pyi +3 -3
  124. homeassistant-stubs/components/ecovacs/select.pyi +3 -3
  125. homeassistant-stubs/components/ecovacs/sensor.pyi +6 -6
  126. homeassistant-stubs/components/ecovacs/switch.pyi +4 -4
  127. homeassistant-stubs/components/ecovacs/vacuum.pyi +9 -5
  128. homeassistant-stubs/components/ecowitt/binary_sensor.pyi +1 -0
  129. homeassistant-stubs/components/efergy/__init__.pyi +3 -2
  130. homeassistant-stubs/components/efergy/sensor.pyi +3 -4
  131. homeassistant-stubs/components/electrasmart/__init__.pyi +12 -0
  132. homeassistant-stubs/components/electrasmart/climate.pyi +64 -0
  133. homeassistant-stubs/components/electrasmart/config_flow.pyi +24 -0
  134. homeassistant-stubs/components/electrasmart/const.pyi +10 -0
  135. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  136. homeassistant-stubs/components/elkm1/const.pyi +2 -1
  137. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  138. homeassistant-stubs/components/energy/websocket_api.pyi +5 -5
  139. homeassistant-stubs/components/enigma2/__init__.pyi +3 -2
  140. homeassistant-stubs/components/enigma2/config_flow.pyi +10 -1
  141. homeassistant-stubs/components/enigma2/media_player.pyi +3 -2
  142. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +8 -2
  143. homeassistant-stubs/components/enphase_envoy/const.pyi +2 -0
  144. homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -1
  145. homeassistant-stubs/components/esphome/__init__.pyi +5 -5
  146. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +3 -5
  147. homeassistant-stubs/components/esphome/binary_sensor.pyi +2 -3
  148. homeassistant-stubs/components/esphome/button.pyi +3 -5
  149. homeassistant-stubs/components/esphome/camera.pyi +3 -5
  150. homeassistant-stubs/components/esphome/climate.pyi +3 -6
  151. homeassistant-stubs/components/esphome/cover.pyi +3 -5
  152. homeassistant-stubs/components/esphome/date.pyi +3 -5
  153. homeassistant-stubs/components/esphome/datetime.pyi +3 -5
  154. homeassistant-stubs/components/esphome/diagnostics.pyi +3 -3
  155. homeassistant-stubs/components/esphome/domain_data.pyi +4 -8
  156. homeassistant-stubs/components/esphome/entity.pyi +2 -4
  157. homeassistant-stubs/components/esphome/entry_data.pyi +4 -3
  158. homeassistant-stubs/components/esphome/event.pyi +3 -5
  159. homeassistant-stubs/components/esphome/fan.pyi +3 -6
  160. homeassistant-stubs/components/esphome/light.pyi +3 -6
  161. homeassistant-stubs/components/esphome/lock.pyi +3 -5
  162. homeassistant-stubs/components/esphome/manager.pyi +4 -5
  163. homeassistant-stubs/components/esphome/media_player.pyi +3 -5
  164. homeassistant-stubs/components/esphome/number.pyi +3 -5
  165. homeassistant-stubs/components/esphome/select.pyi +2 -4
  166. homeassistant-stubs/components/esphome/switch.pyi +3 -5
  167. homeassistant-stubs/components/esphome/text.pyi +3 -5
  168. homeassistant-stubs/components/esphome/time.pyi +3 -5
  169. homeassistant-stubs/components/esphome/update.pyi +23 -2
  170. homeassistant-stubs/components/esphome/valve.pyi +3 -5
  171. homeassistant-stubs/components/event/__init__.pyi +3 -1
  172. homeassistant-stubs/components/evohome/__init__.pyi +8 -49
  173. homeassistant-stubs/components/evohome/climate.pyi +2 -2
  174. homeassistant-stubs/components/evohome/const.pyi +39 -16
  175. homeassistant-stubs/components/evohome/coordinator.pyi +33 -0
  176. homeassistant-stubs/components/evohome/helpers.pyi +13 -0
  177. homeassistant-stubs/components/fan/__init__.pyi +3 -2
  178. homeassistant-stubs/components/fastdotcom/__init__.pyi +2 -7
  179. homeassistant-stubs/components/fastdotcom/config_flow.pyi +0 -2
  180. homeassistant-stubs/components/feedreader/__init__.pyi +10 -5
  181. homeassistant-stubs/components/feedreader/config_flow.pyi +30 -0
  182. homeassistant-stubs/components/feedreader/const.pyi +5 -0
  183. homeassistant-stubs/components/feedreader/coordinator.pyi +4 -4
  184. homeassistant-stubs/components/filter/sensor.pyi +2 -1
  185. homeassistant-stubs/components/flux_led/light.pyi +4 -3
  186. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  187. homeassistant-stubs/components/fritzbox/climate.pyi +14 -9
  188. homeassistant-stubs/components/fritzbox/switch.pyi +3 -0
  189. homeassistant-stubs/components/fronius/config_flow.pyi +3 -2
  190. homeassistant-stubs/components/frontend/__init__.pyi +9 -4
  191. homeassistant-stubs/components/fully_kiosk/camera.pyi +21 -0
  192. homeassistant-stubs/components/fully_kiosk/image.pyi +30 -0
  193. homeassistant-stubs/components/fully_kiosk/media_player.pyi +2 -0
  194. homeassistant-stubs/components/fully_kiosk/notify.pyi +25 -0
  195. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +4 -0
  196. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +19 -0
  197. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +7 -2
  198. homeassistant-stubs/components/generic_thermostat/__init__.pyi +6 -0
  199. homeassistant-stubs/components/generic_thermostat/climate.pyi +7 -1
  200. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +19 -0
  201. homeassistant-stubs/components/geo_location/__init__.pyi +4 -3
  202. homeassistant-stubs/components/glances/__init__.pyi +3 -2
  203. homeassistant-stubs/components/glances/sensor.pyi +2 -3
  204. homeassistant-stubs/components/goalzero/__init__.pyi +3 -5
  205. homeassistant-stubs/components/goalzero/binary_sensor.pyi +2 -3
  206. homeassistant-stubs/components/goalzero/coordinator.pyi +3 -1
  207. homeassistant-stubs/components/goalzero/sensor.pyi +2 -3
  208. homeassistant-stubs/components/goalzero/switch.pyi +2 -3
  209. homeassistant-stubs/components/google_assistant_sdk/__init__.pyi +2 -2
  210. homeassistant-stubs/components/google_assistant_sdk/diagnostics.pyi +9 -0
  211. homeassistant-stubs/components/google_assistant_sdk/helpers.pyi +1 -0
  212. homeassistant-stubs/components/google_sheets/__init__.pyi +4 -3
  213. homeassistant-stubs/components/google_sheets/config_flow.pyi +3 -2
  214. homeassistant-stubs/components/gpsd/sensor.pyi +2 -1
  215. homeassistant-stubs/components/group/binary_sensor.pyi +2 -1
  216. homeassistant-stubs/components/group/cover.pyi +2 -1
  217. homeassistant-stubs/components/group/entity.pyi +2 -2
  218. homeassistant-stubs/components/group/event.pyi +2 -1
  219. homeassistant-stubs/components/group/fan.pyi +2 -1
  220. homeassistant-stubs/components/group/light.pyi +2 -1
  221. homeassistant-stubs/components/group/lock.pyi +2 -1
  222. homeassistant-stubs/components/group/media_player.pyi +2 -1
  223. homeassistant-stubs/components/group/notify.pyi +2 -1
  224. homeassistant-stubs/components/group/registry.pyi +8 -2
  225. homeassistant-stubs/components/group/switch.pyi +2 -1
  226. homeassistant-stubs/components/history_stats/sensor.pyi +4 -1
  227. homeassistant-stubs/components/homeassistant/const.pyi +3 -1
  228. homeassistant-stubs/components/homekit/aidmanager.pyi +2 -2
  229. homeassistant-stubs/components/homekit_controller/config_flow.pyi +1 -0
  230. homeassistant-stubs/components/homeworks/__init__.pyi +2 -5
  231. homeassistant-stubs/components/homeworks/config_flow.pyi +1 -6
  232. homeassistant-stubs/components/http/__init__.pyi +20 -3
  233. homeassistant-stubs/components/http/cors.pyi +1 -1
  234. homeassistant-stubs/components/http/data_validator.pyi +2 -1
  235. homeassistant-stubs/components/humidifier/__init__.pyi +3 -2
  236. homeassistant-stubs/components/humidifier/device_action.pyi +1 -1
  237. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +3 -3
  238. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +2 -3
  239. homeassistant-stubs/components/husqvarna_automower/button.pyi +22 -0
  240. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +2 -3
  241. homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +2 -2
  242. homeassistant-stubs/components/husqvarna_automower/entity.pyi +7 -1
  243. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +14 -5
  244. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -5
  245. homeassistant-stubs/components/husqvarna_automower/select.pyi +2 -3
  246. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +10 -5
  247. homeassistant-stubs/components/husqvarna_automower/switch.pyi +4 -8
  248. homeassistant-stubs/components/hydrawise/coordinator.pyi +3 -3
  249. homeassistant-stubs/components/hydrawise/sensor.pyi +3 -0
  250. homeassistant-stubs/components/ibeacon/config_flow.pyi +1 -0
  251. homeassistant-stubs/components/idasen_desk/coordinator.pyi +2 -5
  252. homeassistant-stubs/components/idasen_desk/sensor.pyi +3 -0
  253. homeassistant-stubs/components/image/__init__.pyi +3 -2
  254. homeassistant-stubs/components/image_upload/__init__.pyi +7 -3
  255. homeassistant-stubs/components/imap/__init__.pyi +5 -4
  256. homeassistant-stubs/components/imap/diagnostics.pyi +3 -5
  257. homeassistant-stubs/components/imap/sensor.pyi +5 -5
  258. homeassistant-stubs/components/input_button/__init__.pyi +3 -4
  259. homeassistant-stubs/components/input_select/__init__.pyi +2 -2
  260. homeassistant-stubs/components/input_text/__init__.pyi +3 -4
  261. homeassistant-stubs/components/integration/__init__.pyi +2 -0
  262. homeassistant-stubs/components/integration/config_flow.pyi +1 -1
  263. homeassistant-stubs/components/integration/const.pyi +1 -0
  264. homeassistant-stubs/components/integration/sensor.pyi +33 -12
  265. homeassistant-stubs/components/intent/timers.pyi +7 -3
  266. homeassistant-stubs/components/islamic_prayer_times/__init__.pyi +4 -3
  267. homeassistant-stubs/components/islamic_prayer_times/sensor.pyi +3 -3
  268. homeassistant-stubs/components/isy994/services.pyi +3 -2
  269. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +6 -12
  270. homeassistant-stubs/components/jewish_calendar/entity.pyi +19 -0
  271. homeassistant-stubs/components/jewish_calendar/sensor.pyi +8 -13
  272. homeassistant-stubs/components/knocki/__init__.pyi +12 -0
  273. homeassistant-stubs/components/knocki/config_flow.pyi +12 -0
  274. homeassistant-stubs/components/knocki/const.pyi +4 -0
  275. homeassistant-stubs/components/knocki/coordinator.pyi +13 -0
  276. homeassistant-stubs/components/knocki/event.pyi +26 -0
  277. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  278. homeassistant-stubs/components/knx/device_trigger.pyi +1 -1
  279. homeassistant-stubs/components/knx/trigger.pyi +2 -3
  280. homeassistant-stubs/components/knx/websocket.pyi +1 -0
  281. homeassistant-stubs/components/lacrosse/sensor.pyi +2 -1
  282. homeassistant-stubs/components/lamarzocco/__init__.pyi +8 -3
  283. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +4 -5
  284. homeassistant-stubs/components/lamarzocco/button.pyi +4 -5
  285. homeassistant-stubs/components/lamarzocco/calendar.pyi +9 -3
  286. homeassistant-stubs/components/lamarzocco/config_flow.pyi +7 -3
  287. homeassistant-stubs/components/lamarzocco/const.pyi +1 -2
  288. homeassistant-stubs/components/lamarzocco/coordinator.pyi +13 -11
  289. homeassistant-stubs/components/lamarzocco/diagnostics.pyi +10 -5
  290. homeassistant-stubs/components/lamarzocco/entity.pyi +3 -3
  291. homeassistant-stubs/components/lamarzocco/number.pyi +9 -13
  292. homeassistant-stubs/components/lamarzocco/select.pyi +13 -7
  293. homeassistant-stubs/components/lamarzocco/sensor.pyi +4 -5
  294. homeassistant-stubs/components/lamarzocco/switch.pyi +21 -6
  295. homeassistant-stubs/components/lamarzocco/update.pyi +5 -10
  296. homeassistant-stubs/components/lawn_mower/__init__.pyi +3 -2
  297. homeassistant-stubs/components/lidarr/__init__.pyi +12 -2
  298. homeassistant-stubs/components/lidarr/config_flow.pyi +2 -1
  299. homeassistant-stubs/components/lidarr/coordinator.pyi +0 -1
  300. homeassistant-stubs/components/lidarr/sensor.pyi +3 -4
  301. homeassistant-stubs/components/lifx/light.pyi +3 -2
  302. homeassistant-stubs/components/light/__init__.pyi +8 -6
  303. homeassistant-stubs/components/light/device_action.pyi +1 -1
  304. homeassistant-stubs/components/litterrobot/__init__.pyi +4 -3
  305. homeassistant-stubs/components/litterrobot/binary_sensor.pyi +2 -4
  306. homeassistant-stubs/components/litterrobot/button.pyi +2 -4
  307. homeassistant-stubs/components/litterrobot/select.pyi +2 -3
  308. homeassistant-stubs/components/litterrobot/sensor.pyi +2 -4
  309. homeassistant-stubs/components/litterrobot/switch.pyi +2 -4
  310. homeassistant-stubs/components/litterrobot/time.pyi +2 -4
  311. homeassistant-stubs/components/litterrobot/update.pyi +3 -4
  312. homeassistant-stubs/components/litterrobot/vacuum.pyi +2 -4
  313. homeassistant-stubs/components/lock/__init__.pyi +4 -3
  314. homeassistant-stubs/components/logbook/processor.pyi +4 -3
  315. homeassistant-stubs/components/london_underground/sensor.pyi +2 -1
  316. homeassistant-stubs/components/mastodon/notify.pyi +2 -1
  317. homeassistant-stubs/components/matrix/notify.pyi +2 -1
  318. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
  319. homeassistant-stubs/components/matter/discovery.pyi +3 -3
  320. homeassistant-stubs/components/matter/entity.pyi +8 -1
  321. homeassistant-stubs/components/matter/event.pyi +0 -2
  322. homeassistant-stubs/components/matter/fan.pyi +2 -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/overkiz/water_heater.pyi +2 -1
  384. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +2 -0
  385. homeassistant-stubs/components/overkiz/water_heater_entities/atlantic_domestic_hot_water_production_mlb_component.pyi +32 -0
  386. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -8
  387. homeassistant-stubs/components/ping/config_flow.pyi +2 -4
  388. homeassistant-stubs/components/ping/device_tracker.pyi +4 -14
  389. homeassistant-stubs/components/plugwise/button.pyi +20 -0
  390. homeassistant-stubs/components/plugwise/const.pyi +3 -0
  391. homeassistant-stubs/components/plugwise/coordinator.pyi +5 -3
  392. homeassistant-stubs/components/plugwise/number.pyi +2 -4
  393. homeassistant-stubs/components/plugwise/select.pyi +3 -5
  394. homeassistant-stubs/components/prometheus/__init__.pyi +1 -1
  395. homeassistant-stubs/components/proximity/config_flow.pyi +2 -1
  396. homeassistant-stubs/components/radarr/__init__.pyi +14 -2
  397. homeassistant-stubs/components/radarr/binary_sensor.pyi +3 -4
  398. homeassistant-stubs/components/radarr/calendar.pyi +2 -4
  399. homeassistant-stubs/components/radarr/config_flow.pyi +3 -4
  400. homeassistant-stubs/components/radarr/coordinator.pyi +2 -2
  401. homeassistant-stubs/components/radarr/sensor.pyi +2 -4
  402. homeassistant-stubs/components/rainmachine/switch.pyi +1 -0
  403. homeassistant-stubs/components/recorder/const.pyi +3 -1
  404. homeassistant-stubs/components/recorder/core.pyi +2 -2
  405. homeassistant-stubs/components/recorder/db_schema.pyi +3 -1
  406. homeassistant-stubs/components/recorder/purge.pyi +1 -1
  407. homeassistant-stubs/components/recorder/statistics.pyi +7 -4
  408. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +3 -3
  409. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +1 -1
  410. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +3 -3
  411. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +1 -1
  412. homeassistant-stubs/components/recorder/util.pyi +4 -3
  413. homeassistant-stubs/components/remote/__init__.pyi +5 -4
  414. homeassistant-stubs/components/rest/binary_sensor.pyi +2 -1
  415. homeassistant-stubs/components/rest/notify.pyi +2 -1
  416. homeassistant-stubs/components/rest/sensor.pyi +2 -1
  417. homeassistant-stubs/components/rest/switch.pyi +2 -1
  418. homeassistant-stubs/components/rfxtrx/config_flow.pyi +1 -0
  419. homeassistant-stubs/components/roborock/__init__.pyi +30 -0
  420. homeassistant-stubs/components/roborock/binary_sensor.pyi +29 -0
  421. homeassistant-stubs/components/roborock/button.pyi +28 -0
  422. homeassistant-stubs/components/roborock/config_flow.pyi +30 -0
  423. homeassistant-stubs/components/roborock/const.pyi +13 -0
  424. homeassistant-stubs/components/roborock/coordinator.pyi +47 -0
  425. homeassistant-stubs/components/roborock/device.pyi +53 -0
  426. homeassistant-stubs/components/roborock/diagnostics.pyi +13 -0
  427. homeassistant-stubs/components/roborock/image.pyi +37 -0
  428. homeassistant-stubs/components/roborock/models.pyi +27 -0
  429. homeassistant-stubs/components/roborock/number.pyi +35 -0
  430. homeassistant-stubs/components/roborock/select.pyi +37 -0
  431. homeassistant-stubs/components/roborock/sensor.pyi +47 -0
  432. homeassistant-stubs/components/roborock/switch.pyi +37 -0
  433. homeassistant-stubs/components/roborock/time.pyi +38 -0
  434. homeassistant-stubs/components/roborock/vacuum.pyi +39 -0
  435. homeassistant-stubs/components/roku/media_player.pyi +2 -1
  436. homeassistant-stubs/components/schedule/__init__.pyi +5 -5
  437. homeassistant-stubs/components/select/__init__.pyi +3 -1
  438. homeassistant-stubs/components/sensor/__init__.pyi +3 -1
  439. homeassistant-stubs/components/sensor/const.pyi +3 -2
  440. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  441. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  442. homeassistant-stubs/components/shelly/__init__.pyi +1 -2
  443. homeassistant-stubs/components/shelly/climate.pyi +3 -0
  444. homeassistant-stubs/components/shelly/const.pyi +0 -1
  445. homeassistant-stubs/components/shelly/coordinator.pyi +3 -2
  446. homeassistant-stubs/components/shelly/switch.pyi +2 -18
  447. homeassistant-stubs/components/shelly/valve.pyi +1 -1
  448. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +4 -5
  449. homeassistant-stubs/components/siren/__init__.pyi +4 -3
  450. homeassistant-stubs/components/sql/sensor.pyi +2 -1
  451. homeassistant-stubs/components/starlink/const.pyi +1 -0
  452. homeassistant-stubs/components/starlink/device_tracker.pyi +6 -2
  453. homeassistant-stubs/components/statistics/__init__.pyi +8 -1
  454. homeassistant-stubs/components/statistics/config_flow.pyi +23 -0
  455. homeassistant-stubs/components/statistics/sensor.pyi +7 -2
  456. homeassistant-stubs/components/stream/fmp4utils.pyi +2 -2
  457. homeassistant-stubs/components/stream/worker.pyi +3 -2
  458. homeassistant-stubs/components/streamlabswater/__init__.pyi +1 -6
  459. homeassistant-stubs/components/streamlabswater/config_flow.pyi +0 -1
  460. homeassistant-stubs/components/suez_water/config_flow.pyi +0 -1
  461. homeassistant-stubs/components/suez_water/sensor.pyi +3 -8
  462. homeassistant-stubs/components/switch/__init__.pyi +4 -3
  463. homeassistant-stubs/components/switch/light.pyi +2 -1
  464. homeassistant-stubs/components/switcher_kis/__init__.pyi +3 -0
  465. homeassistant-stubs/components/switcher_kis/switch.pyi +3 -2
  466. homeassistant-stubs/components/synology_dsm/config_flow.pyi +2 -2
  467. homeassistant-stubs/components/systemmonitor/config_flow.pyi +0 -2
  468. homeassistant-stubs/components/systemmonitor/sensor.pyi +4 -7
  469. homeassistant-stubs/components/tag/__init__.pyi +4 -5
  470. homeassistant-stubs/components/tami4/__init__.pyi +1 -1
  471. homeassistant-stubs/components/tami4/coordinator.pyi +3 -5
  472. homeassistant-stubs/components/tami4/sensor.pyi +3 -3
  473. homeassistant-stubs/components/tautulli/__init__.pyi +3 -2
  474. homeassistant-stubs/components/tautulli/coordinator.pyi +2 -2
  475. homeassistant-stubs/components/tautulli/sensor.pyi +3 -3
  476. homeassistant-stubs/components/threshold/__init__.pyi +2 -1
  477. homeassistant-stubs/components/threshold/binary_sensor.pyi +11 -3
  478. homeassistant-stubs/components/threshold/config_flow.pyi +8 -0
  479. homeassistant-stubs/components/tibber/__init__.pyi +1 -0
  480. homeassistant-stubs/components/tibber/sensor.pyi +12 -6
  481. homeassistant-stubs/components/tibber/services.pyi +15 -0
  482. homeassistant-stubs/components/time_date/sensor.pyi +3 -3
  483. homeassistant-stubs/components/timer/__init__.pyi +2 -2
  484. homeassistant-stubs/components/todo/__init__.pyi +3 -2
  485. homeassistant-stubs/components/tplink/__init__.pyi +14 -8
  486. homeassistant-stubs/components/tplink/binary_sensor.pyi +22 -0
  487. homeassistant-stubs/components/tplink/button.pyi +22 -0
  488. homeassistant-stubs/components/tplink/climate.pyi +42 -0
  489. homeassistant-stubs/components/tplink/config_flow.pyi +5 -5
  490. homeassistant-stubs/components/tplink/const.pyi +5 -1
  491. homeassistant-stubs/components/tplink/coordinator.pyi +2 -2
  492. homeassistant-stubs/components/tplink/diagnostics.pyi +2 -4
  493. homeassistant-stubs/components/tplink/entity.pyi +49 -7
  494. homeassistant-stubs/components/tplink/fan.pyi +31 -0
  495. homeassistant-stubs/components/tplink/light.pyi +20 -19
  496. homeassistant-stubs/components/tplink/number.pyi +27 -0
  497. homeassistant-stubs/components/tplink/select.pyi +26 -0
  498. homeassistant-stubs/components/tplink/sensor.pyi +12 -23
  499. homeassistant-stubs/components/tplink/switch.pyi +12 -35
  500. homeassistant-stubs/components/tplink_omada/controller.pyi +4 -15
  501. homeassistant-stubs/components/tplink_omada/coordinator.pyi +20 -1
  502. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +36 -0
  503. homeassistant-stubs/components/transmission/__init__.pyi +9 -3
  504. homeassistant-stubs/components/transmission/sensor.pyi +2 -2
  505. homeassistant-stubs/components/transmission/switch.pyi +2 -4
  506. homeassistant-stubs/components/trend/__init__.pyi +2 -1
  507. homeassistant-stubs/components/trend/binary_sensor.pyi +6 -2
  508. homeassistant-stubs/components/tts/notify.pyi +2 -1
  509. homeassistant-stubs/components/unifi/config_flow.pyi +1 -1
  510. homeassistant-stubs/components/unifi/sensor.pyi +2 -1
  511. homeassistant-stubs/components/unifi/services.pyi +1 -0
  512. homeassistant-stubs/components/unifiprotect/__init__.pyi +8 -9
  513. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +29 -21
  514. homeassistant-stubs/components/unifiprotect/button.pyi +8 -9
  515. homeassistant-stubs/components/unifiprotect/camera.pyi +10 -10
  516. homeassistant-stubs/components/unifiprotect/const.pyi +0 -1
  517. homeassistant-stubs/components/unifiprotect/data.pyi +27 -14
  518. homeassistant-stubs/components/unifiprotect/diagnostics.pyi +2 -4
  519. homeassistant-stubs/components/unifiprotect/entity.pyi +27 -17
  520. homeassistant-stubs/components/unifiprotect/light.pyi +3 -6
  521. homeassistant-stubs/components/unifiprotect/lock.pyi +3 -8
  522. homeassistant-stubs/components/unifiprotect/media_player.pyi +4 -8
  523. homeassistant-stubs/components/unifiprotect/media_source.pyi +2 -3
  524. homeassistant-stubs/components/unifiprotect/migrate.pyi +5 -5
  525. homeassistant-stubs/components/unifiprotect/models.pyi +16 -17
  526. homeassistant-stubs/components/unifiprotect/number.pyi +8 -12
  527. homeassistant-stubs/components/unifiprotect/repairs.pyi +5 -3
  528. homeassistant-stubs/components/unifiprotect/select.pyi +9 -11
  529. homeassistant-stubs/components/unifiprotect/sensor.pyi +25 -23
  530. homeassistant-stubs/components/unifiprotect/services.pyi +0 -4
  531. homeassistant-stubs/components/unifiprotect/switch.pyi +15 -24
  532. homeassistant-stubs/components/unifiprotect/text.pyi +8 -11
  533. homeassistant-stubs/components/unifiprotect/utils.pyi +6 -11
  534. homeassistant-stubs/components/unifiprotect/views.pyi +2 -4
  535. homeassistant-stubs/components/update/__init__.pyi +3 -1
  536. homeassistant-stubs/components/vacuum/__init__.pyi +2 -1
  537. homeassistant-stubs/components/vallox/sensor.pyi +5 -1
  538. homeassistant-stubs/components/valve/__init__.pyi +3 -2
  539. homeassistant-stubs/components/water_heater/__init__.pyi +4 -3
  540. homeassistant-stubs/components/weather/__init__.pyi +4 -5
  541. homeassistant-stubs/components/webhook/__init__.pyi +1 -1
  542. homeassistant-stubs/components/webostv/__init__.pyi +7 -0
  543. homeassistant-stubs/components/websocket_api/__init__.pyi +3 -4
  544. homeassistant-stubs/components/websocket_api/decorators.pyi +2 -1
  545. homeassistant-stubs/components/wemo/entity.pyi +2 -2
  546. homeassistant-stubs/components/wemo/fan.pyi +2 -1
  547. homeassistant-stubs/components/withings/coordinator.pyi +3 -3
  548. homeassistant-stubs/components/withings/sensor.pyi +6 -2
  549. homeassistant-stubs/components/worldclock/sensor.pyi +2 -1
  550. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +1 -1
  551. homeassistant-stubs/components/zone/__init__.pyi +3 -3
  552. homeassistant-stubs/components/zwave_js/__init__.pyi +1 -1
  553. homeassistant-stubs/components/zwave_js/api.pyi +1 -5
  554. homeassistant-stubs/components/zwave_js/config_flow.pyi +8 -1
  555. homeassistant-stubs/components/zwave_js/const.pyi +5 -0
  556. homeassistant-stubs/components/zwave_js/discovery.pyi +4 -4
  557. homeassistant-stubs/components/zwave_js/helpers.pyi +2 -2
  558. homeassistant-stubs/components/zwave_js/sensor.pyi +2 -0
  559. homeassistant-stubs/components/zwave_js/services.pyi +3 -2
  560. homeassistant-stubs/config.pyi +4 -5
  561. homeassistant-stubs/config_entries.pyi +6 -3
  562. homeassistant-stubs/const.pyi +9 -3
  563. homeassistant-stubs/core.pyi +15 -10
  564. homeassistant-stubs/data_entry_flow.pyi +12 -2
  565. homeassistant-stubs/exceptions.pyi +6 -5
  566. homeassistant-stubs/helpers/__init__.pyi +0 -5
  567. homeassistant-stubs/helpers/collection.pyi +14 -11
  568. homeassistant-stubs/helpers/condition.pyi +3 -2
  569. homeassistant-stubs/helpers/config_validation.pyi +5 -4
  570. homeassistant-stubs/helpers/deprecation.pyi +10 -0
  571. homeassistant-stubs/helpers/device.pyi +8 -0
  572. homeassistant-stubs/helpers/device_registry.pyi +14 -2
  573. homeassistant-stubs/helpers/entity.pyi +3 -2
  574. homeassistant-stubs/helpers/entity_component.pyi +3 -4
  575. homeassistant-stubs/helpers/entity_platform.pyi +2 -3
  576. homeassistant-stubs/helpers/event.pyi +10 -4
  577. homeassistant-stubs/helpers/frame.pyi +1 -0
  578. homeassistant-stubs/helpers/http.pyi +1 -1
  579. homeassistant-stubs/helpers/intent.pyi +6 -4
  580. homeassistant-stubs/helpers/llm.pyi +17 -3
  581. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +2 -2
  582. homeassistant-stubs/helpers/script.pyi +3 -2
  583. homeassistant-stubs/helpers/selector.pyi +10 -8
  584. homeassistant-stubs/helpers/service.pyi +6 -3
  585. homeassistant-stubs/helpers/template.pyi +8 -6
  586. homeassistant-stubs/helpers/trace.pyi +3 -2
  587. homeassistant-stubs/helpers/typing.pyi +6 -1
  588. homeassistant-stubs/helpers/update_coordinator.pyi +3 -3
  589. homeassistant-stubs/loader.pyi +1 -2
  590. homeassistant-stubs/requirements.pyi +0 -3
  591. homeassistant-stubs/setup.pyi +4 -3
  592. homeassistant-stubs/util/loop.pyi +5 -1
  593. homeassistant-stubs/util/unit_conversion.pyi +7 -1
  594. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/METADATA +2 -2
  595. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/RECORD +597 -560
  596. homeassistant-stubs/auth/providers/legacy_api_password.pyi +0 -30
  597. homeassistant-stubs/components/air_quality/group.pyi +0 -5
  598. homeassistant-stubs/components/aladdin_connect/api.pyi +0 -12
  599. homeassistant-stubs/components/aladdin_connect/application_credentials.pyi +0 -5
  600. homeassistant-stubs/components/aladdin_connect/const.pyi +0 -3
  601. homeassistant-stubs/components/aladdin_connect/coordinator.pyi +0 -15
  602. homeassistant-stubs/components/aladdin_connect/cover.pyi +0 -25
  603. homeassistant-stubs/components/aladdin_connect/entity.pyi +0 -12
  604. homeassistant-stubs/components/aladdin_connect/sensor.pyi +0 -27
  605. homeassistant-stubs/components/alarm_control_panel/group.pyi +0 -6
  606. homeassistant-stubs/components/climate/group.pyi +0 -6
  607. homeassistant-stubs/components/cover/group.pyi +0 -6
  608. homeassistant-stubs/components/device_tracker/group.pyi +0 -6
  609. homeassistant-stubs/components/fastdotcom/services.pyi +0 -7
  610. homeassistant-stubs/components/lock/group.pyi +0 -6
  611. homeassistant-stubs/components/media_player/group.pyi +0 -6
  612. homeassistant-stubs/components/sensor/group.pyi +0 -5
  613. homeassistant-stubs/components/vacuum/group.pyi +0 -6
  614. homeassistant-stubs/components/water_heater/group.pyi +0 -6
  615. homeassistant-stubs/components/weather/group.pyi +0 -5
  616. homeassistant-stubs/components/wled/binary_sensor.pyi +0 -20
  617. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/LICENSE +0 -0
  618. {homeassistant_stubs-2024.6.4.dist-info → homeassistant_stubs-2024.7.0.dist-info}/WHEEL +0 -0
@@ -5,14 +5,12 @@ from _typeshed import Incomplete
5
5
  from collections.abc import Mapping
6
6
  from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult
7
7
  from homeassistant.core import callback as callback
8
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
9
8
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowFormStep as SchemaFlowFormStep
10
9
  from homeassistant.helpers.selector import SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode
11
10
  from homeassistant.util import slugify as slugify
12
11
  from typing import Any
13
12
 
14
13
  async def validate_sensor_setup(handler: SchemaCommonFlowHandler, user_input: dict[str, Any]) -> dict[str, Any]: ...
15
- async def validate_import_sensor_setup(handler: SchemaCommonFlowHandler, user_input: dict[str, Any]) -> dict[str, Any]: ...
16
14
  async def get_sensor_setup_schema(handler: SchemaCommonFlowHandler) -> vol.Schema: ...
17
15
  async def get_suggested_value(handler: SchemaCommonFlowHandler) -> dict[str, Any]: ...
18
16
 
@@ -6,17 +6,16 @@ from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable
7
7
  from dataclasses import dataclass
8
8
  from datetime import datetime
9
- from homeassistant.components.sensor import PLATFORM_SCHEMA as PLATFORM_SCHEMA, SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
10
- from homeassistant.config_entries import SOURCE_IMPORT as SOURCE_IMPORT
11
- from homeassistant.const import CONF_RESOURCES as CONF_RESOURCES, CONF_TYPE as CONF_TYPE, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature
9
+ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
10
+ from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, UnitOfDataRate as UnitOfDataRate, UnitOfInformation as UnitOfInformation, UnitOfTemperature as UnitOfTemperature
12
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
12
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
14
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
15
14
  from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
16
- from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, StateType as StateType
15
+ from homeassistant.helpers.typing import StateType as StateType
17
16
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
18
17
  from homeassistant.util import slugify as slugify
19
- from typing import Any, Literal
18
+ from typing import Literal
20
19
 
21
20
  _LOGGER: Incomplete
22
21
  CONF_ARG: str
@@ -45,13 +44,11 @@ class SysMonitorSensorEntityDescription(SensorEntityDescription):
45
44
 
46
45
  SENSOR_TYPES: dict[str, SysMonitorSensorEntityDescription]
47
46
 
48
- def check_required_arg(value: Any) -> Any: ...
49
47
  def check_legacy_resource(resource: str, resources: set[str]) -> bool: ...
50
48
 
51
49
  IO_COUNTER: Incomplete
52
50
  IF_ADDRS_FAMILY: Incomplete
53
51
 
54
- async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
55
52
  async def async_setup_entry(hass: HomeAssistant, entry: SystemMonitorConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
56
53
 
57
54
  class SystemMonitorSensor(CoordinatorEntity[SystemMonitorCoordinator], SensorEntity):
@@ -9,7 +9,7 @@ from homeassistant.helpers import collection as collection, entity_registry as e
9
9
  from homeassistant.helpers.entity import Entity as Entity
10
10
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
11
11
  from homeassistant.helpers.storage import Store as Store
12
- from homeassistant.helpers.typing import ConfigType as ConfigType
12
+ from homeassistant.helpers.typing import ConfigType as ConfigType, VolDictType as VolDictType
13
13
  from homeassistant.util import slugify as slugify
14
14
  from homeassistant.util.hass_dict import HassKey as HassKey
15
15
  from typing import Any
@@ -21,9 +21,8 @@ STORAGE_KEY = DOMAIN
21
21
  STORAGE_VERSION: int
22
22
  STORAGE_VERSION_MINOR: int
23
23
  TAG_DATA: HassKey[TagStorageCollection]
24
- SIGNAL_TAG_CHANGED: str
25
- CREATE_FIELDS: Incomplete
26
- UPDATE_FIELDS: Incomplete
24
+ CREATE_FIELDS: VolDictType
25
+ UPDATE_FIELDS: VolDictType
27
26
  CONFIG_SCHEMA: Incomplete
28
27
 
29
28
  class TagIDExistsError(HomeAssistantError):
@@ -50,7 +49,7 @@ class TagStorageCollection(collection.DictStorageCollection):
50
49
 
51
50
  class TagDictStorageCollectionWebsocket(collection.StorageCollectionWebsocket[TagStorageCollection]):
52
51
  entity_registry: Incomplete
53
- def __init__(self, storage_collection: TagStorageCollection, api_prefix: str, model_name: str, create_schema: ConfigType, update_schema: ConfigType) -> None: ...
52
+ def __init__(self, storage_collection: TagStorageCollection, api_prefix: str, model_name: str, create_schema: VolDictType, update_schema: VolDictType) -> None: ...
54
53
  def ws_list_item(self, hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
55
54
 
56
55
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
@@ -1,5 +1,5 @@
1
1
  from .const import API as API, CONF_REFRESH_TOKEN as CONF_REFRESH_TOKEN, COORDINATOR as COORDINATOR, DOMAIN as DOMAIN
2
- from .coordinator import Tami4EdgeWaterQualityCoordinator as Tami4EdgeWaterQualityCoordinator
2
+ from .coordinator import Tami4EdgeCoordinator as Tami4EdgeCoordinator
3
3
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.const import Platform as Platform
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -10,16 +10,14 @@ _LOGGER: Incomplete
10
10
 
11
11
  @dataclass
12
12
  class FlattenedWaterQuality:
13
- uv_last_replacement: date
14
13
  uv_upcoming_replacement: date
15
- uv_status: str
16
- filter_last_replacement: date
14
+ uv_installed: bool
17
15
  filter_upcoming_replacement: date
18
- filter_status: str
16
+ filter_installed: bool
19
17
  filter_litters_passed: float
20
18
  def __init__(self, water_quality: WaterQuality) -> None: ...
21
19
 
22
- class Tami4EdgeWaterQualityCoordinator(DataUpdateCoordinator[FlattenedWaterQuality]):
20
+ class Tami4EdgeCoordinator(DataUpdateCoordinator[FlattenedWaterQuality]):
23
21
  _api: Incomplete
24
22
  def __init__(self, hass: HomeAssistant, api: Tami4EdgeAPI) -> None: ...
25
23
  async def _async_update_data(self) -> FlattenedWaterQuality: ...
@@ -1,5 +1,5 @@
1
1
  from .const import API as API, COORDINATOR as COORDINATOR, DOMAIN as DOMAIN
2
- from .coordinator import Tami4EdgeWaterQualityCoordinator as Tami4EdgeWaterQualityCoordinator
2
+ from .coordinator import Tami4EdgeCoordinator as Tami4EdgeCoordinator
3
3
  from .entity import Tami4EdgeBaseEntity as Tami4EdgeBaseEntity
4
4
  from Tami4EdgeAPI import Tami4EdgeAPI as Tami4EdgeAPI
5
5
  from _typeshed import Incomplete
@@ -15,8 +15,8 @@ ENTITY_DESCRIPTIONS: Incomplete
15
15
 
16
16
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
17
17
 
18
- class Tami4EdgeSensorEntity(Tami4EdgeBaseEntity, CoordinatorEntity[Tami4EdgeWaterQualityCoordinator], SensorEntity):
19
- def __init__(self, coordinator: Tami4EdgeWaterQualityCoordinator, api: Tami4EdgeAPI, entity_description: SensorEntityDescription) -> None: ...
18
+ class Tami4EdgeSensorEntity(Tami4EdgeBaseEntity, CoordinatorEntity[Tami4EdgeCoordinator], SensorEntity):
19
+ def __init__(self, coordinator: Tami4EdgeCoordinator, api: Tami4EdgeAPI, entity_description: SensorEntityDescription) -> None: ...
20
20
  _attr_native_value: Incomplete
21
21
  def _update_attr(self) -> None: ...
22
22
  def _handle_coordinator_update(self) -> None: ...
@@ -11,9 +11,10 @@ from homeassistant.helpers.update_coordinator import CoordinatorEntity as Coordi
11
11
  from pytautulli import PyTautulliApiUser as PyTautulliApiUser
12
12
 
13
13
  PLATFORMS: Incomplete
14
+ TautulliConfigEntry = ConfigEntry[TautulliDataUpdateCoordinator]
14
15
 
15
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
+ async def async_setup_entry(hass: HomeAssistant, entry: TautulliConfigEntry) -> bool: ...
17
+ async def async_unload_entry(hass: HomeAssistant, entry: TautulliConfigEntry) -> bool: ...
17
18
 
18
19
  class TautulliEntity(CoordinatorEntity[TautulliDataUpdateCoordinator]):
19
20
  _attr_has_entity_name: bool
@@ -1,6 +1,6 @@
1
+ from . import TautulliConfigEntry as TautulliConfigEntry
1
2
  from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
3
  from _typeshed import Incomplete
3
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
6
6
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
@@ -8,7 +8,7 @@ from pytautulli import PyTautulli as PyTautulli, PyTautulliApiActivity as PyTaut
8
8
  from pytautulli.models.host_configuration import PyTautulliHostConfiguration as PyTautulliHostConfiguration
9
9
 
10
10
  class TautulliDataUpdateCoordinator(DataUpdateCoordinator[None]):
11
- config_entry: ConfigEntry
11
+ config_entry: TautulliConfigEntry
12
12
  host_configuration: Incomplete
13
13
  api_client: Incomplete
14
14
  activity: Incomplete
@@ -1,11 +1,11 @@
1
- from . import TautulliEntity as TautulliEntity
1
+ from . import TautulliConfigEntry as TautulliConfigEntry, TautulliEntity as TautulliEntity
2
2
  from .const import ATTR_TOP_USER as ATTR_TOP_USER, DOMAIN as DOMAIN
3
3
  from .coordinator import TautulliDataUpdateCoordinator as TautulliDataUpdateCoordinator
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Callable as Callable
6
6
  from dataclasses import dataclass
7
7
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
8
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
8
+ from homeassistant.config_entries import SOURCE_IMPORT as SOURCE_IMPORT
9
9
  from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfInformation as UnitOfInformation
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
11
11
  from homeassistant.helpers.entity import EntityDescription as EntityDescription
@@ -30,7 +30,7 @@ class TautulliSessionSensorEntityDescription(SensorEntityDescription):
30
30
  SESSION_SENSOR_TYPES: tuple[TautulliSessionSensorEntityDescription, ...]
31
31
 
32
32
  async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
33
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
33
+ async def async_setup_entry(hass: HomeAssistant, entry: TautulliConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
34
34
 
35
35
  class TautulliSensor(TautulliEntity, SensorEntity):
36
36
  entity_description: TautulliSensorEntityDescription
@@ -1,6 +1,7 @@
1
1
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
2
- from homeassistant.const import Platform as Platform
2
+ from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, Platform as Platform
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from homeassistant.helpers.device import async_remove_stale_devices_links_keep_entity_device as async_remove_stale_devices_links_keep_entity_device
4
5
 
5
6
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
6
7
  async def config_entry_update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
@@ -1,9 +1,11 @@
1
1
  from .const import CONF_HYSTERESIS as CONF_HYSTERESIS, CONF_LOWER as CONF_LOWER, CONF_UPPER as CONF_UPPER
2
2
  from _typeshed import Incomplete
3
- from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, DEVICE_CLASSES_SCHEMA as DEVICE_CLASSES_SCHEMA, PLATFORM_SCHEMA as PLATFORM_SCHEMA
3
+ from collections.abc import Callable as Callable, Mapping
4
+ from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, DEVICE_CLASSES_SCHEMA as DEVICE_CLASSES_SCHEMA
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
6
  from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, STATE_UNAVAILABLE as STATE_UNAVAILABLE, STATE_UNKNOWN as STATE_UNKNOWN
6
- from homeassistant.core import Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, EventStateChangedData as EventStateChangedData, HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.helpers.device import async_device_info_to_link_from_entity as async_device_info_to_link_from_entity
7
9
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
8
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
11
  from homeassistant.helpers.event import async_track_state_change_event as async_track_state_change_event
@@ -26,6 +28,7 @@ POSITION_UNKNOWN: str
26
28
  TYPE_LOWER: str
27
29
  TYPE_RANGE: str
28
30
  TYPE_UPPER: str
31
+ PLATFORM_SCHEMA: Incomplete
29
32
 
30
33
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
31
34
  async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
@@ -33,6 +36,7 @@ def _threshold_type(lower: float | None, upper: float | None) -> str: ...
33
36
 
34
37
  class ThresholdSensor(BinarySensorEntity):
35
38
  _attr_should_poll: bool
39
+ _preview_callback: Incomplete
36
40
  _attr_unique_id: Incomplete
37
41
  _attr_device_info: Incomplete
38
42
  _entity_id: Incomplete
@@ -45,9 +49,13 @@ class ThresholdSensor(BinarySensorEntity):
45
49
  _state_position: Incomplete
46
50
  _state: Incomplete
47
51
  sensor_value: Incomplete
48
- def __init__(self, hass: HomeAssistant, entity_id: str, name: str, lower: float | None, upper: float | None, hysteresis: float, device_class: BinarySensorDeviceClass | None, unique_id: str | None, device_info: DeviceInfo | None = None) -> None: ...
52
+ def __init__(self, entity_id: str, name: str, lower: float | None, upper: float | None, hysteresis: float, device_class: BinarySensorDeviceClass | None, unique_id: str | None, device_info: DeviceInfo | None = None) -> None: ...
53
+ async def async_added_to_hass(self) -> None: ...
54
+ def _async_setup_sensor(self) -> None: ...
49
55
  @property
50
56
  def is_on(self) -> bool | None: ...
51
57
  @property
52
58
  def extra_state_attributes(self) -> dict[str, Any]: ...
53
59
  def _update_state(self) -> None: ...
60
+ _attr_available: bool
61
+ def async_start_preview(self, preview_callback: Callable[[str, Mapping[str, Any]], None]) -> CALLBACK_TYPE: ...
@@ -1,7 +1,11 @@
1
+ from .binary_sensor import ThresholdSensor as ThresholdSensor
1
2
  from .const import CONF_HYSTERESIS as CONF_HYSTERESIS, CONF_LOWER as CONF_LOWER, CONF_UPPER as CONF_UPPER, DEFAULT_HYSTERESIS as DEFAULT_HYSTERESIS, DOMAIN as DOMAIN
2
3
  from _typeshed import Incomplete
3
4
  from collections.abc import Mapping
5
+ from homeassistant.components import websocket_api as websocket_api
4
6
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME
7
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
5
9
  from homeassistant.helpers import selector as selector
6
10
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowError as SchemaFlowError, SchemaFlowFormStep as SchemaFlowFormStep
7
11
  from typing import Any
@@ -17,3 +21,7 @@ class ConfigFlowHandler(SchemaConfigFlowHandler, domain=DOMAIN):
17
21
  config_flow = CONFIG_FLOW
18
22
  options_flow = OPTIONS_FLOW
19
23
  def async_config_entry_title(self, options: Mapping[str, Any]) -> str: ...
24
+ @staticmethod
25
+ async def async_setup_preview(hass: HomeAssistant) -> None: ...
26
+
27
+ def ws_start_preview(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
@@ -1,4 +1,5 @@
1
1
  from .const import DATA_HASS_CONFIG as DATA_HASS_CONFIG, DOMAIN as DOMAIN
2
+ from .services import async_setup_services as async_setup_services
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
5
  from homeassistant.const import CONF_ACCESS_TOKEN as CONF_ACCESS_TOKEN, CONF_NAME as CONF_NAME, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
@@ -2,11 +2,13 @@ import tibber
2
2
  from .const import MANUFACTURER as MANUFACTURER
3
3
  from .coordinator import TibberDataCoordinator as TibberDataCoordinator
4
4
  from _typeshed import Incomplete
5
+ from collections.abc import Callable as Callable
5
6
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
6
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
8
  from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfPower as UnitOfPower
8
9
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
9
10
  from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
11
+ from homeassistant.helpers import entity_registry as er
10
12
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
11
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
14
  from homeassistant.helpers.typing import StateType as StateType
@@ -74,15 +76,19 @@ class TibberSensorRT(TibberSensor, CoordinatorEntity['TibberRtDataCoordinator'])
74
76
  _attr_last_reset: Incomplete
75
77
  def _handle_coordinator_update(self) -> None: ...
76
78
 
77
- class TibberRtDataCoordinator(DataUpdateCoordinator):
79
+ class TibberRtEntityCreator:
78
80
  _async_add_entities: Incomplete
79
81
  _tibber_home: Incomplete
80
- hass: Incomplete
81
82
  _added_sensors: Incomplete
83
+ _entity_registry: Incomplete
84
+ def __init__(self, async_add_entities: AddEntitiesCallback, tibber_home: tibber.TibberHome, entity_registry: er.EntityRegistry) -> None: ...
85
+ def _migrate_unique_id(self, sensor_description: SensorEntityDescription) -> None: ...
86
+ def add_sensors(self, coordinator: TibberRtDataCoordinator, live_measurement: Any) -> None: ...
87
+
88
+ class TibberRtDataCoordinator(DataUpdateCoordinator):
89
+ _add_sensor_callback: Incomplete
82
90
  _async_remove_device_updates_handler: Incomplete
83
- entity_registry: Incomplete
84
- def __init__(self, async_add_entities: AddEntitiesCallback, tibber_home: tibber.TibberHome, hass: HomeAssistant) -> None: ...
91
+ def __init__(self, add_sensor_callback: Callable[[TibberRtDataCoordinator, Any], None], tibber_home: tibber.TibberHome, hass: HomeAssistant) -> None: ...
85
92
  def _handle_ha_stop(self, _event: Event) -> None: ...
86
- def _migrate_unique_id(self, sensor_description: SensorEntityDescription) -> None: ...
87
- def _add_sensors(self) -> None: ...
93
+ def _data_updated(self) -> None: ...
88
94
  def get_live_measurement(self) -> Any: ...
@@ -0,0 +1,15 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from _typeshed import Incomplete
3
+ from datetime import date, datetime
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, ServiceResponse as ServiceResponse, SupportsResponse as SupportsResponse, callback as callback
5
+ from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
6
+ from typing import Final
7
+
8
+ PRICE_SERVICE_NAME: str
9
+ ATTR_START: Final[str]
10
+ ATTR_END: Final[str]
11
+ SERVICE_SCHEMA: Final[Incomplete]
12
+
13
+ async def __get_prices(call: ServiceCall, *, hass: HomeAssistant) -> ServiceResponse: ...
14
+ def __get_date(date_input: str | None, mode: str | None) -> date | datetime: ...
15
+ def async_setup_services(hass: HomeAssistant) -> None: ...
@@ -1,19 +1,19 @@
1
- from .const import DOMAIN as DOMAIN, OPTION_TYPES as OPTION_TYPES
1
+ from .const import OPTION_TYPES as OPTION_TYPES
2
2
  from _typeshed import Incomplete
3
3
  from collections.abc import Callable as Callable, Mapping
4
4
  from datetime import datetime
5
- from homeassistant.components.sensor import ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, PLATFORM_SCHEMA as PLATFORM_SCHEMA, SensorEntity as SensorEntity
5
+ from homeassistant.components.sensor import ENTITY_ID_FORMAT as ENTITY_ID_FORMAT, SensorEntity as SensorEntity
6
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
7
  from homeassistant.const import CONF_DISPLAY_OPTIONS as CONF_DISPLAY_OPTIONS, EVENT_CORE_CONFIG_UPDATE as EVENT_CORE_CONFIG_UPDATE
8
8
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, Event as Event, HomeAssistant as HomeAssistant, callback as callback
9
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
10
  from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
11
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
12
11
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
13
12
  from typing import Any
14
13
 
15
14
  _LOGGER: Incomplete
16
15
  TIME_STR_FORMAT: str
16
+ PLATFORM_SCHEMA: Incomplete
17
17
 
18
18
  async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
19
19
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -9,7 +9,7 @@ from homeassistant.helpers.entity_component import EntityComponent as EntityComp
9
9
  from homeassistant.helpers.event import async_track_point_in_utc_time as async_track_point_in_utc_time
10
10
  from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
11
11
  from homeassistant.helpers.storage import Store as Store
12
- from homeassistant.helpers.typing import ConfigType as ConfigType
12
+ from homeassistant.helpers.typing import ConfigType as ConfigType, VolDictType as VolDictType
13
13
  from typing import Any, Self
14
14
 
15
15
  _LOGGER: Incomplete
@@ -40,7 +40,7 @@ SERVICE_CHANGE: str
40
40
  SERVICE_FINISH: str
41
41
  STORAGE_KEY = DOMAIN
42
42
  STORAGE_VERSION: int
43
- STORAGE_FIELDS: Incomplete
43
+ STORAGE_FIELDS: VolDictType
44
44
 
45
45
  def _format_timedelta(delta: timedelta) -> str: ...
46
46
  def _none_to_empty_dict(value: _T | None) -> _T | dict[Any, Any]: ...
@@ -10,7 +10,6 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
10
10
  from homeassistant.const import CONF_ENTITY_ID as CONF_ENTITY_ID
11
11
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, SupportsResponse as SupportsResponse, callback as callback
12
12
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
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
15
14
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
16
15
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -18,8 +17,10 @@ from homeassistant.util.json import JsonValueType as JsonValueType
18
17
  from typing import Any
19
18
 
20
19
  _LOGGER: Incomplete
21
- SCAN_INTERVAL: Incomplete
22
20
  ENTITY_ID_FORMAT: Incomplete
21
+ PLATFORM_SCHEMA: Incomplete
22
+ PLATFORM_SCHEMA_BASE: Incomplete
23
+ SCAN_INTERVAL: Incomplete
23
24
 
24
25
  @dataclasses.dataclass
25
26
  class TodoItemFieldDescription:
@@ -1,31 +1,37 @@
1
- from .const import CONF_DEVICE_CONFIG as CONF_DEVICE_CONFIG, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DISCOVERY_TIMEOUT as DISCOVERY_TIMEOUT, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
1
+ from .const import CONF_CREDENTIALS_HASH as CONF_CREDENTIALS_HASH, CONF_DEVICE_CONFIG as CONF_DEVICE_CONFIG, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DISCOVERY_TIMEOUT as DISCOVERY_TIMEOUT, DOMAIN as DOMAIN, PLATFORMS as PLATFORMS
2
2
  from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
3
3
  from .models import TPLinkData as TPLinkData
4
4
  from _typeshed import Incomplete
5
5
  from aiohttp import ClientSession as ClientSession
6
+ from collections.abc import Iterable
6
7
  from homeassistant import config_entries as config_entries
7
8
  from homeassistant.components import network as network
8
9
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
10
  from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_MODEL as CONF_MODEL, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
10
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
11
12
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
12
- from homeassistant.helpers import discovery_flow as discovery_flow
13
+ from homeassistant.helpers import device_registry as dr, discovery_flow as discovery_flow
13
14
  from homeassistant.helpers.aiohttp_client import async_create_clientsession as async_create_clientsession
14
15
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
15
16
  from homeassistant.helpers.typing import ConfigType as ConfigType
16
- from kasa import Credentials, SmartDevice
17
+ from kasa import Credentials, Device
17
18
 
19
+ TPLinkConfigEntry = ConfigEntry[TPLinkData]
18
20
  DISCOVERY_INTERVAL: Incomplete
19
21
  CONFIG_SCHEMA: Incomplete
20
22
  _LOGGER: Incomplete
21
23
 
22
24
  def create_async_tplink_clientsession(hass: HomeAssistant) -> ClientSession: ...
23
- def async_trigger_discovery(hass: HomeAssistant, discovered_devices: dict[str, SmartDevice]) -> None: ...
24
- async def async_discover_devices(hass: HomeAssistant) -> dict[str, SmartDevice]: ...
25
+ def async_trigger_discovery(hass: HomeAssistant, discovered_devices: dict[str, Device]) -> None: ...
26
+ async def async_discover_devices(hass: HomeAssistant) -> dict[str, Device]: ...
25
27
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
26
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
27
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
28
- def legacy_device_id(device: SmartDevice) -> str: ...
28
+ async def async_setup_entry(hass: HomeAssistant, entry: TPLinkConfigEntry) -> bool: ...
29
+ async def async_unload_entry(hass: HomeAssistant, entry: TPLinkConfigEntry) -> bool: ...
30
+ def legacy_device_id(device: Device) -> str: ...
31
+ def get_device_name(device: Device, parent: Device | None = None) -> str: ...
29
32
  async def get_credentials(hass: HomeAssistant) -> Credentials | None: ...
30
33
  async def set_credentials(hass: HomeAssistant, username: str, password: str) -> None: ...
31
34
  def mac_alias(mac: str) -> str: ...
35
+ def _mac_connection_or_none(device: dr.DeviceEntry) -> str | None: ...
36
+ def _device_id_is_mac_or_none(mac: str, device_ids: Iterable[str]) -> str | None: ...
37
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
@@ -0,0 +1,22 @@
1
+ from . import TPLinkConfigEntry as TPLinkConfigEntry
2
+ from .entity import CoordinatedTPLinkFeatureEntity as CoordinatedTPLinkFeatureEntity, TPLinkFeatureEntityDescription as TPLinkFeatureEntityDescription
3
+ from _typeshed import Incomplete
4
+ from dataclasses import dataclass
5
+ from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
6
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+ from typing import Final
9
+
10
+ @dataclass(frozen=True, kw_only=True)
11
+ class TPLinkBinarySensorEntityDescription(BinarySensorEntityDescription, TPLinkFeatureEntityDescription):
12
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement) -> None: ...
13
+
14
+ BINARY_SENSOR_DESCRIPTIONS: Final[Incomplete]
15
+ BINARYSENSOR_DESCRIPTIONS_MAP: Incomplete
16
+
17
+ async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
18
+
19
+ class TPLinkBinarySensorEntity(CoordinatedTPLinkFeatureEntity, BinarySensorEntity):
20
+ entity_description: TPLinkBinarySensorEntityDescription
21
+ _attr_is_on: Incomplete
22
+ def _async_update_attrs(self) -> None: ...
@@ -0,0 +1,22 @@
1
+ from . import TPLinkConfigEntry as TPLinkConfigEntry
2
+ from .entity import CoordinatedTPLinkFeatureEntity as CoordinatedTPLinkFeatureEntity, TPLinkFeatureEntityDescription as TPLinkFeatureEntityDescription
3
+ from _typeshed import Incomplete
4
+ from dataclasses import dataclass
5
+ from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
6
+ from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+ from typing import Final
9
+
10
+ @dataclass(frozen=True, kw_only=True)
11
+ class TPLinkButtonEntityDescription(ButtonEntityDescription, TPLinkFeatureEntityDescription):
12
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement) -> None: ...
13
+
14
+ BUTTON_DESCRIPTIONS: Final[Incomplete]
15
+ BUTTON_DESCRIPTIONS_MAP: Incomplete
16
+
17
+ async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
18
+
19
+ class TPLinkButtonEntity(CoordinatedTPLinkFeatureEntity, ButtonEntity):
20
+ entity_description: TPLinkButtonEntityDescription
21
+ async def async_press(self) -> None: ...
22
+ def _async_update_attrs(self) -> None: ...
@@ -0,0 +1,42 @@
1
+ from . import TPLinkConfigEntry as TPLinkConfigEntry
2
+ from .const import UNIT_MAPPING as UNIT_MAPPING
3
+ from .coordinator import TPLinkDataUpdateCoordinator as TPLinkDataUpdateCoordinator
4
+ from .entity import CoordinatedTPLinkEntity as CoordinatedTPLinkEntity, async_refresh_after as async_refresh_after
5
+ from _typeshed import Incomplete
6
+ from homeassistant.components.climate import ATTR_TEMPERATURE as ATTR_TEMPERATURE, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACAction as HVACAction, HVACMode as HVACMode
7
+ from homeassistant.const import PRECISION_WHOLE as PRECISION_WHOLE
8
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.exceptions import ServiceValidationError as ServiceValidationError
10
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
+ from kasa import Device as Device
12
+ from typing import Any
13
+
14
+ STATE_TO_ACTION: Incomplete
15
+ _LOGGER: Incomplete
16
+
17
+ async def async_setup_entry(hass: HomeAssistant, config_entry: TPLinkConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
18
+
19
+ class TPLinkClimateEntity(CoordinatedTPLinkEntity, ClimateEntity):
20
+ _attr_name: Incomplete
21
+ _attr_supported_features: Incomplete
22
+ _attr_hvac_modes: Incomplete
23
+ _attr_precision = PRECISION_WHOLE
24
+ _enable_turn_on_off_backwards_compatibility: bool
25
+ _state_feature: Incomplete
26
+ _mode_feature: Incomplete
27
+ _temp_feature: Incomplete
28
+ _target_feature: Incomplete
29
+ _attr_min_temp: Incomplete
30
+ _attr_max_temp: Incomplete
31
+ _attr_temperature_unit: Incomplete
32
+ def __init__(self, device: Device, coordinator: TPLinkDataUpdateCoordinator, *, parent: Device) -> None: ...
33
+ async def async_set_temperature(self, **kwargs: Any) -> None: ...
34
+ async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
35
+ async def async_turn_on(self) -> None: ...
36
+ async def async_turn_off(self) -> None: ...
37
+ _attr_current_temperature: Incomplete
38
+ _attr_target_temperature: Incomplete
39
+ _attr_hvac_mode: Incomplete
40
+ _attr_hvac_action: Incomplete
41
+ def _async_update_attrs(self) -> None: ...
42
+ def _get_unique_id(self) -> str: ...
@@ -1,5 +1,5 @@
1
1
  from . import async_discover_devices as async_discover_devices, create_async_tplink_clientsession as create_async_tplink_clientsession, get_credentials as get_credentials, mac_alias as mac_alias, set_credentials as set_credentials
2
- from .const import CONF_DEVICE_CONFIG as CONF_DEVICE_CONFIG, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DOMAIN as DOMAIN
2
+ from .const import CONF_CONNECTION_TYPE as CONF_CONNECTION_TYPE, CONF_CREDENTIALS_HASH as CONF_CREDENTIALS_HASH, CONF_DEVICE_CONFIG as CONF_DEVICE_CONFIG, CONNECT_TIMEOUT as CONNECT_TIMEOUT, DOMAIN as DOMAIN
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
5
  from homeassistant.components import dhcp as dhcp
@@ -7,7 +7,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigEntry
7
7
  from homeassistant.const import CONF_ALIAS as CONF_ALIAS, CONF_DEVICE as CONF_DEVICE, CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_MODEL as CONF_MODEL, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
8
8
  from homeassistant.core import callback as callback
9
9
  from homeassistant.helpers.typing import DiscoveryInfoType as DiscoveryInfoType
10
- from kasa import Credentials, SmartDevice
10
+ from kasa import Credentials, Device
11
11
  from typing import Any
12
12
 
13
13
  STEP_AUTH_DATA_SCHEMA: Incomplete
@@ -30,8 +30,8 @@ class TPLinkConfigFlow(ConfigFlow, domain=DOMAIN):
30
30
  async def async_step_user_auth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
31
31
  async def async_step_pick_device(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
32
32
  async def _async_reload_requires_auth_entries(self) -> None: ...
33
- def _async_create_entry_from_device(self, device: SmartDevice) -> ConfigFlowResult: ...
34
- async def _async_try_discover_and_update(self, host: str, credentials: Credentials | None, raise_on_progress: bool) -> SmartDevice: ...
35
- async def _async_try_connect(self, discovered_device: SmartDevice, credentials: Credentials | None) -> SmartDevice: ...
33
+ def _async_create_entry_from_device(self, device: Device) -> ConfigFlowResult: ...
34
+ async def _async_try_discover_and_update(self, host: str, credentials: Credentials | None, raise_on_progress: bool) -> Device: ...
35
+ async def _async_try_connect(self, discovered_device: Device, credentials: Credentials | None) -> Device: ...
36
36
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
37
37
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,13 +1,17 @@
1
1
  from _typeshed import Incomplete
2
- from homeassistant.const import Platform as Platform
2
+ from homeassistant.const import Platform as Platform, UnitOfTemperature as UnitOfTemperature
3
3
  from typing import Final
4
4
 
5
5
  DOMAIN: str
6
6
  DISCOVERY_TIMEOUT: int
7
7
  CONNECT_TIMEOUT: int
8
+ PRIMARY_STATE_ID: str
8
9
  ATTR_CURRENT_A: Final[str]
9
10
  ATTR_CURRENT_POWER_W: Final[str]
10
11
  ATTR_TODAY_ENERGY_KWH: Final[str]
11
12
  ATTR_TOTAL_ENERGY_KWH: Final[str]
12
13
  CONF_DEVICE_CONFIG: Final[str]
14
+ CONF_CREDENTIALS_HASH: Final[str]
15
+ CONF_CONNECTION_TYPE: Final[str]
13
16
  PLATFORMS: Final[Incomplete]
17
+ UNIT_MAPPING: Incomplete
@@ -5,7 +5,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant
5
5
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
6
6
  from homeassistant.helpers.debounce import Debouncer as Debouncer
7
7
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
8
- from kasa import SmartDevice as SmartDevice
8
+ from kasa import Device as Device
9
9
 
10
10
  _LOGGER: Incomplete
11
11
  REQUEST_REFRESH_DELAY: float
@@ -13,5 +13,5 @@ REQUEST_REFRESH_DELAY: float
13
13
  class TPLinkDataUpdateCoordinator(DataUpdateCoordinator[None]):
14
14
  config_entry: config_entries.ConfigEntry
15
15
  device: Incomplete
16
- def __init__(self, hass: HomeAssistant, device: SmartDevice, update_interval: timedelta) -> None: ...
16
+ def __init__(self, hass: HomeAssistant, device: Device, update_interval: timedelta) -> None: ...
17
17
  async def _async_update_data(self) -> None: ...
@@ -1,12 +1,10 @@
1
- from .const import DOMAIN as DOMAIN
2
- from .models import TPLinkData as TPLinkData
1
+ from . import TPLinkConfigEntry as TPLinkConfigEntry
3
2
  from _typeshed import Incomplete
4
3
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
4
  from homeassistant.core import HomeAssistant as HomeAssistant
7
5
  from homeassistant.helpers.device_registry import format_mac as format_mac
8
6
  from typing import Any
9
7
 
10
8
  TO_REDACT: Incomplete
11
9
 
12
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: ConfigEntry) -> dict[str, Any]: ...
10
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: TPLinkConfigEntry) -> dict[str, Any]: ...