homeassistant-stubs 2024.3.2__py3-none-any.whl → 2024.4.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 (871) hide show
  1. homeassistant-stubs/auth/__init__.pyi +5 -4
  2. homeassistant-stubs/auth/auth_store.pyi +3 -1
  3. homeassistant-stubs/auth/mfa_modules/__init__.pyi +1 -0
  4. homeassistant-stubs/auth/models.pyi +2 -0
  5. homeassistant-stubs/auth/providers/__init__.pyi +8 -7
  6. homeassistant-stubs/auth/providers/command_line.pyi +2 -3
  7. homeassistant-stubs/auth/providers/homeassistant.pyi +2 -3
  8. homeassistant-stubs/auth/providers/insecure_example.pyi +2 -3
  9. homeassistant-stubs/auth/providers/legacy_api_password.pyi +2 -3
  10. homeassistant-stubs/auth/providers/trusted_networks.pyi +2 -3
  11. homeassistant-stubs/bootstrap.pyi +8 -4
  12. homeassistant-stubs/components/__init__.pyi +1 -0
  13. homeassistant-stubs/components/abode/alarm_control_panel.pyi +4 -5
  14. homeassistant-stubs/components/abode/binary_sensor.pyi +2 -2
  15. homeassistant-stubs/components/abode/camera.pyi +2 -2
  16. homeassistant-stubs/components/abode/config_flow.pyi +9 -10
  17. homeassistant-stubs/components/abode/cover.pyi +2 -2
  18. homeassistant-stubs/components/abode/light.pyi +2 -2
  19. homeassistant-stubs/components/abode/lock.pyi +2 -2
  20. homeassistant-stubs/components/abode/sensor.pyi +8 -12
  21. homeassistant-stubs/components/abode/switch.pyi +2 -2
  22. homeassistant-stubs/components/accuweather/config_flow.pyi +3 -5
  23. homeassistant-stubs/components/accuweather/sensor.pyi +3 -7
  24. homeassistant-stubs/components/accuweather/weather.pyi +0 -2
  25. homeassistant-stubs/components/acmeda/config_flow.pyi +4 -5
  26. homeassistant-stubs/components/adax/config_flow.pyi +5 -6
  27. homeassistant-stubs/components/adguard/config_flow.pyi +6 -7
  28. homeassistant-stubs/components/aftership/config_flow.pyi +3 -6
  29. homeassistant-stubs/components/aftership/sensor.pyi +3 -8
  30. homeassistant-stubs/components/airly/config_flow.pyi +3 -4
  31. homeassistant-stubs/components/airnow/config_flow.pyi +4 -6
  32. homeassistant-stubs/components/airnow/sensor.pyi +3 -7
  33. homeassistant-stubs/components/airq/config_flow.pyi +3 -4
  34. homeassistant-stubs/components/airq/sensor.pyi +3 -7
  35. homeassistant-stubs/components/airthings/config_flow.pyi +3 -4
  36. homeassistant-stubs/components/airthings_ble/config_flow.pyi +4 -5
  37. homeassistant-stubs/components/airtouch5/config_flow.pyi +1 -2
  38. homeassistant-stubs/components/airvisual/config_flow.pyi +10 -12
  39. homeassistant-stubs/components/airvisual_pro/config_flow.pyi +6 -8
  40. homeassistant-stubs/components/airzone/config_flow.pyi +6 -6
  41. homeassistant-stubs/components/airzone/select.pyi +3 -7
  42. homeassistant-stubs/components/airzone_cloud/climate.pyi +10 -1
  43. homeassistant-stubs/components/airzone_cloud/config_flow.pyi +4 -5
  44. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +6 -7
  45. homeassistant-stubs/components/aladdin_connect/sensor.pyi +3 -7
  46. homeassistant-stubs/components/alert/__init__.pyi +3 -3
  47. homeassistant-stubs/components/alexa/smart_home.pyi +1 -2
  48. homeassistant-stubs/components/amberelectric/config_flow.pyi +4 -5
  49. homeassistant-stubs/components/ambiclimate/config_flow.pyi +6 -7
  50. homeassistant-stubs/components/ambient_station/config_flow.pyi +4 -5
  51. homeassistant-stubs/components/amcrest/camera.pyi +1 -1
  52. homeassistant-stubs/components/analytics_insights/config_flow.pyi +3 -4
  53. homeassistant-stubs/components/android_ip_webcam/config_flow.pyi +3 -4
  54. homeassistant-stubs/components/android_ip_webcam/sensor.pyi +3 -7
  55. homeassistant-stubs/components/android_ip_webcam/switch.pyi +3 -7
  56. homeassistant-stubs/components/androidtv/config_flow.pyi +10 -11
  57. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +9 -10
  58. homeassistant-stubs/components/anova/config_flow.pyi +2 -3
  59. homeassistant-stubs/components/anthemav/config_flow.pyi +2 -3
  60. homeassistant-stubs/components/apache_kafka/__init__.pyi +3 -3
  61. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +3 -1
  62. homeassistant-stubs/components/apcupsd/config_flow.pyi +4 -5
  63. homeassistant-stubs/components/apcupsd/const.pyi +1 -0
  64. homeassistant-stubs/components/apcupsd/coordinator.pyi +11 -10
  65. homeassistant-stubs/components/apcupsd/diagnostics.pyi +11 -0
  66. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -1
  67. homeassistant-stubs/components/api/__init__.pyi +1 -1
  68. homeassistant-stubs/components/apple_tv/__init__.pyi +3 -0
  69. homeassistant-stubs/components/apple_tv/config_flow.pyi +18 -18
  70. homeassistant-stubs/components/aranet/config_flow.pyi +6 -6
  71. homeassistant-stubs/components/arcam_fmj/config_flow.pyi +7 -8
  72. homeassistant-stubs/components/aseko_pool_live/__init__.pyi +3 -2
  73. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +3 -7
  74. homeassistant-stubs/components/aseko_pool_live/config_flow.pyi +10 -5
  75. homeassistant-stubs/components/asuswrt/config_flow.pyi +5 -6
  76. homeassistant-stubs/components/auth/__init__.pyi +1 -0
  77. homeassistant-stubs/components/auth/login_flow.pyi +4 -3
  78. homeassistant-stubs/components/automation/__init__.pyi +19 -2
  79. homeassistant-stubs/components/awair/config_flow.pyi +9 -10
  80. homeassistant-stubs/components/awair/sensor.pyi +3 -7
  81. homeassistant-stubs/components/axis/__init__.pyi +1 -1
  82. homeassistant-stubs/components/axis/binary_sensor.pyi +26 -14
  83. homeassistant-stubs/components/axis/camera.pyi +2 -2
  84. homeassistant-stubs/components/axis/config_flow.pyi +20 -18
  85. homeassistant-stubs/components/axis/const.pyi +0 -1
  86. homeassistant-stubs/components/axis/diagnostics.pyi +1 -1
  87. homeassistant-stubs/components/axis/entity.pyi +16 -8
  88. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  89. homeassistant-stubs/components/axis/hub/api.pyi +10 -0
  90. homeassistant-stubs/components/axis/hub/config.pyi +21 -0
  91. homeassistant-stubs/components/axis/hub/entity_loader.pyi +15 -0
  92. homeassistant-stubs/components/axis/hub/hub.pyi +41 -0
  93. homeassistant-stubs/components/axis/light.pyi +17 -8
  94. homeassistant-stubs/components/axis/switch.pyi +13 -5
  95. homeassistant-stubs/components/backup/http.pyi +1 -1
  96. homeassistant-stubs/components/baf/binary_sensor.pyi +3 -7
  97. homeassistant-stubs/components/baf/config_flow.pyi +5 -6
  98. homeassistant-stubs/components/baf/number.pyi +3 -7
  99. homeassistant-stubs/components/baf/sensor.pyi +3 -7
  100. homeassistant-stubs/components/baf/switch.pyi +3 -7
  101. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +5 -6
  102. homeassistant-stubs/components/bang_olufsen/const.pyi +22 -22
  103. homeassistant-stubs/components/bang_olufsen/entity.pyi +1 -4
  104. homeassistant-stubs/components/bang_olufsen/media_player.pyi +4 -5
  105. homeassistant-stubs/components/bang_olufsen/websocket.pyi +1 -1
  106. homeassistant-stubs/components/bayesian/binary_sensor.pyi +2 -2
  107. homeassistant-stubs/components/blue_current/__init__.pyi +10 -12
  108. homeassistant-stubs/components/blue_current/config_flow.pyi +5 -6
  109. homeassistant-stubs/components/bluetooth/config_flow.pyi +5 -6
  110. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +3 -2
  111. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +3 -7
  112. homeassistant-stubs/components/bmw_connected_drive/button.pyi +3 -7
  113. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +14 -14
  114. homeassistant-stubs/components/bmw_connected_drive/number.pyi +3 -7
  115. homeassistant-stubs/components/bmw_connected_drive/select.pyi +3 -7
  116. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +3 -7
  117. homeassistant-stubs/components/bond/button.pyi +4 -8
  118. homeassistant-stubs/components/bond/config_flow.pyi +7 -8
  119. homeassistant-stubs/components/bond/light.pyi +1 -1
  120. homeassistant-stubs/components/braviatv/button.pyi +3 -7
  121. homeassistant-stubs/components/braviatv/config_flow.pyi +11 -13
  122. homeassistant-stubs/components/brother/config_flow.pyi +7 -7
  123. homeassistant-stubs/components/brother/sensor.pyi +3 -7
  124. homeassistant-stubs/components/bthome/__init__.pyi +3 -2
  125. homeassistant-stubs/components/bthome/config_flow.pyi +7 -8
  126. homeassistant-stubs/components/bthome/logbook.pyi +2 -3
  127. homeassistant-stubs/components/canary/config_flow.pyi +4 -5
  128. homeassistant-stubs/components/cert_expiry/config_flow.pyi +4 -5
  129. homeassistant-stubs/components/cert_expiry/helper.pyi +1 -2
  130. homeassistant-stubs/components/climate/__init__.pyi +10 -7
  131. homeassistant-stubs/components/cloud/__init__.pyi +1 -1
  132. homeassistant-stubs/components/cloud/config_flow.pyi +2 -3
  133. homeassistant-stubs/components/cloud/http_api.pyi +3 -1
  134. homeassistant-stubs/components/cloud/prefs.pyi +1 -0
  135. homeassistant-stubs/components/cloud/repairs.pyi +1 -1
  136. homeassistant-stubs/components/cloud/tts.pyi +3 -3
  137. homeassistant-stubs/components/co2signal/config_flow.pyi +7 -9
  138. homeassistant-stubs/components/command_line/cover.pyi +3 -3
  139. homeassistant-stubs/components/command_line/sensor.pyi +2 -2
  140. homeassistant-stubs/components/command_line/switch.pyi +4 -4
  141. homeassistant-stubs/components/command_line/utils.pyi +3 -2
  142. homeassistant-stubs/components/config/__init__.pyi +3 -47
  143. homeassistant-stubs/components/config/automation.pyi +2 -1
  144. homeassistant-stubs/components/config/category_registry.pyi +12 -0
  145. homeassistant-stubs/components/config/config_entries.pyi +8 -6
  146. homeassistant-stubs/components/config/const.pyi +3 -0
  147. homeassistant-stubs/components/config/core.pyi +1 -1
  148. homeassistant-stubs/components/config/label_registry.pyi +3 -0
  149. homeassistant-stubs/components/config/scene.pyi +2 -1
  150. homeassistant-stubs/components/config/script.pyi +2 -1
  151. homeassistant-stubs/components/config/view.pyi +48 -0
  152. homeassistant-stubs/components/configurator/__init__.pyi +1 -1
  153. homeassistant-stubs/components/cpuspeed/config_flow.pyi +2 -3
  154. homeassistant-stubs/components/crownstone/config_flow.pyi +10 -11
  155. homeassistant-stubs/components/deconz/__init__.pyi +6 -7
  156. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  157. homeassistant-stubs/components/deconz/binary_sensor.pyi +2 -4
  158. homeassistant-stubs/components/deconz/button.pyi +2 -2
  159. homeassistant-stubs/components/deconz/climate.pyi +2 -2
  160. homeassistant-stubs/components/deconz/config_flow.pyi +14 -16
  161. homeassistant-stubs/components/deconz/cover.pyi +2 -2
  162. homeassistant-stubs/components/deconz/deconz_device.pyi +5 -5
  163. homeassistant-stubs/components/deconz/deconz_event.pyi +4 -4
  164. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -1
  165. homeassistant-stubs/components/deconz/diagnostics.pyi +1 -1
  166. homeassistant-stubs/components/deconz/fan.pyi +2 -2
  167. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  168. homeassistant-stubs/components/deconz/hub/api.pyi +9 -0
  169. homeassistant-stubs/components/deconz/hub/config.pyi +18 -0
  170. homeassistant-stubs/components/deconz/{gateway.pyi → hub/hub.pyi} +10 -19
  171. homeassistant-stubs/components/deconz/light.pyi +3 -3
  172. homeassistant-stubs/components/deconz/lock.pyi +1 -1
  173. homeassistant-stubs/components/deconz/number.pyi +2 -4
  174. homeassistant-stubs/components/deconz/scene.pyi +1 -1
  175. homeassistant-stubs/components/deconz/select.pyi +1 -1
  176. homeassistant-stubs/components/deconz/sensor.pyi +4 -6
  177. homeassistant-stubs/components/deconz/services.pyi +5 -5
  178. homeassistant-stubs/components/deconz/siren.pyi +1 -1
  179. homeassistant-stubs/components/deconz/switch.pyi +1 -1
  180. homeassistant-stubs/components/demo/climate.pyi +3 -8
  181. homeassistant-stubs/components/demo/config_flow.pyi +10 -11
  182. homeassistant-stubs/components/demo/humidifier.pyi +1 -1
  183. homeassistant-stubs/components/derivative/sensor.pyi +2 -2
  184. homeassistant-stubs/components/device_tracker/const.pyi +2 -1
  185. homeassistant-stubs/components/device_tracker/legacy.pyi +6 -2
  186. homeassistant-stubs/components/devolo_home_control/config_flow.pyi +9 -11
  187. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +3 -7
  188. homeassistant-stubs/components/devolo_home_network/button.pyi +3 -7
  189. homeassistant-stubs/components/devolo_home_network/config_flow.pyi +9 -9
  190. homeassistant-stubs/components/devolo_home_network/image.pyi +3 -7
  191. homeassistant-stubs/components/devolo_home_network/sensor.pyi +3 -7
  192. homeassistant-stubs/components/devolo_home_network/switch.pyi +3 -7
  193. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -7
  194. homeassistant-stubs/components/dhcp/__init__.pyi +4 -8
  195. homeassistant-stubs/components/discovergy/config_flow.pyi +5 -7
  196. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +13 -14
  197. homeassistant-stubs/components/dlna_dmr/media_player.pyi +4 -2
  198. homeassistant-stubs/components/dlna_dms/config_flow.pyi +7 -7
  199. homeassistant-stubs/components/dnsip/config_flow.pyi +6 -9
  200. homeassistant-stubs/components/doorbird/button.pyi +3 -7
  201. homeassistant-stubs/components/doorbird/config_flow.pyi +12 -12
  202. homeassistant-stubs/components/doorbird/view.pyi +1 -2
  203. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +3 -7
  204. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +9 -10
  205. homeassistant-stubs/components/downloader/__init__.pyi +7 -12
  206. homeassistant-stubs/components/downloader/config_flow.pyi +12 -0
  207. homeassistant-stubs/components/downloader/const.pyi +13 -0
  208. homeassistant-stubs/components/dsmr/config_flow.pyi +14 -15
  209. homeassistant-stubs/components/dunehd/config_flow.pyi +6 -6
  210. homeassistant-stubs/components/duotecno/config_flow.pyi +3 -4
  211. homeassistant-stubs/components/easyenergy/config_flow.pyi +2 -3
  212. homeassistant-stubs/components/easyenergy/sensor.pyi +3 -7
  213. homeassistant-stubs/components/ecovacs/config_flow.pyi +5 -5
  214. homeassistant-stubs/components/ecovacs/event.pyi +19 -0
  215. homeassistant-stubs/components/ecowitt/config_flow.pyi +3 -4
  216. homeassistant-stubs/components/efergy/config_flow.pyi +4 -5
  217. homeassistant-stubs/components/electrasmart/config_flow.pyi +8 -9
  218. homeassistant-stubs/components/electric_kiwi/config_flow.pyi +4 -5
  219. homeassistant-stubs/components/electric_kiwi/sensor.pyi +6 -14
  220. homeassistant-stubs/components/elgato/config_flow.pyi +6 -7
  221. homeassistant-stubs/components/elkm1/config_flow.pyi +13 -13
  222. homeassistant-stubs/components/elkm1/sensor.pyi +2 -2
  223. homeassistant-stubs/components/emulated_hue/__init__.pyi +2 -1
  224. homeassistant-stubs/components/emulated_hue/config.pyi +3 -3
  225. homeassistant-stubs/components/emulated_hue/hue_api.pyi +2 -3
  226. homeassistant-stubs/components/energy/sensor.pyi +5 -1
  227. homeassistant-stubs/components/energyzero/config_flow.pyi +2 -3
  228. homeassistant-stubs/components/energyzero/sensor.pyi +3 -7
  229. homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +6 -14
  230. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +5 -6
  231. homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -0
  232. homeassistant-stubs/components/enphase_envoy/number.pyi +6 -14
  233. homeassistant-stubs/components/enphase_envoy/select.pyi +6 -14
  234. homeassistant-stubs/components/enphase_envoy/sensor.pyi +39 -53
  235. homeassistant-stubs/components/enphase_envoy/switch.pyi +9 -21
  236. homeassistant-stubs/components/esphome/alarm_control_panel.pyi +1 -1
  237. homeassistant-stubs/components/esphome/button.pyi +1 -1
  238. homeassistant-stubs/components/esphome/climate.pyi +1 -1
  239. homeassistant-stubs/components/esphome/config_flow.pyi +15 -16
  240. homeassistant-stubs/components/esphome/cover.pyi +1 -1
  241. homeassistant-stubs/components/esphome/date.pyi +14 -0
  242. homeassistant-stubs/components/esphome/entity.pyi +5 -3
  243. homeassistant-stubs/components/esphome/entry_data.pyi +15 -14
  244. homeassistant-stubs/components/esphome/fan.pyi +1 -1
  245. homeassistant-stubs/components/esphome/light.pyi +1 -1
  246. homeassistant-stubs/components/esphome/lock.pyi +1 -1
  247. homeassistant-stubs/components/esphome/manager.pyi +3 -3
  248. homeassistant-stubs/components/esphome/media_player.pyi +1 -1
  249. homeassistant-stubs/components/esphome/number.pyi +1 -1
  250. homeassistant-stubs/components/esphome/select.pyi +1 -1
  251. homeassistant-stubs/components/esphome/switch.pyi +1 -1
  252. homeassistant-stubs/components/esphome/text.pyi +1 -1
  253. homeassistant-stubs/components/esphome/time.pyi +14 -0
  254. homeassistant-stubs/components/esphome/update.pyi +1 -1
  255. homeassistant-stubs/components/evil_genius_labs/config_flow.pyi +3 -4
  256. homeassistant-stubs/components/faa_delays/config_flow.pyi +3 -4
  257. homeassistant-stubs/components/fastdotcom/__init__.pyi +1 -1
  258. homeassistant-stubs/components/fastdotcom/config_flow.pyi +3 -4
  259. homeassistant-stubs/components/fastdotcom/coordinator.pyi +1 -1
  260. homeassistant-stubs/components/fastdotcom/diagnostics.pyi +7 -0
  261. homeassistant-stubs/components/fastdotcom/sensor.pyi +3 -3
  262. homeassistant-stubs/components/fastdotcom/services.pyi +1 -1
  263. homeassistant-stubs/components/file_upload/__init__.pyi +1 -1
  264. homeassistant-stubs/components/filesize/__init__.pyi +0 -2
  265. homeassistant-stubs/components/filesize/config_flow.pyi +2 -3
  266. homeassistant-stubs/components/filesize/coordinator.pyi +6 -1
  267. homeassistant-stubs/components/filter/sensor.pyi +3 -3
  268. homeassistant-stubs/components/fitbit/config_flow.pyi +6 -7
  269. homeassistant-stubs/components/flexit_bacnet/config_flow.pyi +3 -4
  270. homeassistant-stubs/components/flux_led/config_flow.pyi +14 -14
  271. homeassistant-stubs/components/flux_led/discovery.pyi +1 -0
  272. homeassistant-stubs/components/flux_led/number.pyi +0 -5
  273. homeassistant-stubs/components/flux_led/select.pyi +0 -3
  274. homeassistant-stubs/components/flux_led/sensor.pyi +0 -1
  275. homeassistant-stubs/components/flux_led/switch.pyi +0 -4
  276. homeassistant-stubs/components/forecast_solar/config_flow.pyi +3 -4
  277. homeassistant-stubs/components/fritz/button.pyi +3 -7
  278. homeassistant-stubs/components/fritz/common.pyi +1 -0
  279. homeassistant-stubs/components/fritz/config_flow.pyi +11 -12
  280. homeassistant-stubs/components/fritzbox/config_flow.pyi +7 -8
  281. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +9 -10
  282. homeassistant-stubs/components/fronius/config_flow.pyi +5 -6
  283. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  284. homeassistant-stubs/components/fully_kiosk/button.pyi +3 -7
  285. homeassistant-stubs/components/fully_kiosk/config_flow.pyi +7 -8
  286. homeassistant-stubs/components/fully_kiosk/switch.pyi +3 -7
  287. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +5 -5
  288. homeassistant-stubs/components/generic_thermostat/climate.pyi +3 -3
  289. homeassistant-stubs/components/geo_location/trigger.pyi +2 -2
  290. homeassistant-stubs/components/geocaching/config_flow.pyi +4 -4
  291. homeassistant-stubs/components/geocaching/sensor.pyi +3 -7
  292. homeassistant-stubs/components/gios/config_flow.pyi +3 -4
  293. homeassistant-stubs/components/glances/config_flow.pyi +6 -7
  294. homeassistant-stubs/components/glances/sensor.pyi +3 -7
  295. homeassistant-stubs/components/goalzero/config_flow.pyi +5 -6
  296. homeassistant-stubs/components/google/config_flow.pyi +11 -12
  297. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +8 -10
  298. homeassistant-stubs/components/google_sheets/config_flow.pyi +4 -5
  299. homeassistant-stubs/components/gpsd/config_flow.pyi +4 -5
  300. homeassistant-stubs/components/group/__init__.pyi +7 -102
  301. homeassistant-stubs/components/group/binary_sensor.pyi +1 -1
  302. homeassistant-stubs/components/group/config_flow.pyi +2 -2
  303. homeassistant-stubs/components/group/const.pyi +12 -0
  304. homeassistant-stubs/components/group/cover.pyi +1 -1
  305. homeassistant-stubs/components/group/entity.pyi +81 -0
  306. homeassistant-stubs/components/group/event.pyi +3 -3
  307. homeassistant-stubs/components/group/fan.pyi +1 -1
  308. homeassistant-stubs/components/group/light.pyi +1 -1
  309. homeassistant-stubs/components/group/lock.pyi +1 -1
  310. homeassistant-stubs/components/group/media_player.pyi +3 -3
  311. homeassistant-stubs/components/group/registry.pyi +23 -0
  312. homeassistant-stubs/components/group/sensor.pyi +1 -1
  313. homeassistant-stubs/components/group/switch.pyi +1 -1
  314. homeassistant-stubs/components/guardian/config_flow.pyi +7 -8
  315. homeassistant-stubs/components/hardkernel/config_flow.pyi +2 -3
  316. homeassistant-stubs/components/here_travel_time/__init__.pyi +1 -0
  317. homeassistant-stubs/components/here_travel_time/config_flow.pyi +17 -18
  318. homeassistant-stubs/components/here_travel_time/sensor.pyi +0 -1
  319. homeassistant-stubs/components/history/__init__.pyi +1 -1
  320. homeassistant-stubs/components/history/websocket_api.pyi +2 -2
  321. homeassistant-stubs/components/history_stats/coordinator.pyi +2 -3
  322. homeassistant-stubs/components/history_stats/data.pyi +2 -3
  323. homeassistant-stubs/components/holiday/config_flow.pyi +7 -5
  324. homeassistant-stubs/components/homeassistant/trigger.pyi +2 -1
  325. homeassistant-stubs/components/homeassistant/triggers/event.pyi +5 -1
  326. homeassistant-stubs/components/homeassistant/triggers/homeassistant.pyi +1 -0
  327. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +2 -2
  328. homeassistant-stubs/components/homeassistant/triggers/state.pyi +2 -2
  329. homeassistant-stubs/components/homeassistant/triggers/time.pyi +2 -2
  330. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +4 -5
  331. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +29 -29
  332. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +1 -1
  333. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +6 -5
  334. homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +18 -0
  335. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -1
  336. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -0
  337. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +9 -10
  338. homeassistant-stubs/components/homekit/__init__.pyi +9 -6
  339. homeassistant-stubs/components/homekit/accessories.pyi +5 -6
  340. homeassistant-stubs/components/homekit/config_flow.pyi +16 -18
  341. homeassistant-stubs/components/homekit/const.pyi +3 -0
  342. homeassistant-stubs/components/homekit/type_cameras.pyi +3 -4
  343. homeassistant-stubs/components/homekit/type_covers.pyi +2 -3
  344. homeassistant-stubs/components/homekit/type_humidifiers.pyi +2 -3
  345. homeassistant-stubs/components/homekit/util.pyi +2 -3
  346. homeassistant-stubs/components/homekit_controller/__init__.pyi +1 -0
  347. homeassistant-stubs/components/homekit_controller/config_flow.pyi +13 -13
  348. homeassistant-stubs/components/homekit_controller/select.pyi +3 -7
  349. homeassistant-stubs/components/homewizard/config_flow.pyi +7 -7
  350. homeassistant-stubs/components/homewizard/coordinator.pyi +0 -1
  351. homeassistant-stubs/components/homeworks/__init__.pyi +63 -0
  352. homeassistant-stubs/components/homeworks/binary_sensor.pyi +25 -0
  353. homeassistant-stubs/components/homeworks/button.pyi +18 -0
  354. homeassistant-stubs/components/homeworks/config_flow.pyi +61 -0
  355. homeassistant-stubs/components/homeworks/const.pyi +14 -0
  356. homeassistant-stubs/components/homeworks/light.pyi +34 -0
  357. homeassistant-stubs/components/http/__init__.pyi +4 -3
  358. homeassistant-stubs/components/http/ban.pyi +4 -3
  359. homeassistant-stubs/components/http/const.pyi +1 -2
  360. homeassistant-stubs/components/http/cors.pyi +1 -0
  361. homeassistant-stubs/components/http/static.pyi +0 -1
  362. homeassistant-stubs/components/huawei_lte/config_flow.pyi +12 -13
  363. homeassistant-stubs/components/huawei_lte/select.pyi +3 -7
  364. homeassistant-stubs/components/humidifier/__init__.pyi +8 -8
  365. homeassistant-stubs/components/hydrawise/config_flow.pyi +8 -8
  366. homeassistant-stubs/components/hyperion/config_flow.pyi +12 -13
  367. homeassistant-stubs/components/hyperion/const.pyi +2 -0
  368. homeassistant-stubs/components/hyperion/sensor.pyi +39 -0
  369. homeassistant-stubs/components/ibeacon/config_flow.pyi +7 -8
  370. homeassistant-stubs/components/ibeacon/device_tracker.pyi +1 -2
  371. homeassistant-stubs/components/ibeacon/sensor.pyi +3 -7
  372. homeassistant-stubs/components/idasen_desk/button.pyi +4 -8
  373. homeassistant-stubs/components/idasen_desk/config_flow.pyi +4 -5
  374. homeassistant-stubs/components/idasen_desk/cover.pyi +3 -3
  375. homeassistant-stubs/components/idasen_desk/sensor.pyi +3 -7
  376. homeassistant-stubs/components/image/__init__.pyi +2 -2
  377. homeassistant-stubs/components/image_processing/__init__.pyi +1 -1
  378. homeassistant-stubs/components/image_upload/__init__.pyi +1 -1
  379. homeassistant-stubs/components/imap/config_flow.pyi +10 -10
  380. homeassistant-stubs/components/integration/sensor.pyi +36 -5
  381. homeassistant-stubs/components/ios/__init__.pyi +1 -1
  382. homeassistant-stubs/components/ipp/config_flow.pyi +5 -6
  383. homeassistant-stubs/components/ipp/sensor.pyi +3 -7
  384. homeassistant-stubs/components/iqvia/config_flow.pyi +3 -4
  385. homeassistant-stubs/components/islamic_prayer_times/config_flow.pyi +7 -8
  386. homeassistant-stubs/components/isy994/config_flow.pyi +18 -17
  387. homeassistant-stubs/components/jellyfin/config_flow.pyi +5 -6
  388. homeassistant-stubs/components/jellyfin/sensor.pyi +3 -7
  389. homeassistant-stubs/components/jvc_projector/config_flow.pyi +4 -5
  390. homeassistant-stubs/components/jvc_projector/sensor.pyi +20 -0
  391. homeassistant-stubs/components/kaleidescape/config_flow.pyi +4 -5
  392. homeassistant-stubs/components/kaleidescape/sensor.pyi +3 -7
  393. homeassistant-stubs/components/knx/config_flow.pyi +18 -19
  394. homeassistant-stubs/components/knx/expose.pyi +3 -3
  395. homeassistant-stubs/components/kraken/config_flow.pyi +7 -8
  396. homeassistant-stubs/components/kraken/sensor.pyi +3 -7
  397. homeassistant-stubs/components/lacrosse_view/config_flow.pyi +5 -6
  398. homeassistant-stubs/components/lacrosse_view/sensor.pyi +3 -7
  399. homeassistant-stubs/components/lamarzocco/config_flow.pyi +16 -8
  400. homeassistant-stubs/components/lamarzocco/const.pyi +1 -0
  401. homeassistant-stubs/components/lamarzocco/coordinator.pyi +7 -2
  402. homeassistant-stubs/components/lametric/config_flow.pyi +11 -11
  403. homeassistant-stubs/components/laundrify/binary_sensor.pyi +1 -1
  404. homeassistant-stubs/components/laundrify/config_flow.pyi +5 -6
  405. homeassistant-stubs/components/lcn/config_flow.pyi +4 -5
  406. homeassistant-stubs/components/ld2410_ble/config_flow.pyi +4 -5
  407. homeassistant-stubs/components/led_ble/config_flow.pyi +4 -5
  408. homeassistant-stubs/components/lidarr/config_flow.pyi +4 -5
  409. homeassistant-stubs/components/lifx/config_flow.pyi +10 -11
  410. homeassistant-stubs/components/linear_garage_door/config_flow.pyi +5 -6
  411. homeassistant-stubs/components/litejet/config_flow.pyi +7 -8
  412. homeassistant-stubs/components/litterrobot/config_flow.pyi +5 -6
  413. homeassistant-stubs/components/litterrobot/switch.pyi +2 -5
  414. homeassistant-stubs/components/local_ip/config_flow.pyi +2 -3
  415. homeassistant-stubs/components/local_ip/sensor.pyi +1 -1
  416. homeassistant-stubs/components/local_todo/config_flow.pyi +3 -4
  417. homeassistant-stubs/components/logbook/helpers.pyi +1 -2
  418. homeassistant-stubs/components/logbook/rest_api.pyi +1 -1
  419. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -0
  420. homeassistant-stubs/components/lookin/config_flow.pyi +5 -6
  421. homeassistant-stubs/components/luftdaten/config_flow.pyi +4 -5
  422. homeassistant-stubs/components/map/__init__.pyi +6 -1
  423. homeassistant-stubs/components/matter/config_flow.pyi +14 -14
  424. homeassistant-stubs/components/met_eireann/config_flow.pyi +3 -4
  425. homeassistant-stubs/components/met_eireann/weather.pyi +1 -5
  426. homeassistant-stubs/components/metoffice/config_flow.pyi +7 -6
  427. homeassistant-stubs/components/metoffice/weather.pyi +2 -5
  428. homeassistant-stubs/components/mikrotik/config_flow.pyi +11 -12
  429. homeassistant-stubs/components/min_max/sensor.pyi +3 -3
  430. homeassistant-stubs/components/minecraft_server/binary_sensor.pyi +2 -9
  431. homeassistant-stubs/components/minecraft_server/config_flow.pyi +3 -4
  432. homeassistant-stubs/components/minecraft_server/sensor.pyi +3 -16
  433. homeassistant-stubs/components/mjpeg/config_flow.pyi +3 -4
  434. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  435. homeassistant-stubs/components/modbus/base_platform.pyi +1 -3
  436. homeassistant-stubs/components/modbus/const.pyi +0 -2
  437. homeassistant-stubs/components/modbus/modbus.pyi +3 -5
  438. homeassistant-stubs/components/modbus/validators.pyi +7 -2
  439. homeassistant-stubs/components/modem_callerid/button.pyi +0 -1
  440. homeassistant-stubs/components/modem_callerid/config_flow.pyi +5 -6
  441. homeassistant-stubs/components/modem_callerid/const.pyi +0 -1
  442. homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
  443. homeassistant-stubs/components/moon/config_flow.pyi +2 -3
  444. homeassistant-stubs/components/moon/sensor.pyi +0 -2
  445. homeassistant-stubs/components/mopeka/config_flow.pyi +4 -5
  446. homeassistant-stubs/components/motionmount/config_flow.pyi +6 -7
  447. homeassistant-stubs/components/mqtt/__init__.pyi +2 -2
  448. homeassistant-stubs/components/mqtt/climate.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/config_flow.pyi +8 -9
  450. homeassistant-stubs/components/mqtt/const.pyi +0 -1
  451. homeassistant-stubs/components/mqtt/discovery.pyi +6 -4
  452. homeassistant-stubs/components/mqtt/event.pyi +2 -2
  453. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  454. homeassistant-stubs/components/mqtt/image.pyi +2 -2
  455. homeassistant-stubs/components/mqtt/light/schema_json.pyi +5 -2
  456. homeassistant-stubs/components/mqtt/mixins.pyi +7 -7
  457. homeassistant-stubs/components/mqtt/models.pyi +9 -3
  458. homeassistant-stubs/components/mqtt/sensor.pyi +4 -1
  459. homeassistant-stubs/components/mqtt/tag.pyi +3 -2
  460. homeassistant-stubs/components/mqtt/util.pyi +5 -1
  461. homeassistant-stubs/components/mysensors/config_flow.pyi +8 -10
  462. homeassistant-stubs/components/mysensors/gateway.pyi +1 -1
  463. homeassistant-stubs/components/myuplink/config_flow.pyi +4 -5
  464. homeassistant-stubs/components/myuplink/helpers.pyi +1 -0
  465. homeassistant-stubs/components/myuplink/number.pyi +1 -1
  466. homeassistant-stubs/components/myuplink/sensor.pyi +1 -1
  467. homeassistant-stubs/components/myuplink/switch.pyi +1 -1
  468. homeassistant-stubs/components/nam/config_flow.pyi +8 -9
  469. homeassistant-stubs/components/nam/sensor.pyi +3 -7
  470. homeassistant-stubs/components/nanoleaf/config_flow.pyi +12 -13
  471. homeassistant-stubs/components/nanoleaf/light.pyi +1 -1
  472. homeassistant-stubs/components/neato/config_flow.pyi +5 -6
  473. homeassistant-stubs/components/neato/vacuum.pyi +0 -1
  474. homeassistant-stubs/components/nest/config_flow.pyi +10 -11
  475. homeassistant-stubs/components/netatmo/config_flow.pyi +12 -13
  476. homeassistant-stubs/components/netatmo/sensor.pyi +3 -7
  477. homeassistant-stubs/components/network/network.pyi +1 -0
  478. homeassistant-stubs/components/nextdns/config_flow.pyi +4 -5
  479. homeassistant-stubs/components/nfandroidtv/config_flow.pyi +3 -4
  480. homeassistant-stubs/components/nightscout/config_flow.pyi +5 -5
  481. homeassistant-stubs/components/notify/legacy.pyi +1 -1
  482. homeassistant-stubs/components/notion/__init__.pyi +4 -29
  483. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -0
  484. homeassistant-stubs/components/notion/config_flow.pyi +5 -7
  485. homeassistant-stubs/components/notion/coordinator.pyi +44 -0
  486. homeassistant-stubs/components/notion/diagnostics.pyi +1 -2
  487. homeassistant-stubs/components/notion/sensor.pyi +1 -0
  488. homeassistant-stubs/components/nut/__init__.pyi +10 -9
  489. homeassistant-stubs/components/nut/config_flow.pyi +12 -12
  490. homeassistant-stubs/components/onboarding/__init__.pyi +16 -2
  491. homeassistant-stubs/components/onboarding/views.pyi +8 -6
  492. homeassistant-stubs/components/oncue/config_flow.pyi +3 -4
  493. homeassistant-stubs/components/onewire/config_flow.pyi +5 -6
  494. homeassistant-stubs/components/open_meteo/config_flow.pyi +2 -3
  495. homeassistant-stubs/components/open_meteo/weather.pyi +0 -2
  496. homeassistant-stubs/components/openexchangerates/config_flow.pyi +5 -5
  497. homeassistant-stubs/components/opensky/config_flow.pyi +3 -4
  498. homeassistant-stubs/components/opensky/sensor.pyi +1 -1
  499. homeassistant-stubs/components/openuv/config_flow.pyi +6 -8
  500. homeassistant-stubs/components/oralb/config_flow.pyi +4 -5
  501. homeassistant-stubs/components/otbr/config_flow.pyi +3 -4
  502. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +3 -7
  503. homeassistant-stubs/components/overkiz/binary_sensor.pyi +3 -7
  504. homeassistant-stubs/components/overkiz/climate.pyi +1 -0
  505. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heating_zone.pyi +2 -2
  506. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_zone_control_zone.pyi +30 -7
  507. homeassistant-stubs/components/overkiz/climate_entities/hitachi_air_to_air_heat_pump_ovp.pyi +1 -0
  508. homeassistant-stubs/components/overkiz/config_flow.pyi +10 -12
  509. homeassistant-stubs/components/overkiz/executor.pyi +1 -1
  510. homeassistant-stubs/components/overkiz/number.pyi +3 -7
  511. homeassistant-stubs/components/overkiz/select.pyi +3 -7
  512. homeassistant-stubs/components/overkiz/switch.pyi +3 -7
  513. homeassistant-stubs/components/p1_monitor/config_flow.pyi +2 -3
  514. homeassistant-stubs/components/peco/config_flow.pyi +4 -5
  515. homeassistant-stubs/components/peco/sensor.pyi +3 -7
  516. homeassistant-stubs/components/persistent_notification/__init__.pyi +2 -1
  517. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +3 -7
  518. homeassistant-stubs/components/pi_hole/config_flow.pyi +6 -7
  519. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -3
  520. homeassistant-stubs/components/ping/config_flow.pyi +8 -9
  521. homeassistant-stubs/components/ping/coordinator.pyi +1 -1
  522. homeassistant-stubs/components/ping/entity.pyi +12 -0
  523. homeassistant-stubs/components/ping/sensor.pyi +29 -0
  524. homeassistant-stubs/components/plugwise/config_flow.pyi +3 -4
  525. homeassistant-stubs/components/poolsense/config_flow.pyi +3 -4
  526. homeassistant-stubs/components/powerwall/config_flow.pyi +12 -11
  527. homeassistant-stubs/components/private_ble_device/config_flow.pyi +2 -3
  528. homeassistant-stubs/components/private_ble_device/device_tracker.pyi +1 -2
  529. homeassistant-stubs/components/private_ble_device/sensor.pyi +3 -7
  530. homeassistant-stubs/components/prometheus/__init__.pyi +4 -4
  531. homeassistant-stubs/components/proximity/config_flow.pyi +4 -5
  532. homeassistant-stubs/components/proximity/coordinator.pyi +3 -3
  533. homeassistant-stubs/components/prusalink/__init__.pyi +1 -1
  534. homeassistant-stubs/components/prusalink/config_flow.pyi +6 -5
  535. homeassistant-stubs/components/pure_energie/config_flow.pyi +4 -5
  536. homeassistant-stubs/components/pure_energie/sensor.pyi +3 -7
  537. homeassistant-stubs/components/purpleair/config_flow.pyi +14 -17
  538. homeassistant-stubs/components/pushbullet/config_flow.pyi +3 -4
  539. homeassistant-stubs/components/pvoutput/config_flow.pyi +4 -5
  540. homeassistant-stubs/components/qnap_qsw/button.pyi +3 -7
  541. homeassistant-stubs/components/qnap_qsw/config_flow.pyi +6 -6
  542. homeassistant-stubs/components/rabbitair/config_flow.pyi +2 -3
  543. homeassistant-stubs/components/radarr/config_flow.pyi +4 -5
  544. homeassistant-stubs/components/rainforest_raven/config_flow.pyi +5 -6
  545. homeassistant-stubs/components/rainmachine/config_flow.pyi +8 -10
  546. homeassistant-stubs/components/raspberry_pi/config_flow.pyi +2 -3
  547. homeassistant-stubs/components/rdw/config_flow.pyi +2 -3
  548. homeassistant-stubs/components/recollect_waste/calendar.pyi +1 -1
  549. homeassistant-stubs/components/recollect_waste/config_flow.pyi +7 -8
  550. homeassistant-stubs/components/recorder/const.pyi +1 -0
  551. homeassistant-stubs/components/recorder/core.pyi +4 -3
  552. homeassistant-stubs/components/recorder/db_schema.pyi +7 -0
  553. homeassistant-stubs/components/recorder/history/modern.pyi +7 -6
  554. homeassistant-stubs/components/recorder/migration.pyi +47 -5
  555. homeassistant-stubs/components/recorder/models/legacy.pyi +10 -0
  556. homeassistant-stubs/components/recorder/models/state.pyi +4 -0
  557. homeassistant-stubs/components/recorder/queries.pyi +2 -1
  558. homeassistant-stubs/components/recorder/table_managers/states.pyi +3 -0
  559. homeassistant-stubs/components/renault/binary_sensor.pyi +3 -11
  560. homeassistant-stubs/components/renault/button.pyi +3 -7
  561. homeassistant-stubs/components/renault/config_flow.pyi +8 -9
  562. homeassistant-stubs/components/renault/select.pyi +3 -13
  563. homeassistant-stubs/components/renault/sensor.pyi +3 -12
  564. homeassistant-stubs/components/rest/__init__.pyi +1 -0
  565. homeassistant-stubs/components/rfxtrx/config_flow.pyi +12 -12
  566. homeassistant-stubs/components/rfxtrx/event.pyi +22 -0
  567. homeassistant-stubs/components/rhasspy/config_flow.pyi +3 -4
  568. homeassistant-stubs/components/ridwell/calendar.pyi +1 -1
  569. homeassistant-stubs/components/ridwell/config_flow.pyi +6 -7
  570. homeassistant-stubs/components/rituals_perfume_genie/config_flow.pyi +3 -4
  571. homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +3 -7
  572. homeassistant-stubs/components/roku/binary_sensor.pyi +3 -7
  573. homeassistant-stubs/components/roku/config_flow.pyi +6 -7
  574. homeassistant-stubs/components/roku/select.pyi +6 -10
  575. homeassistant-stubs/components/roku/sensor.pyi +3 -7
  576. homeassistant-stubs/components/romy/config_flow.pyi +5 -6
  577. homeassistant-stubs/components/romy/entity.pyi +11 -0
  578. homeassistant-stubs/components/romy/vacuum.pyi +4 -11
  579. homeassistant-stubs/components/rpi_power/config_flow.pyi +2 -2
  580. homeassistant-stubs/components/rtsp_to_webrtc/config_flow.pyi +9 -10
  581. homeassistant-stubs/components/ruuvi_gateway/config_flow.pyi +5 -6
  582. homeassistant-stubs/components/ruuvitag_ble/config_flow.pyi +4 -5
  583. homeassistant-stubs/components/samsungtv/config_flow.pyi +17 -17
  584. homeassistant-stubs/components/samsungtv/media_player.pyi +1 -0
  585. homeassistant-stubs/components/scrape/config_flow.pyi +1 -0
  586. homeassistant-stubs/components/search/__init__.pyi +41 -20
  587. homeassistant-stubs/components/sensibo/binary_sensor.pyi +6 -14
  588. homeassistant-stubs/components/sensibo/button.pyi +3 -7
  589. homeassistant-stubs/components/sensibo/config_flow.pyi +6 -7
  590. homeassistant-stubs/components/sensibo/number.pyi +3 -7
  591. homeassistant-stubs/components/sensibo/select.pyi +3 -7
  592. homeassistant-stubs/components/sensibo/sensor.pyi +6 -14
  593. homeassistant-stubs/components/sensibo/switch.pyi +3 -7
  594. homeassistant-stubs/components/sensibo/update.pyi +3 -7
  595. homeassistant-stubs/components/sensirion_ble/config_flow.pyi +4 -5
  596. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +3 -7
  597. homeassistant-stubs/components/sfr_box/button.pyi +3 -7
  598. homeassistant-stubs/components/sfr_box/config_flow.pyi +6 -7
  599. homeassistant-stubs/components/sfr_box/sensor.pyi +3 -7
  600. homeassistant-stubs/components/shelly/__init__.pyi +2 -2
  601. homeassistant-stubs/components/shelly/binary_sensor.pyi +4 -4
  602. homeassistant-stubs/components/shelly/button.pyi +3 -7
  603. homeassistant-stubs/components/shelly/config_flow.pyi +15 -14
  604. homeassistant-stubs/components/shelly/const.pyi +3 -2
  605. homeassistant-stubs/components/shelly/coordinator.pyi +3 -1
  606. homeassistant-stubs/components/shelly/entity.pyi +4 -8
  607. homeassistant-stubs/components/shelly/event.pyi +2 -2
  608. homeassistant-stubs/components/shelly/light.pyi +30 -14
  609. homeassistant-stubs/components/shelly/number.pyi +1 -1
  610. homeassistant-stubs/components/shelly/sensor.pyi +4 -4
  611. homeassistant-stubs/components/shelly/switch.pyi +1 -1
  612. homeassistant-stubs/components/shelly/update.pyi +8 -15
  613. homeassistant-stubs/components/shelly/utils.pyi +9 -4
  614. homeassistant-stubs/components/shopping_list/config_flow.pyi +3 -4
  615. homeassistant-stubs/components/shopping_list/todo.pyi +0 -1
  616. homeassistant-stubs/components/simplepush/config_flow.pyi +3 -4
  617. homeassistant-stubs/components/simplisafe/config_flow.pyi +6 -8
  618. homeassistant-stubs/components/skybell/config_flow.pyi +5 -6
  619. homeassistant-stubs/components/skybell/sensor.pyi +3 -7
  620. homeassistant-stubs/components/slack/config_flow.pyi +3 -4
  621. homeassistant-stubs/components/sleepiq/button.pyi +3 -7
  622. homeassistant-stubs/components/sleepiq/config_flow.pyi +5 -6
  623. homeassistant-stubs/components/sleepiq/number.pyi +3 -7
  624. homeassistant-stubs/components/smhi/config_flow.pyi +6 -4
  625. homeassistant-stubs/components/smhi/weather.pyi +0 -2
  626. homeassistant-stubs/components/snooz/config_flow.pyi +8 -9
  627. homeassistant-stubs/components/sonarr/config_flow.pyi +6 -7
  628. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +4 -2
  629. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +7 -8
  630. homeassistant-stubs/components/speedtestdotnet/const.pyi +0 -1
  631. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +1 -2
  632. homeassistant-stubs/components/sql/config_flow.pyi +6 -7
  633. homeassistant-stubs/components/ssdp/__init__.pyi +9 -7
  634. homeassistant-stubs/components/starlink/binary_sensor.pyi +3 -7
  635. homeassistant-stubs/components/starlink/button.pyi +3 -7
  636. homeassistant-stubs/components/starlink/config_flow.pyi +2 -3
  637. homeassistant-stubs/components/starlink/coordinator.pyi +6 -1
  638. homeassistant-stubs/components/starlink/device_tracker.pyi +3 -7
  639. homeassistant-stubs/components/starlink/sensor.pyi +3 -7
  640. homeassistant-stubs/components/starlink/switch.pyi +3 -7
  641. homeassistant-stubs/components/starlink/time.pyi +34 -0
  642. homeassistant-stubs/components/statistics/sensor.pyi +2 -2
  643. homeassistant-stubs/components/steamist/config_flow.pyi +9 -10
  644. homeassistant-stubs/components/steamist/sensor.pyi +3 -7
  645. homeassistant-stubs/components/stookalert/config_flow.pyi +2 -3
  646. homeassistant-stubs/components/stream/__init__.pyi +1 -0
  647. homeassistant-stubs/components/stream/core.pyi +1 -1
  648. homeassistant-stubs/components/streamlabswater/config_flow.pyi +3 -4
  649. homeassistant-stubs/components/stt/legacy.pyi +1 -1
  650. homeassistant-stubs/components/suez_water/config_flow.pyi +3 -4
  651. homeassistant-stubs/components/sun/__init__.pyi +4 -64
  652. homeassistant-stubs/components/sun/config_flow.pyi +3 -4
  653. homeassistant-stubs/components/sun/const.pyi +11 -0
  654. homeassistant-stubs/components/sun/entity.pyi +64 -0
  655. homeassistant-stubs/components/sun/sensor.pyi +1 -1
  656. homeassistant-stubs/components/surepetcare/config_flow.pyi +5 -6
  657. homeassistant-stubs/components/switch/light.pyi +2 -2
  658. homeassistant-stubs/components/switchbee/config_flow.pyi +3 -4
  659. homeassistant-stubs/components/switchbot_cloud/config_flow.pyi +3 -4
  660. homeassistant-stubs/components/switcher_kis/button.pyi +3 -7
  661. homeassistant-stubs/components/switcher_kis/config_flow.pyi +5 -6
  662. homeassistant-stubs/components/switcher_kis/cover.pyi +1 -1
  663. homeassistant-stubs/components/switcher_kis/switch.pyi +2 -0
  664. homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +2 -2
  665. homeassistant-stubs/components/synology_dsm/button.pyi +3 -7
  666. homeassistant-stubs/components/synology_dsm/camera.pyi +2 -2
  667. homeassistant-stubs/components/synology_dsm/config_flow.pyi +14 -15
  668. homeassistant-stubs/components/synology_dsm/entity.pyi +3 -7
  669. homeassistant-stubs/components/synology_dsm/sensor.pyi +2 -2
  670. homeassistant-stubs/components/synology_dsm/switch.pyi +2 -2
  671. homeassistant-stubs/components/synology_dsm/update.pyi +2 -2
  672. homeassistant-stubs/components/system_log/__init__.pyi +3 -2
  673. homeassistant-stubs/components/systemmonitor/__init__.pyi +3 -1
  674. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +14 -12
  675. homeassistant-stubs/components/systemmonitor/config_flow.pyi +2 -2
  676. homeassistant-stubs/components/systemmonitor/const.pyi +1 -1
  677. homeassistant-stubs/components/systemmonitor/coordinator.pyi +29 -46
  678. homeassistant-stubs/components/systemmonitor/diagnostics.pyi +2 -2
  679. homeassistant-stubs/components/systemmonitor/sensor.pyi +23 -20
  680. homeassistant-stubs/components/systemmonitor/util.pyi +1 -1
  681. homeassistant-stubs/components/tailscale/config_flow.pyi +4 -5
  682. homeassistant-stubs/components/tailwind/config_flow.pyi +9 -9
  683. homeassistant-stubs/components/tami4/config_flow.pyi +4 -5
  684. homeassistant-stubs/components/tautulli/config_flow.pyi +4 -5
  685. homeassistant-stubs/components/tautulli/sensor.pyi +6 -14
  686. homeassistant-stubs/components/technove/config_flow.pyi +4 -5
  687. homeassistant-stubs/components/tedee/config_flow.pyi +7 -5
  688. homeassistant-stubs/components/threshold/binary_sensor.pyi +2 -2
  689. homeassistant-stubs/components/tibber/config_flow.pyi +3 -4
  690. homeassistant-stubs/components/tile/config_flow.pyi +7 -8
  691. homeassistant-stubs/components/tile/device_tracker.pyi +1 -2
  692. homeassistant-stubs/components/tilt_ble/config_flow.pyi +4 -5
  693. homeassistant-stubs/components/tolo/__init__.pyi +3 -3
  694. homeassistant-stubs/components/tolo/binary_sensor.pyi +0 -2
  695. homeassistant-stubs/components/tolo/button.pyi +0 -1
  696. homeassistant-stubs/components/tolo/climate.pyi +6 -5
  697. homeassistant-stubs/components/tolo/config_flow.pyi +5 -6
  698. homeassistant-stubs/components/tolo/const.pyi +11 -7
  699. homeassistant-stubs/components/tolo/number.pyi +6 -11
  700. homeassistant-stubs/components/tolo/select.pyi +19 -7
  701. homeassistant-stubs/components/tolo/sensor.pyi +6 -10
  702. homeassistant-stubs/components/tolo/switch.pyi +30 -0
  703. homeassistant-stubs/components/tplink/config_flow.pyi +14 -16
  704. homeassistant-stubs/components/tplink/switch.pyi +0 -1
  705. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +17 -20
  706. homeassistant-stubs/components/tplink_omada/config_flow.pyi +6 -7
  707. homeassistant-stubs/components/tplink_omada/entity.pyi +3 -3
  708. homeassistant-stubs/components/tplink_omada/switch.pyi +54 -17
  709. homeassistant-stubs/components/tplink_omada/update.pyi +1 -1
  710. homeassistant-stubs/components/tractive/__init__.pyi +1 -2
  711. homeassistant-stubs/components/tractive/config_flow.pyi +5 -6
  712. homeassistant-stubs/components/tractive/const.pyi +0 -1
  713. homeassistant-stubs/components/tractive/sensor.pyi +4 -8
  714. homeassistant-stubs/components/tractive/switch.pyi +3 -7
  715. homeassistant-stubs/components/tradfri/config_flow.pyi +6 -7
  716. homeassistant-stubs/components/tradfri/sensor.pyi +3 -7
  717. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +3 -7
  718. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +7 -8
  719. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +3 -7
  720. homeassistant-stubs/components/trafikverket_ferry/config_flow.pyi +6 -7
  721. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +3 -8
  722. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +9 -10
  723. homeassistant-stubs/components/trafikverket_train/sensor.pyi +3 -7
  724. homeassistant-stubs/components/trafikverket_weatherstation/config_flow.pyi +6 -7
  725. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +3 -7
  726. homeassistant-stubs/components/transmission/__init__.pyi +3 -2
  727. homeassistant-stubs/components/transmission/config_flow.pyi +13 -13
  728. homeassistant-stubs/components/transmission/const.pyi +2 -0
  729. homeassistant-stubs/components/transmission/switch.pyi +3 -7
  730. homeassistant-stubs/components/trend/binary_sensor.pyi +2 -2
  731. homeassistant-stubs/components/tts/__init__.pyi +1 -0
  732. homeassistant-stubs/components/tts/legacy.pyi +1 -1
  733. homeassistant-stubs/components/twentemilieu/calendar.pyi +1 -1
  734. homeassistant-stubs/components/twentemilieu/config_flow.pyi +3 -4
  735. homeassistant-stubs/components/unifi/button.pyi +4 -8
  736. homeassistant-stubs/components/unifi/config_flow.pyi +16 -17
  737. homeassistant-stubs/components/unifi/device_tracker.pyi +4 -8
  738. homeassistant-stubs/components/unifi/entity.pyi +12 -15
  739. homeassistant-stubs/components/unifi/hub/config.pyi +31 -0
  740. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +26 -0
  741. homeassistant-stubs/components/unifi/hub/hub.pyi +8 -28
  742. homeassistant-stubs/components/unifi/image.pyi +3 -8
  743. homeassistant-stubs/components/unifi/sensor.pyi +4 -10
  744. homeassistant-stubs/components/unifi/switch.pyi +6 -11
  745. homeassistant-stubs/components/unifi/update.pyi +4 -8
  746. homeassistant-stubs/components/unifiprotect/camera.pyi +5 -2
  747. homeassistant-stubs/components/unifiprotect/config_flow.pyi +16 -17
  748. homeassistant-stubs/components/unifiprotect/migrate.pyi +18 -4
  749. homeassistant-stubs/components/unifiprotect/repairs.pyi +17 -6
  750. homeassistant-stubs/components/unifiprotect/select.pyi +1 -0
  751. homeassistant-stubs/components/unifiprotect/services.pyi +8 -2
  752. homeassistant-stubs/components/unifiprotect/utils.pyi +2 -1
  753. homeassistant-stubs/components/upcloud/config_flow.pyi +8 -9
  754. homeassistant-stubs/components/uptime/config_flow.pyi +2 -3
  755. homeassistant-stubs/components/uptimerobot/config_flow.pyi +5 -6
  756. homeassistant-stubs/components/uptimerobot/sensor.pyi +0 -7
  757. homeassistant-stubs/components/uptimerobot/switch.pyi +1 -1
  758. homeassistant-stubs/components/usb/__init__.pyi +2 -1
  759. homeassistant-stubs/components/vacuum/__init__.pyi +1 -4
  760. homeassistant-stubs/components/vacuum/const.pyi +7 -0
  761. homeassistant-stubs/components/vacuum/group.pyi +1 -1
  762. homeassistant-stubs/components/vallox/binary_sensor.pyi +3 -7
  763. homeassistant-stubs/components/vallox/config_flow.pyi +3 -4
  764. homeassistant-stubs/components/vallox/date.pyi +22 -0
  765. homeassistant-stubs/components/vallox/number.pyi +3 -7
  766. homeassistant-stubs/components/vallox/switch.pyi +3 -7
  767. homeassistant-stubs/components/velbus/config_flow.pyi +6 -7
  768. homeassistant-stubs/components/vlc_telnet/config_flow.pyi +11 -11
  769. homeassistant-stubs/components/wallbox/config_flow.pyi +6 -6
  770. homeassistant-stubs/components/wallbox/number.pyi +3 -7
  771. homeassistant-stubs/components/waqi/__init__.pyi +0 -1
  772. homeassistant-stubs/components/waqi/config_flow.pyi +7 -11
  773. homeassistant-stubs/components/waqi/sensor.pyi +7 -22
  774. homeassistant-stubs/components/water_heater/const.pyi +6 -0
  775. homeassistant-stubs/components/water_heater/group.pyi +1 -1
  776. homeassistant-stubs/components/watttime/config_flow.pyi +10 -12
  777. homeassistant-stubs/components/weather/__init__.pyi +0 -13
  778. homeassistant-stubs/components/webhook/__init__.pyi +1 -2
  779. homeassistant-stubs/components/webostv/config_flow.pyi +8 -8
  780. homeassistant-stubs/components/websocket_api/commands.pyi +2 -3
  781. homeassistant-stubs/components/websocket_api/http.pyi +1 -1
  782. homeassistant-stubs/components/websocket_api/messages.pyi +4 -3
  783. homeassistant-stubs/components/wemo/__init__.pyi +3 -1
  784. homeassistant-stubs/components/wemo/config_flow.pyi +2 -3
  785. homeassistant-stubs/components/wemo/wemo_device.pyi +2 -1
  786. homeassistant-stubs/components/whois/config_flow.pyi +2 -3
  787. homeassistant-stubs/components/withings/__init__.pyi +13 -0
  788. homeassistant-stubs/components/withings/config_flow.pyi +4 -5
  789. homeassistant-stubs/components/wiz/config_flow.pyi +8 -8
  790. homeassistant-stubs/components/wled/config_flow.pyi +6 -10
  791. homeassistant-stubs/components/xiaomi_ble/config_flow.pyi +9 -10
  792. homeassistant-stubs/components/xiaomi_ble/const.pyi +9 -2
  793. homeassistant-stubs/components/xiaomi_ble/device_trigger.pyi +1 -1
  794. homeassistant-stubs/components/xiaomi_ble/event.pyi +1 -1
  795. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +5 -6
  796. homeassistant-stubs/components/yalexs_ble/config_flow.pyi +14 -14
  797. homeassistant-stubs/components/yalexs_ble/sensor.pyi +3 -7
  798. homeassistant-stubs/components/youtube/config_flow.pyi +6 -7
  799. homeassistant-stubs/components/youtube/sensor.pyi +3 -7
  800. homeassistant-stubs/components/zeroconf/__init__.pyi +1 -1
  801. homeassistant-stubs/components/zodiac/config_flow.pyi +2 -3
  802. homeassistant-stubs/components/zodiac/sensor.pyi +0 -2
  803. homeassistant-stubs/components/zone/__init__.pyi +2 -2
  804. homeassistant-stubs/components/zone/config_flow.pyi +2 -2
  805. homeassistant-stubs/components/zone/trigger.pyi +2 -2
  806. homeassistant-stubs/components/zwave_js/api.pyi +1 -2
  807. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +3 -7
  808. homeassistant-stubs/components/zwave_js/config_flow.pyi +39 -38
  809. homeassistant-stubs/components/zwave_js/humidifier.pyi +3 -7
  810. homeassistant-stubs/config.pyi +18 -3
  811. homeassistant-stubs/config_entries.pyi +52 -33
  812. homeassistant-stubs/const.pyi +11 -6
  813. homeassistant-stubs/core.pyi +62 -38
  814. homeassistant-stubs/data_entry_flow.pyi +38 -37
  815. homeassistant-stubs/exceptions.pyi +12 -5
  816. homeassistant-stubs/helpers/area_registry.pyi +7 -19
  817. homeassistant-stubs/helpers/category_registry.pyi +43 -0
  818. homeassistant-stubs/helpers/check_config.pyi +1 -1
  819. homeassistant-stubs/helpers/config_entry_flow.pyi +11 -12
  820. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +6 -7
  821. homeassistant-stubs/helpers/config_validation.pyi +8 -1
  822. homeassistant-stubs/helpers/data_entry_flow.pyi +9 -5
  823. homeassistant-stubs/helpers/debounce.pyi +2 -1
  824. homeassistant-stubs/helpers/device_registry.pyi +9 -5
  825. homeassistant-stubs/helpers/discovery.pyi +2 -1
  826. homeassistant-stubs/helpers/discovery_flow.pyi +2 -2
  827. homeassistant-stubs/helpers/dispatcher.pyi +2 -10
  828. homeassistant-stubs/helpers/entity.pyi +9 -7
  829. homeassistant-stubs/helpers/entity_component.pyi +2 -1
  830. homeassistant-stubs/helpers/entity_platform.pyi +2 -2
  831. homeassistant-stubs/helpers/entity_registry.pyi +14 -9
  832. homeassistant-stubs/helpers/event.pyi +30 -30
  833. homeassistant-stubs/helpers/floor_registry.pyi +12 -24
  834. homeassistant-stubs/helpers/frame.pyi +11 -3
  835. homeassistant-stubs/helpers/http.pyi +6 -3
  836. homeassistant-stubs/helpers/importlib.pyi +11 -0
  837. homeassistant-stubs/helpers/integration_platform.pyi +8 -6
  838. homeassistant-stubs/helpers/intent.pyi +6 -4
  839. homeassistant-stubs/helpers/issue_registry.pyi +2 -3
  840. homeassistant-stubs/helpers/label_registry.pyi +11 -23
  841. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +22 -0
  842. homeassistant-stubs/helpers/ratelimit.pyi +2 -3
  843. homeassistant-stubs/helpers/registry.pyi +15 -0
  844. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +15 -15
  845. homeassistant-stubs/helpers/script.pyi +22 -8
  846. homeassistant-stubs/helpers/selector.pyi +20 -0
  847. homeassistant-stubs/helpers/service.pyi +9 -4
  848. homeassistant-stubs/helpers/storage.pyi +28 -4
  849. homeassistant-stubs/helpers/system_info.pyi +1 -0
  850. homeassistant-stubs/helpers/template.pyi +18 -3
  851. homeassistant-stubs/helpers/translation.pyi +2 -1
  852. homeassistant-stubs/helpers/trigger.pyi +1 -0
  853. homeassistant-stubs/helpers/typing.pyi +2 -5
  854. homeassistant-stubs/helpers/update_coordinator.pyi +5 -5
  855. homeassistant-stubs/loader.pyi +24 -5
  856. homeassistant-stubs/setup.pyi +21 -4
  857. homeassistant-stubs/util/async_.pyi +2 -2
  858. homeassistant-stubs/util/percentage.pyi +1 -1
  859. homeassistant-stubs/util/signal_type.pyi +20 -0
  860. homeassistant-stubs/util/unit_conversion.pyi +10 -0
  861. {homeassistant_stubs-2024.3.2.dist-info → homeassistant_stubs-2024.4.0.dist-info}/METADATA +4 -5
  862. {homeassistant_stubs-2024.3.2.dist-info → homeassistant_stubs-2024.4.0.dist-info}/RECORD +864 -825
  863. homeassistant-stubs/components/axis/device.pyi +0 -64
  864. homeassistant-stubs/components/binary_sensor/group.pyi +0 -5
  865. homeassistant-stubs/components/fan/group.pyi +0 -5
  866. homeassistant-stubs/components/humidifier/group.pyi +0 -5
  867. homeassistant-stubs/components/light/group.pyi +0 -5
  868. homeassistant-stubs/components/remote/group.pyi +0 -5
  869. homeassistant-stubs/components/switch/group.pyi +0 -5
  870. {homeassistant_stubs-2024.3.2.dist-info → homeassistant_stubs-2024.4.0.dist-info}/LICENSE +0 -0
  871. {homeassistant_stubs-2024.3.2.dist-info → homeassistant_stubs-2024.4.0.dist-info}/WHEEL +0 -0
