homeassistant-stubs 2024.9.3__py3-none-any.whl → 2024.10.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (836) hide show
  1. homeassistant-stubs/components/__init__.pyi +0 -8
  2. homeassistant-stubs/components/abode/binary_sensor.pyi +1 -1
  3. homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
  4. homeassistant-stubs/components/acmeda/__init__.pyi +1 -0
  5. homeassistant-stubs/components/acmeda/cover.pyi +2 -2
  6. homeassistant-stubs/components/acmeda/{base.pyi → entity.pyi} +1 -1
  7. homeassistant-stubs/components/acmeda/sensor.pyi +2 -2
  8. homeassistant-stubs/components/actiontec/device_tracker.pyi +1 -1
  9. homeassistant-stubs/components/air_quality/__init__.pyi +2 -0
  10. homeassistant-stubs/components/airgradient/__init__.pyi +2 -10
  11. homeassistant-stubs/components/airgradient/button.pyi +4 -4
  12. homeassistant-stubs/components/airgradient/coordinator.pyi +10 -10
  13. homeassistant-stubs/components/airgradient/number.pyi +2 -3
  14. homeassistant-stubs/components/airgradient/select.pyi +2 -3
  15. homeassistant-stubs/components/airgradient/sensor.pyi +9 -9
  16. homeassistant-stubs/components/airgradient/switch.pyi +2 -3
  17. homeassistant-stubs/components/airgradient/update.pyi +2 -3
  18. homeassistant-stubs/components/airnow/__init__.pyi +0 -1
  19. homeassistant-stubs/components/airnow/const.pyi +4 -1
  20. homeassistant-stubs/components/airnow/coordinator.pyi +1 -1
  21. homeassistant-stubs/components/airnow/sensor.pyi +2 -1
  22. homeassistant-stubs/components/airvisual/__init__.pyi +6 -14
  23. homeassistant-stubs/components/airvisual/diagnostics.pyi +3 -4
  24. homeassistant-stubs/components/airvisual/entity.pyi +13 -0
  25. homeassistant-stubs/components/airvisual/sensor.pyi +4 -3
  26. homeassistant-stubs/components/airvisual_pro/__init__.pyi +2 -11
  27. homeassistant-stubs/components/airvisual_pro/entity.pyi +12 -0
  28. homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -1
  29. homeassistant-stubs/components/airzone/diagnostics.pyi +1 -1
  30. homeassistant-stubs/components/airzone_cloud/diagnostics.pyi +1 -1
  31. homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
  32. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +2 -0
  33. homeassistant-stubs/components/alert/__init__.pyi +3 -43
  34. homeassistant-stubs/components/alert/entity.pyi +45 -0
  35. homeassistant-stubs/components/alexa/capabilities.pyi +2 -1
  36. homeassistant-stubs/components/alexa/config.pyi +1 -1
  37. homeassistant-stubs/components/alexa/smart_home.pyi +1 -1
  38. homeassistant-stubs/components/amazon_polly/tts.pyi +3 -1
  39. homeassistant-stubs/components/amberelectric/__init__.pyi +5 -3
  40. homeassistant-stubs/components/amberelectric/binary_sensor.pyi +3 -3
  41. homeassistant-stubs/components/amberelectric/sensor.pyi +3 -3
  42. homeassistant-stubs/components/ambient_network/__init__.pyi +3 -3
  43. homeassistant-stubs/components/ambient_network/sensor.pyi +2 -3
  44. homeassistant-stubs/components/androidtv_remote/media_player.pyi +1 -2
  45. homeassistant-stubs/components/anova/__init__.pyi +3 -5
  46. homeassistant-stubs/components/anova/models.pyi +3 -0
  47. homeassistant-stubs/components/anova/sensor.pyi +2 -4
  48. homeassistant-stubs/components/anthemav/__init__.pyi +4 -3
  49. homeassistant-stubs/components/anthemav/media_player.pyi +2 -3
  50. homeassistant-stubs/components/apcupsd/__init__.pyi +3 -4
  51. homeassistant-stubs/components/apcupsd/binary_sensor.pyi +2 -4
  52. homeassistant-stubs/components/apcupsd/diagnostics.pyi +2 -4
  53. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -3
  54. homeassistant-stubs/components/apple_tv/__init__.pyi +2 -19
  55. homeassistant-stubs/components/apple_tv/const.pyi +2 -0
  56. homeassistant-stubs/components/apple_tv/entity.pyi +21 -0
  57. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -1
  58. homeassistant-stubs/components/apple_tv/remote.pyi +2 -1
  59. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -2
  60. homeassistant-stubs/components/arris_tg2492lg/device_tracker.pyi +1 -1
  61. homeassistant-stubs/components/aruba/device_tracker.pyi +1 -1
  62. homeassistant-stubs/components/assist_pipeline/__init__.pyi +4 -3
  63. homeassistant-stubs/components/assist_pipeline/const.pyi +1 -0
  64. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  65. homeassistant-stubs/components/assist_pipeline/repair_flows.pyi +11 -0
  66. homeassistant-stubs/components/assist_pipeline/select.pyi +1 -3
  67. homeassistant-stubs/components/assist_satellite/__init__.pyi +5 -0
  68. homeassistant-stubs/components/assist_satellite/connection_test.pyi +15 -0
  69. homeassistant-stubs/components/assist_satellite/const.pyi +12 -0
  70. homeassistant-stubs/components/assist_satellite/entity.pyi +88 -0
  71. homeassistant-stubs/components/assist_satellite/errors.pyi +4 -0
  72. homeassistant-stubs/components/assist_satellite/websocket_api.pyi +16 -0
  73. homeassistant-stubs/components/asuswrt/bridge.pyi +8 -1
  74. homeassistant-stubs/components/asuswrt/const.pyi +3 -0
  75. homeassistant-stubs/components/asuswrt/device_tracker.pyi +1 -3
  76. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -2
  77. homeassistant-stubs/components/autarco/coordinator.pyi +6 -4
  78. homeassistant-stubs/components/autarco/sensor.pyi +18 -2
  79. homeassistant-stubs/components/automation/__init__.pyi +5 -3
  80. homeassistant-stubs/components/automation/config.pyi +6 -2
  81. homeassistant-stubs/components/automation/const.pyi +2 -0
  82. homeassistant-stubs/components/axis/hub/__init__.pyi +2 -0
  83. homeassistant-stubs/components/axis/hub/event_source.pyi +1 -1
  84. homeassistant-stubs/components/bang_olufsen/config_flow.pyi +1 -0
  85. homeassistant-stubs/components/bang_olufsen/const.pyi +6 -0
  86. homeassistant-stubs/components/bang_olufsen/media_player.pyi +21 -4
  87. homeassistant-stubs/components/bang_olufsen/util.pyi +1 -0
  88. homeassistant-stubs/components/bang_olufsen/websocket.pyi +2 -1
  89. homeassistant-stubs/components/bayesian/binary_sensor.pyi +9 -4
  90. homeassistant-stubs/components/bayesian/const.pyi +1 -0
  91. homeassistant-stubs/components/bayesian/helpers.pyi +2 -1
  92. homeassistant-stubs/components/binary_sensor/__init__.pyi +2 -0
  93. homeassistant-stubs/components/blueprint/__init__.pyi +1 -1
  94. homeassistant-stubs/components/blueprint/importer.pyi +1 -1
  95. homeassistant-stubs/components/blueprint/models.pyi +4 -3
  96. homeassistant-stubs/components/blueprint/websocket_api.pyi +1 -0
  97. homeassistant-stubs/components/bluesound/__init__.pyi +25 -0
  98. homeassistant-stubs/components/bluesound/config_flow.pyi +24 -0
  99. homeassistant-stubs/components/bluesound/const.pyi +8 -0
  100. homeassistant-stubs/components/bluesound/media_player.pyi +136 -0
  101. homeassistant-stubs/components/bluesound/utils.pyi +3 -0
  102. homeassistant-stubs/components/bluetooth/manager.pyi +3 -0
  103. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +1 -3
  104. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +1 -1
  105. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  106. homeassistant-stubs/components/braviatv/media_player.pyi +1 -2
  107. homeassistant-stubs/components/bthome/device_trigger.pyi +4 -3
  108. homeassistant-stubs/components/button/__init__.pyi +2 -0
  109. homeassistant-stubs/components/calendar/__init__.pyi +7 -5
  110. homeassistant-stubs/components/calendar/const.pyi +5 -0
  111. homeassistant-stubs/components/calendar/trigger.pyi +2 -1
  112. homeassistant-stubs/components/camera/__init__.pyi +4 -4
  113. homeassistant-stubs/components/camera/const.pyi +12 -2
  114. homeassistant-stubs/components/camera/media_source.pyi +2 -4
  115. homeassistant-stubs/components/cert_expiry/entity.pyi +8 -0
  116. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -8
  117. homeassistant-stubs/components/climate/__init__.pyi +6 -2
  118. homeassistant-stubs/components/climate/const.pyi +1 -0
  119. homeassistant-stubs/components/climate/intent.pyi +1 -3
  120. homeassistant-stubs/components/cloud/alexa_config.pyi +1 -1
  121. homeassistant-stubs/components/cloud/google_config.pyi +1 -1
  122. homeassistant-stubs/components/co2signal/__init__.pyi +0 -1
  123. homeassistant-stubs/components/co2signal/config_flow.pyi +2 -1
  124. homeassistant-stubs/components/config/automation.pyi +1 -1
  125. homeassistant-stubs/components/config/category_registry.pyi +1 -1
  126. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  127. homeassistant-stubs/components/config/entity_registry.pyi +1 -2
  128. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  129. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  130. homeassistant-stubs/components/config/scene.pyi +1 -1
  131. homeassistant-stubs/components/config/script.pyi +0 -1
  132. homeassistant-stubs/components/cover/__init__.pyi +3 -1
  133. homeassistant-stubs/components/cover/const.pyi +2 -0
  134. homeassistant-stubs/components/cover/intent.pyi +1 -4
  135. homeassistant-stubs/components/crownstone/{devices.pyi → entity.pyi} +1 -1
  136. homeassistant-stubs/components/crownstone/light.pyi +2 -2
  137. homeassistant-stubs/components/deako/__init__.pyi +14 -0
  138. homeassistant-stubs/components/deako/config_flow.pyi +6 -0
  139. homeassistant-stubs/components/deako/const.pyi +2 -0
  140. homeassistant-stubs/components/deako/light.pyi +32 -0
  141. homeassistant-stubs/components/deconz/alarm_control_panel.pyi +3 -3
  142. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -3
  143. homeassistant-stubs/components/deconz/button.pyi +4 -4
  144. homeassistant-stubs/components/deconz/climate.pyi +3 -3
  145. homeassistant-stubs/components/deconz/cover.pyi +3 -3
  146. homeassistant-stubs/components/deconz/deconz_event.pyi +1 -1
  147. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -2
  148. homeassistant-stubs/components/deconz/fan.pyi +3 -3
  149. homeassistant-stubs/components/deconz/hub/__init__.pyi +2 -0
  150. homeassistant-stubs/components/deconz/light.pyi +3 -3
  151. homeassistant-stubs/components/deconz/lock.pyi +3 -3
  152. homeassistant-stubs/components/deconz/number.pyi +3 -3
  153. homeassistant-stubs/components/deconz/scene.pyi +3 -3
  154. homeassistant-stubs/components/deconz/select.pyi +6 -6
  155. homeassistant-stubs/components/deconz/sensor.pyi +6 -5
  156. homeassistant-stubs/components/deconz/siren.pyi +3 -3
  157. homeassistant-stubs/components/deconz/switch.pyi +3 -3
  158. homeassistant-stubs/components/demo/lock.pyi +1 -2
  159. homeassistant-stubs/components/demo/notify.pyi +1 -1
  160. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  161. homeassistant-stubs/components/device_automation/__init__.pyi +1 -1
  162. homeassistant-stubs/components/device_tracker/__init__.pyi +1 -1
  163. homeassistant-stubs/components/device_tracker/config_entry.pyi +30 -4
  164. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  165. homeassistant-stubs/components/devolo_home_control/devolo_multi_level_switch.pyi +1 -1
  166. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  167. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  168. homeassistant-stubs/components/devolo_home_network/__init__.pyi +1 -1
  169. homeassistant-stubs/components/devolo_home_network/const.pyi +1 -0
  170. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -6
  171. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -1
  172. homeassistant-stubs/components/devolo_home_network/sensor.pyi +19 -14
  173. homeassistant-stubs/components/dhcp/__init__.pyi +7 -1
  174. homeassistant-stubs/components/discovergy/config_flow.pyi +1 -0
  175. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  176. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -2
  177. homeassistant-stubs/components/dlna_dms/media_source.pyi +1 -2
  178. homeassistant-stubs/components/downloader/__init__.pyi +1 -9
  179. homeassistant-stubs/components/downloader/config_flow.pyi +0 -1
  180. homeassistant-stubs/components/dsmr/const.pyi +1 -0
  181. homeassistant-stubs/components/dsmr/sensor.pyi +4 -2
  182. homeassistant-stubs/components/efergy/__init__.pyi +0 -9
  183. homeassistant-stubs/components/efergy/entity.pyi +11 -0
  184. homeassistant-stubs/components/efergy/sensor.pyi +2 -1
  185. homeassistant-stubs/components/elevenlabs/config_flow.pyi +5 -1
  186. homeassistant-stubs/components/elevenlabs/const.pyi +11 -0
  187. homeassistant-stubs/components/elevenlabs/tts.pyi +7 -3
  188. homeassistant-stubs/components/elkm1/__init__.pyi +1 -34
  189. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +2 -1
  190. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -1
  191. homeassistant-stubs/components/elkm1/climate.pyi +4 -1
  192. homeassistant-stubs/components/elkm1/entity.pyi +43 -0
  193. homeassistant-stubs/components/elkm1/light.pyi +2 -1
  194. homeassistant-stubs/components/elkm1/scene.pyi +2 -1
  195. homeassistant-stubs/components/elkm1/sensor.pyi +2 -1
  196. homeassistant-stubs/components/elkm1/switch.pyi +19 -1
  197. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -0
  198. homeassistant-stubs/components/enphase_envoy/sensor.pyi +13 -1
  199. homeassistant-stubs/components/enphase_envoy/switch.pyi +1 -1
  200. homeassistant-stubs/components/esphome/__init__.pyi +3 -2
  201. homeassistant-stubs/components/esphome/assist_satellite.pyi +75 -0
  202. homeassistant-stubs/components/esphome/binary_sensor.pyi +3 -0
  203. homeassistant-stubs/components/esphome/const.pyi +1 -0
  204. homeassistant-stubs/components/esphome/entry_data.pyi +3 -2
  205. homeassistant-stubs/components/esphome/ffmpeg_proxy.pyi +49 -0
  206. homeassistant-stubs/components/esphome/manager.pyi +2 -9
  207. homeassistant-stubs/components/esphome/media_player.pyi +7 -1
  208. homeassistant-stubs/components/esphome/repairs.pyi +5 -0
  209. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +0 -7
  210. homeassistant-stubs/components/evil_genius_labs/entity.pyi +9 -0
  211. homeassistant-stubs/components/evil_genius_labs/light.pyi +1 -1
  212. homeassistant-stubs/components/evil_genius_labs/util.pyi +1 -1
  213. homeassistant-stubs/components/evohome/const.pyi +5 -5
  214. homeassistant-stubs/components/fan/__init__.pyi +2 -0
  215. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  216. homeassistant-stubs/components/fritz/device_tracker.pyi +1 -3
  217. homeassistant-stubs/components/fritz/switch.pyi +1 -1
  218. homeassistant-stubs/components/fritzbox/__init__.pyi +1 -27
  219. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  220. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  221. homeassistant-stubs/components/fritzbox/climate.pyi +1 -1
  222. homeassistant-stubs/components/fritzbox/cover.pyi +1 -1
  223. homeassistant-stubs/components/fritzbox/entity.pyi +29 -0
  224. homeassistant-stubs/components/fritzbox/light.pyi +2 -2
  225. homeassistant-stubs/components/fritzbox/sensor.pyi +1 -1
  226. homeassistant-stubs/components/fritzbox/switch.pyi +1 -1
  227. homeassistant-stubs/components/frontend/__init__.pyi +1 -1
  228. homeassistant-stubs/components/frontend/storage.pyi +1 -1
  229. homeassistant-stubs/components/fujitsu_fglair/__init__.pyi +2 -1
  230. homeassistant-stubs/components/fujitsu_fglair/config_flow.pyi +3 -1
  231. homeassistant-stubs/components/fujitsu_fglair/const.pyi +3 -1
  232. homeassistant-stubs/components/fully_kiosk/diagnostics.pyi +1 -1
  233. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +6 -6
  234. homeassistant-stubs/components/geo_location/__init__.pyi +2 -0
  235. homeassistant-stubs/components/google/calendar.pyi +20 -6
  236. homeassistant-stubs/components/google_cloud/__init__.pyi +10 -0
  237. homeassistant-stubs/components/google_cloud/config_flow.pyi +27 -0
  238. homeassistant-stubs/components/google_cloud/const.pyi +19 -0
  239. homeassistant-stubs/components/google_cloud/helpers.pyi +14 -0
  240. homeassistant-stubs/components/google_cloud/stt.pyi +34 -0
  241. homeassistant-stubs/components/google_cloud/tts.pyi +47 -0
  242. homeassistant-stubs/components/google_photos/__init__.pyi +3 -0
  243. homeassistant-stubs/components/google_photos/api.pyi +15 -0
  244. homeassistant-stubs/components/google_photos/application_credentials.pyi +6 -0
  245. homeassistant-stubs/components/google_photos/config_flow.pyi +19 -0
  246. homeassistant-stubs/components/google_photos/const.pyi +8 -0
  247. homeassistant-stubs/components/google_photos/coordinator.pyi +17 -0
  248. homeassistant-stubs/components/google_photos/media_source.pyi +54 -0
  249. homeassistant-stubs/components/google_photos/services.pyi +15 -0
  250. homeassistant-stubs/components/google_photos/types.pyi +4 -0
  251. homeassistant-stubs/components/group/__init__.pyi +1 -3
  252. homeassistant-stubs/components/group/button.pyi +1 -1
  253. homeassistant-stubs/components/group/const.pyi +7 -3
  254. homeassistant-stubs/components/group/cover.pyi +1 -1
  255. homeassistant-stubs/components/group/entity.pyi +1 -1
  256. homeassistant-stubs/components/group/event.pyi +1 -1
  257. homeassistant-stubs/components/group/fan.pyi +1 -1
  258. homeassistant-stubs/components/group/lock.pyi +2 -2
  259. homeassistant-stubs/components/group/media_player.pyi +1 -1
  260. homeassistant-stubs/components/group/notify.pyi +1 -1
  261. homeassistant-stubs/components/group/registry.pyi +2 -1
  262. homeassistant-stubs/components/group/sensor.pyi +1 -1
  263. homeassistant-stubs/components/group/switch.pyi +1 -1
  264. homeassistant-stubs/components/guardian/__init__.pyi +0 -24
  265. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -1
  266. homeassistant-stubs/components/guardian/button.pyi +2 -1
  267. homeassistant-stubs/components/guardian/entity.pyi +29 -0
  268. homeassistant-stubs/components/guardian/sensor.pyi +2 -1
  269. homeassistant-stubs/components/guardian/switch.pyi +2 -1
  270. homeassistant-stubs/components/guardian/util.pyi +1 -1
  271. homeassistant-stubs/components/guardian/valve.pyi +2 -1
  272. homeassistant-stubs/components/history/websocket_api.pyi +1 -2
  273. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -1
  274. homeassistant-stubs/components/homeassistant/triggers/time.pyi +9 -1
  275. homeassistant-stubs/components/homekit/config_flow.pyi +3 -3
  276. homeassistant-stubs/components/homekit/type_covers.pyi +1 -1
  277. homeassistant-stubs/components/homekit/type_fans.pyi +1 -1
  278. homeassistant-stubs/components/homekit/type_humidifiers.pyi +1 -1
  279. homeassistant-stubs/components/homekit/type_lights.pyi +1 -1
  280. homeassistant-stubs/components/homekit/type_locks.pyi +1 -1
  281. homeassistant-stubs/components/homekit/type_media_players.pyi +1 -1
  282. homeassistant-stubs/components/homekit/type_security_systems.pyi +1 -1
  283. homeassistant-stubs/components/homekit/type_switches.pyi +0 -1
  284. homeassistant-stubs/components/homekit/util.pyi +1 -0
  285. homeassistant-stubs/components/homekit_controller/config_flow.pyi +0 -1
  286. homeassistant-stubs/components/homekit_controller/lock.pyi +3 -3
  287. homeassistant-stubs/components/homeworks/__init__.pyi +0 -15
  288. homeassistant-stubs/components/homeworks/binary_sensor.pyi +2 -1
  289. homeassistant-stubs/components/homeworks/button.pyi +2 -1
  290. homeassistant-stubs/components/homeworks/config_flow.pyi +2 -1
  291. homeassistant-stubs/components/homeworks/entity.pyi +16 -0
  292. homeassistant-stubs/components/homeworks/light.pyi +2 -1
  293. homeassistant-stubs/components/homeworks/util.pyi +1 -0
  294. homeassistant-stubs/components/http/__init__.pyi +1 -1
  295. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -24
  296. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +1 -1
  297. homeassistant-stubs/components/huawei_lte/button.pyi +1 -1
  298. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +3 -4
  299. homeassistant-stubs/components/huawei_lte/entity.pyi +31 -0
  300. homeassistant-stubs/components/huawei_lte/select.pyi +2 -1
  301. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -1
  302. homeassistant-stubs/components/huawei_lte/switch.pyi +1 -1
  303. homeassistant-stubs/components/humidifier/__init__.pyi +7 -2
  304. homeassistant-stubs/components/husqvarna_automower/__init__.pyi +2 -0
  305. homeassistant-stubs/components/husqvarna_automower/button.pyi +20 -6
  306. homeassistant-stubs/components/husqvarna_automower/calendar.pyi +21 -0
  307. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +1 -0
  308. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +1 -3
  309. homeassistant-stubs/components/husqvarna_automower/entity.pyi +16 -2
  310. homeassistant-stubs/components/husqvarna_automower/number.pyi +4 -10
  311. homeassistant-stubs/components/husqvarna_automower/switch.pyi +12 -1
  312. homeassistant-stubs/components/image/__init__.pyi +1 -1
  313. homeassistant-stubs/components/image/const.pyi +4 -0
  314. homeassistant-stubs/components/image/media_source.pyi +2 -5
  315. homeassistant-stubs/components/ios/__init__.pyi +1 -15
  316. homeassistant-stubs/components/ios/const.pyi +16 -0
  317. homeassistant-stubs/components/ios/notify.pyi +1 -1
  318. homeassistant-stubs/components/ios/sensor.pyi +2 -2
  319. homeassistant-stubs/components/iotty/cover.pyi +36 -0
  320. homeassistant-stubs/components/iotty/entity.pyi +19 -0
  321. homeassistant-stubs/components/iotty/switch.pyi +2 -11
  322. homeassistant-stubs/components/iqvia/__init__.pyi +2 -15
  323. homeassistant-stubs/components/iqvia/entity.pyi +18 -0
  324. homeassistant-stubs/components/iqvia/sensor.pyi +1 -1
  325. homeassistant-stubs/components/isy994/const.pyi +2 -1
  326. homeassistant-stubs/components/jellyfin/browse_media.pyi +1 -2
  327. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -2
  328. homeassistant-stubs/components/jellyfin/media_source.pyi +1 -1
  329. homeassistant-stubs/components/jellyfin/sensor.pyi +1 -0
  330. homeassistant-stubs/components/knx/__init__.pyi +4 -2
  331. homeassistant-stubs/components/knx/binary_sensor.pyi +2 -2
  332. homeassistant-stubs/components/knx/button.pyi +2 -2
  333. homeassistant-stubs/components/knx/climate.pyi +9 -3
  334. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  335. homeassistant-stubs/components/knx/const.pyi +9 -3
  336. homeassistant-stubs/components/knx/cover.pyi +2 -2
  337. homeassistant-stubs/components/knx/date.pyi +2 -2
  338. homeassistant-stubs/components/knx/datetime.pyi +2 -2
  339. homeassistant-stubs/components/knx/device_trigger.pyi +3 -5
  340. homeassistant-stubs/components/knx/diagnostics.pyi +1 -1
  341. homeassistant-stubs/components/knx/fan.pyi +2 -2
  342. homeassistant-stubs/components/knx/light.pyi +2 -2
  343. homeassistant-stubs/components/knx/notify.pyi +2 -2
  344. homeassistant-stubs/components/knx/number.pyi +2 -2
  345. homeassistant-stubs/components/knx/scene.pyi +2 -2
  346. homeassistant-stubs/components/knx/schema.pyi +8 -2
  347. homeassistant-stubs/components/knx/select.pyi +2 -2
  348. homeassistant-stubs/components/knx/sensor.pyi +2 -2
  349. homeassistant-stubs/components/knx/services.pyi +1 -1
  350. homeassistant-stubs/components/knx/switch.pyi +2 -2
  351. homeassistant-stubs/components/knx/text.pyi +2 -2
  352. homeassistant-stubs/components/knx/time.pyi +2 -2
  353. homeassistant-stubs/components/knx/weather.pyi +2 -2
  354. homeassistant-stubs/components/knx/websocket.pyi +1 -1
  355. homeassistant-stubs/components/lamarzocco/config_flow.pyi +5 -1
  356. homeassistant-stubs/components/laundrify/binary_sensor.pyi +0 -1
  357. homeassistant-stubs/components/laundrify/sensor.pyi +41 -0
  358. homeassistant-stubs/components/lawn_mower/__init__.pyi +2 -0
  359. homeassistant-stubs/components/lcn/__init__.pyi +8 -30
  360. homeassistant-stubs/components/lcn/binary_sensor.pyi +7 -7
  361. homeassistant-stubs/components/lcn/climate.pyi +5 -5
  362. homeassistant-stubs/components/lcn/config_flow.pyi +3 -1
  363. homeassistant-stubs/components/lcn/const.pyi +1 -0
  364. homeassistant-stubs/components/lcn/cover.pyi +6 -6
  365. homeassistant-stubs/components/lcn/entity.pyi +28 -0
  366. homeassistant-stubs/components/lcn/helpers.pyi +2 -2
  367. homeassistant-stubs/components/lcn/light.pyi +6 -6
  368. homeassistant-stubs/components/lcn/scene.pyi +4 -5
  369. homeassistant-stubs/components/lcn/sensor.pyi +6 -6
  370. homeassistant-stubs/components/lcn/services.pyi +16 -0
  371. homeassistant-stubs/components/lcn/switch.pyi +6 -6
  372. homeassistant-stubs/components/lcn/websocket.pyi +3 -1
  373. homeassistant-stubs/components/lektrico/__init__.pyi +12 -0
  374. homeassistant-stubs/components/lektrico/button.pyi +27 -0
  375. homeassistant-stubs/components/lektrico/config_flow.pyi +24 -0
  376. homeassistant-stubs/components/lektrico/const.pyi +4 -0
  377. homeassistant-stubs/components/lektrico/coordinator.pyi +19 -0
  378. homeassistant-stubs/components/lektrico/entity.pyi +10 -0
  379. homeassistant-stubs/components/lektrico/number.pyi +29 -0
  380. homeassistant-stubs/components/lektrico/select.pyi +30 -0
  381. homeassistant-stubs/components/lektrico/sensor.pyi +34 -0
  382. homeassistant-stubs/components/lidarr/__init__.pyi +2 -11
  383. homeassistant-stubs/components/lidarr/entity.pyi +13 -0
  384. homeassistant-stubs/components/lidarr/sensor.pyi +2 -1
  385. homeassistant-stubs/components/light/__init__.pyi +4 -2
  386. homeassistant-stubs/components/linkplay/const.pyi +1 -1
  387. homeassistant-stubs/components/linkplay/media_player.pyi +9 -3
  388. homeassistant-stubs/components/linkplay/utils.pyi +1 -1
  389. homeassistant-stubs/components/lock/__init__.pyi +4 -2
  390. homeassistant-stubs/components/lock/const.pyi +11 -0
  391. homeassistant-stubs/components/lock/device_condition.pyi +2 -2
  392. homeassistant-stubs/components/lock/device_trigger.pyi +2 -2
  393. homeassistant-stubs/components/lock/reproduce_state.pyi +2 -2
  394. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -2
  395. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  396. homeassistant-stubs/components/madvr/__init__.pyi +1 -1
  397. homeassistant-stubs/components/madvr/diagnostics.pyi +10 -0
  398. homeassistant-stubs/components/matter/button.pyi +25 -0
  399. homeassistant-stubs/components/matter/entity.pyi +1 -4
  400. homeassistant-stubs/components/matter/light.pyi +0 -1
  401. homeassistant-stubs/components/matter/models.pyi +5 -3
  402. homeassistant-stubs/components/matter/number.pyi +2 -2
  403. homeassistant-stubs/components/matter/sensor.pyi +9 -0
  404. homeassistant-stubs/components/matter/valve.pyi +33 -0
  405. homeassistant-stubs/components/media_player/__init__.pyi +11 -4
  406. homeassistant-stubs/components/media_player/const.pyi +67 -63
  407. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -3
  408. homeassistant-stubs/components/minecraft_server/__init__.pyi +1 -0
  409. homeassistant-stubs/components/minecraft_server/diagnostics.pyi +1 -1
  410. homeassistant-stubs/components/modbus/binary_sensor.pyi +1 -1
  411. homeassistant-stubs/components/modbus/climate.pyi +1 -1
  412. homeassistant-stubs/components/modbus/cover.pyi +1 -1
  413. homeassistant-stubs/components/modbus/fan.pyi +1 -1
  414. homeassistant-stubs/components/modbus/light.pyi +1 -1
  415. homeassistant-stubs/components/modbus/sensor.pyi +1 -1
  416. homeassistant-stubs/components/modbus/switch.pyi +1 -1
  417. homeassistant-stubs/components/mold_indicator/__init__.pyi +10 -0
  418. homeassistant-stubs/components/mold_indicator/config_flow.pyi +20 -0
  419. homeassistant-stubs/components/mold_indicator/const.pyi +6 -0
  420. homeassistant-stubs/components/mold_indicator/sensor.pyi +59 -0
  421. homeassistant-stubs/components/mopeka/__init__.pyi +1 -1
  422. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  423. homeassistant-stubs/components/motionmount/number.pyi +1 -0
  424. homeassistant-stubs/components/motionmount/select.pyi +5 -0
  425. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +1 -1
  426. homeassistant-stubs/components/mqtt/binary_sensor.pyi +1 -1
  427. homeassistant-stubs/components/mqtt/button.pyi +1 -1
  428. homeassistant-stubs/components/mqtt/camera.pyi +1 -1
  429. homeassistant-stubs/components/mqtt/climate.pyi +1 -6
  430. homeassistant-stubs/components/mqtt/config_flow.pyi +1 -2
  431. homeassistant-stubs/components/mqtt/cover.pyi +1 -1
  432. homeassistant-stubs/components/mqtt/device_automation.pyi +1 -1
  433. homeassistant-stubs/components/mqtt/device_tracker.pyi +3 -3
  434. homeassistant-stubs/components/mqtt/device_trigger.pyi +1 -1
  435. homeassistant-stubs/components/mqtt/discovery.pyi +1 -1
  436. homeassistant-stubs/components/mqtt/{mixins.pyi → entity.pyi} +0 -3
  437. homeassistant-stubs/components/mqtt/event.pyi +1 -1
  438. homeassistant-stubs/components/mqtt/fan.pyi +1 -1
  439. homeassistant-stubs/components/mqtt/humidifier.pyi +1 -1
  440. homeassistant-stubs/components/mqtt/image.pyi +1 -1
  441. homeassistant-stubs/components/mqtt/lawn_mower.pyi +1 -1
  442. homeassistant-stubs/components/mqtt/light/__init__.pyi +1 -1
  443. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +1 -1
  444. homeassistant-stubs/components/mqtt/light/schema_json.pyi +1 -1
  445. homeassistant-stubs/components/mqtt/light/schema_template.pyi +1 -1
  446. homeassistant-stubs/components/mqtt/lock.pyi +1 -1
  447. homeassistant-stubs/components/mqtt/notify.pyi +1 -1
  448. homeassistant-stubs/components/mqtt/number.pyi +1 -1
  449. homeassistant-stubs/components/mqtt/scene.pyi +1 -1
  450. homeassistant-stubs/components/mqtt/select.pyi +1 -1
  451. homeassistant-stubs/components/mqtt/sensor.pyi +1 -1
  452. homeassistant-stubs/components/mqtt/siren.pyi +1 -1
  453. homeassistant-stubs/components/mqtt/switch.pyi +1 -1
  454. homeassistant-stubs/components/mqtt/tag.pyi +1 -1
  455. homeassistant-stubs/components/mqtt/text.pyi +1 -1
  456. homeassistant-stubs/components/mqtt/trigger.pyi +3 -2
  457. homeassistant-stubs/components/mqtt/update.pyi +1 -1
  458. homeassistant-stubs/components/mqtt/vacuum.pyi +1 -1
  459. homeassistant-stubs/components/mqtt/valve.pyi +3 -3
  460. homeassistant-stubs/components/mqtt/water_heater.pyi +1 -1
  461. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  462. homeassistant-stubs/components/mysensors/binary_sensor.pyi +3 -2
  463. homeassistant-stubs/components/mysensors/climate.pyi +3 -2
  464. homeassistant-stubs/components/mysensors/cover.pyi +3 -2
  465. homeassistant-stubs/components/mysensors/device_tracker.pyi +5 -10
  466. homeassistant-stubs/components/mysensors/handler.pyi +1 -1
  467. homeassistant-stubs/components/mysensors/light.pyi +3 -3
  468. homeassistant-stubs/components/mysensors/remote.pyi +1 -1
  469. homeassistant-stubs/components/mysensors/sensor.pyi +4 -3
  470. homeassistant-stubs/components/mysensors/switch.pyi +1 -1
  471. homeassistant-stubs/components/mysensors/text.pyi +2 -2
  472. homeassistant-stubs/components/nanoleaf/device_trigger.pyi +1 -2
  473. homeassistant-stubs/components/nest/device_trigger.pyi +1 -2
  474. homeassistant-stubs/components/nest/media_source.pyi +1 -2
  475. homeassistant-stubs/components/netatmo/device_trigger.pyi +1 -2
  476. homeassistant-stubs/components/netatmo/media_source.pyi +1 -2
  477. homeassistant-stubs/components/network/websocket.pyi +1 -1
  478. homeassistant-stubs/components/nextdns/__init__.pyi +1 -1
  479. homeassistant-stubs/components/nextdns/config_flow.pyi +11 -1
  480. homeassistant-stubs/components/nextdns/coordinator.pyi +1 -0
  481. homeassistant-stubs/components/nissan_leaf/__init__.pyi +3 -14
  482. homeassistant-stubs/components/nissan_leaf/binary_sensor.pyi +2 -1
  483. homeassistant-stubs/components/nissan_leaf/button.pyi +2 -1
  484. homeassistant-stubs/components/nissan_leaf/const.pyi +1 -0
  485. homeassistant-stubs/components/nissan_leaf/entity.pyi +18 -0
  486. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -1
  487. homeassistant-stubs/components/nissan_leaf/switch.pyi +2 -1
  488. homeassistant-stubs/components/notify/__init__.pyi +3 -2
  489. homeassistant-stubs/components/notify/legacy.pyi +5 -6
  490. homeassistant-stubs/components/notify/repairs.pyi +1 -2
  491. homeassistant-stubs/components/notion/__init__.pyi +1 -23
  492. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -2
  493. homeassistant-stubs/components/notion/entity.pyi +33 -0
  494. homeassistant-stubs/components/notion/sensor.pyi +1 -2
  495. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  496. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  497. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  498. homeassistant-stubs/components/onkyo/media_player.pyi +84 -0
  499. homeassistant-stubs/components/onkyo/receiver.pyi +19 -0
  500. homeassistant-stubs/components/openuv/__init__.pyi +0 -11
  501. homeassistant-stubs/components/openuv/binary_sensor.pyi +1 -1
  502. homeassistant-stubs/components/openuv/entity.pyi +14 -0
  503. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  504. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  505. homeassistant-stubs/components/overkiz/{climate_entities → climate}/__init__.pyi +9 -0
  506. homeassistant-stubs/components/overkiz/{water_heater.pyi → cover/__init__.pyi} +5 -4
  507. homeassistant-stubs/components/overkiz/water_heater/__init__.pyi +17 -0
  508. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -10
  509. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +2 -1
  510. homeassistant-stubs/components/pi_hole/entity.pyi +13 -0
  511. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -1
  512. homeassistant-stubs/components/pi_hole/switch.pyi +2 -1
  513. homeassistant-stubs/components/pi_hole/update.pyi +2 -1
  514. homeassistant-stubs/components/ping/binary_sensor.pyi +0 -8
  515. homeassistant-stubs/components/ping/device_tracker.pyi +1 -3
  516. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  517. homeassistant-stubs/components/prusalink/__init__.pyi +1 -8
  518. homeassistant-stubs/components/prusalink/binary_sensor.pyi +1 -1
  519. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  520. homeassistant-stubs/components/prusalink/camera.pyi +1 -1
  521. homeassistant-stubs/components/prusalink/entity.pyi +9 -0
  522. homeassistant-stubs/components/prusalink/sensor.pyi +1 -1
  523. homeassistant-stubs/components/purpleair/__init__.pyi +1 -17
  524. homeassistant-stubs/components/purpleair/entity.pyi +21 -0
  525. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  526. homeassistant-stubs/components/qnap_qsw/diagnostics.pyi +1 -1
  527. homeassistant-stubs/components/radarr/__init__.pyi +2 -15
  528. homeassistant-stubs/components/radarr/binary_sensor.pyi +2 -1
  529. homeassistant-stubs/components/radarr/calendar.pyi +2 -1
  530. homeassistant-stubs/components/radarr/entity.pyi +16 -0
  531. homeassistant-stubs/components/radarr/sensor.pyi +2 -1
  532. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -18
  533. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +2 -2
  534. homeassistant-stubs/components/rainmachine/button.pyi +2 -2
  535. homeassistant-stubs/components/rainmachine/entity.pyi +30 -0
  536. homeassistant-stubs/components/rainmachine/select.pyi +2 -2
  537. homeassistant-stubs/components/rainmachine/sensor.pyi +2 -2
  538. homeassistant-stubs/components/rainmachine/switch.pyi +2 -2
  539. homeassistant-stubs/components/rainmachine/update.pyi +2 -2
  540. homeassistant-stubs/components/recorder/const.pyi +2 -2
  541. homeassistant-stubs/components/recorder/core.pyi +1 -5
  542. homeassistant-stubs/components/recorder/history/legacy.pyi +9 -10
  543. homeassistant-stubs/components/recorder/history/modern.pyi +1 -1
  544. homeassistant-stubs/components/recorder/migration.pyi +28 -25
  545. homeassistant-stubs/components/recorder/models/__init__.pyi +2 -2
  546. homeassistant-stubs/components/recorder/models/legacy.pyi +1 -37
  547. homeassistant-stubs/components/recorder/models/time.pyi +0 -1
  548. homeassistant-stubs/components/recorder/statistics.pyi +2 -1
  549. homeassistant-stubs/components/recorder/tasks.pyi +0 -15
  550. homeassistant-stubs/components/recorder/util.pyi +6 -2
  551. homeassistant-stubs/components/recorder/websocket_api.pyi +2 -1
  552. homeassistant-stubs/components/remote/__init__.pyi +2 -0
  553. homeassistant-stubs/components/renault/device_tracker.pyi +8 -4
  554. homeassistant-stubs/components/renault/renault_hub.pyi +1 -1
  555. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -0
  556. homeassistant-stubs/components/renault/services.pyi +4 -0
  557. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -27
  558. homeassistant-stubs/components/rfxtrx/binary_sensor.pyi +2 -1
  559. homeassistant-stubs/components/rfxtrx/const.pyi +1 -0
  560. homeassistant-stubs/components/rfxtrx/cover.pyi +2 -1
  561. homeassistant-stubs/components/rfxtrx/device_action.pyi +1 -1
  562. homeassistant-stubs/components/rfxtrx/device_trigger.pyi +1 -2
  563. homeassistant-stubs/components/rfxtrx/entity.pyi +33 -0
  564. homeassistant-stubs/components/rfxtrx/event.pyi +2 -1
  565. homeassistant-stubs/components/rfxtrx/light.pyi +2 -1
  566. homeassistant-stubs/components/rfxtrx/sensor.pyi +2 -1
  567. homeassistant-stubs/components/rfxtrx/siren.pyi +2 -1
  568. homeassistant-stubs/components/rfxtrx/switch.pyi +3 -2
  569. homeassistant-stubs/components/ring/__init__.pyi +10 -9
  570. homeassistant-stubs/components/ring/binary_sensor.pyi +24 -20
  571. homeassistant-stubs/components/ring/button.pyi +2 -4
  572. homeassistant-stubs/components/ring/camera.pyi +2 -4
  573. homeassistant-stubs/components/ring/config_flow.pyi +2 -1
  574. homeassistant-stubs/components/ring/const.pyi +1 -1
  575. homeassistant-stubs/components/ring/coordinator.pyi +22 -7
  576. homeassistant-stubs/components/ring/diagnostics.pyi +2 -4
  577. homeassistant-stubs/components/ring/entity.pyi +27 -7
  578. homeassistant-stubs/components/ring/event.pyi +30 -0
  579. homeassistant-stubs/components/ring/light.pyi +2 -4
  580. homeassistant-stubs/components/ring/number.pyi +33 -0
  581. homeassistant-stubs/components/ring/sensor.pyi +6 -8
  582. homeassistant-stubs/components/ring/siren.pyi +30 -14
  583. homeassistant-stubs/components/ring/switch.pyi +25 -17
  584. homeassistant-stubs/components/roborock/binary_sensor.pyi +1 -1
  585. homeassistant-stubs/components/roborock/button.pyi +1 -1
  586. homeassistant-stubs/components/roborock/diagnostics.pyi +1 -1
  587. homeassistant-stubs/components/roborock/image.pyi +1 -1
  588. homeassistant-stubs/components/roborock/number.pyi +3 -2
  589. homeassistant-stubs/components/roborock/select.pyi +2 -1
  590. homeassistant-stubs/components/roborock/sensor.pyi +1 -1
  591. homeassistant-stubs/components/roborock/switch.pyi +3 -2
  592. homeassistant-stubs/components/roborock/time.pyi +3 -2
  593. homeassistant-stubs/components/roborock/vacuum.pyi +1 -1
  594. homeassistant-stubs/components/samsungtv/device_trigger.pyi +1 -2
  595. homeassistant-stubs/components/scene/__init__.pyi +2 -0
  596. homeassistant-stubs/components/schedule/__init__.pyi +5 -1
  597. homeassistant-stubs/components/schedule/const.pyi +1 -0
  598. homeassistant-stubs/components/script/helpers.pyi +1 -1
  599. homeassistant-stubs/components/sensibo/diagnostics.pyi +1 -1
  600. homeassistant-stubs/components/sensor/device_condition.pyi +1 -2
  601. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -2
  602. homeassistant-stubs/components/sensor/recorder.pyi +9 -6
  603. homeassistant-stubs/components/sensoterra/__init__.pyi +10 -0
  604. homeassistant-stubs/components/sensoterra/config_flow.pyi +11 -0
  605. homeassistant-stubs/components/sensoterra/const.pyi +9 -0
  606. homeassistant-stubs/components/sensoterra/coordinator.pyi +15 -0
  607. homeassistant-stubs/components/sensoterra/sensor.pyi +39 -0
  608. homeassistant-stubs/components/shelly/cover.pyi +7 -1
  609. homeassistant-stubs/components/shelly/device_trigger.pyi +1 -2
  610. homeassistant-stubs/components/shelly/update.pyi +1 -0
  611. homeassistant-stubs/components/simplisafe/__init__.pyi +4 -38
  612. homeassistant-stubs/components/simplisafe/alarm_control_panel.pyi +2 -1
  613. homeassistant-stubs/components/simplisafe/binary_sensor.pyi +2 -1
  614. homeassistant-stubs/components/simplisafe/button.pyi +2 -1
  615. homeassistant-stubs/components/simplisafe/const.pyi +6 -0
  616. homeassistant-stubs/components/simplisafe/entity.pyi +38 -0
  617. homeassistant-stubs/components/simplisafe/lock.pyi +2 -1
  618. homeassistant-stubs/components/simplisafe/sensor.pyi +2 -1
  619. homeassistant-stubs/components/siren/__init__.pyi +2 -0
  620. homeassistant-stubs/components/slack/__init__.pyi +1 -13
  621. homeassistant-stubs/components/slack/entity.pyi +15 -0
  622. homeassistant-stubs/components/slack/sensor.pyi +1 -1
  623. homeassistant-stubs/components/smlight/__init__.pyi +18 -0
  624. homeassistant-stubs/components/smlight/binary_sensor.pyi +46 -0
  625. homeassistant-stubs/components/smlight/button.pyi +32 -0
  626. homeassistant-stubs/components/smlight/config_flow.pyi +27 -0
  627. homeassistant-stubs/components/smlight/const.pyi +11 -0
  628. homeassistant-stubs/components/smlight/coordinator.pyi +49 -0
  629. homeassistant-stubs/components/smlight/diagnostics.pyi +5 -0
  630. homeassistant-stubs/components/smlight/entity.pyi +10 -0
  631. homeassistant-stubs/components/smlight/sensor.pyi +56 -0
  632. homeassistant-stubs/components/smlight/switch.pyi +39 -0
  633. homeassistant-stubs/components/smlight/update.pyi +48 -0
  634. homeassistant-stubs/components/solarlog/__init__.pyi +14 -0
  635. homeassistant-stubs/components/solarlog/config_flow.pyi +26 -0
  636. homeassistant-stubs/components/solarlog/const.pyi +4 -0
  637. homeassistant-stubs/components/solarlog/coordinator.pyi +19 -0
  638. homeassistant-stubs/components/solarlog/diagnostics.pyi +10 -0
  639. homeassistant-stubs/components/solarlog/entity.pyi +23 -0
  640. homeassistant-stubs/components/solarlog/sensor.pyi +36 -0
  641. homeassistant-stubs/components/squeezebox/__init__.pyi +24 -0
  642. homeassistant-stubs/components/squeezebox/binary_sensor.pyi +17 -0
  643. homeassistant-stubs/components/squeezebox/browse_media.pyi +18 -0
  644. homeassistant-stubs/components/squeezebox/config_flow.pyi +27 -0
  645. homeassistant-stubs/components/squeezebox/const.pyi +29 -0
  646. homeassistant-stubs/components/squeezebox/coordinator.pyi +14 -0
  647. homeassistant-stubs/components/squeezebox/entity.pyi +14 -0
  648. homeassistant-stubs/components/squeezebox/media_player.pyi +111 -0
  649. homeassistant-stubs/components/squeezebox/sensor.pyi +18 -0
  650. homeassistant-stubs/components/ssdp/__init__.pyi +3 -1
  651. homeassistant-stubs/components/starlink/device_tracker.pyi +2 -5
  652. homeassistant-stubs/components/starlink/diagnostics.pyi +1 -1
  653. homeassistant-stubs/components/stt/const.pyi +6 -2
  654. homeassistant-stubs/components/surepetcare/lock.pyi +3 -4
  655. homeassistant-stubs/components/switch/__init__.pyi +2 -0
  656. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  657. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -0
  658. homeassistant-stubs/components/switchbot_cloud/entity.pyi +1 -1
  659. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +32 -0
  660. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  661. homeassistant-stubs/components/switcher_kis/config_flow.pyi +23 -2
  662. homeassistant-stubs/components/switcher_kis/coordinator.pyi +2 -0
  663. homeassistant-stubs/components/switcher_kis/cover.pyi +2 -1
  664. homeassistant-stubs/components/switcher_kis/utils.pyi +1 -1
  665. homeassistant-stubs/components/tailscale/__init__.pyi +0 -13
  666. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  667. homeassistant-stubs/components/tailscale/config_flow.pyi +2 -0
  668. homeassistant-stubs/components/tailscale/entity.pyi +15 -0
  669. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  670. homeassistant-stubs/components/tami4/button.pyi +14 -1
  671. homeassistant-stubs/components/tautulli/__init__.pyi +0 -13
  672. homeassistant-stubs/components/tautulli/entity.pyi +15 -0
  673. homeassistant-stubs/components/tautulli/sensor.pyi +2 -1
  674. homeassistant-stubs/components/tcp/binary_sensor.pyi +2 -1
  675. homeassistant-stubs/components/tcp/common.pyi +0 -17
  676. homeassistant-stubs/components/tcp/entity.pyi +21 -0
  677. homeassistant-stubs/components/tcp/sensor.pyi +2 -1
  678. homeassistant-stubs/components/threshold/binary_sensor.pyi +3 -17
  679. homeassistant-stubs/components/threshold/const.pyi +20 -5
  680. homeassistant-stubs/components/tile/device_tracker.pyi +1 -3
  681. homeassistant-stubs/components/todo/__init__.pyi +1 -1
  682. homeassistant-stubs/components/todo/const.pyi +4 -0
  683. homeassistant-stubs/components/todo/intent.pyi +2 -2
  684. homeassistant-stubs/components/tolo/__init__.pyi +3 -22
  685. homeassistant-stubs/components/tolo/binary_sensor.pyi +2 -1
  686. homeassistant-stubs/components/tolo/button.pyi +2 -1
  687. homeassistant-stubs/components/tolo/climate.pyi +2 -1
  688. homeassistant-stubs/components/tolo/coordinator.pyi +20 -0
  689. homeassistant-stubs/components/tolo/entity.pyi +11 -0
  690. homeassistant-stubs/components/tolo/fan.pyi +2 -1
  691. homeassistant-stubs/components/tolo/light.pyi +2 -1
  692. homeassistant-stubs/components/tolo/number.pyi +2 -1
  693. homeassistant-stubs/components/tolo/select.pyi +2 -1
  694. homeassistant-stubs/components/tolo/sensor.pyi +2 -1
  695. homeassistant-stubs/components/tolo/switch.pyi +2 -1
  696. homeassistant-stubs/components/tplink/number.pyi +2 -0
  697. homeassistant-stubs/components/tplink/siren.pyi +22 -0
  698. homeassistant-stubs/components/tplink_omada/__init__.pyi +2 -0
  699. homeassistant-stubs/components/tplink_omada/controller.pyi +10 -5
  700. homeassistant-stubs/components/tplink_omada/coordinator.pyi +7 -2
  701. homeassistant-stubs/components/tplink_omada/device_tracker.pyi +1 -3
  702. homeassistant-stubs/components/tplink_omada/entity.pyi +0 -1
  703. homeassistant-stubs/components/tplink_omada/update.pyi +8 -7
  704. homeassistant-stubs/components/trace/__init__.pyi +1 -2
  705. homeassistant-stubs/components/trace/const.pyi +7 -3
  706. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -9
  707. homeassistant-stubs/components/tradfri/cover.pyi +1 -1
  708. homeassistant-stubs/components/tradfri/fan.pyi +1 -1
  709. homeassistant-stubs/components/tradfri/light.pyi +1 -1
  710. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  711. homeassistant-stubs/components/tradfri/switch.pyi +1 -1
  712. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  713. homeassistant-stubs/components/tts/const.pyi +6 -1
  714. homeassistant-stubs/components/tts/helper.pyi +2 -3
  715. homeassistant-stubs/components/tts/legacy.pyi +0 -1
  716. homeassistant-stubs/components/tts/media_source.pyi +3 -3
  717. homeassistant-stubs/components/unifi/device_tracker.pyi +2 -4
  718. homeassistant-stubs/components/unifi/hub/__init__.pyi +2 -0
  719. homeassistant-stubs/components/unifi/switch.pyi +1 -1
  720. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +1 -2
  721. homeassistant-stubs/components/unifiprotect/button.pyi +1 -2
  722. homeassistant-stubs/components/unifiprotect/entity.pyi +40 -3
  723. homeassistant-stubs/components/unifiprotect/event.pyi +1 -2
  724. homeassistant-stubs/components/unifiprotect/media_source.pyi +1 -1
  725. homeassistant-stubs/components/unifiprotect/number.pyi +1 -2
  726. homeassistant-stubs/components/unifiprotect/select.pyi +1 -2
  727. homeassistant-stubs/components/unifiprotect/sensor.pyi +1 -2
  728. homeassistant-stubs/components/unifiprotect/switch.pyi +1 -2
  729. homeassistant-stubs/components/unifiprotect/text.pyi +1 -2
  730. homeassistant-stubs/components/upcloud/__init__.pyi +2 -37
  731. homeassistant-stubs/components/upcloud/binary_sensor.pyi +2 -1
  732. homeassistant-stubs/components/upcloud/const.pyi +1 -0
  733. homeassistant-stubs/components/upcloud/entity.pyi +38 -0
  734. homeassistant-stubs/components/upcloud/switch.pyi +4 -1
  735. homeassistant-stubs/components/update/__init__.pyi +1 -0
  736. homeassistant-stubs/components/uvc/__init__.pyi +0 -0
  737. homeassistant-stubs/components/uvc/camera.pyi +54 -0
  738. homeassistant-stubs/components/vacuum/__init__.pyi +21 -14
  739. homeassistant-stubs/components/vallox/__init__.pyi +6 -9
  740. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  741. homeassistant-stubs/components/vallox/const.pyi +3 -3
  742. homeassistant-stubs/components/vallox/date.pyi +1 -1
  743. homeassistant-stubs/components/vallox/entity.pyi +12 -0
  744. homeassistant-stubs/components/vallox/fan.pyi +2 -2
  745. homeassistant-stubs/components/vallox/number.pyi +1 -1
  746. homeassistant-stubs/components/vallox/sensor.pyi +2 -2
  747. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  748. homeassistant-stubs/components/valve/__init__.pyi +3 -1
  749. homeassistant-stubs/components/valve/const.pyi +9 -0
  750. homeassistant-stubs/components/velbus/climate.pyi +4 -1
  751. homeassistant-stubs/components/wallbox/const.pyi +4 -0
  752. homeassistant-stubs/components/wallbox/coordinator.pyi +3 -1
  753. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  754. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  755. homeassistant-stubs/components/water_heater/__init__.pyi +2 -0
  756. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  757. homeassistant-stubs/components/weather/const.pyi +5 -0
  758. homeassistant-stubs/components/weather/intent.pyi +1 -3
  759. homeassistant-stubs/components/weather/websocket_api.pyi +1 -2
  760. homeassistant-stubs/components/webostv/device_trigger.pyi +1 -2
  761. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -0
  762. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +9 -1
  763. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +10 -6
  764. homeassistant-stubs/components/yale_smart_alarm/switch.pyi +20 -0
  765. homeassistant-stubs/components/youtube/const.pyi +1 -0
  766. homeassistant-stubs/components/youtube/coordinator.pyi +1 -1
  767. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  768. homeassistant-stubs/components/zeroconf/__init__.pyi +4 -0
  769. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +1 -0
  770. homeassistant-stubs/components/zwave_js/cover.pyi +5 -0
  771. homeassistant-stubs/components/zwave_js/device_condition.pyi +1 -1
  772. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -2
  773. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -2
  774. homeassistant-stubs/components/zwave_js/discovery.pyi +1 -0
  775. homeassistant-stubs/components/zwave_js/light.pyi +8 -6
  776. homeassistant-stubs/components/zwave_js/lock.pyi +2 -3
  777. homeassistant-stubs/components/zwave_js/migrate.pyi +8 -7
  778. homeassistant-stubs/components/zwave_js/sensor.pyi +8 -4
  779. homeassistant-stubs/config_entries.pyi +9 -4
  780. homeassistant-stubs/const.pyi +19 -8
  781. homeassistant-stubs/helpers/aiohttp_client.pyi +8 -7
  782. homeassistant-stubs/helpers/condition.pyi +2 -0
  783. homeassistant-stubs/helpers/config_validation.pyi +5 -1
  784. homeassistant-stubs/helpers/discovery.pyi +1 -1
  785. homeassistant-stubs/helpers/discovery_flow.pyi +12 -2
  786. homeassistant-stubs/helpers/frame.pyi +1 -1
  787. homeassistant-stubs/helpers/llm.pyi +5 -5
  788. homeassistant-stubs/helpers/script.pyi +1 -1
  789. homeassistant-stubs/helpers/state.pyi +2 -1
  790. homeassistant-stubs/helpers/template.pyi +5 -1
  791. homeassistant-stubs/util/aiohttp.pyi +10 -0
  792. homeassistant-stubs/util/package.pyi +3 -0
  793. homeassistant-stubs/util/ssl.pyi +8 -4
  794. homeassistant-stubs/util/unit_conversion.pyi +2 -0
  795. homeassistant-stubs/util/unit_system.pyi +1 -0
  796. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0b0.dist-info}/METADATA +2 -2
  797. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0b0.dist-info}/RECORD +828 -705
  798. homeassistant-stubs/components/esphome/voice_assistant.pyi +0 -66
  799. homeassistant-stubs/components/notion/model.pyi +0 -7
  800. homeassistant-stubs/components/overkiz/climate.pyi +0 -10
  801. homeassistant-stubs/components/overkiz/cover.pyi +0 -11
  802. homeassistant-stubs/components/overkiz/water_heater_entities/__init__.pyi +0 -8
  803. homeassistant-stubs/components/rainmachine/model.pyi +0 -7
  804. homeassistant-stubs/components/recorder/history/common.pyi +0 -4
  805. homeassistant-stubs/components/unifiprotect/models.pyi +0 -44
  806. /homeassistant-stubs/components/deconz/{deconz_device.pyi → entity.pyi} +0 -0
  807. /homeassistant-stubs/components/devolo_home_control/{devolo_device.pyi → entity.pyi} +0 -0
  808. /homeassistant-stubs/components/knx/{knx_entity.pyi → entity.pyi} +0 -0
  809. /homeassistant-stubs/components/modbus/{base_platform.pyi → entity.pyi} +0 -0
  810. /homeassistant-stubs/components/mysensors/{device.pyi → entity.pyi} +0 -0
  811. /homeassistant-stubs/components/onewire/{onewire_entities.pyi → entity.pyi} +0 -0
  812. /homeassistant-stubs/components/{overkiz/cover_entities → onkyo}/__init__.pyi +0 -0
  813. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater.pyi +0 -0
  814. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +0 -0
  815. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_electrical_towel_dryer.pyi +0 -0
  816. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_heat_recovery_ventilation.pyi +0 -0
  817. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heat_pump_main_component.pyi +0 -0
  818. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_heating_zone.pyi +0 -0
  819. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control.pyi +0 -0
  820. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/atlantic_pass_apc_zone_control_zone.pyi +0 -0
  821. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_hlrrwifi.pyi +0 -0
  822. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/hitachi_air_to_air_heat_pump_ovp.pyi +0 -0
  823. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_heating_temperature_interface.pyi +0 -0
  824. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/somfy_thermostat.pyi +0 -0
  825. /homeassistant-stubs/components/overkiz/{climate_entities → climate}/valve_heating_temperature_interface.pyi +0 -0
  826. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/awning.pyi +0 -0
  827. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/generic_cover.pyi +0 -0
  828. /homeassistant-stubs/components/overkiz/{cover_entities → cover}/vertical_cover.pyi +0 -0
  829. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_domestic_hot_water_production_mlb_component.pyi +0 -0
  830. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/atlantic_pass_apc_dhw.pyi +0 -0
  831. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/domestic_hot_water_production.pyi +0 -0
  832. /homeassistant-stubs/components/overkiz/{water_heater_entities → water_heater}/hitachi_dhw.pyi +0 -0
  833. /homeassistant-stubs/components/roborock/{device.pyi → entity.pyi} +0 -0
  834. /homeassistant-stubs/components/tradfri/{base_class.pyi → entity.pyi} +0 -0
  835. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0b0.dist-info}/WHEEL +0 -0
  836. {homeassistant_stubs-2024.9.3.dist-info → homeassistant_stubs-2024.10.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -10,7 +10,7 @@ from collections.abc import Callable as Callable, Mapping
10
10
  from dataclasses import dataclass
11
11
  from datetime import timedelta
12
12
  from functools import cached_property as cached_property
13
- from homeassistant.components.device_tracker import DOMAIN as DOMAIN, ScannerEntity as ScannerEntity, SourceType as SourceType
13
+ from homeassistant.components.device_tracker import ScannerEntity as ScannerEntity, ScannerEntityDescription as ScannerEntityDescription
14
14
  from homeassistant.core import Event as core_Event, HomeAssistant as HomeAssistant, callback as callback
15
15
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
16
16
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -32,7 +32,7 @@ def async_client_is_connected_fn(hub: UnifiHub, obj_id: str) -> bool: ...
32
32
  def async_device_heartbeat_timedelta_fn(hub: UnifiHub, obj_id: str) -> timedelta: ...
33
33
 
34
34
  @dataclass(frozen=True, kw_only=True)
35
- class UnifiTrackerEntityDescription(UnifiEntityDescription[HandlerT, ApiItemT]):
35
+ class UnifiTrackerEntityDescription(UnifiEntityDescription[HandlerT, ApiItemT], ScannerEntityDescription):
36
36
  heartbeat_timedelta_fn: Callable[[UnifiHub, str], timedelta]
37
37
  ip_address_fn: Callable[[aiounifi.Controller, str], str | None]
38
38
  is_connected_fn: Callable[[UnifiHub, str], bool]
@@ -59,8 +59,6 @@ class UnifiScannerEntity(UnifiEntity[HandlerT, ApiItemT], ScannerEntity):
59
59
  @cached_property
60
60
  def mac_address(self) -> str: ...
61
61
  @cached_property
62
- def source_type(self) -> SourceType: ...
63
- @cached_property
64
62
  def unique_id(self) -> str: ...
65
63
  def _make_disconnected(self, *_: core_Event) -> None: ...
66
64
  def async_update_state(self, event: ItemEvent, obj_id: str) -> None: ...
@@ -1,2 +1,4 @@
1
1
  from .api import get_unifi_api as get_unifi_api
2
2
  from .hub import UnifiHub as UnifiHub
3
+
4
+ __all__ = ['UnifiHub', 'get_unifi_api']
@@ -10,7 +10,7 @@ from aiounifi.models.dpi_restriction_group import DPIRestrictionGroup
10
10
  from aiounifi.models.event import Event as Event
11
11
  from collections.abc import Callable as Callable, Coroutine
12
12
  from dataclasses import dataclass
13
- from homeassistant.components.switch import DOMAIN as DOMAIN, SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
13
+ from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass, SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
14
14
  from homeassistant.const import EntityCategory as EntityCategory
15
15
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
16
16
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
@@ -1,7 +1,6 @@
1
1
  import dataclasses
2
2
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
3
- from .entity import BaseProtectEntity as BaseProtectEntity, EventEntityMixin as EventEntityMixin, ProtectDeviceEntity as ProtectDeviceEntity, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, async_all_device_entities as async_all_device_entities
4
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectEventMixin as ProtectEventMixin
3
+ from .entity import BaseProtectEntity as BaseProtectEntity, EventEntityMixin as EventEntityMixin, PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectEventMixin as ProtectEventMixin, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, async_all_device_entities as async_all_device_entities
5
4
  from _typeshed import Incomplete
6
5
  from collections.abc import Sequence
7
6
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
@@ -1,7 +1,6 @@
1
1
  from .const import DEVICES_THAT_ADOPT as DEVICES_THAT_ADOPT, DOMAIN as DOMAIN
2
2
  from .data import ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
3
- from .entity import ProtectDeviceEntity as ProtectDeviceEntity, async_all_device_entities as async_all_device_entities
4
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T
3
+ from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
5
4
  from _typeshed import Incomplete
6
5
  from collections.abc import Sequence
7
6
  from dataclasses import dataclass
@@ -1,15 +1,23 @@
1
1
  from .const import ATTR_EVENT_ID as ATTR_EVENT_ID, ATTR_EVENT_SCORE as ATTR_EVENT_SCORE, DEFAULT_ATTRIBUTION as DEFAULT_ATTRIBUTION, DEFAULT_BRAND as DEFAULT_BRAND, DOMAIN as DOMAIN
2
2
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType
3
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectEventMixin as ProtectEventMixin
4
3
  from _typeshed import Incomplete
5
- from collections.abc import Callable as Callable, Sequence
4
+ from collections.abc import Callable as Callable, Coroutine, Sequence
5
+ from dataclasses import dataclass
6
6
  from datetime import datetime
7
+ from enum import Enum
7
8
  from homeassistant.core import callback as callback
8
9
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
10
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
10
- from uiprotect.data import Event as Event, ModelType, NVR as NVR, ProtectAdoptableDeviceModel
11
+ from typing import Any, Generic, TypeVar
12
+ from uiprotect.data import Event as Event, ModelType, NVR, ProtectAdoptableDeviceModel, SmartDetectObjectType as SmartDetectObjectType
11
13
 
12
14
  _LOGGER: Incomplete
15
+ T = TypeVar('T', bound=ProtectAdoptableDeviceModel | NVR)
16
+
17
+ class PermRequired(int, Enum):
18
+ NO_WRITE = 1
19
+ WRITE = 2
20
+ DELETE = 3
13
21
 
14
22
  def _async_device_entities(data: ProtectData, klass: type[BaseProtectEntity], model_type: ModelType, descs: Sequence[ProtectEntityDescription], unadopted_descs: Sequence[ProtectEntityDescription] | None = None, ufp_device: ProtectAdoptableDeviceModel | None = None) -> list[BaseProtectEntity]: ...
15
23
 
@@ -63,3 +71,32 @@ class EventEntityMixin(ProtectDeviceEntity):
63
71
  def _set_event_attrs(self, event: Event) -> None: ...
64
72
  def _async_event_with_immediate_end(self) -> None: ...
65
73
  def _event_already_ended(self, prev_event: Event | None, prev_event_end: datetime | None) -> bool: ...
74
+
75
+ @dataclass(frozen=True, kw_only=True)
76
+ class ProtectEntityDescription(EntityDescription, Generic[T]):
77
+ ufp_required_field: str | None = ...
78
+ ufp_value: str | None = ...
79
+ ufp_value_fn: Callable[[T], Any] | None = ...
80
+ ufp_enabled: str | None = ...
81
+ ufp_perm: PermRequired | None = ...
82
+ has_required: Callable[[T], bool] = ...
83
+ get_ufp_enabled: Callable[[T], bool] | None = ...
84
+ def get_ufp_value(self, obj: T) -> Any: ...
85
+ def __post_init__(self) -> None: ...
86
+ 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=..., ufp_required_field=..., ufp_value=..., ufp_value_fn=..., ufp_enabled=..., ufp_perm=..., has_required=..., get_ufp_enabled=...) -> None: ...
87
+
88
+ @dataclass(frozen=True, kw_only=True)
89
+ class ProtectEventMixin(ProtectEntityDescription[T]):
90
+ ufp_event_obj: str | None = ...
91
+ ufp_obj_type: SmartDetectObjectType | None = ...
92
+ def get_event_obj(self, obj: T) -> Event | None: ...
93
+ def has_matching_smart(self, event: Event) -> bool: ...
94
+ def __post_init__(self) -> None: ...
95
+ 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=..., ufp_required_field=..., ufp_value=..., ufp_value_fn=..., ufp_enabled=..., ufp_perm=..., has_required=..., get_ufp_enabled=..., ufp_event_obj=..., ufp_obj_type=...) -> None: ...
96
+
97
+ @dataclass(frozen=True, kw_only=True)
98
+ class ProtectSetableKeysMixin(ProtectEntityDescription[T]):
99
+ ufp_set_method: str | None = ...
100
+ ufp_set_method_fn: Callable[[T, Any], Coroutine[Any, Any, None]] | None = ...
101
+ async def ufp_set(self, obj: T, value: Any) -> None: ...
102
+ 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=..., ufp_required_field=..., ufp_value=..., ufp_value_fn=..., ufp_enabled=..., ufp_perm=..., has_required=..., get_ufp_enabled=..., ufp_set_method=..., ufp_set_method_fn=...) -> None: ...
@@ -1,8 +1,7 @@
1
1
  import dataclasses
