homeassistant-stubs 2024.7.3__py3-none-any.whl → 2024.8.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (946) hide show
  1. homeassistant-stubs/auth/__init__.pyi +1 -1
  2. homeassistant-stubs/auth/permissions/events.pyi +3 -0
  3. homeassistant-stubs/auth/permissions/types.pyi +3 -4
  4. homeassistant-stubs/auth/permissions/util.pyi +1 -2
  5. homeassistant-stubs/auth/providers/trusted_networks.pyi +3 -2
  6. homeassistant-stubs/bootstrap.pyi +2 -2
  7. homeassistant-stubs/components/abode/__init__.pyi +1 -1
  8. homeassistant-stubs/components/abode/sensor.pyi +1 -1
  9. homeassistant-stubs/components/accuweather/sensor.pyi +1 -1
  10. homeassistant-stubs/components/adguard/sensor.pyi +1 -1
  11. homeassistant-stubs/components/adguard/switch.pyi +1 -1
  12. homeassistant-stubs/components/airgradient/__init__.pyi +2 -2
  13. homeassistant-stubs/components/airgradient/button.pyi +1 -1
  14. homeassistant-stubs/components/airgradient/coordinator.pyi +0 -4
  15. homeassistant-stubs/components/airgradient/number.pyi +1 -1
  16. homeassistant-stubs/components/airgradient/select.pyi +1 -1
  17. homeassistant-stubs/components/airgradient/sensor.pyi +2 -2
  18. homeassistant-stubs/components/airgradient/switch.pyi +1 -1
  19. homeassistant-stubs/components/airly/sensor.pyi +1 -1
  20. homeassistant-stubs/components/airnow/sensor.pyi +1 -1
  21. homeassistant-stubs/components/airq/sensor.pyi +1 -1
  22. homeassistant-stubs/components/airtouch5/climate.pyi +1 -0
  23. homeassistant-stubs/components/airtouch5/cover.pyi +34 -0
  24. homeassistant-stubs/components/airtouch5/entity.pyi +0 -2
  25. homeassistant-stubs/components/airvisual_pro/config_flow.pyi +1 -1
  26. homeassistant-stubs/components/airvisual_pro/sensor.pyi +1 -1
  27. homeassistant-stubs/components/airzone/binary_sensor.pyi +1 -1
  28. homeassistant-stubs/components/airzone/select.pyi +1 -1
  29. homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +1 -1
  30. homeassistant-stubs/components/airzone_cloud/select.pyi +1 -1
  31. homeassistant-stubs/components/airzone_cloud/sensor.pyi +1 -1
  32. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +1 -1
  33. homeassistant-stubs/components/alarm_control_panel/const.pyi +8 -8
  34. homeassistant-stubs/components/alexa/capabilities.pyi +2 -2
  35. homeassistant-stubs/components/alexa/entities.pyi +7 -3
  36. homeassistant-stubs/components/alexa/handlers.pyi +1 -1
  37. homeassistant-stubs/components/alexa/intent.pyi +4 -4
  38. homeassistant-stubs/components/amberelectric/binary_sensor.pyi +4 -0
  39. homeassistant-stubs/components/ambient_station/binary_sensor.pyi +1 -1
  40. homeassistant-stubs/components/amcrest/__init__.pyi +1 -1
  41. homeassistant-stubs/components/amcrest/binary_sensor.pyi +1 -1
  42. homeassistant-stubs/components/analytics_insights/sensor.pyi +1 -1
  43. homeassistant-stubs/components/android_ip_webcam/sensor.pyi +1 -1
  44. homeassistant-stubs/components/android_ip_webcam/switch.pyi +1 -1
  45. homeassistant-stubs/components/anova/sensor.pyi +1 -1
  46. homeassistant-stubs/components/apache_kafka/__init__.pyi +1 -1
  47. homeassistant-stubs/components/apcupsd/const.pyi +1 -0
  48. homeassistant-stubs/components/apcupsd/sensor.pyi +3 -2
  49. homeassistant-stubs/components/api/__init__.pyi +1 -1
  50. homeassistant-stubs/components/apsystems/__init__.pyi +2 -1
  51. homeassistant-stubs/components/apsystems/config_flow.pyi +2 -2
  52. homeassistant-stubs/components/apsystems/const.pyi +1 -0
  53. homeassistant-stubs/components/apsystems/sensor.pyi +1 -1
  54. homeassistant-stubs/components/apsystems/switch.pyi +21 -0
  55. homeassistant-stubs/components/aqualogic/sensor.pyi +1 -1
  56. homeassistant-stubs/components/aranet/sensor.pyi +1 -1
  57. homeassistant-stubs/components/arcam_fmj/__init__.pyi +3 -4
  58. homeassistant-stubs/components/arcam_fmj/config_flow.pyi +2 -6
  59. homeassistant-stubs/components/arcam_fmj/const.pyi +0 -3
  60. homeassistant-stubs/components/arcam_fmj/media_player.pyi +2 -3
  61. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +1 -1
  62. homeassistant-stubs/components/aseko_pool_live/entity.pyi +1 -1
  63. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  64. homeassistant-stubs/components/assist_pipeline/audio_enhancer.pyi +28 -0
  65. homeassistant-stubs/components/assist_pipeline/const.pyi +6 -0
  66. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +41 -50
  67. homeassistant-stubs/components/assist_pipeline/vad.pyi +8 -23
  68. homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +2 -2
  69. homeassistant-stubs/components/asuswrt/bridge.pyi +2 -2
  70. homeassistant-stubs/components/asuswrt/sensor.pyi +1 -1
  71. homeassistant-stubs/components/autarco/__init__.pyi +11 -0
  72. homeassistant-stubs/components/autarco/config_flow.pyi +11 -0
  73. homeassistant-stubs/components/autarco/const.pyi +6 -0
  74. homeassistant-stubs/components/autarco/coordinator.pyi +18 -0
  75. homeassistant-stubs/components/autarco/diagnostics.pyi +5 -0
  76. homeassistant-stubs/components/autarco/sensor.pyi +49 -0
  77. homeassistant-stubs/components/auth/__init__.pyi +1 -1
  78. homeassistant-stubs/components/automation/config.pyi +6 -6
  79. homeassistant-stubs/components/automation/trace.pyi +1 -1
  80. homeassistant-stubs/components/awair/sensor.pyi +1 -1
  81. homeassistant-stubs/components/axis/binary_sensor.pyi +1 -1
  82. homeassistant-stubs/components/axis/entity.pyi +1 -1
  83. homeassistant-stubs/components/axis/light.pyi +1 -1
  84. homeassistant-stubs/components/axis/switch.pyi +1 -1
  85. homeassistant-stubs/components/baf/binary_sensor.pyi +1 -1
  86. homeassistant-stubs/components/baf/fan.pyi +1 -0
  87. homeassistant-stubs/components/baf/number.pyi +1 -1
  88. homeassistant-stubs/components/baf/sensor.pyi +1 -1
  89. homeassistant-stubs/components/baf/switch.pyi +1 -1
  90. homeassistant-stubs/components/bang_olufsen/const.pyi +26 -35
  91. homeassistant-stubs/components/bayesian/helpers.pyi +1 -1
  92. homeassistant-stubs/components/binary_sensor/__init__.pyi +29 -29
  93. homeassistant-stubs/components/blueprint/importer.pyi +4 -0
  94. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +2 -2
  95. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +1 -1
  96. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +9 -17
  97. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +5 -5
  98. homeassistant-stubs/components/bmw_connected_drive/button.pyi +4 -5
  99. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +1 -0
  100. homeassistant-stubs/components/bmw_connected_drive/const.pyi +0 -1
  101. homeassistant-stubs/components/bmw_connected_drive/device_tracker.pyi +4 -4
  102. homeassistant-stubs/components/bmw_connected_drive/diagnostics.pyi +4 -5
  103. homeassistant-stubs/components/bmw_connected_drive/entity.pyi +13 -0
  104. homeassistant-stubs/components/bmw_connected_drive/lock.pyi +3 -4
  105. homeassistant-stubs/components/bmw_connected_drive/notify.pyi +4 -8
  106. homeassistant-stubs/components/bmw_connected_drive/number.pyi +4 -5
  107. homeassistant-stubs/components/bmw_connected_drive/select.pyi +4 -5
  108. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +6 -6
  109. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +4 -5
  110. homeassistant-stubs/components/bond/button.pyi +5 -4
  111. homeassistant-stubs/components/bond/cover.pyi +3 -3
  112. homeassistant-stubs/components/bond/entity.pyi +4 -3
  113. homeassistant-stubs/components/bond/fan.pyi +3 -3
  114. homeassistant-stubs/components/bond/light.pyi +3 -3
  115. homeassistant-stubs/components/braviatv/button.pyi +1 -1
  116. homeassistant-stubs/components/braviatv/const.pyi +3 -3
  117. homeassistant-stubs/components/brother/sensor.pyi +1 -1
  118. homeassistant-stubs/components/bryant_evolution/__init__.pyi +17 -0
  119. homeassistant-stubs/components/bryant_evolution/climate.pyi +43 -0
  120. homeassistant-stubs/components/bryant_evolution/config_flow.pyi +15 -0
  121. homeassistant-stubs/components/bryant_evolution/const.pyi +2 -0
  122. homeassistant-stubs/components/bryant_evolution/names.pyi +5 -0
  123. homeassistant-stubs/components/bthome/__init__.pyi +5 -5
  124. homeassistant-stubs/components/bthome/binary_sensor.pyi +3 -4
  125. homeassistant-stubs/components/bthome/coordinator.pyi +2 -2
  126. homeassistant-stubs/components/bthome/event.pyi +2 -3
  127. homeassistant-stubs/components/bthome/sensor.pyi +3 -4
  128. homeassistant-stubs/components/bthome/types.pyi +4 -0
  129. homeassistant-stubs/components/button/__init__.pyi +4 -4
  130. homeassistant-stubs/components/calendar/__init__.pyi +1 -1
  131. homeassistant-stubs/components/calendar/const.pyi +3 -3
  132. homeassistant-stubs/components/camera/__init__.pyi +4 -5
  133. homeassistant-stubs/components/camera/const.pyi +2 -2
  134. homeassistant-stubs/components/camera/prefs.pyi +1 -1
  135. homeassistant-stubs/components/canary/sensor.pyi +1 -1
  136. homeassistant-stubs/components/climate/__init__.pyi +2 -1
  137. homeassistant-stubs/components/climate/const.pyi +24 -23
  138. homeassistant-stubs/components/climate/reproduce_state.pyi +1 -1
  139. homeassistant-stubs/components/cloud/__init__.pyi +2 -2
  140. homeassistant-stubs/components/co2signal/sensor.pyi +1 -1
  141. homeassistant-stubs/components/command_line/__init__.pyi +1 -2
  142. homeassistant-stubs/components/command_line/const.pyi +2 -0
  143. homeassistant-stubs/components/command_line/sensor.pyi +3 -3
  144. homeassistant-stubs/components/config/config_entries.pyi +2 -2
  145. homeassistant-stubs/components/cover/__init__.pyi +19 -19
  146. homeassistant-stubs/components/cover/intent.pyi +1 -1
  147. homeassistant-stubs/components/date/__init__.pyi +1 -1
  148. homeassistant-stubs/components/datetime/__init__.pyi +1 -1
  149. homeassistant-stubs/components/deconz/binary_sensor.pyi +1 -1
  150. homeassistant-stubs/components/deconz/button.pyi +1 -1
  151. homeassistant-stubs/components/deconz/deconz_device.pyi +4 -1
  152. homeassistant-stubs/components/deconz/fan.pyi +1 -0
  153. homeassistant-stubs/components/deconz/number.pyi +1 -1
  154. homeassistant-stubs/components/deconz/sensor.pyi +1 -1
  155. homeassistant-stubs/components/demo/fan.pyi +1 -0
  156. homeassistant-stubs/components/demo/mailbox.pyi +1 -0
  157. homeassistant-stubs/components/device_automation/__init__.pyi +5 -4
  158. homeassistant-stubs/components/device_tracker/config_entry.pyi +10 -9
  159. homeassistant-stubs/components/device_tracker/const.pyi +4 -4
  160. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +3 -1
  161. homeassistant-stubs/components/devolo_home_network/button.pyi +3 -1
  162. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -0
  163. homeassistant-stubs/components/devolo_home_network/entity.pyi +3 -1
  164. homeassistant-stubs/components/devolo_home_network/image.pyi +3 -1
  165. homeassistant-stubs/components/devolo_home_network/sensor.pyi +4 -3
  166. homeassistant-stubs/components/devolo_home_network/switch.pyi +2 -1
  167. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -1
  168. homeassistant-stubs/components/diagnostics/__init__.pyi +1 -1
  169. homeassistant-stubs/components/diagnostics/const.pyi +2 -2
  170. homeassistant-stubs/components/discovergy/sensor.pyi +1 -1
  171. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +1 -1
  172. homeassistant-stubs/components/doorbird/__init__.pyi +9 -14
  173. homeassistant-stubs/components/doorbird/button.pyi +11 -12
  174. homeassistant-stubs/components/doorbird/camera.pyi +3 -6
  175. homeassistant-stubs/components/doorbird/config_flow.pyi +10 -3
  176. homeassistant-stubs/components/doorbird/const.pyi +6 -3
  177. homeassistant-stubs/components/doorbird/device.pyi +33 -14
  178. homeassistant-stubs/components/doorbird/event.pyi +23 -0
  179. homeassistant-stubs/components/doorbird/logbook.pyi +1 -1
  180. homeassistant-stubs/components/doorbird/models.pyi +3 -0
  181. homeassistant-stubs/components/doorbird/repairs.pyi +12 -0
  182. homeassistant-stubs/components/doorbird/util.pyi +3 -2
  183. homeassistant-stubs/components/doorbird/view.pyi +1 -1
  184. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +1 -1
  185. homeassistant-stubs/components/dsmr/__init__.pyi +14 -4
  186. homeassistant-stubs/components/dsmr/const.pyi +0 -1
  187. homeassistant-stubs/components/dsmr/diagnostics.pyi +6 -0
  188. homeassistant-stubs/components/dsmr/sensor.pyi +19 -10
  189. homeassistant-stubs/components/easyenergy/sensor.pyi +1 -1
  190. homeassistant-stubs/components/easyenergy/services.pyi +3 -3
  191. homeassistant-stubs/components/ecovacs/__init__.pyi +1 -0
  192. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +1 -1
  193. homeassistant-stubs/components/ecovacs/button.pyi +2 -2
  194. homeassistant-stubs/components/ecovacs/const.pyi +3 -2
  195. homeassistant-stubs/components/ecovacs/controller.pyi +3 -0
  196. homeassistant-stubs/components/ecovacs/entity.pyi +15 -1
  197. homeassistant-stubs/components/ecovacs/number.pyi +3 -3
  198. homeassistant-stubs/components/ecovacs/select.pyi +1 -1
  199. homeassistant-stubs/components/ecovacs/sensor.pyi +19 -4
  200. homeassistant-stubs/components/ecovacs/switch.pyi +1 -1
  201. homeassistant-stubs/components/ecovacs/vacuum.pyi +3 -9
  202. homeassistant-stubs/components/ecowitt/__init__.pyi +4 -2
  203. homeassistant-stubs/components/ecowitt/binary_sensor.pyi +3 -4
  204. homeassistant-stubs/components/ecowitt/diagnostics.pyi +2 -3
  205. homeassistant-stubs/components/ecowitt/sensor.pyi +3 -4
  206. homeassistant-stubs/components/electric_kiwi/sensor.pyi +2 -2
  207. homeassistant-stubs/components/elevenlabs/__init__.pyi +23 -0
  208. homeassistant-stubs/components/elevenlabs/config_flow.pyi +26 -0
  209. homeassistant-stubs/components/elevenlabs/const.pyi +4 -0
  210. homeassistant-stubs/components/elevenlabs/tts.pyi +30 -0
  211. homeassistant-stubs/components/elgato/button.pyi +1 -1
  212. homeassistant-stubs/components/elgato/sensor.pyi +1 -1
  213. homeassistant-stubs/components/elgato/switch.pyi +1 -1
  214. homeassistant-stubs/components/elkm1/config_flow.pyi +2 -2
  215. homeassistant-stubs/components/energy/data.pyi +1 -2
  216. homeassistant-stubs/components/energy/types.pyi +2 -3
  217. homeassistant-stubs/components/energy/validate.pyi +2 -2
  218. homeassistant-stubs/components/energyzero/sensor.pyi +1 -1
  219. homeassistant-stubs/components/energyzero/services.pyi +2 -2
  220. homeassistant-stubs/components/enigma2/__init__.pyi +3 -5
  221. homeassistant-stubs/components/enigma2/coordinator.pyi +19 -0
  222. homeassistant-stubs/components/enigma2/media_player.pyi +6 -8
  223. homeassistant-stubs/components/enphase_envoy/__init__.pyi +4 -5
  224. homeassistant-stubs/components/enphase_envoy/binary_sensor.pyi +4 -5
  225. homeassistant-stubs/components/enphase_envoy/coordinator.pyi +2 -1
  226. homeassistant-stubs/components/enphase_envoy/diagnostics.pyi +3 -4
  227. homeassistant-stubs/components/enphase_envoy/number.pyi +4 -5
  228. homeassistant-stubs/components/enphase_envoy/select.pyi +4 -5
  229. homeassistant-stubs/components/enphase_envoy/sensor.pyi +10 -11
  230. homeassistant-stubs/components/enphase_envoy/switch.pyi +5 -8
  231. homeassistant-stubs/components/eq3btsmart/const.pyi +10 -10
  232. homeassistant-stubs/components/eq3btsmart/models.pyi +1 -1
  233. homeassistant-stubs/components/esphome/domain_data.pyi +1 -1
  234. homeassistant-stubs/components/esphome/entity.pyi +2 -3
  235. homeassistant-stubs/components/esphome/entry_data.pyi +1 -1
  236. homeassistant-stubs/components/esphome/fan.pyi +1 -0
  237. homeassistant-stubs/components/esphome/update.pyi +1 -0
  238. homeassistant-stubs/components/esphome/voice_assistant.pyi +1 -0
  239. homeassistant-stubs/components/event/__init__.pyi +4 -4
  240. homeassistant-stubs/components/evohome/__init__.pyi +18 -34
  241. homeassistant-stubs/components/evohome/climate.pyi +3 -2
  242. homeassistant-stubs/components/evohome/coordinator.pyi +11 -16
  243. homeassistant-stubs/components/evohome/entity.pyi +37 -0
  244. homeassistant-stubs/components/evohome/water_heater.pyi +2 -1
  245. homeassistant-stubs/components/faa_delays/binary_sensor.pyi +1 -1
  246. homeassistant-stubs/components/fan/__init__.pyi +13 -7
  247. homeassistant-stubs/components/feedreader/__init__.pyi +1 -1
  248. homeassistant-stubs/components/feedreader/const.pyi +7 -5
  249. homeassistant-stubs/components/feedreader/coordinator.pyi +11 -7
  250. homeassistant-stubs/components/feedreader/event.pyi +30 -0
  251. homeassistant-stubs/components/fitbit/const.pyi +11 -11
  252. homeassistant-stubs/components/fitbit/sensor.pyi +1 -1
  253. homeassistant-stubs/components/flexit_bacnet/binary_sensor.pyi +1 -1
  254. homeassistant-stubs/components/flexit_bacnet/number.pyi +1 -1
  255. homeassistant-stubs/components/flexit_bacnet/sensor.pyi +1 -1
  256. homeassistant-stubs/components/flexit_bacnet/switch.pyi +1 -1
  257. homeassistant-stubs/components/forecast_solar/sensor.pyi +1 -1
  258. homeassistant-stubs/components/fritz/binary_sensor.pyi +1 -1
  259. homeassistant-stubs/components/fritz/button.pyi +1 -1
  260. homeassistant-stubs/components/fritz/config_flow.pyi +1 -0
  261. homeassistant-stubs/components/fritz/const.pyi +3 -3
  262. homeassistant-stubs/components/fritz/coordinator.pyi +3 -3
  263. homeassistant-stubs/components/fritz/entity.pyi +1 -1
  264. homeassistant-stubs/components/fritz/sensor.pyi +1 -1
  265. homeassistant-stubs/components/fritz/update.pyi +1 -1
  266. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +1 -1
  267. homeassistant-stubs/components/fritzbox/sensor.pyi +1 -1
  268. homeassistant-stubs/components/fritzbox_callmonitor/config_flow.pyi +5 -5
  269. homeassistant-stubs/components/fritzbox_callmonitor/const.pyi +4 -4
  270. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +4 -4
  271. homeassistant-stubs/components/fronius/const.pyi +21 -21
  272. homeassistant-stubs/components/fronius/sensor.pyi +1 -1
  273. homeassistant-stubs/components/frontend/__init__.pyi +3 -2
  274. homeassistant-stubs/components/fully_kiosk/button.pyi +1 -1
  275. homeassistant-stubs/components/fully_kiosk/image.pyi +1 -1
  276. homeassistant-stubs/components/fully_kiosk/notify.pyi +1 -1
  277. homeassistant-stubs/components/fully_kiosk/sensor.pyi +1 -1
  278. homeassistant-stubs/components/fully_kiosk/switch.pyi +1 -1
  279. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +1 -0
  280. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
  281. homeassistant-stubs/components/generic_hygrostat/humidifier.pyi +3 -1
  282. homeassistant-stubs/components/generic_thermostat/__init__.pyi +2 -5
  283. homeassistant-stubs/components/generic_thermostat/climate.pyi +10 -15
  284. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +2 -1
  285. homeassistant-stubs/components/generic_thermostat/const.pyi +14 -0
  286. homeassistant-stubs/components/geocaching/sensor.pyi +1 -1
  287. homeassistant-stubs/components/gios/sensor.pyi +1 -1
  288. homeassistant-stubs/components/glances/sensor.pyi +1 -1
  289. homeassistant-stubs/components/google/const.pyi +5 -5
  290. homeassistant-stubs/components/gpsd/__init__.pyi +5 -3
  291. homeassistant-stubs/components/gpsd/config_flow.pyi +2 -0
  292. homeassistant-stubs/components/gpsd/sensor.pyi +6 -5
  293. homeassistant-stubs/components/group/button.pyi +28 -0
  294. homeassistant-stubs/components/group/config_flow.pyi +2 -0
  295. homeassistant-stubs/components/group/fan.pyi +1 -0
  296. homeassistant-stubs/components/group/notify.pyi +19 -3
  297. homeassistant-stubs/components/guardian/__init__.pyi +1 -1
  298. homeassistant-stubs/components/guardian/binary_sensor.pyi +2 -2
  299. homeassistant-stubs/components/guardian/button.pyi +1 -1
  300. homeassistant-stubs/components/guardian/sensor.pyi +2 -2
  301. homeassistant-stubs/components/guardian/switch.pyi +1 -1
  302. homeassistant-stubs/components/guardian/valve.pyi +9 -9
  303. homeassistant-stubs/components/here_travel_time/config_flow.pyi +4 -1
  304. homeassistant-stubs/components/history/websocket_api.pyi +1 -1
  305. homeassistant-stubs/components/history_stats/__init__.pyi +13 -4
  306. homeassistant-stubs/components/history_stats/config_flow.pyi +19 -0
  307. homeassistant-stubs/components/history_stats/const.pyi +14 -0
  308. homeassistant-stubs/components/history_stats/sensor.pyi +6 -11
  309. homeassistant-stubs/components/homeassistant/__init__.pyi +4 -4
  310. homeassistant-stubs/components/homeassistant/logbook.pyi +1 -1
  311. homeassistant-stubs/components/homeassistant/repairs.pyi +15 -0
  312. homeassistant-stubs/components/homeassistant/scene.pyi +1 -0
  313. homeassistant-stubs/components/homeassistant_hardware/const.pyi +7 -0
  314. homeassistant-stubs/components/homeassistant_hardware/firmware_config_flow.pyi +59 -0
  315. homeassistant-stubs/components/homeassistant_hardware/util.pyi +24 -0
  316. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +1 -1
  317. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +19 -49
  318. homeassistant-stubs/components/homeassistant_sky_connect/const.pyi +2 -10
  319. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +2 -20
  320. homeassistant-stubs/components/homekit/__init__.pyi +17 -8
  321. homeassistant-stubs/components/homekit/accessories.pyi +1 -1
  322. homeassistant-stubs/components/homekit/aidmanager.pyi +1 -1
  323. homeassistant-stubs/components/homekit/diagnostics.pyi +2 -4
  324. homeassistant-stubs/components/homekit/models.pyi +4 -1
  325. homeassistant-stubs/components/homekit/type_cameras.pyi +5 -3
  326. homeassistant-stubs/components/homekit/type_switches.pyi +17 -6
  327. homeassistant-stubs/components/homekit/util.pyi +1 -1
  328. homeassistant-stubs/components/homekit_controller/button.pyi +1 -1
  329. homeassistant-stubs/components/homekit_controller/select.pyi +1 -1
  330. homeassistant-stubs/components/homekit_controller/utils.pyi +1 -2
  331. homeassistant-stubs/components/homewizard/__init__.pyi +7 -5
  332. homeassistant-stubs/components/homewizard/button.pyi +2 -3
  333. homeassistant-stubs/components/homewizard/const.pyi +1 -1
  334. homeassistant-stubs/components/homewizard/diagnostics.pyi +2 -4
  335. homeassistant-stubs/components/homewizard/number.pyi +2 -3
  336. homeassistant-stubs/components/homewizard/sensor.pyi +4 -4
  337. homeassistant-stubs/components/homewizard/switch.pyi +4 -4
  338. homeassistant-stubs/components/homeworks/__init__.pyi +1 -1
  339. homeassistant-stubs/components/homeworks/config_flow.pyi +5 -3
  340. homeassistant-stubs/components/http/__init__.pyi +1 -1
  341. homeassistant-stubs/components/http/decorators.pyi +2 -1
  342. homeassistant-stubs/components/http/static.pyi +1 -4
  343. homeassistant-stubs/components/huawei_lte/select.pyi +1 -1
  344. homeassistant-stubs/components/huawei_lte/sensor.pyi +2 -2
  345. homeassistant-stubs/components/humidifier/__init__.pyi +3 -3
  346. homeassistant-stubs/components/humidifier/const.pyi +5 -5
  347. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +1 -1
  348. homeassistant-stubs/components/husqvarna_automower/entity.pyi +6 -1
  349. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +6 -5
  350. homeassistant-stubs/components/husqvarna_automower/number.pyi +3 -5
  351. homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -2
  352. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +9 -2
  353. homeassistant-stubs/components/husqvarna_automower/switch.pyi +1 -3
  354. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +14 -2
  355. homeassistant-stubs/components/hydrawise/const.pyi +5 -2
  356. homeassistant-stubs/components/hydrawise/sensor.pyi +1 -1
  357. homeassistant-stubs/components/hydrawise/switch.pyi +1 -1
  358. homeassistant-stubs/components/hydrawise/valve.pyi +24 -0
  359. homeassistant-stubs/components/ibeacon/sensor.pyi +1 -1
  360. homeassistant-stubs/components/idasen_desk/button.pyi +1 -1
  361. homeassistant-stubs/components/idasen_desk/sensor.pyi +1 -1
  362. homeassistant-stubs/components/image/__init__.pyi +1 -1
  363. homeassistant-stubs/components/image_processing/__init__.pyi +4 -4
  364. homeassistant-stubs/components/image_upload/__init__.pyi +1 -1
  365. homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +1 -1
  366. homeassistant-stubs/components/imgw_pib/sensor.pyi +1 -1
  367. homeassistant-stubs/components/integration/sensor.pyi +2 -2
  368. homeassistant-stubs/components/intent/__init__.pyi +10 -0
  369. homeassistant-stubs/components/intent/timers.pyi +7 -7
  370. homeassistant-stubs/components/ios/__init__.pyi +1 -1
  371. homeassistant-stubs/components/ios/const.pyi +1 -0
  372. homeassistant-stubs/components/iotty/__init__.pyi +21 -0
  373. homeassistant-stubs/components/iotty/api.pyi +15 -0
  374. homeassistant-stubs/components/iotty/application_credentials.pyi +7 -0
  375. homeassistant-stubs/components/iotty/config_flow.pyi +8 -0
  376. homeassistant-stubs/components/iotty/const.pyi +1 -0
  377. homeassistant-stubs/components/iotty/coordinator.pyi +29 -0
  378. homeassistant-stubs/components/iotty/switch.pyi +34 -0
  379. homeassistant-stubs/components/ipp/sensor.pyi +1 -1
  380. homeassistant-stubs/components/isy994/fan.pyi +1 -0
  381. homeassistant-stubs/components/isy994/switch.pyi +1 -1
  382. homeassistant-stubs/components/jellyfin/__init__.pyi +5 -3
  383. homeassistant-stubs/components/jellyfin/config_flow.pyi +4 -5
  384. homeassistant-stubs/components/jellyfin/coordinator.pyi +0 -2
  385. homeassistant-stubs/components/jellyfin/diagnostics.pyi +2 -4
  386. homeassistant-stubs/components/jellyfin/media_player.pyi +2 -3
  387. homeassistant-stubs/components/jellyfin/media_source.pyi +2 -3
  388. homeassistant-stubs/components/jellyfin/sensor.pyi +3 -5
  389. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +2 -2
  390. homeassistant-stubs/components/jvc_projector/select.pyi +1 -1
  391. homeassistant-stubs/components/kaleidescape/sensor.pyi +1 -1
  392. homeassistant-stubs/components/knocki/coordinator.pyi +2 -2
  393. homeassistant-stubs/components/knx/__init__.pyi +7 -3
  394. homeassistant-stubs/components/knx/binary_sensor.pyi +4 -4
  395. homeassistant-stubs/components/knx/button.pyi +4 -4
  396. homeassistant-stubs/components/knx/climate.pyi +5 -3
  397. homeassistant-stubs/components/knx/config_flow.pyi +1 -1
  398. homeassistant-stubs/components/knx/const.pyi +5 -4
  399. homeassistant-stubs/components/knx/cover.pyi +4 -4
  400. homeassistant-stubs/components/knx/date.pyi +7 -9
  401. homeassistant-stubs/components/knx/datetime.pyi +7 -6
  402. homeassistant-stubs/components/knx/device.pyi +2 -1
  403. homeassistant-stubs/components/knx/expose.pyi +4 -5
  404. homeassistant-stubs/components/knx/fan.pyi +5 -4
  405. homeassistant-stubs/components/knx/knx_entity.pyi +29 -5
  406. homeassistant-stubs/components/knx/light.pyi +32 -11
  407. homeassistant-stubs/components/knx/notify.pyi +4 -3
  408. homeassistant-stubs/components/knx/number.pyi +4 -3
  409. homeassistant-stubs/components/knx/project.pyi +5 -3
  410. homeassistant-stubs/components/knx/scene.pyi +4 -4
  411. homeassistant-stubs/components/knx/schema.pyi +5 -2
  412. homeassistant-stubs/components/knx/select.pyi +5 -4
  413. homeassistant-stubs/components/knx/sensor.pyi +5 -5
  414. homeassistant-stubs/components/knx/services.pyi +1 -1
  415. homeassistant-stubs/components/knx/storage/config_store.pyi +44 -0
  416. homeassistant-stubs/components/knx/storage/const.pyi +25 -0
  417. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +36 -0
  418. homeassistant-stubs/components/knx/storage/entity_store_validation.pyi +25 -0
  419. homeassistant-stubs/components/knx/storage/knx_selector.pyi +21 -0
  420. homeassistant-stubs/components/knx/switch.pyi +23 -9
  421. homeassistant-stubs/components/knx/telegrams.pyi +5 -6
  422. homeassistant-stubs/components/knx/text.pyi +4 -3
  423. homeassistant-stubs/components/knx/time.pyi +7 -9
  424. homeassistant-stubs/components/knx/trigger.pyi +1 -1
  425. homeassistant-stubs/components/knx/validation.pyi +8 -1
  426. homeassistant-stubs/components/knx/weather.pyi +4 -3
  427. homeassistant-stubs/components/knx/websocket.pyi +17 -1
  428. homeassistant-stubs/components/kraken/sensor.pyi +1 -1
  429. homeassistant-stubs/components/lacrosse_view/sensor.pyi +1 -1
  430. homeassistant-stubs/components/lamarzocco/binary_sensor.pyi +1 -1
  431. homeassistant-stubs/components/lamarzocco/button.pyi +1 -1
  432. homeassistant-stubs/components/lamarzocco/entity.pyi +1 -1
  433. homeassistant-stubs/components/lamarzocco/number.pyi +2 -2
  434. homeassistant-stubs/components/lamarzocco/select.pyi +1 -1
  435. homeassistant-stubs/components/lamarzocco/sensor.pyi +1 -1
  436. homeassistant-stubs/components/lamarzocco/switch.pyi +1 -1
  437. homeassistant-stubs/components/lamarzocco/update.pyi +3 -1
  438. homeassistant-stubs/components/lametric/button.pyi +1 -1
  439. homeassistant-stubs/components/lametric/number.pyi +1 -1
  440. homeassistant-stubs/components/lametric/select.pyi +1 -1
  441. homeassistant-stubs/components/lametric/sensor.pyi +1 -1
  442. homeassistant-stubs/components/lametric/switch.pyi +1 -1
  443. homeassistant-stubs/components/laundrify/binary_sensor.pyi +2 -2
  444. homeassistant-stubs/components/laundrify/const.pyi +3 -1
  445. homeassistant-stubs/components/laundrify/coordinator.pyi +1 -2
  446. homeassistant-stubs/components/lawn_mower/__init__.pyi +1 -1
  447. homeassistant-stubs/components/lawn_mower/const.pyi +7 -7
  448. homeassistant-stubs/components/lcn/schemas.pyi +9 -8
  449. homeassistant-stubs/components/lidarr/sensor.pyi +1 -1
  450. homeassistant-stubs/components/lifx/const.pyi +1 -0
  451. homeassistant-stubs/components/lifx/coordinator.pyi +20 -7
  452. homeassistant-stubs/components/lifx/light.pyi +5 -2
  453. homeassistant-stubs/components/lifx/manager.pyi +12 -1
  454. homeassistant-stubs/components/light/__init__.pyi +16 -17
  455. homeassistant-stubs/components/linkplay/__init__.pyi +14 -0
  456. homeassistant-stubs/components/linkplay/config_flow.pyi +14 -0
  457. homeassistant-stubs/components/linkplay/const.pyi +5 -0
  458. homeassistant-stubs/components/linkplay/media_player.pyi +66 -0
  459. homeassistant-stubs/components/linkplay/utils.pyi +19 -0
  460. homeassistant-stubs/components/litterrobot/binary_sensor.pyi +1 -1
  461. homeassistant-stubs/components/litterrobot/button.pyi +1 -1
  462. homeassistant-stubs/components/litterrobot/hub.pyi +2 -2
  463. homeassistant-stubs/components/litterrobot/select.pyi +1 -1
  464. homeassistant-stubs/components/litterrobot/sensor.pyi +1 -1
  465. homeassistant-stubs/components/litterrobot/switch.pyi +1 -1
  466. homeassistant-stubs/components/litterrobot/time.pyi +1 -1
  467. homeassistant-stubs/components/lock/__init__.pyi +2 -2
  468. homeassistant-stubs/components/logbook/models.pyi +2 -2
  469. homeassistant-stubs/components/logbook/processor.pyi +2 -3
  470. homeassistant-stubs/components/logbook/websocket_api.pyi +1 -1
  471. homeassistant-stubs/components/logger/helpers.pyi +5 -5
  472. homeassistant-stubs/components/madvr/__init__.pyi +13 -0
  473. homeassistant-stubs/components/madvr/binary_sensor.pyi +30 -0
  474. homeassistant-stubs/components/madvr/config_flow.pyi +17 -0
  475. homeassistant-stubs/components/madvr/const.pyi +29 -0
  476. homeassistant-stubs/components/madvr/coordinator.pyi +18 -0
  477. homeassistant-stubs/components/madvr/entity.pyi +10 -0
  478. homeassistant-stubs/components/madvr/errors.pyi +1 -0
  479. homeassistant-stubs/components/madvr/remote.pyi +24 -0
  480. homeassistant-stubs/components/madvr/sensor.pyi +31 -0
  481. homeassistant-stubs/components/mastodon/__init__.pyi +11 -0
  482. homeassistant-stubs/components/mastodon/config_flow.pyi +18 -0
  483. homeassistant-stubs/components/mastodon/const.pyi +7 -0
  484. homeassistant-stubs/components/mastodon/notify.pyi +8 -5
  485. homeassistant-stubs/components/mastodon/utils.pyi +5 -0
  486. homeassistant-stubs/components/matrix/__init__.pyi +1 -1
  487. homeassistant-stubs/components/matter/__init__.pyi +1 -0
  488. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
  489. homeassistant-stubs/components/matter/climate.pyi +11 -13
  490. homeassistant-stubs/components/matter/cover.pyi +4 -4
  491. homeassistant-stubs/components/matter/discovery.pyi +1 -1
  492. homeassistant-stubs/components/matter/entity.pyi +2 -1
  493. homeassistant-stubs/components/matter/fan.pyi +4 -0
  494. homeassistant-stubs/components/matter/light.pyi +2 -0
  495. homeassistant-stubs/components/matter/lock.pyi +3 -6
  496. homeassistant-stubs/components/matter/models.pyi +1 -1
  497. homeassistant-stubs/components/matter/number.pyi +1 -1
  498. homeassistant-stubs/components/matter/select.pyi +34 -0
  499. homeassistant-stubs/components/matter/sensor.pyi +1 -1
  500. homeassistant-stubs/components/matter/update.pyi +53 -0
  501. homeassistant-stubs/components/media_player/__init__.pyi +8 -8
  502. homeassistant-stubs/components/media_player/const.pyi +72 -72
  503. homeassistant-stubs/components/media_player/intent.pyi +2 -4
  504. homeassistant-stubs/components/minecraft_server/api.pyi +3 -3
  505. homeassistant-stubs/components/minecraft_server/sensor.pyi +1 -1
  506. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  507. homeassistant-stubs/components/modbus/const.pyi +11 -11
  508. homeassistant-stubs/components/modbus/fan.pyi +3 -1
  509. homeassistant-stubs/components/modbus/validators.pyi +2 -3
  510. homeassistant-stubs/components/monzo/sensor.pyi +1 -1
  511. homeassistant-stubs/components/mopeka/__init__.pyi +5 -3
  512. homeassistant-stubs/components/mopeka/config_flow.pyi +18 -1
  513. homeassistant-stubs/components/mopeka/const.pyi +5 -0
  514. homeassistant-stubs/components/mopeka/sensor.pyi +3 -4
  515. homeassistant-stubs/components/mqtt/client.pyi +5 -6
  516. homeassistant-stubs/components/mqtt/device_trigger.pyi +2 -2
  517. homeassistant-stubs/components/mqtt/fan.pyi +1 -0
  518. homeassistant-stubs/components/mqtt/models.pyi +5 -5
  519. homeassistant-stubs/components/mqtt/subscription.pyi +1 -1
  520. homeassistant-stubs/components/mqtt/switch.pyi +3 -2
  521. homeassistant-stubs/components/mqtt/vacuum.pyi +2 -7
  522. homeassistant-stubs/components/mysensors/binary_sensor.pyi +1 -1
  523. homeassistant-stubs/components/mysensors/cover.pyi +4 -4
  524. homeassistant-stubs/components/myuplink/select.pyi +23 -0
  525. homeassistant-stubs/components/nam/sensor.pyi +1 -1
  526. homeassistant-stubs/components/nest/media_source.pyi +1 -1
  527. homeassistant-stubs/components/netatmo/fan.pyi +1 -0
  528. homeassistant-stubs/components/netatmo/helper.pyi +1 -1
  529. homeassistant-stubs/components/netatmo/sensor.pyi +2 -2
  530. homeassistant-stubs/components/nextdns/binary_sensor.pyi +1 -1
  531. homeassistant-stubs/components/nextdns/sensor.pyi +1 -1
  532. homeassistant-stubs/components/nextdns/switch.pyi +1 -1
  533. homeassistant-stubs/components/notify/__init__.pyi +2 -2
  534. homeassistant-stubs/components/notion/binary_sensor.pyi +1 -1
  535. homeassistant-stubs/components/notion/config_flow.pyi +1 -1
  536. homeassistant-stubs/components/notion/coordinator.pyi +1 -1
  537. homeassistant-stubs/components/notion/sensor.pyi +1 -1
  538. homeassistant-stubs/components/number/__init__.pyi +1 -1
  539. homeassistant-stubs/components/number/const.pyi +52 -52
  540. homeassistant-stubs/components/nut/__init__.pyi +1 -1
  541. homeassistant-stubs/components/oncue/__init__.pyi +3 -4
  542. homeassistant-stubs/components/oncue/binary_sensor.pyi +2 -5
  543. homeassistant-stubs/components/oncue/sensor.pyi +2 -3
  544. homeassistant-stubs/components/oncue/types.pyi +5 -0
  545. homeassistant-stubs/components/onewire/binary_sensor.pyi +1 -1
  546. homeassistant-stubs/components/onewire/onewire_entities.pyi +1 -1
  547. homeassistant-stubs/components/onewire/sensor.pyi +1 -1
  548. homeassistant-stubs/components/onewire/switch.pyi +1 -1
  549. homeassistant-stubs/components/openuv/sensor.pyi +1 -1
  550. homeassistant-stubs/components/oralb/__init__.pyi +3 -3
  551. homeassistant-stubs/components/oralb/sensor.pyi +3 -4
  552. homeassistant-stubs/components/otbr/websocket_api.pyi +6 -3
  553. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +1 -1
  554. homeassistant-stubs/components/overkiz/binary_sensor.pyi +1 -1
  555. homeassistant-stubs/components/overkiz/button.pyi +1 -1
  556. homeassistant-stubs/components/overkiz/climate.pyi +1 -1
  557. homeassistant-stubs/components/overkiz/climate_entities/__init__.pyi +3 -2
  558. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heat_pump_main_component.pyi +18 -0
  559. homeassistant-stubs/components/overkiz/number.pyi +1 -1
  560. homeassistant-stubs/components/overkiz/select.pyi +1 -1
  561. homeassistant-stubs/components/overkiz/sensor.pyi +1 -1
  562. homeassistant-stubs/components/overkiz/switch.pyi +1 -1
  563. homeassistant-stubs/components/p1_monitor/coordinator.pyi +1 -1
  564. homeassistant-stubs/components/peco/sensor.pyi +1 -1
  565. homeassistant-stubs/components/persistent_notification/__init__.pyi +4 -4
  566. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +1 -1
  567. homeassistant-stubs/components/pi_hole/update.pyi +1 -1
  568. homeassistant-stubs/components/ping/entity.pyi +0 -1
  569. homeassistant-stubs/components/ping/sensor.pyi +1 -1
  570. homeassistant-stubs/components/plugwise/binary_sensor.pyi +1 -1
  571. homeassistant-stubs/components/plugwise/number.pyi +1 -1
  572. homeassistant-stubs/components/plugwise/select.pyi +1 -1
  573. homeassistant-stubs/components/plugwise/sensor.pyi +1 -1
  574. homeassistant-stubs/components/plugwise/switch.pyi +1 -1
  575. homeassistant-stubs/components/powerwall/__init__.pyi +4 -4
  576. homeassistant-stubs/components/powerwall/binary_sensor.pyi +2 -4
  577. homeassistant-stubs/components/powerwall/models.pyi +4 -1
  578. homeassistant-stubs/components/powerwall/sensor.pyi +4 -6
  579. homeassistant-stubs/components/powerwall/switch.pyi +2 -4
  580. homeassistant-stubs/components/private_ble_device/sensor.pyi +1 -1
  581. homeassistant-stubs/components/prometheus/__init__.pyi +3 -1
  582. homeassistant-stubs/components/prusalink/__init__.pyi +1 -1
  583. homeassistant-stubs/components/prusalink/binary_sensor.pyi +36 -0
  584. homeassistant-stubs/components/prusalink/button.pyi +1 -1
  585. homeassistant-stubs/components/prusalink/coordinator.pyi +4 -1
  586. homeassistant-stubs/components/prusalink/sensor.pyi +3 -3
  587. homeassistant-stubs/components/pure_energie/sensor.pyi +1 -1
  588. homeassistant-stubs/components/purpleair/config_flow.pyi +1 -1
  589. homeassistant-stubs/components/purpleair/sensor.pyi +1 -1
  590. homeassistant-stubs/components/pvoutput/sensor.pyi +1 -1
  591. homeassistant-stubs/components/qnap_qsw/binary_sensor.pyi +1 -1
  592. homeassistant-stubs/components/qnap_qsw/button.pyi +1 -1
  593. homeassistant-stubs/components/qnap_qsw/entity.pyi +1 -1
  594. homeassistant-stubs/components/qnap_qsw/sensor.pyi +1 -1
  595. homeassistant-stubs/components/rabbitair/fan.pyi +1 -0
  596. homeassistant-stubs/components/radarr/coordinator.pyi +1 -1
  597. homeassistant-stubs/components/radarr/sensor.pyi +1 -1
  598. homeassistant-stubs/components/rainforest_raven/sensor.pyi +1 -1
  599. homeassistant-stubs/components/rainmachine/__init__.pyi +8 -7
  600. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +4 -5
  601. homeassistant-stubs/components/rainmachine/button.pyi +4 -5
  602. homeassistant-stubs/components/rainmachine/coordinator.pyi +3 -3
  603. homeassistant-stubs/components/rainmachine/diagnostics.pyi +3 -4
  604. homeassistant-stubs/components/rainmachine/model.pyi +1 -1
  605. homeassistant-stubs/components/rainmachine/select.pyi +5 -5
  606. homeassistant-stubs/components/rainmachine/sensor.pyi +5 -5
  607. homeassistant-stubs/components/rainmachine/switch.pyi +6 -6
  608. homeassistant-stubs/components/rainmachine/update.pyi +9 -10
  609. homeassistant-stubs/components/rainmachine/util.pyi +4 -4
  610. homeassistant-stubs/components/rdw/binary_sensor.pyi +1 -1
  611. homeassistant-stubs/components/rdw/sensor.pyi +1 -1
  612. homeassistant-stubs/components/recorder/__init__.pyi +2 -1
  613. homeassistant-stubs/components/recorder/basic_websocket_api.pyi +7 -0
  614. homeassistant-stubs/components/recorder/const.pyi +5 -8
  615. homeassistant-stubs/components/recorder/core.pyi +16 -16
  616. homeassistant-stubs/components/recorder/db_schema.pyi +19 -6
  617. homeassistant-stubs/components/recorder/migration.pyi +221 -24
  618. homeassistant-stubs/components/recorder/models/context.pyi +1 -3
  619. homeassistant-stubs/components/recorder/statistics.pyi +2 -2
  620. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +0 -1
  621. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +0 -1
  622. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +1 -0
  623. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +0 -1
  624. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +1 -0
  625. homeassistant-stubs/components/recorder/tasks.pyi +0 -24
  626. homeassistant-stubs/components/recorder/util.pyi +8 -6
  627. homeassistant-stubs/components/recorder/websocket_api.pyi +0 -1
  628. homeassistant-stubs/components/remote/__init__.pyi +4 -4
  629. homeassistant-stubs/components/renault/binary_sensor.pyi +1 -1
  630. homeassistant-stubs/components/renault/button.pyi +1 -1
  631. homeassistant-stubs/components/renault/entity.pyi +1 -1
  632. homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -1
  633. homeassistant-stubs/components/renault/select.pyi +1 -1
  634. homeassistant-stubs/components/renault/sensor.pyi +1 -1
  635. homeassistant-stubs/components/repairs/websocket_api.pyi +1 -1
  636. homeassistant-stubs/components/rfxtrx/sensor.pyi +1 -1
  637. homeassistant-stubs/components/ring/binary_sensor.pyi +1 -1
  638. homeassistant-stubs/components/ring/light.pyi +2 -2
  639. homeassistant-stubs/components/ring/sensor.pyi +1 -1
  640. homeassistant-stubs/components/rituals_perfume_genie/binary_sensor.pyi +1 -1
  641. homeassistant-stubs/components/rituals_perfume_genie/number.pyi +1 -1
  642. homeassistant-stubs/components/rituals_perfume_genie/select.pyi +1 -1
  643. homeassistant-stubs/components/rituals_perfume_genie/sensor.pyi +1 -1
  644. homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +1 -1
  645. homeassistant-stubs/components/roborock/__init__.pyi +4 -3
  646. homeassistant-stubs/components/roborock/binary_sensor.pyi +3 -6
  647. homeassistant-stubs/components/roborock/button.pyi +3 -6
  648. homeassistant-stubs/components/roborock/coordinator.pyi +8 -2
  649. homeassistant-stubs/components/roborock/diagnostics.pyi +2 -4
  650. homeassistant-stubs/components/roborock/image.pyi +2 -3
  651. homeassistant-stubs/components/roborock/number.pyi +3 -6
  652. homeassistant-stubs/components/roborock/select.pyi +12 -6
  653. homeassistant-stubs/components/roborock/sensor.pyi +6 -9
  654. homeassistant-stubs/components/roborock/switch.pyi +3 -6
  655. homeassistant-stubs/components/roborock/time.pyi +3 -6
  656. homeassistant-stubs/components/roborock/vacuum.pyi +2 -4
  657. homeassistant-stubs/components/roku/binary_sensor.pyi +1 -1
  658. homeassistant-stubs/components/roku/browse_media.pyi +2 -1
  659. homeassistant-stubs/components/roku/select.pyi +1 -1
  660. homeassistant-stubs/components/roku/sensor.pyi +1 -1
  661. homeassistant-stubs/components/samsungtv/bridge.pyi +1 -1
  662. homeassistant-stubs/components/script/__init__.pyi +148 -0
  663. homeassistant-stubs/components/script/config.pyi +39 -0
  664. homeassistant-stubs/components/script/const.pyi +14 -0
  665. homeassistant-stubs/components/script/helpers.pyi +11 -0
  666. homeassistant-stubs/components/script/logbook.pyi +8 -0
  667. homeassistant-stubs/components/script/trace.pyi +10 -0
  668. homeassistant-stubs/components/search/__init__.pyi +14 -13
  669. homeassistant-stubs/components/select/__init__.pyi +1 -1
  670. homeassistant-stubs/components/sensibo/binary_sensor.pyi +2 -2
  671. homeassistant-stubs/components/sensibo/button.pyi +1 -1
  672. homeassistant-stubs/components/sensibo/number.pyi +1 -1
  673. homeassistant-stubs/components/sensibo/select.pyi +1 -1
  674. homeassistant-stubs/components/sensibo/sensor.pyi +2 -2
  675. homeassistant-stubs/components/sensibo/switch.pyi +1 -1
  676. homeassistant-stubs/components/sensibo/update.pyi +1 -1
  677. homeassistant-stubs/components/sensor/__init__.pyi +1 -1
  678. homeassistant-stubs/components/sensor/const.pyi +55 -55
  679. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -1
  680. homeassistant-stubs/components/sfr_box/button.pyi +1 -1
  681. homeassistant-stubs/components/sfr_box/sensor.pyi +1 -1
  682. homeassistant-stubs/components/shelly/binary_sensor.pyi +4 -4
  683. homeassistant-stubs/components/shelly/button.pyi +1 -1
  684. homeassistant-stubs/components/shelly/climate.pyi +1 -1
  685. homeassistant-stubs/components/shelly/const.pyi +6 -3
  686. homeassistant-stubs/components/shelly/coordinator.pyi +1 -1
  687. homeassistant-stubs/components/shelly/entity.pyi +9 -3
  688. homeassistant-stubs/components/shelly/event.pyi +2 -2
  689. homeassistant-stubs/components/shelly/number.pyi +28 -6
  690. homeassistant-stubs/components/shelly/select.pyi +25 -0
  691. homeassistant-stubs/components/shelly/sensor.pyi +6 -4
  692. homeassistant-stubs/components/shelly/switch.pyi +17 -3
  693. homeassistant-stubs/components/shelly/text.pyi +23 -0
  694. homeassistant-stubs/components/shelly/update.pyi +2 -2
  695. homeassistant-stubs/components/shelly/utils.pyi +3 -1
  696. homeassistant-stubs/components/shelly/valve.pyi +1 -1
  697. homeassistant-stubs/components/simplisafe/button.pyi +1 -1
  698. homeassistant-stubs/components/simplisafe/typing.pyi +3 -2
  699. homeassistant-stubs/components/siren/__init__.pyi +1 -1
  700. homeassistant-stubs/components/siren/const.pyi +5 -5
  701. homeassistant-stubs/components/skybell/sensor.pyi +1 -1
  702. homeassistant-stubs/components/sleepiq/button.pyi +1 -1
  703. homeassistant-stubs/components/sleepiq/entity.pyi +1 -1
  704. homeassistant-stubs/components/sleepiq/number.pyi +1 -1
  705. homeassistant-stubs/components/snooz/fan.pyi +1 -0
  706. homeassistant-stubs/components/sonarr/sensor.pyi +1 -1
  707. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +1 -1
  708. homeassistant-stubs/components/ssdp/__init__.pyi +1 -1
  709. homeassistant-stubs/components/starlink/binary_sensor.pyi +1 -1
  710. homeassistant-stubs/components/starlink/button.pyi +1 -1
  711. homeassistant-stubs/components/starlink/device_tracker.pyi +1 -1
  712. homeassistant-stubs/components/starlink/sensor.pyi +1 -1
  713. homeassistant-stubs/components/starlink/switch.pyi +1 -1
  714. homeassistant-stubs/components/starlink/time.pyi +1 -1
  715. homeassistant-stubs/components/steamist/sensor.pyi +1 -1
  716. homeassistant-stubs/components/stream/core.pyi +9 -9
  717. homeassistant-stubs/components/stream/fmp4utils.pyi +1 -1
  718. homeassistant-stubs/components/stream/worker.pyi +1 -2
  719. homeassistant-stubs/components/streamlabswater/entity.pyi +0 -1
  720. homeassistant-stubs/components/streamlabswater/sensor.pyi +1 -1
  721. homeassistant-stubs/components/stt/const.pyi +21 -21
  722. homeassistant-stubs/components/sun/sensor.pyi +1 -1
  723. homeassistant-stubs/components/switch/__init__.pyi +3 -3
  724. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +1 -1
  725. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -1
  726. homeassistant-stubs/components/switcher_kis/button.pyi +1 -1
  727. homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +1 -1
  728. homeassistant-stubs/components/synology_dsm/button.pyi +1 -1
  729. homeassistant-stubs/components/synology_dsm/camera.pyi +1 -1
  730. homeassistant-stubs/components/synology_dsm/entity.pyi +1 -1
  731. homeassistant-stubs/components/synology_dsm/sensor.pyi +1 -1
  732. homeassistant-stubs/components/synology_dsm/switch.pyi +1 -1
  733. homeassistant-stubs/components/synology_dsm/update.pyi +1 -1
  734. homeassistant-stubs/components/system_health/__init__.pyi +1 -1
  735. homeassistant-stubs/components/system_log/__init__.pyi +1 -1
  736. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +1 -1
  737. homeassistant-stubs/components/systemmonitor/sensor.pyi +1 -1
  738. homeassistant-stubs/components/tag/__init__.pyi +0 -1
  739. homeassistant-stubs/components/tailscale/binary_sensor.pyi +1 -1
  740. homeassistant-stubs/components/tailscale/sensor.pyi +1 -1
  741. homeassistant-stubs/components/tailwind/binary_sensor.pyi +1 -1
  742. homeassistant-stubs/components/tailwind/button.pyi +1 -1
  743. homeassistant-stubs/components/tailwind/number.pyi +1 -1
  744. homeassistant-stubs/components/tami4/button.pyi +1 -1
  745. homeassistant-stubs/components/tautulli/sensor.pyi +2 -2
  746. homeassistant-stubs/components/technove/__init__.pyi +2 -2
  747. homeassistant-stubs/components/technove/binary_sensor.pyi +3 -4
  748. homeassistant-stubs/components/technove/coordinator.pyi +2 -3
  749. homeassistant-stubs/components/technove/diagnostics.pyi +9 -0
  750. homeassistant-stubs/components/technove/number.pyi +37 -0
  751. homeassistant-stubs/components/technove/sensor.pyi +3 -4
  752. homeassistant-stubs/components/technove/switch.pyi +3 -4
  753. homeassistant-stubs/components/tedee/binary_sensor.pyi +1 -1
  754. homeassistant-stubs/components/tedee/config_flow.pyi +3 -0
  755. homeassistant-stubs/components/tedee/lock.pyi +1 -1
  756. homeassistant-stubs/components/tedee/sensor.pyi +1 -1
  757. homeassistant-stubs/components/text/__init__.pyi +3 -3
  758. homeassistant-stubs/components/time/__init__.pyi +1 -1
  759. homeassistant-stubs/components/todo/__init__.pyi +2 -2
  760. homeassistant-stubs/components/todo/const.pyi +19 -9
  761. homeassistant-stubs/components/tolo/const.pyi +4 -5
  762. homeassistant-stubs/components/tolo/fan.pyi +3 -1
  763. homeassistant-stubs/components/tolo/number.pyi +1 -1
  764. homeassistant-stubs/components/tolo/select.pyi +1 -1
  765. homeassistant-stubs/components/tolo/sensor.pyi +1 -1
  766. homeassistant-stubs/components/tolo/switch.pyi +1 -1
  767. homeassistant-stubs/components/tplink/binary_sensor.pyi +1 -1
  768. homeassistant-stubs/components/tplink/button.pyi +1 -1
  769. homeassistant-stubs/components/tplink/entity.pyi +1 -1
  770. homeassistant-stubs/components/tplink/fan.pyi +1 -0
  771. homeassistant-stubs/components/tplink/number.pyi +1 -1
  772. homeassistant-stubs/components/tplink/select.pyi +1 -1
  773. homeassistant-stubs/components/tplink/sensor.pyi +1 -1
  774. homeassistant-stubs/components/tplink/switch.pyi +1 -1
  775. homeassistant-stubs/components/tplink_omada/binary_sensor.pyi +1 -1
  776. homeassistant-stubs/components/tplink_omada/switch.pyi +4 -4
  777. homeassistant-stubs/components/tractive/sensor.pyi +1 -1
  778. homeassistant-stubs/components/tractive/switch.pyi +1 -1
  779. homeassistant-stubs/components/tradfri/fan.pyi +1 -0
  780. homeassistant-stubs/components/tradfri/sensor.pyi +1 -1
  781. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +1 -1
  782. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +3 -3
  783. homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +2 -2
  784. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +1 -1
  785. homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +1 -1
  786. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -1
  787. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +3 -3
  788. homeassistant-stubs/components/trafikverket_train/sensor.pyi +1 -1
  789. homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +3 -3
  790. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +3 -3
  791. homeassistant-stubs/components/transmission/sensor.pyi +1 -1
  792. homeassistant-stubs/components/transmission/switch.pyi +1 -1
  793. homeassistant-stubs/components/tts/__init__.pyi +10 -9
  794. homeassistant-stubs/components/tts/const.pyi +1 -3
  795. homeassistant-stubs/components/twentemilieu/sensor.pyi +1 -1
  796. homeassistant-stubs/components/unifi/button.pyi +1 -1
  797. homeassistant-stubs/components/unifi/device_tracker.pyi +6 -5
  798. homeassistant-stubs/components/unifi/entity.pyi +3 -2
  799. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +9 -0
  800. homeassistant-stubs/components/unifi/image.pyi +1 -1
  801. homeassistant-stubs/components/unifi/sensor.pyi +9 -3
  802. homeassistant-stubs/components/unifi/switch.pyi +3 -2
  803. homeassistant-stubs/components/unifi/update.pyi +1 -1
  804. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +10 -14
  805. homeassistant-stubs/components/unifiprotect/button.pyi +7 -6
  806. homeassistant-stubs/components/unifiprotect/camera.pyi +4 -4
  807. homeassistant-stubs/components/unifiprotect/data.pyi +2 -3
  808. homeassistant-stubs/components/unifiprotect/entity.pyi +14 -10
  809. homeassistant-stubs/components/unifiprotect/event.pyi +25 -0
  810. homeassistant-stubs/components/unifiprotect/light.pyi +3 -3
  811. homeassistant-stubs/components/unifiprotect/lock.pyi +3 -3
  812. homeassistant-stubs/components/unifiprotect/media_player.pyi +3 -3
  813. homeassistant-stubs/components/unifiprotect/media_source.pyi +10 -10
  814. homeassistant-stubs/components/unifiprotect/models.pyi +6 -6
  815. homeassistant-stubs/components/unifiprotect/number.pyi +4 -4
  816. homeassistant-stubs/components/unifiprotect/select.pyi +4 -4
  817. homeassistant-stubs/components/unifiprotect/sensor.pyi +6 -6
  818. homeassistant-stubs/components/unifiprotect/switch.pyi +12 -12
  819. homeassistant-stubs/components/unifiprotect/text.pyi +4 -4
  820. homeassistant-stubs/components/unifiprotect/utils.pyi +1 -2
  821. homeassistant-stubs/components/upcloud/__init__.pyi +1 -1
  822. homeassistant-stubs/components/update/__init__.pyi +2 -2
  823. homeassistant-stubs/components/update/const.pyi +5 -5
  824. homeassistant-stubs/components/vacuum/__init__.pyi +15 -15
  825. homeassistant-stubs/components/vallox/binary_sensor.pyi +1 -1
  826. homeassistant-stubs/components/vallox/fan.pyi +1 -0
  827. homeassistant-stubs/components/vallox/number.pyi +1 -1
  828. homeassistant-stubs/components/vallox/sensor.pyi +1 -1
  829. homeassistant-stubs/components/vallox/switch.pyi +1 -1
  830. homeassistant-stubs/components/valve/__init__.pyi +7 -7
  831. homeassistant-stubs/components/wake_on_lan/__init__.pyi +5 -1
  832. homeassistant-stubs/components/wake_on_lan/button.pyi +21 -0
  833. homeassistant-stubs/components/wake_on_lan/config_flow.pyi +20 -0
  834. homeassistant-stubs/components/wake_on_lan/const.pyi +7 -0
  835. homeassistant-stubs/components/wake_on_lan/switch.pyi +2 -5
  836. homeassistant-stubs/components/wake_word/models.pyi +2 -2
  837. homeassistant-stubs/components/wallbox/const.pyi +18 -18
  838. homeassistant-stubs/components/wallbox/number.pyi +1 -1
  839. homeassistant-stubs/components/wallbox/sensor.pyi +1 -1
  840. homeassistant-stubs/components/waqi/sensor.pyi +1 -1
  841. homeassistant-stubs/components/water_heater/__init__.pyi +5 -5
  842. homeassistant-stubs/components/weather/__init__.pyi +1 -1
  843. homeassistant-stubs/components/weather/const.pyi +3 -3
  844. homeassistant-stubs/components/wemo/__init__.pyi +1 -1
  845. homeassistant-stubs/components/wemo/coordinator.pyi +1 -1
  846. homeassistant-stubs/components/wemo/entity.pyi +1 -1
  847. homeassistant-stubs/components/wemo/fan.pyi +1 -0
  848. homeassistant-stubs/components/wemo/models.pyi +1 -1
  849. homeassistant-stubs/components/wemo/sensor.pyi +1 -1
  850. homeassistant-stubs/components/whois/sensor.pyi +1 -1
  851. homeassistant-stubs/components/withings/__init__.pyi +1 -1
  852. homeassistant-stubs/components/withings/sensor.pyi +5 -5
  853. homeassistant-stubs/components/wiz/__init__.pyi +1 -0
  854. homeassistant-stubs/components/wiz/binary_sensor.pyi +2 -2
  855. homeassistant-stubs/components/wiz/diagnostics.pyi +2 -4
  856. homeassistant-stubs/components/wiz/light.pyi +2 -3
  857. homeassistant-stubs/components/wiz/number.pyi +3 -4
  858. homeassistant-stubs/components/wiz/sensor.pyi +2 -3
  859. homeassistant-stubs/components/wiz/switch.pyi +2 -3
  860. homeassistant-stubs/components/wled/__init__.pyi +7 -2
  861. homeassistant-stubs/components/wled/const.pyi +7 -0
  862. homeassistant-stubs/components/wled/coordinator.pyi +7 -2
  863. homeassistant-stubs/components/wled/helpers.pyi +2 -0
  864. homeassistant-stubs/components/wled/light.pyi +7 -5
  865. homeassistant-stubs/components/wled/number.pyi +2 -2
  866. homeassistant-stubs/components/wled/sensor.pyi +1 -1
  867. homeassistant-stubs/components/wled/switch.pyi +1 -1
  868. homeassistant-stubs/components/wled/update.pyi +7 -3
  869. homeassistant-stubs/components/worldclock/__init__.pyi +7 -0
  870. homeassistant-stubs/components/worldclock/config_flow.pyi +22 -0
  871. homeassistant-stubs/components/worldclock/const.pyi +8 -0
  872. homeassistant-stubs/components/worldclock/sensor.pyi +9 -4
  873. homeassistant-stubs/components/xiaomi_ble/__init__.pyi +4 -4
  874. homeassistant-stubs/components/xiaomi_ble/binary_sensor.pyi +3 -4
  875. homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +2 -2
  876. homeassistant-stubs/components/xiaomi_ble/event.pyi +2 -3
  877. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +3 -4
  878. homeassistant-stubs/components/xiaomi_ble/types.pyi +4 -0
  879. homeassistant-stubs/components/yalexs_ble/sensor.pyi +1 -1
  880. homeassistant-stubs/components/youtube/sensor.pyi +1 -1
  881. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +2 -2
  882. homeassistant-stubs/components/zwave_js/discovery.pyi +9 -9
  883. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +7 -7
  884. homeassistant-stubs/components/zwave_js/fan.pyi +1 -0
  885. homeassistant-stubs/components/zwave_js/helpers.pyi +2 -2
  886. homeassistant-stubs/components/zwave_js/humidifier.pyi +1 -1
  887. homeassistant-stubs/components/zwave_js/migrate.pyi +1 -1
  888. homeassistant-stubs/components/zwave_js/sensor.pyi +1 -1
  889. homeassistant-stubs/components/zwave_js/services.pyi +4 -3
  890. homeassistant-stubs/config.pyi +10 -10
  891. homeassistant-stubs/config_entries.pyi +18 -14
  892. homeassistant-stubs/const.pyi +161 -160
  893. homeassistant-stubs/core.pyi +29 -26
  894. homeassistant-stubs/data_entry_flow.pyi +8 -8
  895. homeassistant-stubs/exceptions.pyi +1 -2
  896. homeassistant-stubs/helpers/aiohttp_client.pyi +6 -6
  897. homeassistant-stubs/helpers/area_registry.pyi +4 -1
  898. homeassistant-stubs/helpers/category_registry.pyi +12 -2
  899. homeassistant-stubs/helpers/condition.pyi +2 -4
  900. homeassistant-stubs/helpers/config_validation.pyi +9 -6
  901. homeassistant-stubs/helpers/data_entry_flow.pyi +1 -1
  902. homeassistant-stubs/helpers/device_registry.pyi +19 -10
  903. homeassistant-stubs/helpers/entity.pyi +7 -8
  904. homeassistant-stubs/helpers/entity_platform.pyi +1 -1
  905. homeassistant-stubs/helpers/entity_registry.pyi +16 -11
  906. homeassistant-stubs/helpers/event.pyi +7 -7
  907. homeassistant-stubs/helpers/floor_registry.pyi +9 -2
  908. homeassistant-stubs/helpers/http.pyi +2 -1
  909. homeassistant-stubs/helpers/intent.pyi +41 -38
  910. homeassistant-stubs/helpers/issue_registry.pyi +3 -3
  911. homeassistant-stubs/helpers/json.pyi +8 -2
  912. homeassistant-stubs/helpers/label_registry.pyi +9 -2
  913. homeassistant-stubs/helpers/llm.pyi +2 -1
  914. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +4 -1
  915. homeassistant-stubs/helpers/recorder.pyi +10 -1
  916. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +1 -1
  917. homeassistant-stubs/helpers/script.pyi +18 -16
  918. homeassistant-stubs/helpers/selector.pyi +24 -23
  919. homeassistant-stubs/helpers/service.pyi +2 -2
  920. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -2
  921. homeassistant-stubs/helpers/significant_change.pyi +3 -2
  922. homeassistant-stubs/helpers/template.pyi +3 -3
  923. homeassistant-stubs/helpers/trace.pyi +2 -3
  924. homeassistant-stubs/helpers/trigger.pyi +1 -1
  925. homeassistant-stubs/helpers/typing.pyi +3 -3
  926. homeassistant-stubs/helpers/update_coordinator.pyi +8 -4
  927. homeassistant-stubs/runner.pyi +1 -1
  928. homeassistant-stubs/setup.pyi +8 -9
  929. homeassistant-stubs/util/event_type.pyi +1 -1
  930. homeassistant-stubs/util/hass_dict.pyi +19 -19
  931. homeassistant-stubs/util/json.pyi +4 -9
  932. homeassistant-stubs/util/language.pyi +1 -1
  933. homeassistant-stubs/util/signal_type.pyi +1 -1
  934. homeassistant-stubs/util/ssl.pyi +3 -3
  935. homeassistant-stubs/util/timeout.pyi +4 -4
  936. homeassistant-stubs/util/ulid.pyi +2 -2
  937. homeassistant-stubs/util/yaml/loader.pyi +2 -3
  938. {homeassistant_stubs-2024.7.3.dist-info → homeassistant_stubs-2024.8.0.dist-info}/METADATA +2 -2
  939. {homeassistant_stubs-2024.7.3.dist-info → homeassistant_stubs-2024.8.0.dist-info}/RECORD +943 -861
  940. homeassistant-stubs/components/laundrify/model.pyi +0 -7
  941. homeassistant-stubs/helpers/backports/__init__.pyi +0 -0
  942. homeassistant-stubs/helpers/backports/aiohttp_resolver.pyi +0 -21
  943. /homeassistant-stubs/components/knx/{helpers → storage}/__init__.pyi +0 -0
  944. /homeassistant-stubs/components/knx/{helpers → storage}/keyring.pyi +0 -0
  945. {homeassistant_stubs-2024.7.3.dist-info → homeassistant_stubs-2024.8.0.dist-info}/LICENSE +0 -0
  946. {homeassistant_stubs-2024.7.3.dist-info → homeassistant_stubs-2024.8.0.dist-info}/WHEEL +0 -0