@@ -9,14 +9,10 @@ from homeassistant.core import HomeAssistant as HomeAssistant
9
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
10
  from rokuecp.models import Device as RokuDevice
11
11
 
12
- @dataclass(frozen=True)
13
- class RokuBinarySensorEntityDescriptionMixin:
12
+ @dataclass(frozen=True, kw_only=True)
13
+ class RokuBinarySensorEntityDescription(BinarySensorEntityDescription):
14
14
  value_fn: Callable[[RokuDevice], bool | None]
15
- def __init__(self, value_fn) -> None: ...
16
-
17
- @dataclass(frozen=True)
18
- class RokuBinarySensorEntityDescription(BinarySensorEntityDescription, RokuBinarySensorEntityDescriptionMixin):
19
- def __init__(self, value_fn, *, 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: ...
15
+ 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, value_fn) -> None: ...
20
16
 
21
17
  BINARY_SENSORS: tuple[RokuBinarySensorEntityDescription, ...]
22
18
 
@@ -1,10 +1,9 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components import ssdp as ssdp, zeroconf as zeroconf
4
- from homeassistant.config_entries import ConfigFlow as ConfigFlow
4
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
- from homeassistant.data_entry_flow import FlowResult as FlowResult
8
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
8
  from typing import Any
10
9
 