2
2
  from .const import ATTR_EVENT_ID as ATTR_EVENT_ID
3
3
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
4
- from .entity import EventEntityMixin as EventEntityMixin, ProtectDeviceEntity as ProtectDeviceEntity
5
- from .models import ProtectEventMixin as ProtectEventMixin
4
+ from .entity import EventEntityMixin as EventEntityMixin, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEventMixin as ProtectEventMixin
6
5
  from _typeshed import Incomplete
7
6
  from homeassistant.components.event import EventDeviceClass as EventDeviceClass, EventEntity as EventEntity, EventEntityDescription as EventEntityDescription
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
@@ -6,7 +6,7 @@ from datetime import date, datetime, timedelta
6
6
  from enum import Enum
7
7
  from homeassistant.components.camera import CameraImageView as CameraImageView
8
8
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass
9
- from homeassistant.components.media_source.models import BrowseMediaSource as BrowseMediaSource, MediaSource as MediaSource, MediaSourceItem as MediaSourceItem, PlayMedia as PlayMedia
9
+ from homeassistant.components.media_source import BrowseMediaSource as BrowseMediaSource, MediaSource as MediaSource, MediaSourceItem as MediaSourceItem, PlayMedia as PlayMedia
10
10
  from homeassistant.const import Platform as Platform