@@ -81,11 +81,12 @@ class KNXConfigEntryData(TypedDict, total=False):
81
81
  telegram_log_size: int
82
82
 
83
83
  class ColorTempModes(Enum):
84
- ABSOLUTE: str
85
- ABSOLUTE_FLOAT: str
86
- RELATIVE: str
84
+ ABSOLUTE = '7.600'
85
+ ABSOLUTE_FLOAT = '9'
86
+ RELATIVE = '5.001'
87
87
 
88
- SUPPORTED_PLATFORMS: Final[Incomplete]
88
+ SUPPORTED_PLATFORMS_YAML: Final[Incomplete]
89
+ SUPPORTED_PLATFORMS_UI: Final[Incomplete]
89
90
  CONTROLLER_MODES: Final[Incomplete]
90
91
  CURRENT_HVAC_ACTIONS: Final[Incomplete]
91
92
  PRESET_MODES: Final[Incomplete]
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import CoverSchema as CoverSchema
4
5
  from _typeshed import Incomplete
5
6
  from collections.abc import Callable as Callable
@@ -10,19 +11,18 @@ from homeassistant.core import HomeAssistant as HomeAssistant
10
11
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
13
  from typing import Any
13
- from xknx import XKNX as XKNX
14
14
  from xknx.devices import Cover as XknxCover