@@ -19,8 +18,8 @@ class RokuConfigFlow(ConfigFlow, domain=DOMAIN):
19
18
  VERSION: int
20
19
  discovery_info: dict[str, Any]
21
20
  def __init__(self) -> None: ...
22
- def _show_form(self, errors: dict[str, Any] | None = None) -> FlowResult: ...
23
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
24
- async def async_step_homekit(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> FlowResult: ...
25
- async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> FlowResult: ...
26
- async def async_step_discovery_confirm(self, user_input: dict | None = None) -> FlowResult: ...
21
+ def _show_form(self, errors: dict[str, Any] | None = None) -> ConfigFlowResult: ...
22
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
23
+ async def async_step_homekit(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
24
+ async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> ConfigFlowResult: ...
25
+ async def async_step_discovery_confirm(self, user_input: dict | None = None) -> ConfigFlowResult: ...
@@ -12,13 +12,6 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
12
12
  from rokuecp import Roku as Roku
13
13
  from rokuecp.models import Device as RokuDevice
14
14
 
15
- @dataclass(frozen=True)
16
- class RokuSelectEntityDescriptionMixin:
17
- options_fn: Callable[[RokuDevice], list[str]]
18
- value_fn: Callable[[RokuDevice], str | None]
19
- set_fn: Callable[[RokuDevice, Roku, str], Awaitable[None]]
20
- def __init__(self, options_fn, value_fn, set_fn) -> None: ...
21
-
22
15
  def _get_application_name(device: RokuDevice) -> str | None: ...
23
16
  def _get_applications(device: RokuDevice) -> list[str]: ...
24
17
  def _get_channel_name(device: RokuDevice) -> str | None: ...
@@ -26,9 +19,12 @@ def _get_channels(device: RokuDevice) -> list[str]: ...
26
19
  async def _launch_application(device: RokuDevice, roku: Roku, value: str) -> None: ...
27
20
  async def _tune_channel(device: RokuDevice, roku: Roku, value: str) -> None: ...
28
21
 
29
- @dataclass(frozen=True)
30
- class RokuSelectEntityDescription(SelectEntityDescription, RokuSelectEntityDescriptionMixin):
31
- def __init__(self, options_fn, value_fn, set_fn, *, 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) -> None: ...
22
+ @dataclass(frozen=True, kw_only=True)
23
+ class RokuSelectEntityDescription(SelectEntityDescription):
24
+ options_fn: Callable[[RokuDevice], list[str]]
25
+ value_fn: Callable[[RokuDevice], str | None]
26
+ set_fn: Callable[[RokuDevice, Roku, str], Awaitable[None]]
27
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, options, options_fn, value_fn, set_fn) -> None: ...
32
28
 
33
29
  ENTITIES: tuple[RokuSelectEntityDescription, ...]
34
30
  CHANNEL_ENTITY: Incomplete
@@ -10,14 +10,10 @@ from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
11
  from rokuecp.models import Device as RokuDevice
12
12
 
13
- @dataclass(frozen=True)
14
- class RokuSensorEntityDescriptionMixin:
13
+ @dataclass(frozen=True, kw_only=True)
14
+ class RokuSensorEntityDescription(SensorEntityDescription):
15
15
  value_fn: Callable[[RokuDevice], str | None]
16
- def __init__(self, value_fn) -> None: ...
17
-
18
- @dataclass(frozen=True)
19
- class RokuSensorEntityDescription(SensorEntityDescription, RokuSensorEntityDescriptionMixin):
20
- def __init__(self, value_fn, *, 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) -> None: ...
16
+ 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) -> None: ...
21
17
 