11
11
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
12
12
  from homeassistant.helpers import entity_registry as er
@@ -1,6 +1,5 @@
1
1
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import ProtectDeviceEntity as ProtectDeviceEntity, async_all_device_entities as async_all_device_entities
3
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T
2
+ from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
4
3
  from _typeshed import Incomplete
5
4
  from collections.abc import Sequence
6
5
  from dataclasses import dataclass
@@ -1,7 +1,6 @@
1
1
  from .const import TYPE_EMPTY_VALUE as TYPE_EMPTY_VALUE
2
2
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
3
- from .entity import ProtectDeviceEntity as ProtectDeviceEntity, async_all_device_entities as async_all_device_entities
4
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T
3
+ from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
5
4
  from .utils import async_get_light_motion_current as async_get_light_motion_current
6
5
  from _typeshed import Incomplete
7
6
  from collections.abc import Callable as Callable, Sequence
@@ -1,6 +1,5 @@
1
1
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import BaseProtectEntity as BaseProtectEntity, EventEntityMixin as EventEntityMixin, ProtectDeviceEntity as ProtectDeviceEntity, ProtectNVREntity as ProtectNVREntity, async_all_device_entities as async_all_device_entities
3
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectEventMixin as ProtectEventMixin, T as T
2
+ from .entity import BaseProtectEntity as BaseProtectEntity, EventEntityMixin as EventEntityMixin, PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectEventMixin as ProtectEventMixin, ProtectNVREntity as ProtectNVREntity, T as T, async_all_device_entities as async_all_device_entities
4
3
  from .utils import async_get_light_motion_current as async_get_light_motion_current