15
15
 
16
16
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
17
17
 
18
- class KNXCover(KnxEntity, CoverEntity):
18
+ class KNXCover(KnxYamlEntity, CoverEntity):
19
19
  _device: XknxCover
20
20
  _unsubscribe_auto_updater: Incomplete
21
21
  _attr_entity_category: Incomplete
22
22
  _attr_supported_features: Incomplete
23
23
  _attr_device_class: Incomplete
24
24
  _attr_unique_id: Incomplete
25
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
25
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
26
26
  @property
27
27
  def current_cover_position(self) -> int | None: ...
28
28
  @property
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from _typeshed import Incomplete
4
5
  from datetime import date as dt_date
5
6
  from homeassistant import config_entries as config_entries
@@ -9,20 +10,17 @@ from homeassistant.core import HomeAssistant as HomeAssistant
9
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
11
  from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
11
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
- from typing import Final
13
13
  from xknx import XKNX as XKNX
14
- from xknx.devices import DateTime as XknxDateTime
15
-
16
- _DATE_TRANSLATION_FORMAT: Final[str]
14
+ from xknx.devices import DateDevice as XknxDateDevice
17
15
 
18
16
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
19
- def _create_xknx_device(xknx: XKNX, config: ConfigType) -> XknxDateTime: ...
17
+ def _create_xknx_device(xknx: XKNX, config: ConfigType) -> XknxDateDevice: ...
20
18
 