22
18
  SENSORS: tuple[RokuSensorEntityDescription, ...]
23
19
 
@@ -2,7 +2,6 @@ from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
2
  from homeassistant import config_entries as config_entries
3
3
  from homeassistant.components import zeroconf as zeroconf
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD
5
- from homeassistant.data_entry_flow import FlowResult as FlowResult
6
5
 
7
6
  class RomyConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
8
7
  VERSION: int
@@ -10,8 +9,8 @@ class RomyConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
10
9
  password: str
11
10
  robot_name_given_by_user: str
12
11
  def __init__(self) -> None: ...
13
- async def async_step_user(self, user_input: dict[str, str] | None = None) -> FlowResult: ...
14
- async def async_step_password(self, user_input: dict[str, str] | None = None) -> FlowResult: ...
15
- async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> FlowResult: ...
16
- async def async_step_zeroconf_confirm(self, user_input: dict[str, str] | None = None) -> FlowResult: ...
17
- async def _async_step_finish_config(self) -> FlowResult: ...
12
+ async def async_step_user(self, user_input: dict[str, str] | None = None) -> config_entries.ConfigFlowResult: ...
13
+ async def async_step_password(self, user_input: dict[str, str] | None = None) -> config_entries.ConfigFlowResult: ...
14
+ async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> config_entries.ConfigFlowResult: ...
15
+ async def async_step_zeroconf_confirm(self, user_input: dict[str, str] | None = None) -> config_entries.ConfigFlowResult: ...
16
+ async def _async_step_finish_config(self) -> config_entries.ConfigFlowResult: ...
@@ -0,0 +1,11 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from .coordinator import RomyVacuumCoordinator as RomyVacuumCoordinator
3
+ from _typeshed import Incomplete
4
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
5
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
6
+
7
+ class RomyEntity(CoordinatorEntity[RomyVacuumCoordinator]):
8
+ _attr_has_entity_name: bool
9
+ romy: Incomplete
10
+ _attr_device_info: Incomplete
11
+ def __init__(self, coordinator: RomyVacuumCoordinator) -> None: ...
@@ -1,16 +1,13 @@
1
1
  from .const import DOMAIN as DOMAIN, LOGGER as LOGGER