5
4
  from _typeshed import Incomplete
6
5
  from collections.abc import Callable as Callable, Sequence
@@ -1,6 +1,5 @@
1
1
  from .data import ProtectData as ProtectData, ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import BaseProtectEntity as BaseProtectEntity, ProtectDeviceEntity as ProtectDeviceEntity, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, async_all_device_entities as async_all_device_entities
3
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T
2
+ from .entity import BaseProtectEntity as BaseProtectEntity, PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectIsOnEntity as ProtectIsOnEntity, ProtectNVREntity as ProtectNVREntity, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
4
3
  from _typeshed import Incomplete
5
4
  from collections.abc import Sequence
6
5
  from dataclasses import dataclass
@@ -1,6 +1,5 @@
1
1
  from .data import ProtectDeviceType as ProtectDeviceType, UFPConfigEntry as UFPConfigEntry
2
- from .entity import ProtectDeviceEntity as ProtectDeviceEntity, async_all_device_entities as async_all_device_entities
3
- from .models import PermRequired as PermRequired, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T
2
+ from .entity import PermRequired as PermRequired, ProtectDeviceEntity as ProtectDeviceEntity, ProtectEntityDescription as ProtectEntityDescription, ProtectSetableKeysMixin as ProtectSetableKeysMixin, T as T, async_all_device_entities as async_all_device_entities
4
3
  from _typeshed import Incomplete