21
- class KNXDate(KnxEntity, DateEntity, RestoreEntity):
22
- _device: XknxDateTime
19
+ class KNXDateEntity(KnxYamlEntity, DateEntity, RestoreEntity):
20
+ _device: XknxDateDevice
23
21
  _attr_entity_category: Incomplete
24
22
  _attr_unique_id: Incomplete
25
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
23
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
26
24
  async def async_added_to_hass(self) -> None: ...
27
25
  @property
28
26
  def native_value(self) -> dt_date | None: ...
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from _typeshed import Incomplete
4
5
  from datetime import datetime
5
6
  from homeassistant import config_entries as config_entries
@@ -10,16 +11,16 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
10
11
  from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
11
12
  from homeassistant.helpers.typing import ConfigType as ConfigType
12
13
  from xknx import XKNX as XKNX
13
- from xknx.devices import DateTime as XknxDateTime
14
+ from xknx.devices import DateTimeDevice as XknxDateTimeDevice
14
15
 
15
16
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
- def _create_xknx_device(xknx: XKNX, config: ConfigType) -> XknxDateTime: ...
17
+ def _create_xknx_device(xknx: XKNX, config: ConfigType) -> XknxDateTimeDevice: ...
17
18
 
18
- class KNXDateTime(KnxEntity, DateTimeEntity, RestoreEntity):
19
- _device: XknxDateTime
19
+ class KNXDateTimeEntity(KnxYamlEntity, DateTimeEntity, RestoreEntity):
20
+ _device: XknxDateTimeDevice
20
21
  _attr_entity_category: Incomplete