2
2
  from .coordinator import RomyVacuumCoordinator as RomyVacuumCoordinator
3
+ from .entity import RomyEntity as RomyEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.components.vacuum import StateVacuumEntity as StateVacuumEntity, VacuumEntityFeature as VacuumEntityFeature
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
7
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
8
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
10
- from romy import RomyRobot as RomyRobot
11
9
  from typing import Any
12
10
 
13
- ICON: str
14
11
  FAN_SPEED_NONE: str
15
12
  FAN_SPEED_NORMAL: str
16
13
  FAN_SPEED_SILENT: str
@@ -23,16 +20,12 @@ SUPPORT_ROMY_ROBOT: Incomplete
23
20
 
24
21
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
25
22
 
26
- class RomyVacuumEntity(CoordinatorEntity[RomyVacuumCoordinator], StateVacuumEntity):
27
- _attr_has_entity_name: bool
28
- _attr_name: Incomplete
23
+ class RomyVacuumEntity(RomyEntity, StateVacuumEntity):
29
24
  _attr_supported_features = SUPPORT_ROMY_ROBOT
30
25
  _attr_fan_speed_list = FAN_SPEEDS
31
- _attr_icon = ICON
32
- romy: Incomplete
26
+ _attr_name: Incomplete
33
27
  _attr_unique_id: Incomplete