5
4
  from collections.abc import Sequence
6
5
  from dataclasses import dataclass
@@ -1,30 +1,15 @@
1
1
  import dataclasses
2
- import upcloud_api
3
- from .const import CONFIG_ENTRY_UPDATE_SIGNAL_TEMPLATE as CONFIG_ENTRY_UPDATE_SIGNAL_TEMPLATE, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL, DOMAIN as DOMAIN
2
+ from .const import CONFIG_ENTRY_UPDATE_SIGNAL_TEMPLATE as CONFIG_ENTRY_UPDATE_SIGNAL_TEMPLATE, DATA_UPCLOUD as DATA_UPCLOUD, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL
4
3
  from .coordinator import UpCloudDataUpdateCoordinator as UpCloudDataUpdateCoordinator
5
4
  from _typeshed import Incomplete
6
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
- from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_USERNAME as CONF_USERNAME, Platform as Platform, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, STATE_PROBLEM as STATE_PROBLEM
6
+ from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_USERNAME as CONF_USERNAME, Platform as Platform
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
9
8
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
10
- from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
11
9
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
12
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
13
- from typing import Any
14
10
 
15
11
  _LOGGER: Incomplete
16
- ATTR_CORE_NUMBER: str
17
- ATTR_HOSTNAME: str
18
- ATTR_MEMORY_AMOUNT: str
19
- ATTR_TITLE: str
20
- ATTR_UUID: str
21
- ATTR_ZONE: str
22
- CONF_SERVERS: str
23
- DATA_UPCLOUD: str
24
- DEFAULT_COMPONENT_NAME: str
25
12
  PLATFORMS: Incomplete