21
22
  _attr_unique_id: Incomplete
22
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
23
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
23
24
  async def async_added_to_hass(self) -> None: ...
24
25
  @property
25
26
  def native_value(self) -> datetime | None: ...
@@ -8,6 +8,7 @@ from xknx.core import XknxConnectionState
8
8
  from xknx.io.gateway_scanner import GatewayDescriptor as GatewayDescriptor
9
9
 
10
10
  class KNXInterfaceDevice:
11
+ hass: Incomplete
11
12
  device_registry: Incomplete
12
13
  gateway_descriptor: Incomplete
13
14
  xknx: Incomplete
@@ -15,4 +16,4 @@ class KNXInterfaceDevice:
15
16
  device_info: Incomplete
16
17
  def __init__(self, hass: HomeAssistant, entry: ConfigEntry, xknx: XKNX) -> None: ...
17
18
  async def update(self) -> None: ...
18
- async def connection_state_changed_cb(self, state: XknxConnectionState) -> None: ...
19
+ def connection_state_changed_cb(self, state: XknxConnectionState) -> None: ...
@@ -9,7 +9,6 @@ from homeassistant.helpers.event import async_track_state_change_event as async_
9
9
  from homeassistant.helpers.template import Template as Template
10
10
  from homeassistant.helpers.typing import ConfigType as ConfigType, StateType as StateType