34
- _device_info: Incomplete
35
- def __init__(self, coordinator: RomyVacuumCoordinator, romy: RomyRobot) -> None: ...
28
+ def __init__(self, coordinator: RomyVacuumCoordinator) -> None: ...
36
29
  _attr_fan_speed: Incomplete
37
30
  _attr_battery_level: Incomplete
38
31
  _attr_state: Incomplete
@@ -1,7 +1,7 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from collections.abc import Awaitable
3
+ from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult
3
4
  from homeassistant.core import HomeAssistant as HomeAssistant
4
- from homeassistant.data_entry_flow import FlowResult as FlowResult
5
5
  from homeassistant.helpers.config_entry_flow import DiscoveryFlowHandler as DiscoveryFlowHandler
6
6
  from typing import Any
7
7
 
@@ -10,4 +10,4 @@ async def _async_supported(hass: HomeAssistant) -> bool: ...
10
10
  class RPiPowerFlow(DiscoveryFlowHandler[Awaitable[bool]], domain=DOMAIN):
11
11
  VERSION: int
12
12
  def __init__(self) -> None: ...
13
- async def async_step_onboarding(self, data: dict[str, Any] | None = None) -> FlowResult: ...
13
+ async def async_step_onboarding(self, data: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,26 +1,25 @@
1
1
  from . import CONF_STUN_SERVER as CONF_STUN_SERVER, DATA_SERVER_URL as DATA_SERVER_URL, DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
- from homeassistant import config_entries as config_entries
4
3
  from homeassistant.components.hassio import HassioServiceInfo as HassioServiceInfo
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, OptionsFlow as OptionsFlow
5
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT
6
6
  from homeassistant.core import callback as callback
7
- from homeassistant.data_entry_flow import FlowResult as FlowResult
8
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
8
  from typing import Any
10
9
 
11
10
  _LOGGER: Incomplete
12
11
  DATA_SCHEMA: Incomplete
13
12
 
14
- class RTSPToWebRTCConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
13
+ class RTSPToWebRTCConfigFlow(ConfigFlow, domain=DOMAIN):
15
14
  _hassio_discovery: dict[str, Any]
16
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
15
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
17
16
  async def _test_connection(self, url: str) -> str | None: ...
18
- async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> FlowResult: ...
19
- async def async_step_hassio_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
17
+ async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> ConfigFlowResult: ...
18
+ async def async_step_hassio_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
20
19
  @staticmethod
21
- def async_get_options_flow(config_entry: config_entries.ConfigEntry) -> config_entries.OptionsFlow: ...
20
+ def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: ...
22
21
 
23
- class OptionsFlowHandler(config_entries.OptionsFlow):
22
+ class OptionsFlowHandler(OptionsFlow):
24
23
  config_entry: Incomplete
25
- def __init__(self, config_entry: config_entries.ConfigEntry) -> None: ...
26
- async def async_step_init(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
24
+ def __init__(self, config_entry: ConfigEntry) -> None: ...
25
+ async def async_step_init(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -1,20 +1,19 @@
1
1
  from . import DOMAIN as DOMAIN
2
2
  from .schemata import CONFIG_SCHEMA as CONFIG_SCHEMA, get_config_schema_with_default_host as get_config_schema_with_default_host
3
3
  from _typeshed import Incomplete
4
- from homeassistant import config_entries as config_entries
5
4
  from homeassistant.components import dhcp as dhcp
5
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
6
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_TOKEN as CONF_TOKEN
7
- from homeassistant.data_entry_flow import FlowResult as FlowResult
8
7
  from homeassistant.helpers.device_registry import format_mac as format_mac
9
8
  from homeassistant.helpers.httpx_client import get_async_client as get_async_client
10
9
  from typing import Any
11
10
 
12
11
  _LOGGER: Incomplete
13
12
 
14
- class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
13
+ class RuuviConfigFlow(ConfigFlow, domain=DOMAIN):
15
14
  VERSION: int
16
15
  config_schema: Incomplete
17
16
  def __init__(self) -> None: ...
18
- async def _async_validate(self, user_input: dict[str, Any]) -> tuple[FlowResult | None, dict[str, str]]: ...
19
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
20
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> FlowResult: ...
17
+ async def _async_validate(self, user_input: dict[str, Any]) -> tuple[ConfigFlowResult | None, dict[str, str]]: ...
18
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
19
+ async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
@@ -1,9 +1,8 @@
1
1
  from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components.bluetooth import BluetoothServiceInfoBleak as BluetoothServiceInfoBleak, async_discovered_service_info as async_discovered_service_info
4
- from homeassistant.config_entries import ConfigFlow as ConfigFlow
4
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
5
  from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS
6
- from homeassistant.data_entry_flow import FlowResult as FlowResult
7
6
  from typing import Any
8
7
 
9
8
  class RuuvitagConfigFlow(ConfigFlow, domain=DOMAIN):
@@ -12,6 +11,6 @@ class RuuvitagConfigFlow(ConfigFlow, domain=DOMAIN):
12
11
  _discovered_device: Incomplete
13
12
  _discovered_devices: Incomplete
14
13
  def __init__(self) -> None: ...
15
- async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> FlowResult: ...
16
- async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
17
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
14
+ async def async_step_bluetooth(self, discovery_info: BluetoothServiceInfoBleak) -> ConfigFlowResult: ...
15
+ async def async_step_bluetooth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
16
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -2,11 +2,11 @@ from .bridge import SamsungTVBridge as SamsungTVBridge, async_get_device_info as
2
2
  from .const import CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_SESSION_ID as CONF_SESSION_ID, CONF_SSDP_MAIN_TV_AGENT_LOCATION as CONF_SSDP_MAIN_TV_AGENT_LOCATION, CONF_SSDP_RENDERING_CONTROL_LOCATION as CONF_SSDP_RENDERING_CONTROL_LOCATION, DEFAULT_MANUFACTURER as DEFAULT_MANUFACTURER, DOMAIN as DOMAIN, LOGGER as LOGGER, METHOD_ENCRYPTED_WEBSOCKET as METHOD_ENCRYPTED_WEBSOCKET, METHOD_LEGACY as METHOD_LEGACY, RESULT_AUTH_MISSING as RESULT_AUTH_MISSING, RESULT_CANNOT_CONNECT as RESULT_CANNOT_CONNECT, RESULT_INVALID_PIN as RESULT_INVALID_PIN, RESULT_NOT_SUPPORTED as RESULT_NOT_SUPPORTED, RESULT_SUCCESS as RESULT_SUCCESS, RESULT_UNKNOWN_HOST as RESULT_UNKNOWN_HOST, SUCCESSFUL_RESULTS as SUCCESSFUL_RESULTS, UPNP_SVC_MAIN_TV_AGENT as UPNP_SVC_MAIN_TV_AGENT, UPNP_SVC_RENDERING_CONTROL as UPNP_SVC_RENDERING_CONTROL
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
- from homeassistant import config_entries as config_entries
6
5
  from homeassistant.components import dhcp as dhcp, ssdp as ssdp, zeroconf as zeroconf
6
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigEntryState as ConfigEntryState, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
7
7
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_MAC as CONF_MAC, CONF_METHOD as CONF_METHOD, CONF_MODEL as CONF_MODEL, CONF_NAME as CONF_NAME, CONF_PORT as CONF_PORT, CONF_TOKEN as CONF_TOKEN
8
8
  from homeassistant.core import callback as callback
9
- from homeassistant.data_entry_flow import AbortFlow as AbortFlow, FlowResult as FlowResult
9
+ from homeassistant.data_entry_flow import AbortFlow as AbortFlow
10
10
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
11
11
  from homeassistant.helpers.device_registry import format_mac as format_mac
12
12
  from typing import Any
@@ -14,10 +14,10 @@ from typing import Any
14
14
  DATA_SCHEMA: Incomplete
15
15
 
16
16
  def _strip_uuid(udn: str) -> str: ...
17
- def _entry_is_complete(entry: config_entries.ConfigEntry, ssdp_rendering_control_location: str | None, ssdp_main_tv_agent_location: str | None) -> bool: ...
17
+ def _entry_is_complete(entry: ConfigEntry, ssdp_rendering_control_location: str | None, ssdp_main_tv_agent_location: str | None) -> bool: ...
18
18
  def _mac_is_same_with_incorrect_formatting(current_unformatted_mac: str, formatted_mac: str) -> bool: ...
19
19
 
20
- class SamsungTVConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
20
+ class SamsungTVConfigFlow(ConfigFlow, domain=DOMAIN):
21
21
  VERSION: int
22
22
  _reauth_entry: Incomplete
23
23
  _host: str
@@ -38,7 +38,7 @@ class SamsungTVConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
38
38
  _authenticator: Incomplete
39
39
  def __init__(self) -> None: ...
40
40
  def _base_config_entry(self) -> dict[str, Any]: ...
41
- def _get_entry_from_bridge(self) -> FlowResult: ...
41
+ def _get_entry_from_bridge(self) -> ConfigFlowResult: ...
42
42
  async def _async_set_device_unique_id(self, raise_on_progress: bool = True) -> None: ...
43
43
  async def _async_set_unique_id_from_udn(self, raise_on_progress: bool = True) -> None: ...
44
44
  def _async_update_and_abort_for_matching_unique_id(self) -> None: ...
@@ -46,19 +46,19 @@ class SamsungTVConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
46
46
  async def _async_get_device_info_and_method(self) -> tuple[str, str | None, dict[str, Any] | None]: ...
47
47
  async def _async_get_and_check_device_info(self) -> bool: ...
48
48
  async def _async_set_name_host_from_input(self, user_input: dict[str, Any]) -> None: ...
49
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
50
- async def async_step_pairing(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
51
- async def async_step_encrypted_pairing(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
52
- def _async_get_existing_matching_entry(self) -> tuple[config_entries.ConfigEntry | None, bool]: ...
53
- def _async_update_existing_matching_entry(self) -> config_entries.ConfigEntry | None: ...
49
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
50
+ async def async_step_pairing(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
51
+ async def async_step_encrypted_pairing(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
52
+ def _async_get_existing_matching_entry(self) -> tuple[ConfigEntry | None, bool]: ...
53
+ def _async_update_existing_matching_entry(self) -> ConfigEntry | None: ...
54
54
  def _async_start_discovery_with_mac_address(self) -> None: ...
55
55
  def _async_abort_if_host_already_in_progress(self) -> None: ...
56
56
  def _abort_if_manufacturer_is_not_samsung(self) -> None: ...
57
- async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> FlowResult: ...
58
- async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> FlowResult: ...
59
- async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> FlowResult: ...
60
- async def async_step_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
61
- async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> FlowResult: ...
62
- async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
57
+ async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> ConfigFlowResult: ...
58
+ async def async_step_dhcp(self, discovery_info: dhcp.DhcpServiceInfo) -> ConfigFlowResult: ...
59
+ async def async_step_zeroconf(self, discovery_info: zeroconf.ZeroconfServiceInfo) -> ConfigFlowResult: ...
60
+ async def async_step_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
61
+ async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
62
+ async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
63
63
  async def _async_start_encrypted_pairing(self, host: str) -> None: ...
64
- async def async_step_reauth_confirm_encrypted(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
64
+ async def async_step_reauth_confirm_encrypted(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -12,6 +12,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callb
12
12
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
13
13
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
14
14
  from homeassistant.helpers.trigger import PluggableAction as PluggableAction
15
+ from homeassistant.util.async_ import create_eager_task as create_eager_task
15
16
  from typing import Any
16
17
 
17
18
  SOURCES: Incomplete
@@ -11,6 +11,7 @@ from homeassistant.const import CONF_ATTRIBUTE as CONF_ATTRIBUTE, CONF_AUTHENTIC
11
11
  from homeassistant.core import async_get_hass as async_get_hass
12
12
  from homeassistant.helpers.schema_config_entry_flow import SchemaCommonFlowHandler as SchemaCommonFlowHandler, SchemaConfigFlowHandler as SchemaConfigFlowHandler, SchemaFlowError as SchemaFlowError, SchemaFlowFormStep as SchemaFlowFormStep, SchemaFlowMenuStep as SchemaFlowMenuStep
13
13
  from homeassistant.helpers.selector import BooleanSelector as BooleanSelector, NumberSelector as NumberSelector, NumberSelectorConfig as NumberSelectorConfig, NumberSelectorMode as NumberSelectorMode, ObjectSelector as ObjectSelector, SelectSelector as SelectSelector, SelectSelectorConfig as SelectSelectorConfig, SelectSelectorMode as SelectSelectorMode, TemplateSelector as TemplateSelector, TextSelector as TextSelector, TextSelectorConfig as TextSelectorConfig, TextSelectorType as TextSelectorType
14
+ from homeassistant.helpers.trigger_template_entity import CONF_AVAILABILITY as CONF_AVAILABILITY
14
15
  from typing import Any
15
16
 
16
17
  RESOURCE_SETUP: Incomplete
@@ -1,8 +1,10 @@
1
1
  from _typeshed import Incomplete
2
+ from collections.abc import Iterable
3
+ from enum import StrEnum
2
4
  from homeassistant.components import automation as automation, group as group, person as person, script as script, websocket_api as websocket_api
3
5
  from homeassistant.components.homeassistant import scene as scene
4
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback, split_entity_id as split_entity_id
5
- from homeassistant.helpers import device_registry as dr, entity_registry as er
7
+ from homeassistant.helpers import area_registry as ar, device_registry as dr, entity_registry as er
6
8
  from homeassistant.helpers.entity import EntityInfo as EntityInfo
7
9
  from homeassistant.helpers.typing import ConfigType as ConfigType
8
10
  from typing import Any
@@ -11,29 +13,48 @@ DOMAIN: str
11
13
  _LOGGER: Incomplete
12
14
  CONFIG_SCHEMA: Incomplete
13
15
 
16
+ class ItemType(StrEnum):
17
+ AREA: str
18
+ AUTOMATION: str
19
+ AUTOMATION_BLUEPRINT: str
20
+ CONFIG_ENTRY: str
21
+ DEVICE: str
22
+ ENTITY: str
23
+ FLOOR: str
24
+ GROUP: str
25
+ LABEL: str
26
+ PERSON: str
27
+ SCENE: str
28
+ SCRIPT: str
29
+ SCRIPT_BLUEPRINT: str
30
+
14
31
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
15
32
  def websocket_search_related(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict[str, Any]) -> None: ...
16
33
 
17
34
  class Searcher:
18
- DONT_RESOLVE: Incomplete
19
35
  EXIST_AS_ENTITY: Incomplete
20
36
  hass: Incomplete
21
- _device_reg: Incomplete
22
- _entity_reg: Incomplete
23
- _sources: Incomplete
37
+ _area_registry: Incomplete
38
+ _device_registry: Incomplete
39
+ _entity_registry: Incomplete
40
+ _entity_sources: Incomplete
24
41
  results: Incomplete
25
- _to_resolve: Incomplete
26
- def __init__(self, hass: HomeAssistant, device_reg: dr.DeviceRegistry, entity_reg: er.EntityRegistry, entity_sources: dict[str, EntityInfo]) -> None: ...
27
- def async_search(self, item_type: str, item_id: str) -> dict[str, set[str]]: ...
28
- def _add_or_resolve(self, item_type: str, item_id: str) -> None: ...
29
- def _resolve_area(self, area_id: str) -> None: ...
30
- def _resolve_automation(self, automation_entity_id: str) -> None: ...
31
- def _resolve_automation_blueprint(self, blueprint_path: str) -> None: ...
32
- def _resolve_config_entry(self, config_entry_id: str) -> None: ...
33
- def _resolve_device(self, device_id: str) -> None: ...
34
- def _resolve_entity(self, entity_id: str) -> None: ...
35
- def _resolve_group(self, group_entity_id: str) -> None: ...
36
- def _resolve_person(self, person_entity_id: str) -> None: ...
37
- def _resolve_scene(self, scene_entity_id: str) -> None: ...
38
- def _resolve_script(self, script_entity_id: str) -> None: ...
39
- def _resolve_script_blueprint(self, blueprint_path: str) -> None: ...
42
+ def __init__(self, hass: HomeAssistant, entity_sources: dict[str, EntityInfo]) -> None: ...
43
+ def async_search(self, item_type: ItemType, item_id: str) -> dict[str, set[str]]: ...
44
+ def _add(self, item_type: ItemType, item_id: str | Iterable[str] | None) -> None: ...
45
+ def _async_search_area(self, area_id: str, *, entry_point: bool = True) -> None: ...
46
+ def _async_search_automation(self, automation_entity_id: str) -> None: ...
47
+ def _async_search_automation_blueprint(self, blueprint_path: str) -> None: ...
48
+ def _async_search_config_entry(self, config_entry_id: str) -> None: ...
49
+ def _async_search_device(self, device_id: str, *, entry_point: bool = True) -> None: ...
50
+ def _async_search_entity(self, entity_id: str, *, entry_point: bool = True) -> None: ...
51
+ def _async_search_floor(self, floor_id: str) -> None: ...
52
+ def _async_search_group(self, group_entity_id: str) -> None: ...
53
+ def _async_search_label(self, label_id: str) -> None: ...
54
+ def _async_search_person(self, person_entity_id: str) -> None: ...
55
+ def _async_search_scene(self, scene_entity_id: str) -> None: ...
56
+ def _async_search_script(self, script_entity_id: str, *, entry_point: bool = True) -> None: ...
57
+ def _async_search_script_blueprint(self, blueprint_path: str) -> None: ...
58
+ def _async_resolve_up_device(self, device_id: str) -> dr.DeviceEntry | None: ...
59
+ def _async_resolve_up_entity(self, entity_id: str) -> er.RegistryEntry | None: ...
60
+ def _async_resolve_up_area(self, area_id: str) -> ar.AreaEntry | None: ...
@@ -13,23 +13,15 @@ from pysensibo.model import MotionSensor as MotionSensor, SensiboDevice as Sensi
13
13
 
14
14
  PARALLEL_UPDATES: int
15
15
 
16
- @dataclass(frozen=True)
17
- class MotionBaseEntityDescriptionMixin:
16
+ @dataclass(frozen=True, kw_only=True)
17
+ class SensiboMotionBinarySensorEntityDescription(BinarySensorEntityDescription):
18
18
  value_fn: Callable[[MotionSensor], bool | None]
19
- def __init__(self, value_fn) -> None: ...
19
+ 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, value_fn) -> None: ...
20
20
 
21
- @dataclass(frozen=True)
22
- class DeviceBaseEntityDescriptionMixin:
21
+ @dataclass(frozen=True, kw_only=True)
22
+ class SensiboDeviceBinarySensorEntityDescription(BinarySensorEntityDescription):
23
23
  value_fn: Callable[[SensiboDevice], bool | None]
24
- def __init__(self, value_fn) -> None: ...
25
-
26
- @dataclass(frozen=True)
27
- class SensiboMotionBinarySensorEntityDescription(BinarySensorEntityDescription, MotionBaseEntityDescriptionMixin):
28
- def __init__(self, value_fn, *, 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: ...
29
-
30
- @dataclass(frozen=True)
31
- class SensiboDeviceBinarySensorEntityDescription(BinarySensorEntityDescription, DeviceBaseEntityDescriptionMixin):
32
- def __init__(self, value_fn, *, 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: ...
24
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, value_fn) -> None: ...
33
25
 
34
26
  FILTER_CLEAN_REQUIRED_DESCRIPTION: Incomplete
35
27
  MOTION_SENSOR_TYPES: tuple[SensiboMotionBinarySensorEntityDescription, ...]
@@ -12,14 +12,10 @@ from typing import Any
12
12
 
13
13
  PARALLEL_UPDATES: int
14
14
 
15
- @dataclass(frozen=True)
16
- class SensiboEntityDescriptionMixin:
15
+ @dataclass(frozen=True, kw_only=True)
16
+ class SensiboButtonEntityDescription(ButtonEntityDescription):
17
17
  data_key: str
18
- def __init__(self, data_key) -> None: ...
19
-
20
- @dataclass(frozen=True)
21
- class SensiboButtonEntityDescription(ButtonEntityDescription, SensiboEntityDescriptionMixin):
22
- def __init__(self, data_key, *, 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: ...
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, data_key) -> None: ...
23
19
 
24
20
  DEVICE_BUTTON_TYPES: Incomplete
25
21
 
@@ -2,17 +2,16 @@ from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
2
  from .util import NoDevicesError as NoDevicesError, NoUsernameError as NoUsernameError, async_validate_api as async_validate_api
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Mapping
5
- from homeassistant import config_entries as config_entries
5
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
6
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY
7
- from homeassistant.data_entry_flow import FlowResult as FlowResult
8
7
  from homeassistant.helpers.selector import TextSelector as TextSelector
9
8
  from typing import Any
10
9
 
11
10
  DATA_SCHEMA: Incomplete
12
11
 
13
- class SensiboConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
12
+ class SensiboConfigFlow(ConfigFlow, domain=DOMAIN):
14
13
  VERSION: int
15
- entry: config_entries.ConfigEntry | None
16
- async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> FlowResult: ...
17
- async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
18
- async def async_step_user(self, user_input: dict[str, Any] | None = None) -> FlowResult: ...
14
+ entry: ConfigEntry | None
15
+ async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
16
+ async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
17
+ async def async_step_user(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -14,15 +14,11 @@ from typing import Any
14
14
 
15
15
  PARALLEL_UPDATES: int
16
16
 
17
- @dataclass(frozen=True)
18
- class SensiboEntityDescriptionMixin:
17
+ @dataclass(frozen=True, kw_only=True)
18
+ class SensiboNumberEntityDescription(NumberEntityDescription):
19
19
  remote_key: str
20
20
  value_fn: Callable[[SensiboDevice], float | None]
21
- def __init__(self, remote_key, value_fn) -> None: ...
22
-
23
- @dataclass(frozen=True)
24
- class SensiboNumberEntityDescription(NumberEntityDescription, SensiboEntityDescriptionMixin):
25
- def __init__(self, remote_key, value_fn, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, max_value, min_value, mode, native_max_value, native_min_value, native_step, native_unit_of_measurement, step) -> 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, max_value, min_value, mode, native_max_value, native_min_value, native_step, native_unit_of_measurement, step, remote_key, value_fn) -> None: ...
26
22
 
27
23
  DEVICE_NUMBER_TYPES: Incomplete
28
24
 
@@ -14,17 +14,13 @@ from typing import Any
14
14
 
15
15
  PARALLEL_UPDATES: int
16
16
 
17
- @dataclass(frozen=True)
18
- class SensiboSelectDescriptionMixin:
17
+ @dataclass(frozen=True, kw_only=True)
18
+ class SensiboSelectEntityDescription(SelectEntityDescription):
19
19
  data_key: str
20
20
  value_fn: Callable[[SensiboDevice], str | None]
21
21
  options_fn: Callable[[SensiboDevice], list[str] | None]
22
22
  transformation: Callable[[SensiboDevice], dict | None]
23
- def __init__(self, data_key, value_fn, options_fn, transformation) -> None: ...
24
-
25
- @dataclass(frozen=True)
26
- class SensiboSelectEntityDescription(SelectEntityDescription, SensiboSelectDescriptionMixin):
27
- def __init__(self, data_key, value_fn, options_fn, transformation, *, 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) -> None: ...
23
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, options, data_key, value_fn, options_fn, transformation) -> None: ...
28
24
 
29
25
  DEVICE_SELECT_TYPES: Incomplete
30
26
 
@@ -16,24 +16,16 @@ from typing import Any
16
16
 
17
17
  PARALLEL_UPDATES: int
18
18
 
19
- @dataclass(frozen=True)
20
- class MotionBaseEntityDescriptionMixin:
19
+ @dataclass(frozen=True, kw_only=True)
20
+ class SensiboMotionSensorEntityDescription(SensorEntityDescription):
21
21
  value_fn: Callable[[MotionSensor], StateType]
22
- def __init__(self, value_fn) -> None: ...
22
+ 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) -> None: ...
23
23
 
24
- @dataclass(frozen=True)
25
- class DeviceBaseEntityDescriptionMixin:
24
+ @dataclass(frozen=True, kw_only=True)
25
+ class SensiboDeviceSensorEntityDescription(SensorEntityDescription):
26
26
  value_fn: Callable[[SensiboDevice], StateType | datetime]
27
27
  extra_fn: Callable[[SensiboDevice], dict[str, str | bool | None] | None] | None
28
- def __init__(self, value_fn, extra_fn) -> None: ...
29
-
30
- @dataclass(frozen=True)
31
- class SensiboMotionSensorEntityDescription(SensorEntityDescription, MotionBaseEntityDescriptionMixin):
32
- def __init__(self, value_fn, *, 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) -> None: ...
33
-
34
- @dataclass(frozen=True)
35
- class SensiboDeviceSensorEntityDescription(SensorEntityDescription, DeviceBaseEntityDescriptionMixin):
36
- def __init__(self, value_fn, extra_fn, *, 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) -> None: ...
28
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, value_fn, extra_fn) -> None: ...
37
29
 
38
30
  FILTER_LAST_RESET_DESCRIPTION: Incomplete
39
31
  MOTION_SENSOR_TYPES: tuple[SensiboMotionSensorEntityDescription, ...]
@@ -14,18 +14,14 @@ from typing import Any
14
14
 
15
15
  PARALLEL_UPDATES: int
16
16
 
17
- @dataclass(frozen=True)
18
- class DeviceBaseEntityDescriptionMixin:
17
+ @dataclass(frozen=True, kw_only=True)
18
+ class SensiboDeviceSwitchEntityDescription(SwitchEntityDescription):
19
19
  value_fn: Callable[[SensiboDevice], bool | None]
20
20
  extra_fn: Callable[[SensiboDevice], dict[str, str | bool | None]] | None
21
21
  command_on: str
22
22
  command_off: str
23
23
  data_key: str
24
- def __init__(self, value_fn, extra_fn, command_on, command_off, data_key) -> None: ...
25
-
26
- @dataclass(frozen=True)
27
- class SensiboDeviceSwitchEntityDescription(SwitchEntityDescription, DeviceBaseEntityDescriptionMixin):
28
- def __init__(self, value_fn, extra_fn, command_on, command_off, data_key, *, 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: ...
24
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, value_fn, extra_fn, command_on, command_off, data_key) -> None: ...
29
25
 
30
26
  DEVICE_SWITCH_TYPES: tuple[SensiboDeviceSwitchEntityDescription, ...]
31
27
  PURE_SWITCH_TYPES: tuple[SensiboDeviceSwitchEntityDescription, ...]