26
- SIGNAL_UPDATE_UPCLOUD: str
27
- STATE_MAP: Incomplete
28
13
 
29
14
  @dataclasses.dataclass
30
15
  class UpCloudHassData:
@@ -35,23 +20,3 @@ def _config_entry_update_signal_name(config_entry: ConfigEntry) -> str: ...
35
20
  async def _async_signal_options_update(hass: HomeAssistant, config_entry: ConfigEntry) -> None: ...
36
21
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
37
22
  async def async_unload_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: ...
38
-
39
- class UpCloudServerEntity(CoordinatorEntity[UpCloudDataUpdateCoordinator]):
40
- uuid: Incomplete
41
- def __init__(self, coordinator: UpCloudDataUpdateCoordinator, uuid: str) -> None: ...
42
- @property
43
- def _server(self) -> upcloud_api.Server: ...
44
- @property
45
- def unique_id(self) -> str: ...
46
- @property
47
- def name(self) -> str: ...
48
- @property
49
- def icon(self) -> str: ...
50
- @property
51
- def is_on(self) -> bool: ...
52
- @property
53
- def available(self) -> bool: ...
54
- @property
55
- def extra_state_attributes(self) -> dict[str, Any]: ...
56
- @property
57
- def device_info(self) -> DeviceInfo: ...
@@ -1,4 +1,5 @@
1
- from . import DATA_UPCLOUD as DATA_UPCLOUD, UpCloudServerEntity as UpCloudServerEntity
1
+ from .const import DATA_UPCLOUD as DATA_UPCLOUD
2
+ from .entity import UpCloudServerEntity as UpCloudServerEntity
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
@@ -1,5 +1,6 @@
1
1
  from _typeshed import Incomplete