11
11
  from xknx import XKNX as XKNX
12
- from xknx.devices import DateTime, ExposeSensor
13
12
 
14
13
  _LOGGER: Incomplete
15
14
 
@@ -26,9 +25,9 @@ class KNXExposeSensor:
26
25
  _remove_listener: Incomplete
27
26
  device: Incomplete
28
27
  def __init__(self, hass: HomeAssistant, xknx: XKNX, config: ConfigType) -> None: ...
29
- def async_register(self, config: ConfigType) -> ExposeSensor: ...
28
+ def async_register(self) -> None: ...
30
29
  def _init_expose_state(self) -> None: ...
31
- def shutdown(self) -> None: ...
30
+ def async_remove(self) -> None: ...
32
31
  def _get_expose_value(self, state: State | None) -> bool | int | float | str | None: ...
33
32
  async def _async_entity_changed(self, event: Event[EventStateChangedData]) -> None: ...
34
33
  async def _async_set_knx_value(self, value: StateType) -> None: ...
@@ -37,5 +36,5 @@ class KNXExposeTime:
37
36
  xknx: Incomplete
38
37
  device: Incomplete
39
38
  def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
40
- def async_register(self, config: ConfigType) -> DateTime: ...
41
- def shutdown(self) -> None: ...
39
+ def async_register(self) -> None: ...
40
+ def async_remove(self) -> None: ...
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import FanSchema as FanSchema
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant import config_entries as config_entries
@@ -11,19 +12,19 @@ from homeassistant.helpers.typing import ConfigType as ConfigType
11
12
  from homeassistant.util.percentage import percentage_to_ranged_value as percentage_to_ranged_value, ranged_value_to_percentage as ranged_value_to_percentage
12
13
  from homeassistant.util.scaling import int_states_in_range as int_states_in_range
13
14
  from typing import Any, Final
14
- from xknx import XKNX as XKNX
15
15
  from xknx.devices import Fan as XknxFan
16
16
 
17
17
  DEFAULT_PERCENTAGE: Final[int]
18
18
 
19
19
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
20
20
 
21
- class KNXFan(KnxEntity, FanEntity):
21
+ class KNXFan(KnxYamlEntity, FanEntity):
22
22
  _device: XknxFan
23
+ _enable_turn_on_off_backwards_compatibility: bool
23
24
  _step_range: Incomplete
24
25
  _attr_entity_category: Incomplete
25
26
  _attr_unique_id: Incomplete
26
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
27
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
27
28
  async def async_set_percentage(self, percentage: int) -> None: ...
28
29
  @property
29
30
  def supported_features(self) -> FanEntityFeature: ...
@@ -1,17 +1,41 @@
1
+ import abc
1
2
  from . import KNXModule as KNXModule
2
- from .const import DOMAIN as DOMAIN
3
+ from .storage.config_store import PlatformControllerBase as PlatformControllerBase
3
4
  from _typeshed import Incomplete
5
+ from abc import ABC, abstractmethod
4
6
  from homeassistant.helpers.entity import Entity as Entity
7
+ from homeassistant.helpers.entity_platform import EntityPlatform as EntityPlatform
8
+ from homeassistant.helpers.entity_registry import RegistryEntry as RegistryEntry
9
+ from typing import Any
5
10
  from xknx.devices import Device as XknxDevice
6
11
 
7
- class KnxEntity(Entity):
12
+ class KnxUiEntityPlatformController(PlatformControllerBase):
13
+ _knx_module: Incomplete
14
+ _entity_platform: Incomplete
15
+ _entity_class: Incomplete
16
+ def __init__(self, knx_module: KNXModule, entity_platform: EntityPlatform, entity_class: type[KnxUiEntity]) -> None: ...
17
+ async def create_entity(self, unique_id: str, config: dict[str, Any]) -> None: ...
18
+ async def update_entity(self, entity_entry: RegistryEntry, config: dict[str, Any]) -> None: ...
19
+
20
+ class _KnxEntityBase(Entity):
8
21
  _attr_should_poll: bool
9
- _device: Incomplete
10
- def __init__(self, device: XknxDevice) -> None: ...
22
+ _knx_module: KNXModule
23
+ _device: XknxDevice
11
24
  @property
12
25
  def name(self) -> str: ...
13
26
  @property
14
27
  def available(self) -> bool: ...
15
28
  async def async_update(self) -> None: ...
16
- async def after_update_callback(self, device: XknxDevice) -> None: ...
29
+ def after_update_callback(self, _device: XknxDevice) -> None: ...
17
30
  async def async_added_to_hass(self) -> None: ...
31
+ async def async_will_remove_from_hass(self) -> None: ...
32
+
33
+ class KnxYamlEntity(_KnxEntityBase):
34
+ _knx_module: Incomplete
35
+ _device: Incomplete
36
+ def __init__(self, knx_module: KNXModule, device: XknxDevice) -> None: ...
37
+
38
+ class KnxUiEntity(_KnxEntityBase, ABC, metaclass=abc.ABCMeta):
39
+ _attr_unique_id: str
40
+ @abstractmethod
41
+ def __init__(self, knx_module: KNXModule, unique_id: str, config: dict[str, Any]): ...
@@ -1,28 +1,29 @@
1
- from .const import ColorTempModes as ColorTempModes, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
1
+ from . import KNXModule as KNXModule
2
+ from .const import CONF_SYNC_STATE as CONF_SYNC_STATE, ColorTempModes as ColorTempModes, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
3
+ from .knx_entity import KnxUiEntity as KnxUiEntity, KnxUiEntityPlatformController as KnxUiEntityPlatformController, KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import LightSchema as LightSchema
5
+ from .storage.const import CONF_COLOR_TEMP_MAX as CONF_COLOR_TEMP_MAX, CONF_COLOR_TEMP_MIN as CONF_COLOR_TEMP_MIN, CONF_DEVICE_INFO as CONF_DEVICE_INFO, CONF_DPT as CONF_DPT, CONF_ENTITY as CONF_ENTITY, CONF_GA_BLUE_BRIGHTNESS as CONF_GA_BLUE_BRIGHTNESS, CONF_GA_BLUE_SWITCH as CONF_GA_BLUE_SWITCH, CONF_GA_BRIGHTNESS as CONF_GA_BRIGHTNESS, CONF_GA_COLOR as CONF_GA_COLOR, CONF_GA_COLOR_TEMP as CONF_GA_COLOR_TEMP, CONF_GA_GREEN_BRIGHTNESS as CONF_GA_GREEN_BRIGHTNESS, CONF_GA_GREEN_SWITCH as CONF_GA_GREEN_SWITCH, CONF_GA_HUE as CONF_GA_HUE, CONF_GA_PASSIVE as CONF_GA_PASSIVE, CONF_GA_RED_BRIGHTNESS as CONF_GA_RED_BRIGHTNESS, CONF_GA_RED_SWITCH as CONF_GA_RED_SWITCH, CONF_GA_SATURATION as CONF_GA_SATURATION, CONF_GA_STATE as CONF_GA_STATE, CONF_GA_SWITCH as CONF_GA_SWITCH, CONF_GA_WHITE_BRIGHTNESS as CONF_GA_WHITE_BRIGHTNESS, CONF_GA_WHITE_SWITCH as CONF_GA_WHITE_SWITCH, CONF_GA_WRITE as CONF_GA_WRITE
6
+ from .storage.entity_store_schema import LightColorMode as LightColorMode
4
7
  from _typeshed import Incomplete
5
8
  from homeassistant import config_entries as config_entries
6
9
  from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_COLOR_TEMP_KELVIN as ATTR_COLOR_TEMP_KELVIN, ATTR_HS_COLOR as ATTR_HS_COLOR, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ATTR_XY_COLOR as ATTR_XY_COLOR, ColorMode as ColorMode, LightEntity as LightEntity
7
10
  from homeassistant.const import CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_NAME as CONF_NAME, Platform as Platform
8
11
  from homeassistant.core import HomeAssistant as HomeAssistant
9
- from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
13
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback, async_get_current_platform as async_get_current_platform
10
14
  from homeassistant.helpers.typing import ConfigType as ConfigType
11
15
  from typing import Any
12
16
  from xknx import XKNX as XKNX
13
17
  from xknx.devices.light import Light as XknxLight
14
18
 
15
19
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
- def _create_light(xknx: XKNX, config: ConfigType) -> XknxLight: ...
20
+ def _create_yaml_light(xknx: XKNX, config: ConfigType) -> XknxLight: ...
21
+ def _create_ui_light(xknx: XKNX, knx_config: ConfigType, name: str) -> XknxLight: ...
17
22
 
18
- class KNXLight(KnxEntity, LightEntity):
23
+ class _KnxLight(LightEntity):
24
+ _attr_max_color_temp_kelvin: int
25
+ _attr_min_color_temp_kelvin: int
19
26
  _device: XknxLight
20
- _attr_max_color_temp_kelvin: Incomplete
21
- _attr_min_color_temp_kelvin: Incomplete
22
- _attr_entity_category: Incomplete
23
- _attr_unique_id: Incomplete
24
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
25
- def _device_unique_id(self) -> str: ...
26
27
  @property
27
28
  def is_on(self) -> bool: ...
28
29
  @property
@@ -43,3 +44,23 @@ class KNXLight(KnxEntity, LightEntity):
43
44
  def supported_color_modes(self) -> set[ColorMode]: ...
44
45
  async def async_turn_on(self, **kwargs: Any) -> None: ...
45
46
  async def async_turn_off(self, **kwargs: Any) -> None: ...
47
+
48
+ class KnxYamlLight(_KnxLight, KnxYamlEntity):
49
+ _device: XknxLight
50
+ _attr_max_color_temp_kelvin: Incomplete
51
+ _attr_min_color_temp_kelvin: Incomplete
52
+ _attr_entity_category: Incomplete
53
+ _attr_unique_id: Incomplete
54
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
55
+ def _device_unique_id(self) -> str: ...
56
+
57
+ class KnxUiLight(_KnxLight, KnxUiEntity):
58
+ _attr_has_entity_name: bool
59
+ _device: XknxLight
60
+ _knx_module: Incomplete
61
+ _attr_max_color_temp_kelvin: Incomplete
62
+ _attr_min_color_temp_kelvin: Incomplete
63
+ _attr_entity_category: Incomplete
64
+ _attr_unique_id: Incomplete
65
+ _attr_device_info: Incomplete
66
+ def __init__(self, knx_module: KNXModule, unique_id: str, config: ConfigType) -> None: ...
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant import config_entries as config_entries
5
6
  from homeassistant.components.notify import BaseNotificationService as BaseNotificationService, NotifyEntity as NotifyEntity, migrate_notify_issue as migrate_notify_issue
@@ -25,9 +26,9 @@ class KNXNotificationService(BaseNotificationService):
25
26
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
26
27
  def _create_notification_instance(xknx: XKNX, config: ConfigType) -> XknxNotification: ...
27
28
 
28
- class KNXNotify(KnxEntity, NotifyEntity):
29
+ class KNXNotify(KnxYamlEntity, NotifyEntity):
29
30
  _device: XknxNotification
30
31
  _attr_entity_category: Incomplete
31
32
  _attr_unique_id: Incomplete
32
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
33
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
33
34
  async def async_send_message(self, message: str, title: str | None = None) -> None: ...
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import NumberSchema as NumberSchema
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant import config_entries as config_entries
@@ -14,7 +15,7 @@ from xknx.devices import NumericValue
14
15
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
15
16
  def _create_numeric_value(xknx: XKNX, config: ConfigType) -> NumericValue: ...
16
17
 
17
- class KNXNumber(KnxEntity, RestoreNumber):
18
+ class KNXNumber(KnxYamlEntity, RestoreNumber):
18
19
  _device: NumericValue
19
20
  _attr_native_max_value: Incomplete
20
21
  _attr_native_min_value: Incomplete
@@ -23,7 +24,7 @@ class KNXNumber(KnxEntity, RestoreNumber):
23
24
  _attr_entity_category: Incomplete
24
25
  _attr_unique_id: Incomplete
25
26
  _attr_native_unit_of_measurement: Incomplete
26
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
27
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
27
28
  async def async_added_to_hass(self) -> None: ...
28
29
  @property
29
30
  def native_value(self) -> float: ...
@@ -6,8 +6,10 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.storage import Store as Store
8
8
  from typing import Final
9
+ from xknx import XKNX as XKNX
9
10
  from xknx.dpt import DPTBase
10
- from xknxproject.models import Device as Device, GroupAddress as GroupAddressModel, KNXProject as KNXProjectModel, ProjectInfo as ProjectInfo
11
+ from xknx.telegram.address import DeviceAddressableType as DeviceAddressableType
12
+ from xknxproject.models import DPTType as DPTType, Device as Device, GroupAddress as GroupAddressModel, KNXProject as KNXProjectModel, ProjectInfo as ProjectInfo
11
13
 
12
14
  _LOGGER: Incomplete
13
15
  STORAGE_VERSION: Final[int]
@@ -34,7 +36,7 @@ class KNXProject:
34
36
  _store: Incomplete
35
37
  def __init__(self, hass: HomeAssistant, entry: ConfigEntry) -> None: ...
36
38
  def initial_state(self) -> None: ...
37
- async def load_project(self, data: KNXProjectModel | None = None) -> None: ...
38
- async def process_project_file(self, file_id: str, password: str) -> None: ...
39
+ async def load_project(self, xknx: XKNX, data: KNXProjectModel | None = None) -> None: ...
40
+ async def process_project_file(self, xknx: XKNX, file_id: str, password: str) -> None: ...
39
41
  async def remove_project_file(self) -> None: ...
40
42
  async def get_knxproject(self) -> KNXProjectModel | None: ...
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import SceneSchema as SceneSchema
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant import config_entries as config_entries
@@ -9,14 +10,13 @@ from homeassistant.core import HomeAssistant as HomeAssistant
9
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
11
  from homeassistant.helpers.typing import ConfigType as ConfigType
11
12
  from typing import Any
12
- from xknx import XKNX as XKNX
13
13
  from xknx.devices import Scene as XknxScene
14
14
 
15
15
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
16
 
17
- class KNXScene(KnxEntity, Scene):
17
+ class KNXScene(KnxYamlEntity, Scene):
18
18
  _device: XknxScene
19
19
  _attr_entity_category: Incomplete
20
20
  _attr_unique_id: Incomplete
21
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
21
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
22
22
  async def async_activate(self, **kwargs: Any) -> None: ...
@@ -1,6 +1,6 @@
1
1
  import voluptuous as vol
2
- from .const import CONF_INVERT as CONF_INVERT, CONF_KNX_EXPOSE as CONF_KNX_EXPOSE, CONF_PAYLOAD_LENGTH as CONF_PAYLOAD_LENGTH, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, CONTROLLER_MODES as CONTROLLER_MODES, ColorTempModes as ColorTempModes, KNX_ADDRESS as KNX_ADDRESS, PRESET_MODES as PRESET_MODES
3
- from .validation import ga_list_validator as ga_list_validator, ga_validator as ga_validator, numeric_type_validator as numeric_type_validator, sensor_type_validator as sensor_type_validator, string_type_validator as string_type_validator, sync_state_validator as sync_state_validator
2
+ from .const import CONF_INVERT as CONF_INVERT, CONF_KNX_EXPOSE as CONF_KNX_EXPOSE, CONF_PAYLOAD_LENGTH as CONF_PAYLOAD_LENGTH, CONF_RESET_AFTER as CONF_RESET_AFTER, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, ColorTempModes as ColorTempModes, KNX_ADDRESS as KNX_ADDRESS
3
+ from .validation import backwards_compatible_xknx_climate_enum_member as backwards_compatible_xknx_climate_enum_member, dpt_base_type_validator as dpt_base_type_validator, ga_list_validator as ga_list_validator, ga_validator as ga_validator, numeric_type_validator as numeric_type_validator, sensor_type_validator as sensor_type_validator, string_type_validator as string_type_validator, sync_state_validator as sync_state_validator
4
4
  from _typeshed import Incomplete
5
5
  from abc import ABC
6
6
  from collections import OrderedDict
@@ -122,6 +122,9 @@ class ExposeSchema(KNXPlatformSchema):
122
122
  CONF_KNX_EXPOSE_BINARY: str
123
123
  CONF_KNX_EXPOSE_COOLDOWN: str
124
124
  CONF_KNX_EXPOSE_DEFAULT: str
125
+ CONF_TIME: str
126
+ CONF_DATE: str
127
+ CONF_DATETIME: str
125
128
  EXPOSE_TIME_TYPES: Final[Incomplete]
126
129
  EXPOSE_TIME_SCHEMA: Incomplete
127
130
  EXPOSE_SENSOR_SCHEMA: Incomplete
@@ -1,5 +1,6 @@
1
+ from . import KNXModule as KNXModule
1
2
  from .const import CONF_PAYLOAD_LENGTH as CONF_PAYLOAD_LENGTH, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_STATE_ADDRESS as CONF_STATE_ADDRESS, CONF_SYNC_STATE as CONF_SYNC_STATE, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS
2
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
3
4
  from .schema import SelectSchema as SelectSchema
4
5
  from _typeshed import Incomplete
5
6
  from homeassistant import config_entries as config_entries
@@ -15,15 +16,15 @@ from xknx.devices import Device as XknxDevice, RawValue
15
16
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
17
  def _create_raw_value(xknx: XKNX, config: ConfigType) -> RawValue: ...
17
18
 
18
- class KNXSelect(KnxEntity, SelectEntity, RestoreEntity):
19
+ class KNXSelect(KnxYamlEntity, SelectEntity, RestoreEntity):
19
20
  _device: RawValue
20
21
  _option_payloads: Incomplete
21
22
  _attr_options: Incomplete
22
23
  _attr_current_option: Incomplete
23
24
  _attr_entity_category: Incomplete
24
25
  _attr_unique_id: Incomplete
25
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
26
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
26
27
  async def async_added_to_hass(self) -> None: ...