2
2
 
3
3
  DOMAIN: str
4
+ DATA_UPCLOUD: str
4
5
  DEFAULT_SCAN_INTERVAL: Incomplete
5
6
  CONFIG_ENTRY_UPDATE_SIGNAL_TEMPLATE: Incomplete
@@ -0,0 +1,38 @@
1
+ import upcloud_api
2
+ from .const import DOMAIN as DOMAIN
3
+ from .coordinator import UpCloudDataUpdateCoordinator as UpCloudDataUpdateCoordinator
4
+ from _typeshed import Incomplete
5
+ from homeassistant.const import CONF_USERNAME as CONF_USERNAME, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON, STATE_PROBLEM as STATE_PROBLEM
6
+ from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
7
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
8
+ from typing import Any
9
+
10
+ _LOGGER: Incomplete
11
+ ATTR_CORE_NUMBER: str
12
+ ATTR_HOSTNAME: str
13
+ ATTR_MEMORY_AMOUNT: str
14
+ ATTR_TITLE: str
15
+ ATTR_UUID: str
16
+ ATTR_ZONE: str
17
+ DEFAULT_COMPONENT_NAME: str
18
+ STATE_MAP: Incomplete
19
+
20
+ class UpCloudServerEntity(CoordinatorEntity[UpCloudDataUpdateCoordinator]):
21
+ uuid: Incomplete
22
+ def __init__(self, coordinator: UpCloudDataUpdateCoordinator, uuid: str) -> None: ...
23
+ @property
24
+ def _server(self) -> upcloud_api.Server: ...
25
+ @property
26
+ def unique_id(self) -> str: ...
27
+ @property
28
+ def name(self) -> str: ...
29
+ @property
30
+ def icon(self) -> str: ...
31
+ @property
32
+ def is_on(self) -> bool: ...
33
+ @property
34
+ def available(self) -> bool: ...
35
+ @property
36
+ def extra_state_attributes(self) -> dict[str, Any]: ...
37
+ @property
38
+ def device_info(self) -> DeviceInfo: ...
@@ -1,4 +1,5 @@
1
- from . import DATA_UPCLOUD as DATA_UPCLOUD, SIGNAL_UPDATE_UPCLOUD as SIGNAL_UPDATE_UPCLOUD, UpCloudServerEntity as UpCloudServerEntity
1
+ from .const import DATA_UPCLOUD as DATA_UPCLOUD
2
+ from .entity import UpCloudServerEntity as UpCloudServerEntity
2
3
  from homeassistant.components.switch import SwitchEntity as SwitchEntity
3
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
5
  from homeassistant.const import CONF_USERNAME as CONF_USERNAME, STATE_OFF as STATE_OFF
@@ -7,6 +8,8 @@ from homeassistant.helpers.dispatcher import dispatcher_send as dispatcher_send
7
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
9
  from typing import Any
9
10
 
11
+ SIGNAL_UPDATE_UPCLOUD: str
12
+
10
13
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
14
 
12
15
  class UpCloudSwitch(UpCloudServerEntity, SwitchEntity):