27
- async def after_update_callback(self, device: XknxDevice) -> None: ...
28
+ def after_update_callback(self, device: XknxDevice) -> None: ...
28
29
  def option_from_payload(self, payload: int | None) -> str | None: ...
29
30
  async def async_select_option(self, option: str) -> None: ...
@@ -1,6 +1,6 @@
1
1
  from . import KNXModule as KNXModule
2
2
  from .const import ATTR_SOURCE as ATTR_SOURCE, DATA_KNX_CONFIG as DATA_KNX_CONFIG, DOMAIN as DOMAIN
3
- from .knx_entity import KnxEntity as KnxEntity
3
+ from .knx_entity import KnxYamlEntity as KnxYamlEntity
4
4
  from .schema import SensorSchema as SensorSchema
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable
@@ -27,14 +27,14 @@ class KNXSystemEntityDescription(SensorEntityDescription):
27
27
  has_entity_name: bool = ...
28
28
  should_poll: bool = ...
29
29
  value_fn: Callable[[KNXModule], StateType | datetime] = ...
30
- def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, always_available, should_poll, value_fn) -> None: ...
30
+ def __init__(self, *, key, device_class=..., entity_category=..., entity_registry_enabled_default=..., entity_registry_visible_default=..., force_update=..., icon=..., has_entity_name=..., name=..., translation_key=..., translation_placeholders=..., unit_of_measurement=..., last_reset=..., native_unit_of_measurement=..., options=..., state_class=..., suggested_display_precision=..., suggested_unit_of_measurement=..., always_available=..., should_poll=..., value_fn=...) -> None: ...
31
31
 
32
32
  SYSTEM_ENTITY_DESCRIPTIONS: Incomplete
33
33
 
34
34
  async def async_setup_entry(hass: HomeAssistant, config_entry: config_entries.ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
35
35
  def _create_sensor(xknx: XKNX, config: ConfigType) -> XknxSensor: ...
36
36
 
37
- class KNXSensor(KnxEntity, SensorEntity):
37
+ class KNXSensor(KnxYamlEntity, SensorEntity):
38
38
  _device: XknxSensor
39
39
  _attr_device_class: Incomplete
40
40
  _attr_force_update: Incomplete
@@ -42,7 +42,7 @@ class KNXSensor(KnxEntity, SensorEntity):
42
42
  _attr_unique_id: Incomplete
43
43
  _attr_native_unit_of_measurement: Incomplete
44
44
  _attr_state_class: Incomplete
45
- def __init__(self, xknx: XKNX, config: ConfigType) -> None: ...
45
+ def __init__(self, knx_module: KNXModule, config: ConfigType) -> None: ...
46
46
  @property
47
47
  def native_value(self) -> StateType: ...
48
48
  @property
@@ -61,5 +61,5 @@ class KNXSystemSensor(SensorEntity):
61
61
  def native_value(self) -> StateType | datetime: ...
62
62
  @property
63
63
  def available(self) -> bool: ...
64
- async def after_update_callback(self, _: XknxConnectionState) -> None: ...
64
+ def after_update_callback(self, _: XknxConnectionState) -> None: ...
65
65
  async def async_added_to_hass(self) -> None: ...
@@ -1,7 +1,7 @@
1
1
  from . import KNXModule as KNXModule
2
2
  from .const import DOMAIN as DOMAIN, KNX_ADDRESS as KNX_ADDRESS, SERVICE_KNX_ATTR_PAYLOAD as SERVICE_KNX_ATTR_PAYLOAD, SERVICE_KNX_ATTR_REMOVE as SERVICE_KNX_ATTR_REMOVE, SERVICE_KNX_ATTR_RESPONSE as SERVICE_KNX_ATTR_RESPONSE, SERVICE_KNX_ATTR_TYPE as SERVICE_KNX_ATTR_TYPE, SERVICE_KNX_EVENT_REGISTER as SERVICE_KNX_EVENT_REGISTER, SERVICE_KNX_EXPOSURE_REGISTER as SERVICE_KNX_EXPOSURE_REGISTER, SERVICE_KNX_READ as SERVICE_KNX_READ, SERVICE_KNX_SEND as SERVICE_KNX_SEND
3
3
  from .expose import create_knx_exposure as create_knx_exposure
4
- from .schema import ExposeSchema as ExposeSchema, ga_validator as ga_validator, sensor_type_validator as sensor_type_validator
4
+ from .schema import ExposeSchema as ExposeSchema, dpt_base_type_validator as dpt_base_type_validator, ga_validator as ga_validator
5
5
  from _typeshed import Incomplete
6
6
  from homeassistant.const import CONF_TYPE as CONF_TYPE, SERVICE_RELOAD as SERVICE_RELOAD
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
@@ -0,0 +1,44 @@
1
+ import abc
2
+ from ..const import DOMAIN as DOMAIN
3
+ from .const import CONF_DATA as CONF_DATA
4
+ from _typeshed import Incomplete
5
+ from abc import ABC, abstractmethod
6
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
7
+ from homeassistant.const import CONF_PLATFORM as CONF_PLATFORM, Platform as Platform
8
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
9
+ from homeassistant.helpers import entity_registry as er
10
+ from homeassistant.helpers.storage import Store as Store
11
+ from homeassistant.util.ulid import ulid_now as ulid_now
12
+ from typing import Any, Final, TypedDict
13
+
14
+ _LOGGER: Incomplete
15
+ STORAGE_VERSION: Final[int]
16
+ STORAGE_KEY: Final[Incomplete]
17
+ KNXPlatformStoreModel = dict[str, dict[str, Any]]
18
+ KNXEntityStoreModel = dict[str, KNXPlatformStoreModel]
19
+
20
+ class KNXConfigStoreModel(TypedDict):
21
+ entities: KNXEntityStoreModel
22
+
23
+ class PlatformControllerBase(ABC, metaclass=abc.ABCMeta):
24
+ @abstractmethod
25
+ async def create_entity(self, unique_id: str, config: dict[str, Any]) -> None: ...
26
+ @abstractmethod
27
+ async def update_entity(self, entity_entry: er.RegistryEntry, config: dict[str, Any]) -> None: ...
28
+
29
+ class KNXConfigStore:
30
+ hass: Incomplete
31
+ config_entry: Incomplete
32
+ _store: Incomplete
33
+ data: Incomplete
34
+ _platform_controllers: Incomplete
35
+ def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry) -> None: ...
36
+ async def load_data(self) -> None: ...
37
+ def add_platform(self, platform: Platform, controller: PlatformControllerBase) -> None: ...
38
+ async def create_entity(self, platform: Platform, data: dict[str, Any]) -> str | None: ...
39
+ def get_entity_config(self, entity_id: str) -> dict[str, Any]: ...
40
+ async def update_entity(self, platform: Platform, entity_id: str, data: dict[str, Any]) -> None: ...
41
+ async def delete_entity(self, entity_id: str) -> None: ...
42
+ def get_entity_entries(self) -> list[er.RegistryEntry]: ...
43
+
44
+ class ConfigStoreException(Exception): ...
@@ -0,0 +1,25 @@
1
+ from typing import Final
2
+
3
+ CONF_DATA: Final[str]
4
+ CONF_ENTITY: Final[str]
5
+ CONF_DEVICE_INFO: Final[str]
6
+ CONF_GA_WRITE: Final[str]
7
+ CONF_GA_STATE: Final[str]
8
+ CONF_GA_PASSIVE: Final[str]
9
+ CONF_DPT: Final[str]
10
+ CONF_GA_SWITCH: Final[str]
11
+ CONF_GA_COLOR_TEMP: Final[str]
12
+ CONF_COLOR_TEMP_MIN: Final[str]
13
+ CONF_COLOR_TEMP_MAX: Final[str]
14
+ CONF_GA_BRIGHTNESS: Final[str]
15
+ CONF_GA_COLOR: Final[str]
16
+ CONF_GA_RED_BRIGHTNESS: Final[str]
17
+ CONF_GA_RED_SWITCH: Final[str]
18
+ CONF_GA_GREEN_BRIGHTNESS: Final[str]
19
+ CONF_GA_GREEN_SWITCH: Final[str]
20
+ CONF_GA_BLUE_BRIGHTNESS: Final[str]
21
+ CONF_GA_BLUE_SWITCH: Final[str]
22
+ CONF_GA_WHITE_BRIGHTNESS: Final[str]
23
+ CONF_GA_WHITE_SWITCH: Final[str]
24
+ CONF_GA_HUE: Final[str]
25
+ CONF_GA_SATURATION: Final[str]
@@ -0,0 +1,36 @@
1
+ from ..const import CONF_INVERT as CONF_INVERT, CONF_RESPOND_TO_READ as CONF_RESPOND_TO_READ, CONF_SYNC_STATE as CONF_SYNC_STATE, ColorTempModes as ColorTempModes, DOMAIN as DOMAIN, SUPPORTED_PLATFORMS_UI as SUPPORTED_PLATFORMS_UI
2
+ from ..validation import sync_state_validator as sync_state_validator
3
+ from .const import CONF_COLOR_TEMP_MAX as CONF_COLOR_TEMP_MAX, CONF_COLOR_TEMP_MIN as CONF_COLOR_TEMP_MIN, CONF_DATA as CONF_DATA, CONF_DEVICE_INFO as CONF_DEVICE_INFO, CONF_ENTITY as CONF_ENTITY, CONF_GA_BLUE_BRIGHTNESS as CONF_GA_BLUE_BRIGHTNESS, CONF_GA_BLUE_SWITCH as CONF_GA_BLUE_SWITCH, CONF_GA_BRIGHTNESS as CONF_GA_BRIGHTNESS, CONF_GA_COLOR as CONF_GA_COLOR, CONF_GA_COLOR_TEMP as CONF_GA_COLOR_TEMP, CONF_GA_GREEN_BRIGHTNESS as CONF_GA_GREEN_BRIGHTNESS, CONF_GA_GREEN_SWITCH as CONF_GA_GREEN_SWITCH, CONF_GA_HUE as CONF_GA_HUE, CONF_GA_PASSIVE as CONF_GA_PASSIVE, CONF_GA_RED_BRIGHTNESS as CONF_GA_RED_BRIGHTNESS, CONF_GA_RED_SWITCH as CONF_GA_RED_SWITCH, CONF_GA_SATURATION as CONF_GA_SATURATION, CONF_GA_STATE as CONF_GA_STATE, CONF_GA_SWITCH as CONF_GA_SWITCH, CONF_GA_WHITE_BRIGHTNESS as CONF_GA_WHITE_BRIGHTNESS, CONF_GA_WHITE_SWITCH as CONF_GA_WHITE_SWITCH, CONF_GA_WRITE as CONF_GA_WRITE
4
+ from .knx_selector import GASelector as GASelector
5
+ from _typeshed import Incomplete
6
+ from enum import StrEnum
7
+ from homeassistant.const import CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM, Platform as Platform
8
+ from homeassistant.helpers.entity import ENTITY_CATEGORIES_SCHEMA as ENTITY_CATEGORIES_SCHEMA
9
+ from homeassistant.helpers.typing import VolDictType as VolDictType, VolSchemaType as VolSchemaType
10
+
11
+ BASE_ENTITY_SCHEMA: Incomplete
12
+
13
+ def optional_ga_schema(key: str, ga_selector: GASelector) -> VolDictType: ...
14
+
15
+ SWITCH_SCHEMA: Incomplete
16
+
17
+ class LightColorMode(StrEnum):
18
+ RGB = '232.600'
19
+ RGBW = '251.600'
20
+ XYY = '242.600'
21
+
22
+ class LightColorModeSchema(StrEnum):
23
+ DEFAULT = 'default'
24
+ INDIVIDUAL = 'individual'
25
+ HSV = 'hsv'
26
+
27
+ _LIGHT_COLOR_MODE_SCHEMA: str
28
+ _COMMON_LIGHT_SCHEMA: Incomplete
29
+ _DEFAULT_LIGHT_SCHEMA: Incomplete
30
+ _INDIVIDUAL_LIGHT_SCHEMA: Incomplete
31
+ _HSV_LIGHT_SCHEMA: Incomplete
32
+ LIGHT_KNX_SCHEMA: Incomplete
33
+ LIGHT_SCHEMA: Incomplete
34
+ ENTITY_STORE_DATA_SCHEMA: VolSchemaType
35
+ CREATE_ENTITY_BASE_SCHEMA: VolDictType
36
+ UPDATE_ENTITY_BASE_SCHEMA: Incomplete
@@ -0,0 +1,25 @@
1
+ import voluptuous as vol
2
+ from .entity_store_schema import ENTITY_STORE_DATA_SCHEMA as ENTITY_STORE_DATA_SCHEMA
3
+ from _typeshed import Incomplete
4
+ from typing import Literal, TypedDict
5
+
6
+ class _ErrorDescription(TypedDict):
7
+ path: list[str] | None
8
+ error_message: str
9
+ error_class: str
10
+
11
+ class EntityStoreValidationError(TypedDict):
12
+ success: Literal[False]
13
+ error_base: str
14
+ errors: list[_ErrorDescription]
15
+
16
+ class EntityStoreValidationSuccess(TypedDict):
17
+ success: Literal[True]
18
+ entity_id: str | None
19
+
20
+ def parse_invalid(exc: vol.Invalid) -> _ErrorDescription: ...
21
+ def validate_entity_data(entity_data: dict) -> dict: ...
22
+
23
+ class EntityStoreValidationException(Exception):
24
+ validation_error: Incomplete
25
+ def __init__(self, validation_error: EntityStoreValidationError) -> None: ...