@@ -68,6 +68,7 @@ class UpdateEntity(RestoreEntity, cached_properties=CACHED_PROPERTIES_WITH_ATTR_
68
68
  def install(self, version: str | None, backup: bool, **kwargs: Any) -> None: ...
69
69
  async def async_release_notes(self) -> str | None: ...
70
70
  def release_notes(self) -> str | None: ...
71
+ def version_is_newer(self, latest_version: str, installed_version: str) -> bool: ...
71
72
  @property
72
73
  def state(self) -> str | None: ...
73
74
  @property
File without changes
@@ -0,0 +1,54 @@
1
+ from _typeshed import Incomplete
2
+ from datetime import datetime
3
+ from homeassistant.components.camera import Camera as Camera, CameraEntityFeature as CameraEntityFeature
4
+ from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_SSL as CONF_SSL
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.exceptions import PlatformNotReady as PlatformNotReady
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
+ from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
9
+ from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp
10
+ from typing import Any
11
+ from uvcclient.camera import UVCCameraClient as UVCCameraClient
12
+ from uvcclient.nvr import UVCRemote as UVCRemote
13
+
14
+ _LOGGER: Incomplete
15
+ CONF_NVR: str
16
+ CONF_KEY: str
17
+ DEFAULT_PASSWORD: str
18
+ DEFAULT_PORT: int
19
+ DEFAULT_SSL: bool
20
+ PLATFORM_SCHEMA: Incomplete
21
+
22
+ def setup_platform(hass: HomeAssistant, config: ConfigType, add_entities: AddEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
23
+
24
+ class UnifiVideoCamera(Camera):
25
+ _attr_should_poll: bool
26
+ _attr_brand: str
27
+ _attr_is_streaming: bool
28
+ _caminfo: dict[str, Any]
29
+ _nvr: Incomplete
30
+ _uuid: Incomplete
31
+ _attr_name: Incomplete
32
+ _password: Incomplete
33
+ _connect_addr: Incomplete
34
+ _camera: Incomplete
35
+ def __init__(self, camera: UVCRemote, uuid: str, name: str, password: str) -> None: ...
36
+ @property
37
+ def supported_features(self) -> CameraEntityFeature: ...
38
+ @property
39
+ def extra_state_attributes(self) -> dict[str, Any]: ...
40
+ @property
41
+ def is_recording(self) -> bool: ...
42
+ @property
43
+ def motion_detection_enabled(self) -> bool: ...
44
+ @property
45
+ def model(self) -> str: ...
46
+ def _login(self) -> bool: ...
47
+ def camera_image(self, width: int | None = None, height: int | None = None) -> bytes | None: ...
48
+ def set_motion_detection(self, mode: bool) -> None: ...
49
+ def enable_motion_detection(self) -> None: ...
50
+ def disable_motion_detection(self) -> None: ...
51
+ async def stream_source(self) -> str | None: ...
52
+ def update(self) -> None: ...
53
+
54
+ def timestamp_ms_to_date(epoch_ms: int) -> datetime | None: ...
@@ -5,14 +5,17 @@ from functools import cached_property as cached_property
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import ATTR_BATTERY_LEVEL as ATTR_BATTERY_LEVEL, ATTR_COMMAND as ATTR_COMMAND, SERVICE_TOGGLE as SERVICE_TOGGLE, SERVICE_TURN_OFF as SERVICE_TURN_OFF, SERVICE_TURN_ON as SERVICE_TURN_ON, STATE_IDLE as STATE_IDLE, STATE_ON as STATE_ON, STATE_PAUSED as STATE_PAUSED
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant
8
+ from homeassistant.helpers.deprecation import DeprecatedConstantEnum as DeprecatedConstantEnum, all_with_deprecated_constants as all_with_deprecated_constants, check_if_deprecated_constant as check_if_deprecated_constant, dir_with_deprecated_constants as dir_with_deprecated_constants
8
9
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
9
10
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
10
11
  from homeassistant.helpers.icon import icon_for_battery_level as icon_for_battery_level
11
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
13
  from homeassistant.loader import bind_hass as bind_hass
14
+ from homeassistant.util.hass_dict import HassKey as HassKey
13
15
  from typing import Any
14
16
 
15
17
  _LOGGER: Incomplete
18
+ DATA_COMPONENT: HassKey[EntityComponent[StateVacuumEntity]]
16
19
  ENTITY_ID_FORMAT: Incomplete
17
20
  PLATFORM_SCHEMA: Incomplete
18
21
  PLATFORM_SCHEMA_BASE: Incomplete
@@ -51,20 +54,20 @@ class VacuumEntityFeature(IntFlag):
51
54
  STATE = 4096
52
55
  START = 8192
53
56
 
54
- SUPPORT_TURN_ON: int
55
- SUPPORT_TURN_OFF: int
56
- SUPPORT_PAUSE: int
57
- SUPPORT_STOP: int
58
- SUPPORT_RETURN_HOME: int
59
- SUPPORT_FAN_SPEED: int
60
- SUPPORT_BATTERY: int
61
- SUPPORT_STATUS: int
62
- SUPPORT_SEND_COMMAND: int
63
- SUPPORT_LOCATE: int
64
- SUPPORT_CLEAN_SPOT: int
65
- SUPPORT_MAP: int
66
- SUPPORT_STATE: int
67
- SUPPORT_START: int
57
+ _DEPRECATED_SUPPORT_TURN_ON: Incomplete
58
+ _DEPRECATED_SUPPORT_TURN_OFF: Incomplete
59
+ _DEPRECATED_SUPPORT_PAUSE: Incomplete
60
+ _DEPRECATED_SUPPORT_STOP: Incomplete
61
+ _DEPRECATED_SUPPORT_RETURN_HOME: Incomplete
62
+ _DEPRECATED_SUPPORT_FAN_SPEED: Incomplete
63
+ _DEPRECATED_SUPPORT_BATTERY: Incomplete
64
+ _DEPRECATED_SUPPORT_STATUS: Incomplete
65
+ _DEPRECATED_SUPPORT_SEND_COMMAND: Incomplete
66
+ _DEPRECATED_SUPPORT_LOCATE: Incomplete
67
+ _DEPRECATED_SUPPORT_CLEAN_SPOT: Incomplete
68
+ _DEPRECATED_SUPPORT_MAP: Incomplete
69
+ _DEPRECATED_SUPPORT_STATE: Incomplete
70
+ _DEPRECATED_SUPPORT_START: Incomplete
68
71
 
69
72
  def is_on(hass: HomeAssistant, entity_id: str) -> bool: ...
70
73
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
@@ -119,3 +122,7 @@ class StateVacuumEntity(Entity, cached_properties=STATE_VACUUM_CACHED_PROPERTIES
119
122
  async def async_start(self) -> None: ...
120
123
  def pause(self) -> None: ...
121
124
  async def async_pause(self) -> None: ...
125
+
126
+ __getattr__: Incomplete
127
+ __dir__: Incomplete
128
+ __all__: Incomplete
@@ -1,12 +1,10 @@
1
1
  import voluptuous as vol
2
- from .const import DEFAULT_FAN_SPEED_AWAY as DEFAULT_FAN_SPEED_AWAY, DEFAULT_FAN_SPEED_BOOST as DEFAULT_FAN_SPEED_BOOST, DEFAULT_FAN_SPEED_HOME as DEFAULT_FAN_SPEED_HOME, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
+ from .const import DEFAULT_FAN_SPEED_AWAY as DEFAULT_FAN_SPEED_AWAY, DEFAULT_FAN_SPEED_BOOST as DEFAULT_FAN_SPEED_BOOST, DEFAULT_FAN_SPEED_HOME as DEFAULT_FAN_SPEED_HOME, DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN, I18N_KEY_TO_VALLOX_PROFILE as I18N_KEY_TO_VALLOX_PROFILE
3
3
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, Platform as Platform
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall
8
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
- from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
10
8
  from typing import NamedTuple
11
9
  from vallox_websocket_api import Vallox
12
10
 
@@ -15,6 +13,9 @@ CONFIG_SCHEMA: Incomplete
15
13
  PLATFORMS: list[str]
16
14
  ATTR_PROFILE_FAN_SPEED: str
17
15
  SERVICE_SCHEMA_SET_PROFILE_FAN_SPEED: Incomplete
16
+ ATTR_PROFILE: str
17
+ ATTR_DURATION: str
18
+ SERVICE_SCHEMA_SET_PROFILE: Incomplete
18
19
 
19
20
  class ServiceMethodDetails(NamedTuple):
20
21
  method: str
@@ -23,6 +24,7 @@ class ServiceMethodDetails(NamedTuple):
23
24
  SERVICE_SET_PROFILE_FAN_SPEED_HOME: str
24
25
  SERVICE_SET_PROFILE_FAN_SPEED_AWAY: str
25
26
  SERVICE_SET_PROFILE_FAN_SPEED_BOOST: str
27
+ SERVICE_SET_PROFILE: str
26
28
  SERVICE_TO_METHOD: Incomplete
27
29
 
28
30
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
@@ -35,10 +37,5 @@ class ValloxServiceHandler:
35
37
  async def async_set_profile_fan_speed_home(self, fan_speed: int = ...) -> bool: ...
36
38
  async def async_set_profile_fan_speed_away(self, fan_speed: int = ...) -> bool: ...
37
39
  async def async_set_profile_fan_speed_boost(self, fan_speed: int = ...) -> bool: ...
40
+ async def async_set_profile(self, profile: str, duration: int | None = None) -> bool: ...
38
41
  async def async_handle(self, call: ServiceCall) -> None: ...
39
-
40
- class ValloxEntity(CoordinatorEntity[ValloxDataUpdateCoordinator]):
41
- _attr_has_entity_name: bool
42
- _device_uuid: Incomplete
43
- _attr_device_info: Incomplete
44
- def __init__(self, name: str, coordinator: ValloxDataUpdateCoordinator) -> None: ...
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.binary_sensor import BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
@@ -12,7 +12,7 @@ MODE_OFF: int
12
12
  DEFAULT_FAN_SPEED_HOME: int
13
13
  DEFAULT_FAN_SPEED_AWAY: int
14
14
  DEFAULT_FAN_SPEED_BOOST: int
15
- VALLOX_PROFILE_TO_PRESET_MODE_SETTABLE: Incomplete
16
- VALLOX_PROFILE_TO_PRESET_MODE_REPORTABLE: Incomplete
17
- PRESET_MODE_TO_VALLOX_PROFILE_SETTABLE: Incomplete
15
+ I18N_KEY_TO_VALLOX_PROFILE: Incomplete
16
+ VALLOX_PROFILE_TO_PRESET_MODE: Incomplete
17
+ PRESET_MODE_TO_VALLOX_PROFILE: Incomplete
18
18
  VALLOX_CELL_STATE_TO_STR: Incomplete
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from datetime import date
6
6
  from homeassistant.components.date import DateEntity as DateEntity
@@ -0,0 +1,12 @@
1
+ from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
+ from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from _typeshed import Incomplete
4
+ from homeassistant.const import CONF_HOST as CONF_HOST
5
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
6
+ from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
7
+
8
+ class ValloxEntity(CoordinatorEntity[ValloxDataUpdateCoordinator]):
9
+ _attr_has_entity_name: bool
10
+ _device_uuid: Incomplete
11
+ _attr_device_info: Incomplete
12
+ def __init__(self, name: str, coordinator: ValloxDataUpdateCoordinator) -> None: ...
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
- from .const import DOMAIN as DOMAIN, METRIC_KEY_MODE as METRIC_KEY_MODE, METRIC_KEY_PROFILE_FAN_SPEED_AWAY as METRIC_KEY_PROFILE_FAN_SPEED_AWAY, METRIC_KEY_PROFILE_FAN_SPEED_BOOST as METRIC_KEY_PROFILE_FAN_SPEED_BOOST, METRIC_KEY_PROFILE_FAN_SPEED_HOME as METRIC_KEY_PROFILE_FAN_SPEED_HOME, MODE_OFF as MODE_OFF, MODE_ON as MODE_ON, PRESET_MODE_TO_VALLOX_PROFILE_SETTABLE as PRESET_MODE_TO_VALLOX_PROFILE_SETTABLE, VALLOX_PROFILE_TO_PRESET_MODE_REPORTABLE as VALLOX_PROFILE_TO_PRESET_MODE_REPORTABLE
1
+ from .const import DOMAIN as DOMAIN, METRIC_KEY_MODE as METRIC_KEY_MODE, METRIC_KEY_PROFILE_FAN_SPEED_AWAY as METRIC_KEY_PROFILE_FAN_SPEED_AWAY, METRIC_KEY_PROFILE_FAN_SPEED_BOOST as METRIC_KEY_PROFILE_FAN_SPEED_BOOST, METRIC_KEY_PROFILE_FAN_SPEED_HOME as METRIC_KEY_PROFILE_FAN_SPEED_HOME, MODE_OFF as MODE_OFF, MODE_ON as MODE_ON, PRESET_MODE_TO_VALLOX_PROFILE as PRESET_MODE_TO_VALLOX_PROFILE, VALLOX_PROFILE_TO_PRESET_MODE as VALLOX_PROFILE_TO_PRESET_MODE
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from collections.abc import Mapping
6
6
  from homeassistant.components.fan import FanEntity as FanEntity, FanEntityFeature as FanEntityFeature
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.number import NumberDeviceClass as NumberDeviceClass, NumberEntity as NumberEntity, NumberEntityDescription as NumberEntityDescription
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
- from .const import DOMAIN as DOMAIN, METRIC_KEY_MODE as METRIC_KEY_MODE, MODE_ON as MODE_ON, VALLOX_CELL_STATE_TO_STR as VALLOX_CELL_STATE_TO_STR, VALLOX_PROFILE_TO_PRESET_MODE_REPORTABLE as VALLOX_PROFILE_TO_PRESET_MODE_REPORTABLE
1
+ from .const import DOMAIN as DOMAIN, METRIC_KEY_MODE as METRIC_KEY_MODE, MODE_ON as MODE_ON, VALLOX_CELL_STATE_TO_STR as VALLOX_CELL_STATE_TO_STR, VALLOX_PROFILE_TO_PRESET_MODE as VALLOX_PROFILE_TO_PRESET_MODE
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from datetime import datetime
@@ -1,6 +1,6 @@
1
- from . import ValloxEntity as ValloxEntity
2
1
  from .const import DOMAIN as DOMAIN
3
2
  from .coordinator import ValloxDataUpdateCoordinator as ValloxDataUpdateCoordinator
3
+ from .entity import ValloxEntity as ValloxEntity
4
4
  from _typeshed import Incomplete
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
@@ -1,3 +1,4 @@
1
+ from .const import DOMAIN as DOMAIN, ValveState as ValveState
1
2
  from _typeshed import Incomplete
2
3
  from dataclasses import dataclass
3
4
  from enum import IntFlag, StrEnum
@@ -7,10 +8,11 @@ from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
8
9
  from homeassistant.helpers.entity_component import EntityComponent as EntityComponent
9
10
  from homeassistant.helpers.typing import ConfigType as ConfigType
11
+ from homeassistant.util.hass_dict import HassKey as HassKey
10
12
  from typing import Any
11
13
 
12
14
  _LOGGER: Incomplete
13
- DOMAIN: str
15
+ DATA_COMPONENT: HassKey[EntityComponent[ValveEntity]]
14
16
  ENTITY_ID_FORMAT: Incomplete
15
17
  PLATFORM_SCHEMA: Incomplete
16
18
  PLATFORM_SCHEMA_BASE: Incomplete
@@ -0,0 +1,9 @@
1
+ from enum import StrEnum
2
+
3
+ DOMAIN: str
4
+
5
+ class ValveState(StrEnum):
6
+ OPENING = 'opening'
7
+ CLOSING = 'closing'
8
+ CLOSED = 'closed'
9
+ OPEN = 'open'