homeassistant-stubs 2024.5.4__py3-none-any.whl → 2024.6.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 (955) hide show
  1. homeassistant-stubs/auth/__init__.pyi +1 -2
  2. homeassistant-stubs/auth/auth_store.pyi +3 -0
  3. homeassistant-stubs/auth/mfa_modules/__init__.pyi +2 -1
  4. homeassistant-stubs/auth/providers/__init__.pyi +2 -1
  5. homeassistant-stubs/block_async_io.pyi +2 -0
  6. homeassistant-stubs/bootstrap.pyi +6 -4
  7. homeassistant-stubs/components/abode/__init__.pyi +3 -37
  8. homeassistant-stubs/components/abode/alarm_control_panel.pyi +2 -1
  9. homeassistant-stubs/components/abode/binary_sensor.pyi +2 -1
  10. homeassistant-stubs/components/abode/camera.pyi +2 -1
  11. homeassistant-stubs/components/abode/cover.pyi +2 -1
  12. homeassistant-stubs/components/abode/entity.pyi +39 -0
  13. homeassistant-stubs/components/abode/light.pyi +2 -1
  14. homeassistant-stubs/components/abode/lock.pyi +2 -1
  15. homeassistant-stubs/components/abode/sensor.pyi +2 -1
  16. homeassistant-stubs/components/abode/switch.pyi +2 -1
  17. homeassistant-stubs/components/accuweather/__init__.pyi +3 -3
  18. homeassistant-stubs/components/accuweather/diagnostics.pyi +2 -4
  19. homeassistant-stubs/components/accuweather/sensor.pyi +3 -4
  20. homeassistant-stubs/components/accuweather/system_health.pyi +1 -0
  21. homeassistant-stubs/components/accuweather/weather.pyi +4 -6
  22. homeassistant-stubs/components/acmeda/__init__.pyi +3 -3
  23. homeassistant-stubs/components/acmeda/cover.pyi +3 -4
  24. homeassistant-stubs/components/acmeda/helpers.pyi +2 -1
  25. homeassistant-stubs/components/acmeda/sensor.pyi +3 -4
  26. homeassistant-stubs/components/adguard/__init__.pyi +4 -3
  27. homeassistant-stubs/components/adguard/entity.pyi +3 -3
  28. homeassistant-stubs/components/adguard/sensor.pyi +3 -4
  29. homeassistant-stubs/components/adguard/switch.pyi +3 -4
  30. homeassistant-stubs/components/aftership/__init__.pyi +3 -2
  31. homeassistant-stubs/components/aftership/sensor.pyi +2 -2
  32. homeassistant-stubs/components/air_quality/__init__.pyi +1 -1
  33. homeassistant-stubs/components/air_quality/const.pyi +3 -0
  34. homeassistant-stubs/components/air_quality/group.pyi +1 -0
  35. homeassistant-stubs/components/airgradient/__init__.pyi +11 -0
  36. homeassistant-stubs/components/airgradient/config_flow.pyi +18 -0
  37. homeassistant-stubs/components/airgradient/const.pyi +4 -0
  38. homeassistant-stubs/components/airgradient/coordinator.pyi +24 -0
  39. homeassistant-stubs/components/airgradient/entity.pyi +10 -0
  40. homeassistant-stubs/components/airgradient/select.pyi +37 -0
  41. homeassistant-stubs/components/airgradient/sensor.pyi +30 -0
  42. homeassistant-stubs/components/airly/__init__.pyi +3 -2
  43. homeassistant-stubs/components/airly/coordinator.pyi +1 -1
  44. homeassistant-stubs/components/airly/diagnostics.pyi +2 -4
  45. homeassistant-stubs/components/airly/sensor.pyi +2 -3
  46. homeassistant-stubs/components/airly/system_health.pyi +1 -0
  47. homeassistant-stubs/components/airnow/__init__.pyi +3 -2
  48. homeassistant-stubs/components/airnow/const.pyi +1 -0
  49. homeassistant-stubs/components/airnow/diagnostics.pyi +2 -4
  50. homeassistant-stubs/components/airnow/sensor.pyi +3 -4
  51. homeassistant-stubs/components/airq/__init__.pyi +5 -3
  52. homeassistant-stubs/components/airq/config_flow.pyi +8 -2
  53. homeassistant-stubs/components/airq/const.pyi +2 -0
  54. homeassistant-stubs/components/airq/coordinator.pyi +3 -1
  55. homeassistant-stubs/components/airq/sensor.pyi +3 -4
  56. homeassistant-stubs/components/airthings/__init__.pyi +3 -2
  57. homeassistant-stubs/components/airthings/sensor.pyi +2 -3
  58. homeassistant-stubs/components/airthings_ble/__init__.pyi +5 -3
  59. homeassistant-stubs/components/airthings_ble/sensor.pyi +6 -6
  60. homeassistant-stubs/components/airtouch5/__init__.pyi +4 -2
  61. homeassistant-stubs/components/airtouch5/climate.pyi +2 -2
  62. homeassistant-stubs/components/airvisual_pro/__init__.pyi +3 -2
  63. homeassistant-stubs/components/airvisual_pro/diagnostics.pyi +2 -4
  64. homeassistant-stubs/components/airvisual_pro/sensor.pyi +2 -4
  65. homeassistant-stubs/components/airzone_cloud/climate.pyi +6 -9
  66. homeassistant-stubs/components/aladdin_connect/__init__.pyi +10 -8
  67. homeassistant-stubs/components/aladdin_connect/api.pyi +12 -0
  68. homeassistant-stubs/components/aladdin_connect/application_credentials.pyi +5 -0
  69. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +14 -19
  70. homeassistant-stubs/components/aladdin_connect/const.pyi +2 -10
  71. homeassistant-stubs/components/aladdin_connect/coordinator.pyi +15 -0
  72. homeassistant-stubs/components/aladdin_connect/cover.pyi +11 -28
  73. homeassistant-stubs/components/aladdin_connect/entity.pyi +12 -0
  74. homeassistant-stubs/components/aladdin_connect/sensor.pyi +9 -16
  75. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +15 -1
  76. homeassistant-stubs/components/alarm_control_panel/group.pyi +2 -1
  77. homeassistant-stubs/components/ambient_station/__init__.pyi +3 -2
  78. homeassistant-stubs/components/ambient_station/binary_sensor.pyi +3 -3
  79. homeassistant-stubs/components/ambient_station/diagnostics.pyi +3 -4
  80. homeassistant-stubs/components/ambient_station/sensor.pyi +3 -4
  81. homeassistant-stubs/components/analytics_insights/__init__.pyi +5 -4
  82. homeassistant-stubs/components/analytics_insights/coordinator.pyi +2 -2
  83. homeassistant-stubs/components/analytics_insights/sensor.pyi +2 -3
  84. homeassistant-stubs/components/androidtv/__init__.pyi +12 -4
  85. homeassistant-stubs/components/androidtv/const.pyi +0 -2
  86. homeassistant-stubs/components/androidtv/diagnostics.pyi +3 -3
  87. homeassistant-stubs/components/androidtv/entity.pyi +3 -9
  88. homeassistant-stubs/components/androidtv/media_player.pyi +4 -4
  89. homeassistant-stubs/components/androidtv_remote/__init__.pyi +4 -4
  90. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +1 -0
  91. homeassistant-stubs/components/androidtv_remote/diagnostics.pyi +2 -4
  92. homeassistant-stubs/components/androidtv_remote/media_player.pyi +3 -4
  93. homeassistant-stubs/components/androidtv_remote/remote.pyi +2 -4
  94. homeassistant-stubs/components/anova/__init__.pyi +3 -2
  95. homeassistant-stubs/components/anova/config_flow.pyi +0 -1
  96. homeassistant-stubs/components/anova/coordinator.pyi +7 -6
  97. homeassistant-stubs/components/anova/entity.pyi +2 -0
  98. homeassistant-stubs/components/anova/models.pyi +3 -3
  99. homeassistant-stubs/components/anova/sensor.pyi +7 -9
  100. homeassistant-stubs/components/apple_tv/__init__.pyi +2 -1
  101. homeassistant-stubs/components/apple_tv/media_player.pyi +2 -4
  102. homeassistant-stubs/components/apple_tv/remote.pyi +2 -4
  103. homeassistant-stubs/components/aprs/device_tracker.pyi +1 -0
  104. homeassistant-stubs/components/apsystems/__init__.pyi +10 -0
  105. homeassistant-stubs/components/{poolsense → apsystems}/config_flow.pyi +4 -5
  106. homeassistant-stubs/components/apsystems/const.pyi +4 -0
  107. homeassistant-stubs/components/apsystems/coordinator.pyi +10 -0
  108. homeassistant-stubs/components/apsystems/sensor.pyi +31 -0
  109. homeassistant-stubs/components/aquostv/media_player.pyi +1 -3
  110. homeassistant-stubs/components/aranet/const.pyi +1 -0
  111. homeassistant-stubs/components/aranet/sensor.pyi +8 -6
  112. homeassistant-stubs/components/arcam_fmj/media_player.pyi +1 -3
  113. homeassistant-stubs/components/asuswrt/__init__.pyi +4 -4
  114. homeassistant-stubs/components/asuswrt/bridge.pyi +3 -4
  115. homeassistant-stubs/components/asuswrt/const.pyi +0 -1
  116. homeassistant-stubs/components/asuswrt/device_tracker.pyi +2 -3
  117. homeassistant-stubs/components/asuswrt/diagnostics.pyi +2 -4
  118. homeassistant-stubs/components/asuswrt/router.pyi +2 -1
  119. homeassistant-stubs/components/asuswrt/sensor.pyi +3 -3
  120. homeassistant-stubs/components/auth/__init__.pyi +2 -7
  121. homeassistant-stubs/components/axis/__init__.pyi +2 -1
  122. homeassistant-stubs/components/axis/binary_sensor.pyi +2 -2
  123. homeassistant-stubs/components/axis/camera.pyi +2 -2
  124. homeassistant-stubs/components/axis/config_flow.pyi +2 -0
  125. homeassistant-stubs/components/axis/diagnostics.pyi +2 -3
  126. homeassistant-stubs/components/axis/hub/hub.pyi +3 -5
  127. homeassistant-stubs/components/axis/light.pyi +2 -2
  128. homeassistant-stubs/components/axis/switch.pyi +2 -2
  129. homeassistant-stubs/components/baf/__init__.pyi +6 -5
  130. homeassistant-stubs/components/baf/binary_sensor.pyi +2 -4
  131. homeassistant-stubs/components/baf/climate.pyi +2 -4
  132. homeassistant-stubs/components/baf/fan.pyi +3 -4
  133. homeassistant-stubs/components/baf/light.pyi +2 -4
  134. homeassistant-stubs/components/baf/models.pyi +0 -8
  135. homeassistant-stubs/components/baf/number.pyi +3 -4
  136. homeassistant-stubs/components/baf/sensor.pyi +2 -4
  137. homeassistant-stubs/components/baf/switch.pyi +2 -4
  138. homeassistant-stubs/components/bang_olufsen/entity.pyi +2 -1
  139. homeassistant-stubs/components/bang_olufsen/media_player.pyi +7 -7
  140. homeassistant-stubs/components/blue_current/sensor.pyi +7 -1
  141. homeassistant-stubs/components/blueprint/const.pyi +1 -0
  142. homeassistant-stubs/components/blueprint/schemas.pyi +4 -2
  143. homeassistant-stubs/components/bluetooth/active_update_coordinator.pyi +2 -3
  144. homeassistant-stubs/components/bluetooth/active_update_processor.pyi +4 -5
  145. homeassistant-stubs/components/bluetooth/api.pyi +1 -0
  146. homeassistant-stubs/components/bluetooth/config_flow.pyi +0 -1
  147. homeassistant-stubs/components/bluetooth/match.pyi +2 -3
  148. homeassistant-stubs/components/bluetooth/models.pyi +0 -2
  149. homeassistant-stubs/components/bluetooth/passive_update_coordinator.pyi +2 -0
  150. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +15 -17
  151. homeassistant-stubs/components/bluetooth/update_coordinator.pyi +0 -2
  152. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +1 -0
  153. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +3 -10
  154. homeassistant-stubs/components/bond/__init__.pyi +4 -3
  155. homeassistant-stubs/components/bond/button.pyi +2 -4
  156. homeassistant-stubs/components/bond/cover.pyi +2 -4
  157. homeassistant-stubs/components/bond/diagnostics.pyi +2 -4
  158. homeassistant-stubs/components/bond/fan.pyi +3 -4
  159. homeassistant-stubs/components/bond/light.pyi +3 -4
  160. homeassistant-stubs/components/bond/switch.pyi +3 -4
  161. homeassistant-stubs/components/braviatv/__init__.pyi +4 -4
  162. homeassistant-stubs/components/braviatv/button.pyi +2 -3
  163. homeassistant-stubs/components/braviatv/coordinator.pyi +2 -4
  164. homeassistant-stubs/components/braviatv/diagnostics.pyi +2 -4
  165. homeassistant-stubs/components/braviatv/media_player.pyi +3 -3
  166. homeassistant-stubs/components/braviatv/remote.pyi +2 -3
  167. homeassistant-stubs/components/brother/__init__.pyi +5 -13
  168. homeassistant-stubs/components/brother/config_flow.pyi +1 -1
  169. homeassistant-stubs/components/brother/const.pyi +1 -2
  170. homeassistant-stubs/components/brother/coordinator.pyi +12 -0
  171. homeassistant-stubs/components/brother/diagnostics.pyi +2 -4
  172. homeassistant-stubs/components/brother/sensor.pyi +3 -4
  173. homeassistant-stubs/components/bthome/__init__.pyi +1 -1
  174. homeassistant-stubs/components/bthome/binary_sensor.pyi +2 -2
  175. homeassistant-stubs/components/bthome/coordinator.pyi +4 -5
  176. homeassistant-stubs/components/bthome/logbook.pyi +0 -1
  177. homeassistant-stubs/components/bthome/sensor.pyi +2 -2
  178. homeassistant-stubs/components/canary/alarm_control_panel.pyi +1 -0
  179. homeassistant-stubs/components/cert_expiry/__init__.pyi +2 -2
  180. homeassistant-stubs/components/cert_expiry/sensor.pyi +3 -3
  181. homeassistant-stubs/components/climate/group.pyi +2 -2
  182. homeassistant-stubs/components/climate/intent.pyi +2 -0
  183. homeassistant-stubs/components/cloud/__init__.pyi +3 -6
  184. homeassistant-stubs/components/cloud/const.pyi +0 -1
  185. homeassistant-stubs/components/cloud/http_api.pyi +4 -7
  186. homeassistant-stubs/components/cloud/prefs.pyi +3 -5
  187. homeassistant-stubs/components/co2signal/__init__.pyi +3 -2
  188. homeassistant-stubs/components/co2signal/diagnostics.pyi +2 -4
  189. homeassistant-stubs/components/co2signal/sensor.pyi +2 -2
  190. homeassistant-stubs/components/config/area_registry.pyi +0 -2
  191. homeassistant-stubs/components/config/device_registry.pyi +1 -1
  192. homeassistant-stubs/components/config/floor_registry.pyi +1 -1
  193. homeassistant-stubs/components/config/label_registry.pyi +1 -1
  194. homeassistant-stubs/components/config/view.pyi +2 -4
  195. homeassistant-stubs/components/counter/__init__.pyi +1 -2
  196. homeassistant-stubs/components/cover/__init__.pyi +2 -4
  197. homeassistant-stubs/components/cover/const.pyi +1 -0
  198. homeassistant-stubs/components/cover/group.pyi +1 -0
  199. homeassistant-stubs/components/deconz/__init__.pyi +6 -1
  200. homeassistant-stubs/components/deconz/binary_sensor.pyi +3 -14
  201. homeassistant-stubs/components/deconz/deconz_device.pyi +2 -6
  202. homeassistant-stubs/components/deconz/device_trigger.pyi +2 -1
  203. homeassistant-stubs/components/deconz/light.pyi +1 -2
  204. homeassistant-stubs/components/deconz/number.pyi +4 -8
  205. homeassistant-stubs/components/deconz/sensor.pyi +3 -1
  206. homeassistant-stubs/components/deconz/services.pyi +0 -2
  207. homeassistant-stubs/components/demo/alarm_control_panel.pyi +3 -0
  208. homeassistant-stubs/components/demo/lock.pyi +5 -1
  209. homeassistant-stubs/components/demo/notify.pyi +3 -2
  210. homeassistant-stubs/components/device_automation/__init__.pyi +2 -2
  211. homeassistant-stubs/components/device_tracker/group.pyi +1 -0
  212. homeassistant-stubs/components/devolo_home_control/__init__.pyi +6 -3
  213. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +2 -3
  214. homeassistant-stubs/components/devolo_home_control/climate.pyi +2 -3
  215. homeassistant-stubs/components/devolo_home_control/cover.pyi +2 -3
  216. homeassistant-stubs/components/devolo_home_control/diagnostics.pyi +2 -4
  217. homeassistant-stubs/components/devolo_home_control/light.pyi +2 -3
  218. homeassistant-stubs/components/devolo_home_control/sensor.pyi +2 -3
  219. homeassistant-stubs/components/devolo_home_control/siren.pyi +2 -3
  220. homeassistant-stubs/components/devolo_home_control/switch.pyi +2 -3
  221. homeassistant-stubs/components/devolo_home_network/__init__.pyi +11 -2
  222. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +4 -5
  223. homeassistant-stubs/components/devolo_home_network/button.pyi +3 -3
  224. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +2 -2
  225. homeassistant-stubs/components/devolo_home_network/diagnostics.pyi +2 -4
  226. homeassistant-stubs/components/devolo_home_network/entity.pyi +4 -8
  227. homeassistant-stubs/components/devolo_home_network/image.pyi +4 -5
  228. homeassistant-stubs/components/devolo_home_network/sensor.pyi +5 -6
  229. homeassistant-stubs/components/devolo_home_network/switch.pyi +3 -3
  230. homeassistant-stubs/components/devolo_home_network/update.pyi +3 -3
  231. homeassistant-stubs/components/dhcp/__init__.pyi +1 -1
  232. homeassistant-stubs/components/diagnostics/util.pyi +1 -3
  233. homeassistant-stubs/components/discovergy/__init__.pyi +2 -2
  234. homeassistant-stubs/components/discovergy/diagnostics.pyi +2 -4
  235. homeassistant-stubs/components/discovergy/sensor.pyi +2 -2
  236. homeassistant-stubs/components/dlna_dmr/media_player.pyi +2 -5
  237. homeassistant-stubs/components/dlna_dms/dms.pyi +1 -4
  238. homeassistant-stubs/components/dnsip/sensor.pyi +2 -0
  239. homeassistant-stubs/components/duotecno/entity.pyi +2 -4
  240. homeassistant-stubs/components/ecovacs/__init__.pyi +3 -2
  241. homeassistant-stubs/components/ecovacs/binary_sensor.pyi +2 -4
  242. homeassistant-stubs/components/ecovacs/button.pyi +3 -4
  243. homeassistant-stubs/components/ecovacs/controller.pyi +4 -1
  244. homeassistant-stubs/components/ecovacs/diagnostics.pyi +3 -4
  245. homeassistant-stubs/components/ecovacs/event.pyi +2 -4
  246. homeassistant-stubs/components/ecovacs/image.pyi +2 -4
  247. homeassistant-stubs/components/ecovacs/lawn_mower.pyi +2 -4
  248. homeassistant-stubs/components/ecovacs/number.pyi +2 -4
  249. homeassistant-stubs/components/ecovacs/select.pyi +2 -4
  250. homeassistant-stubs/components/ecovacs/sensor.pyi +3 -4
  251. homeassistant-stubs/components/ecovacs/switch.pyi +2 -4
  252. homeassistant-stubs/components/ecovacs/vacuum.pyi +2 -3
  253. homeassistant-stubs/components/elgato/__init__.pyi +3 -3
  254. homeassistant-stubs/components/elgato/button.pyi +2 -3
  255. homeassistant-stubs/components/elgato/diagnostics.pyi +2 -4
  256. homeassistant-stubs/components/elgato/light.pyi +3 -3
  257. homeassistant-stubs/components/elgato/sensor.pyi +2 -3
  258. homeassistant-stubs/components/elgato/switch.pyi +2 -3
  259. homeassistant-stubs/components/elkm1/__init__.pyi +3 -2
  260. homeassistant-stubs/components/elkm1/alarm_control_panel.pyi +3 -4
  261. homeassistant-stubs/components/elkm1/binary_sensor.pyi +2 -5
  262. homeassistant-stubs/components/elkm1/climate.pyi +2 -5
  263. homeassistant-stubs/components/elkm1/light.pyi +2 -4
  264. homeassistant-stubs/components/elkm1/scene.pyi +2 -5
  265. homeassistant-stubs/components/elkm1/sensor.pyi +3 -5
  266. homeassistant-stubs/components/elkm1/switch.pyi +2 -5
  267. homeassistant-stubs/components/energy/validate.pyi +3 -3
  268. homeassistant-stubs/components/energy/websocket_api.pyi +3 -3
  269. homeassistant-stubs/components/enphase_envoy/config_flow.pyi +1 -0
  270. homeassistant-stubs/components/eq3btsmart/climate.pyi +1 -1
  271. homeassistant-stubs/components/esphome/config_flow.pyi +3 -0
  272. homeassistant-stubs/components/esphome/coordinator.pyi +16 -0
  273. homeassistant-stubs/components/esphome/dashboard.pyi +3 -14
  274. homeassistant-stubs/components/esphome/enum_mapper.pyi +3 -6
  275. homeassistant-stubs/components/esphome/manager.pyi +2 -1
  276. homeassistant-stubs/components/esphome/media_player.pyi +1 -1
  277. homeassistant-stubs/components/esphome/update.pyi +4 -3
  278. homeassistant-stubs/components/esphome/voice_assistant.pyi +5 -1
  279. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +2 -13
  280. homeassistant-stubs/components/evil_genius_labs/coordinator.pyi +17 -0
  281. homeassistant-stubs/components/evil_genius_labs/diagnostics.pyi +1 -1
  282. homeassistant-stubs/components/evil_genius_labs/light.pyi +2 -1
  283. homeassistant-stubs/components/evil_genius_labs/util.pyi +2 -6
  284. homeassistant-stubs/components/evohome/__init__.pyi +1 -1
  285. homeassistant-stubs/components/feedreader/__init__.pyi +4 -46
  286. homeassistant-stubs/components/feedreader/const.pyi +1 -0
  287. homeassistant-stubs/components/feedreader/coordinator.pyi +39 -0
  288. homeassistant-stubs/components/filesize/__init__.pyi +3 -1
  289. homeassistant-stubs/components/filesize/coordinator.pyi +1 -1
  290. homeassistant-stubs/components/filesize/sensor.pyi +4 -4
  291. homeassistant-stubs/components/fitbit/api.pyi +1 -2
  292. homeassistant-stubs/components/fitbit/coordinator.pyi +1 -1
  293. homeassistant-stubs/components/forecast_solar/__init__.pyi +3 -2
  294. homeassistant-stubs/components/forecast_solar/diagnostics.pyi +2 -5
  295. homeassistant-stubs/components/forecast_solar/energy.pyi +1 -1
  296. homeassistant-stubs/components/forecast_solar/sensor.pyi +2 -2
  297. homeassistant-stubs/components/fritz/__init__.pyi +1 -1
  298. homeassistant-stubs/components/fritz/binary_sensor.pyi +4 -3
  299. homeassistant-stubs/components/fritz/button.pyi +4 -3
  300. homeassistant-stubs/components/fritz/const.pyi +0 -3
  301. homeassistant-stubs/components/fritz/{common.pyi → coordinator.pyi} +7 -53
  302. homeassistant-stubs/components/fritz/device_tracker.pyi +2 -1
  303. homeassistant-stubs/components/fritz/diagnostics.pyi +1 -1
  304. homeassistant-stubs/components/fritz/entity.pyi +50 -0
  305. homeassistant-stubs/components/fritz/image.pyi +2 -1
  306. homeassistant-stubs/components/fritz/sensor.pyi +4 -3
  307. homeassistant-stubs/components/fritz/services.pyi +2 -2
  308. homeassistant-stubs/components/fritz/switch.pyi +2 -1
  309. homeassistant-stubs/components/fritz/update.pyi +4 -3
  310. homeassistant-stubs/components/fritzbox/__init__.pyi +6 -8
  311. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +2 -3
  312. homeassistant-stubs/components/fritzbox/button.pyi +2 -3
  313. homeassistant-stubs/components/fritzbox/climate.pyi +2 -3
  314. homeassistant-stubs/components/fritzbox/const.pyi +0 -2
  315. homeassistant-stubs/components/fritzbox/coordinator.pyi +10 -7
  316. homeassistant-stubs/components/fritzbox/cover.pyi +2 -3
  317. homeassistant-stubs/components/fritzbox/diagnostics.pyi +2 -4
  318. homeassistant-stubs/components/fritzbox/light.pyi +2 -3
  319. homeassistant-stubs/components/fritzbox/sensor.pyi +2 -3
  320. homeassistant-stubs/components/fritzbox/switch.pyi +2 -3
  321. homeassistant-stubs/components/fritzbox_callmonitor/__init__.pyi +5 -4
  322. homeassistant-stubs/components/fritzbox_callmonitor/const.pyi +0 -2
  323. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +3 -3
  324. homeassistant-stubs/components/fronius/__init__.pyi +4 -6
  325. homeassistant-stubs/components/fronius/coordinator.pyi +1 -3
  326. homeassistant-stubs/components/{aladdin_connect → fronius}/diagnostics.pyi +2 -4
  327. homeassistant-stubs/components/fronius/sensor.pyi +2 -3
  328. homeassistant-stubs/components/gios/__init__.pyi +10 -10
  329. homeassistant-stubs/components/gios/coordinator.pyi +13 -0
  330. homeassistant-stubs/components/gios/diagnostics.pyi +2 -4
  331. homeassistant-stubs/components/gios/sensor.pyi +3 -3
  332. homeassistant-stubs/components/google/calendar.pyi +2 -29
  333. homeassistant-stubs/components/google/coordinator.pyi +38 -0
  334. homeassistant-stubs/components/group/entity.pyi +5 -2
  335. homeassistant-stubs/components/group/lock.pyi +3 -1
  336. homeassistant-stubs/components/group/registry.pyi +12 -6
  337. homeassistant-stubs/components/group/sensor.pyi +2 -0
  338. homeassistant-stubs/components/guardian/coordinator.pyi +1 -1
  339. homeassistant-stubs/components/guardian/util.pyi +1 -3
  340. homeassistant-stubs/components/history_stats/sensor.pyi +0 -2
  341. homeassistant-stubs/components/holiday/calendar.pyi +11 -1
  342. homeassistant-stubs/components/homeassistant/__init__.pyi +1 -0
  343. homeassistant-stubs/components/homeassistant/triggers/numeric_state.pyi +0 -3
  344. homeassistant-stubs/components/homeassistant_alerts/__init__.pyi +3 -24
  345. homeassistant-stubs/components/homeassistant_alerts/const.pyi +6 -0
  346. homeassistant-stubs/components/homeassistant_alerts/coordinator.pyi +26 -0
  347. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +1 -0
  348. homeassistant-stubs/components/homeassistant_sky_connect/util.pyi +1 -1
  349. homeassistant-stubs/components/homekit/const.pyi +2 -0
  350. homeassistant-stubs/components/homekit/type_sensors.pyi +3 -1
  351. homeassistant-stubs/components/homekit/util.pyi +2 -1
  352. homeassistant-stubs/components/homewizard/helpers.pyi +1 -4
  353. homeassistant-stubs/components/http/__init__.pyi +6 -7
  354. homeassistant-stubs/components/http/auth.pyi +2 -10
  355. homeassistant-stubs/components/http/ban.pyi +1 -3
  356. homeassistant-stubs/components/http/const.pyi +0 -6
  357. homeassistant-stubs/components/http/data_validator.pyi +2 -4
  358. homeassistant-stubs/components/http/decorators.pyi +2 -5
  359. homeassistant-stubs/components/http/web_runner.pyi +1 -1
  360. homeassistant-stubs/components/humidifier/intent.pyi +4 -0
  361. homeassistant-stubs/components/{poolsense → husqvarna_automower}/__init__.pyi +6 -4
  362. homeassistant-stubs/components/husqvarna_automower/api.pyi +11 -0
  363. homeassistant-stubs/components/husqvarna_automower/application_credentials.pyi +5 -0
  364. homeassistant-stubs/components/husqvarna_automower/binary_sensor.pyi +29 -0
  365. homeassistant-stubs/components/husqvarna_automower/config_flow.pyi +23 -0
  366. homeassistant-stubs/components/husqvarna_automower/const.pyi +5 -0
  367. homeassistant-stubs/components/husqvarna_automower/coordinator.pyi +20 -0
  368. homeassistant-stubs/components/husqvarna_automower/device_tracker.pyi +21 -0
  369. homeassistant-stubs/components/husqvarna_automower/diagnostics.pyi +17 -0
  370. homeassistant-stubs/components/husqvarna_automower/entity.pyi +20 -0
  371. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +28 -0
  372. homeassistant-stubs/components/husqvarna_automower/number.pyi +67 -0
  373. homeassistant-stubs/components/husqvarna_automower/select.pyi +25 -0
  374. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +35 -0
  375. homeassistant-stubs/components/husqvarna_automower/switch.pyi +49 -0
  376. homeassistant-stubs/components/hydrawise/binary_sensor.pyi +14 -4
  377. homeassistant-stubs/components/hydrawise/coordinator.pyi +8 -5
  378. homeassistant-stubs/components/hydrawise/entity.pyi +10 -3
  379. homeassistant-stubs/components/hydrawise/sensor.pyi +24 -7
  380. homeassistant-stubs/components/hydrawise/switch.pyi +12 -2
  381. homeassistant-stubs/components/ibeacon/__init__.pyi +5 -3
  382. homeassistant-stubs/components/ibeacon/device_tracker.pyi +3 -3
  383. homeassistant-stubs/components/ibeacon/sensor.pyi +3 -3
  384. homeassistant-stubs/components/idasen_desk/__init__.pyi +2 -12
  385. homeassistant-stubs/components/idasen_desk/coordinator.pyi +19 -0
  386. homeassistant-stubs/components/imgw_pib/__init__.pyi +21 -0
  387. homeassistant-stubs/components/imgw_pib/binary_sensor.pyi +28 -0
  388. homeassistant-stubs/components/imgw_pib/config_flow.pyi +12 -0
  389. homeassistant-stubs/components/imgw_pib/const.pyi +6 -0
  390. homeassistant-stubs/components/imgw_pib/coordinator.pyi +15 -0
  391. homeassistant-stubs/components/imgw_pib/diagnostics.pyi +5 -0
  392. homeassistant-stubs/components/imgw_pib/entity.pyi +10 -0
  393. homeassistant-stubs/components/imgw_pib/sensor.pyi +30 -0
  394. homeassistant-stubs/components/integration/config_flow.pyi +11 -4
  395. homeassistant-stubs/components/integration/sensor.pyi +2 -1
  396. homeassistant-stubs/components/intent/__init__.pyi +8 -16
  397. homeassistant-stubs/components/intent/const.pyi +3 -0
  398. homeassistant-stubs/components/intent/timers.pyi +133 -0
  399. homeassistant-stubs/components/intent_script/__init__.pyi +4 -1
  400. homeassistant-stubs/components/ipp/__init__.pyi +3 -2
  401. homeassistant-stubs/components/ipp/diagnostics.pyi +2 -4
  402. homeassistant-stubs/components/ipp/sensor.pyi +3 -4
  403. homeassistant-stubs/components/jellyfin/config_flow.pyi +11 -2
  404. homeassistant-stubs/components/jellyfin/const.pyi +2 -0
  405. homeassistant-stubs/components/jellyfin/media_source.pyi +4 -2
  406. homeassistant-stubs/components/jewish_calendar/__init__.pyi +11 -10
  407. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +7 -5
  408. homeassistant-stubs/components/jewish_calendar/config_flow.pyi +25 -0
  409. homeassistant-stubs/components/jewish_calendar/const.pyi +9 -0
  410. homeassistant-stubs/components/jewish_calendar/sensor.pyi +7 -7
  411. homeassistant-stubs/components/knx/climate.pyi +3 -0
  412. homeassistant-stubs/components/knx/const.pyi +0 -1
  413. homeassistant-stubs/components/knx/device_trigger.pyi +6 -8
  414. homeassistant-stubs/components/knx/expose.pyi +4 -1
  415. homeassistant-stubs/components/knx/notify.pyi +2 -3
  416. homeassistant-stubs/components/knx/schema.pyi +1 -1
  417. homeassistant-stubs/components/knx/telegrams.pyi +14 -7
  418. homeassistant-stubs/components/knx/trigger.pyi +27 -0
  419. homeassistant-stubs/components/lamarzocco/coordinator.pyi +1 -2
  420. homeassistant-stubs/components/lametric/helpers.pyi +1 -4
  421. homeassistant-stubs/components/lcn/helpers.pyi +1 -2
  422. homeassistant-stubs/components/light/intent.pyi +2 -7
  423. homeassistant-stubs/components/linear_garage_door/coordinator.pyi +15 -9
  424. homeassistant-stubs/components/linear_garage_door/cover.pyi +2 -14
  425. homeassistant-stubs/components/linear_garage_door/entity.pyi +17 -0
  426. homeassistant-stubs/components/linear_garage_door/light.pyi +25 -0
  427. homeassistant-stubs/components/local_todo/__init__.pyi +3 -2
  428. homeassistant-stubs/components/local_todo/todo.pyi +3 -3
  429. homeassistant-stubs/components/lock/__init__.pyi +8 -2
  430. homeassistant-stubs/components/lock/const.pyi +1 -0
  431. homeassistant-stubs/components/lock/device_condition.pyi +1 -1
  432. homeassistant-stubs/components/lock/device_trigger.pyi +1 -1
  433. homeassistant-stubs/components/lock/group.pyi +2 -1
  434. homeassistant-stubs/components/lock/reproduce_state.pyi +1 -1
  435. homeassistant-stubs/components/lookin/coordinator.pyi +0 -2
  436. homeassistant-stubs/components/mastodon/notify.pyi +8 -1
  437. homeassistant-stubs/components/matter/api.pyi +1 -2
  438. homeassistant-stubs/components/matter/climate.pyi +3 -2
  439. homeassistant-stubs/components/matter/entity.pyi +1 -9
  440. homeassistant-stubs/components/matter/fan.pyi +44 -0
  441. homeassistant-stubs/components/matter/models.pyi +1 -2
  442. homeassistant-stubs/components/matter/sensor.pyi +2 -0
  443. homeassistant-stubs/components/media_extractor/__init__.pyi +3 -0
  444. homeassistant-stubs/components/media_extractor/config_flow.pyi +8 -0
  445. homeassistant-stubs/components/media_player/__init__.pyi +3 -0
  446. homeassistant-stubs/components/media_player/group.pyi +1 -0
  447. homeassistant-stubs/components/media_player/intent.pyi +27 -1
  448. homeassistant-stubs/components/media_source/__init__.pyi +4 -0
  449. homeassistant-stubs/components/metoffice/weather.pyi +1 -1
  450. homeassistant-stubs/components/mikrotik/__init__.pyi +1 -1
  451. homeassistant-stubs/components/mikrotik/config_flow.pyi +1 -1
  452. homeassistant-stubs/components/mikrotik/device_tracker.pyi +1 -1
  453. homeassistant-stubs/components/monzo/__init__.pyi +13 -0
  454. homeassistant-stubs/components/monzo/api.pyi +9 -0
  455. homeassistant-stubs/components/monzo/application_credentials.pyi +7 -0
  456. homeassistant-stubs/components/monzo/config_flow.pyi +14 -0
  457. homeassistant-stubs/components/monzo/const.pyi +1 -0
  458. homeassistant-stubs/components/monzo/coordinator.pyi +20 -0
  459. homeassistant-stubs/components/monzo/entity.pyi +17 -0
  460. homeassistant-stubs/components/monzo/sensor.pyi +31 -0
  461. homeassistant-stubs/components/mopeka/sensor.pyi +2 -2
  462. homeassistant-stubs/components/motionmount/entity.pyi +3 -0
  463. homeassistant-stubs/components/mqtt/__init__.pyi +10 -10
  464. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +4 -4
  465. homeassistant-stubs/components/mqtt/binary_sensor.pyi +6 -4
  466. homeassistant-stubs/components/mqtt/button.pyi +4 -3
  467. homeassistant-stubs/components/mqtt/camera.pyi +4 -4
  468. homeassistant-stubs/components/mqtt/client.pyi +29 -21
  469. homeassistant-stubs/components/mqtt/climate.pyi +8 -7
  470. homeassistant-stubs/components/mqtt/config_flow.pyi +0 -1
  471. homeassistant-stubs/components/mqtt/const.pyi +14 -4
  472. homeassistant-stubs/components/mqtt/cover.pyi +7 -5
  473. homeassistant-stubs/components/mqtt/debug_info.pyi +4 -9
  474. homeassistant-stubs/components/mqtt/device_tracker.pyi +6 -5
  475. homeassistant-stubs/components/mqtt/device_trigger.pyi +12 -16
  476. homeassistant-stubs/components/mqtt/diagnostics.pyi +1 -1
  477. homeassistant-stubs/components/mqtt/discovery.pyi +14 -9
  478. homeassistant-stubs/components/mqtt/event.pyi +5 -6
  479. homeassistant-stubs/components/mqtt/fan.pyi +9 -5
  480. homeassistant-stubs/components/mqtt/humidifier.pyi +8 -5
  481. homeassistant-stubs/components/mqtt/image.pyi +6 -6
  482. homeassistant-stubs/components/mqtt/lawn_mower.pyi +4 -4
  483. homeassistant-stubs/components/mqtt/light/schema_basic.pyi +15 -5
  484. homeassistant-stubs/components/mqtt/light/schema_json.pyi +4 -4
  485. homeassistant-stubs/components/mqtt/light/schema_template.pyi +4 -4
  486. homeassistant-stubs/components/mqtt/lock.pyi +9 -4
  487. homeassistant-stubs/components/mqtt/mixins.pyi +35 -41
  488. homeassistant-stubs/components/mqtt/models.pyi +8 -6
  489. homeassistant-stubs/components/mqtt/notify.pyi +5 -4
  490. homeassistant-stubs/components/mqtt/number.pyi +4 -4
  491. homeassistant-stubs/components/mqtt/scene.pyi +4 -3
  492. homeassistant-stubs/components/mqtt/schemas.pyi +16 -0
  493. homeassistant-stubs/components/mqtt/select.pyi +4 -4
  494. homeassistant-stubs/components/mqtt/sensor.pyi +9 -7
  495. homeassistant-stubs/components/mqtt/siren.pyi +4 -4
  496. homeassistant-stubs/components/mqtt/subscription.pyi +17 -13
  497. homeassistant-stubs/components/mqtt/switch.pyi +6 -7
  498. homeassistant-stubs/components/mqtt/tag.pyi +7 -5
  499. homeassistant-stubs/components/mqtt/text.pyi +6 -5
  500. homeassistant-stubs/components/mqtt/trigger.pyi +1 -1
  501. homeassistant-stubs/components/mqtt/update.pyi +6 -5
  502. homeassistant-stubs/components/mqtt/util.pyi +5 -4
  503. homeassistant-stubs/components/mqtt/vacuum.pyi +4 -4
  504. homeassistant-stubs/components/mqtt/valve.pyi +5 -5
  505. homeassistant-stubs/components/mqtt/water_heater.pyi +4 -3
  506. homeassistant-stubs/components/mysensors/__init__.pyi +1 -1
  507. homeassistant-stubs/components/myuplink/application_credentials.pyi +2 -1
  508. homeassistant-stubs/components/myuplink/binary_sensor.pyi +18 -2
  509. homeassistant-stubs/components/myuplink/entity.pyi +5 -0
  510. homeassistant-stubs/components/nam/__init__.pyi +5 -16
  511. homeassistant-stubs/components/nam/button.pyi +2 -4
  512. homeassistant-stubs/components/nam/config_flow.pyi +2 -0
  513. homeassistant-stubs/components/nam/coordinator.pyi +15 -0
  514. homeassistant-stubs/components/nam/diagnostics.pyi +2 -4
  515. homeassistant-stubs/components/nam/sensor.pyi +2 -3
  516. homeassistant-stubs/components/nest/__init__.pyi +2 -2
  517. homeassistant-stubs/components/nest/climate.pyi +2 -2
  518. homeassistant-stubs/components/netatmo/sensor.pyi +1 -1
  519. homeassistant-stubs/components/network/util.pyi +1 -1
  520. homeassistant-stubs/components/nextdns/__init__.pyi +18 -3
  521. homeassistant-stubs/components/nextdns/binary_sensor.pyi +10 -15
  522. homeassistant-stubs/components/nextdns/button.pyi +6 -6
  523. homeassistant-stubs/components/nextdns/diagnostics.pyi +3 -3
  524. homeassistant-stubs/components/nextdns/sensor.pyi +6 -10
  525. homeassistant-stubs/components/nextdns/switch.pyi +11 -15
  526. homeassistant-stubs/components/notify/__init__.pyi +8 -2
  527. homeassistant-stubs/components/notify/repairs.pyi +7 -0
  528. homeassistant-stubs/components/nut/__init__.pyi +11 -2
  529. homeassistant-stubs/components/nut/const.pyi +0 -4
  530. homeassistant-stubs/components/nut/device_action.pyi +4 -3
  531. homeassistant-stubs/components/nut/diagnostics.pyi +3 -4
  532. homeassistant-stubs/components/nut/sensor.pyi +3 -4
  533. homeassistant-stubs/components/onewire/__init__.pyi +5 -4
  534. homeassistant-stubs/components/onewire/binary_sensor.pyi +3 -3
  535. homeassistant-stubs/components/onewire/diagnostics.pyi +2 -4
  536. homeassistant-stubs/components/onewire/sensor.pyi +3 -3
  537. homeassistant-stubs/components/onewire/switch.pyi +3 -3
  538. homeassistant-stubs/components/oralb/sensor.pyi +2 -2
  539. homeassistant-stubs/components/otbr/util.pyi +1 -3
  540. homeassistant-stubs/components/p1_monitor/__init__.pyi +3 -19
  541. homeassistant-stubs/components/p1_monitor/coordinator.pyi +22 -0
  542. homeassistant-stubs/components/p1_monitor/diagnostics.pyi +1 -1
  543. homeassistant-stubs/components/p1_monitor/sensor.pyi +1 -1
  544. homeassistant-stubs/components/pi_hole/__init__.pyi +12 -4
  545. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +3 -5
  546. homeassistant-stubs/components/pi_hole/const.pyi +0 -2
  547. homeassistant-stubs/components/pi_hole/diagnostics.pyi +2 -4
  548. homeassistant-stubs/components/pi_hole/sensor.pyi +3 -5
  549. homeassistant-stubs/components/pi_hole/switch.pyi +3 -4
  550. homeassistant-stubs/components/pi_hole/update.pyi +3 -5
  551. homeassistant-stubs/components/ping/__init__.pyi +6 -6
  552. homeassistant-stubs/components/ping/binary_sensor.pyi +2 -2
  553. homeassistant-stubs/components/ping/device_tracker.pyi +2 -2
  554. homeassistant-stubs/components/ping/sensor.pyi +2 -3
  555. homeassistant-stubs/components/plugwise/__init__.pyi +4 -2
  556. homeassistant-stubs/components/plugwise/binary_sensor.pyi +3 -4
  557. homeassistant-stubs/components/plugwise/climate.pyi +3 -3
  558. homeassistant-stubs/components/plugwise/coordinator.pyi +5 -3
  559. homeassistant-stubs/components/plugwise/diagnostics.pyi +2 -4
  560. homeassistant-stubs/components/plugwise/number.pyi +4 -4
  561. homeassistant-stubs/components/plugwise/select.pyi +6 -5
  562. homeassistant-stubs/components/plugwise/sensor.pyi +3 -4
  563. homeassistant-stubs/components/plugwise/switch.pyi +3 -4
  564. homeassistant-stubs/components/plugwise/util.pyi +2 -6
  565. homeassistant-stubs/components/powerwall/sensor.pyi +10 -9
  566. homeassistant-stubs/components/prometheus/__init__.pyi +2 -3
  567. homeassistant-stubs/components/proximity/__init__.pyi +3 -3
  568. homeassistant-stubs/components/proximity/coordinator.pyi +2 -1
  569. homeassistant-stubs/components/proximity/diagnostics.pyi +2 -4
  570. homeassistant-stubs/components/proximity/sensor.pyi +2 -3
  571. homeassistant-stubs/components/prusalink/__init__.pyi +3 -31
  572. homeassistant-stubs/components/prusalink/button.pyi +3 -1
  573. homeassistant-stubs/components/prusalink/camera.pyi +3 -1
  574. homeassistant-stubs/components/prusalink/coordinator.pyi +34 -0
  575. homeassistant-stubs/components/prusalink/sensor.pyi +3 -1
  576. homeassistant-stubs/components/pure_energie/__init__.pyi +3 -16
  577. homeassistant-stubs/components/pure_energie/coordinator.pyi +19 -0
  578. homeassistant-stubs/components/pure_energie/diagnostics.pyi +1 -1
  579. homeassistant-stubs/components/pure_energie/sensor.pyi +1 -1
  580. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -1
  581. homeassistant-stubs/components/rainmachine/coordinator.pyi +22 -0
  582. homeassistant-stubs/components/rainmachine/switch.pyi +8 -6
  583. homeassistant-stubs/components/rainmachine/util.pyi +1 -17
  584. homeassistant-stubs/components/recorder/core.pyi +5 -4
  585. homeassistant-stubs/components/recorder/executor.pyi +3 -2
  586. homeassistant-stubs/components/recorder/pool.pyi +4 -5
  587. homeassistant-stubs/components/recorder/purge.pyi +2 -1
  588. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +2 -4
  589. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +2 -1
  590. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +2 -1
  591. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +2 -1
  592. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +2 -1
  593. homeassistant-stubs/components/recorder/util.pyi +4 -12
  594. homeassistant-stubs/components/renault/__init__.pyi +11 -3
  595. homeassistant-stubs/components/renault/binary_sensor.pyi +2 -4
  596. homeassistant-stubs/components/renault/button.pyi +2 -4
  597. homeassistant-stubs/components/renault/device_tracker.pyi +2 -4
  598. homeassistant-stubs/components/renault/diagnostics.pyi +4 -5
  599. homeassistant-stubs/components/renault/renault_vehicle.pyi +2 -4
  600. homeassistant-stubs/components/renault/select.pyi +2 -4
  601. homeassistant-stubs/components/renault/sensor.pyi +2 -4
  602. homeassistant-stubs/components/renault/services.pyi +2 -2
  603. homeassistant-stubs/components/repairs/issue_handler.pyi +0 -1
  604. homeassistant-stubs/components/repairs/websocket_api.pyi +0 -1
  605. homeassistant-stubs/components/rfxtrx/__init__.pyi +1 -2
  606. homeassistant-stubs/components/ring/coordinator.pyi +0 -3
  607. homeassistant-stubs/components/ring/entity.pyi +1 -4
  608. homeassistant-stubs/components/roku/helpers.pyi +0 -3
  609. homeassistant-stubs/components/ruuvitag_ble/sensor.pyi +2 -2
  610. homeassistant-stubs/components/samsungtv/__init__.pyi +5 -3
  611. homeassistant-stubs/components/samsungtv/bridge.pyi +6 -4
  612. homeassistant-stubs/components/samsungtv/config_flow.pyi +1 -0
  613. homeassistant-stubs/components/samsungtv/coordinator.pyi +17 -0
  614. homeassistant-stubs/components/samsungtv/device_trigger.pyi +0 -1
  615. homeassistant-stubs/components/samsungtv/diagnostics.pyi +3 -4
  616. homeassistant-stubs/components/samsungtv/entity.pyi +17 -6
  617. homeassistant-stubs/components/samsungtv/helpers.pyi +2 -0
  618. homeassistant-stubs/components/samsungtv/media_player.pyi +10 -19
  619. homeassistant-stubs/components/samsungtv/remote.pyi +7 -5
  620. homeassistant-stubs/components/scrape/__init__.pyi +2 -1
  621. homeassistant-stubs/components/scrape/sensor.pyi +2 -2
  622. homeassistant-stubs/components/sensibo/__init__.pyi +3 -1
  623. homeassistant-stubs/components/sensibo/binary_sensor.pyi +2 -3
  624. homeassistant-stubs/components/sensibo/button.pyi +2 -3
  625. homeassistant-stubs/components/sensibo/climate.pyi +2 -2
  626. homeassistant-stubs/components/sensibo/coordinator.pyi +3 -2
  627. homeassistant-stubs/components/sensibo/diagnostics.pyi +2 -4
  628. homeassistant-stubs/components/sensibo/entity.pyi +1 -4
  629. homeassistant-stubs/components/sensibo/number.pyi +2 -3
  630. homeassistant-stubs/components/sensibo/select.pyi +2 -2
  631. homeassistant-stubs/components/sensibo/sensor.pyi +2 -3
  632. homeassistant-stubs/components/sensibo/switch.pyi +2 -2
  633. homeassistant-stubs/components/sensibo/update.pyi +2 -3
  634. homeassistant-stubs/components/sensirion_ble/sensor.pyi +2 -2
  635. homeassistant-stubs/components/sensor/__init__.pyi +1 -2
  636. homeassistant-stubs/components/sensor/group.pyi +1 -0
  637. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -4
  638. homeassistant-stubs/components/sfr_box/button.pyi +3 -6
  639. homeassistant-stubs/components/sfr_box/coordinator.pyi +4 -5
  640. homeassistant-stubs/components/sfr_box/sensor.pyi +1 -4
  641. homeassistant-stubs/components/shelly/__init__.pyi +7 -8
  642. homeassistant-stubs/components/shelly/binary_sensor.pyi +2 -2
  643. homeassistant-stubs/components/shelly/button.pyi +4 -7
  644. homeassistant-stubs/components/shelly/climate.pyi +5 -6
  645. homeassistant-stubs/components/shelly/config_flow.pyi +2 -0
  646. homeassistant-stubs/components/shelly/const.pyi +1 -1
  647. homeassistant-stubs/components/shelly/coordinator.pyi +15 -19
  648. homeassistant-stubs/components/shelly/cover.pyi +4 -5
  649. homeassistant-stubs/components/shelly/diagnostics.pyi +2 -3
  650. homeassistant-stubs/components/shelly/entity.pyi +8 -9
  651. homeassistant-stubs/components/shelly/event.pyi +2 -3
  652. homeassistant-stubs/components/shelly/light.pyi +4 -5
  653. homeassistant-stubs/components/shelly/number.pyi +2 -3
  654. homeassistant-stubs/components/shelly/sensor.pyi +2 -3
  655. homeassistant-stubs/components/shelly/switch.pyi +22 -8
  656. homeassistant-stubs/components/shelly/update.pyi +2 -3
  657. homeassistant-stubs/components/shelly/utils.pyi +3 -4
  658. homeassistant-stubs/components/shelly/valve.pyi +3 -4
  659. homeassistant-stubs/components/shopping_list/intent.pyi +4 -0
  660. homeassistant-stubs/components/sleepiq/entity.pyi +1 -2
  661. homeassistant-stubs/components/smhi/weather.pyi +2 -2
  662. homeassistant-stubs/components/speedtestdotnet/__init__.pyi +2 -2
  663. homeassistant-stubs/components/speedtestdotnet/config_flow.pyi +4 -3
  664. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +2 -2
  665. homeassistant-stubs/components/ssdp/__init__.pyi +2 -2
  666. homeassistant-stubs/components/sun/__init__.pyi +4 -4
  667. homeassistant-stubs/components/sun/entity.pyi +2 -0
  668. homeassistant-stubs/components/sun/sensor.pyi +2 -3
  669. homeassistant-stubs/components/surepetcare/__init__.pyi +4 -15
  670. homeassistant-stubs/components/surepetcare/binary_sensor.pyi +1 -1
  671. homeassistant-stubs/components/surepetcare/coordinator.pyi +21 -0
  672. homeassistant-stubs/components/surepetcare/entity.pyi +1 -1
  673. homeassistant-stubs/components/surepetcare/lock.pyi +1 -1
  674. homeassistant-stubs/components/surepetcare/sensor.pyi +1 -1
  675. homeassistant-stubs/components/switchbee/entity.pyi +2 -4
  676. homeassistant-stubs/components/switchbee/switch.pyi +1 -4
  677. homeassistant-stubs/components/switchbot_cloud/__init__.pyi +2 -1
  678. homeassistant-stubs/components/switchbot_cloud/climate.pyi +1 -1
  679. homeassistant-stubs/components/switchbot_cloud/const.pyi +4 -1
  680. homeassistant-stubs/components/switchbot_cloud/coordinator.pyi +2 -2
  681. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +25 -0
  682. homeassistant-stubs/components/switcher_kis/__init__.pyi +7 -26
  683. homeassistant-stubs/components/switcher_kis/button.pyi +8 -7
  684. homeassistant-stubs/components/switcher_kis/climate.pyi +3 -3
  685. homeassistant-stubs/components/switcher_kis/config_flow.pyi +3 -9
  686. homeassistant-stubs/components/switcher_kis/const.pyi +0 -5
  687. homeassistant-stubs/components/switcher_kis/coordinator.pyi +22 -0
  688. homeassistant-stubs/components/switcher_kis/cover.pyi +1 -2
  689. homeassistant-stubs/components/switcher_kis/diagnostics.pyi +2 -3
  690. homeassistant-stubs/components/switcher_kis/sensor.pyi +1 -1
  691. homeassistant-stubs/components/switcher_kis/switch.pyi +1 -1
  692. homeassistant-stubs/components/switcher_kis/utils.pyi +2 -6
  693. homeassistant-stubs/components/synology_dsm/common.pyi +1 -1
  694. homeassistant-stubs/components/synology_dsm/config_flow.pyi +1 -1
  695. homeassistant-stubs/components/synology_dsm/coordinator.pyi +3 -6
  696. homeassistant-stubs/components/synology_dsm/entity.pyi +0 -3
  697. homeassistant-stubs/components/systemmonitor/__init__.pyi +10 -2
  698. homeassistant-stubs/components/systemmonitor/binary_sensor.pyi +3 -3
  699. homeassistant-stubs/components/systemmonitor/const.pyi +0 -1
  700. homeassistant-stubs/components/systemmonitor/diagnostics.pyi +2 -4
  701. homeassistant-stubs/components/systemmonitor/sensor.pyi +4 -3
  702. homeassistant-stubs/components/systemmonitor/util.pyi +4 -3
  703. homeassistant-stubs/components/tag/__init__.pyi +46 -5
  704. homeassistant-stubs/components/tag/const.pyi +4 -0
  705. homeassistant-stubs/components/tailwind/__init__.pyi +2 -1
  706. homeassistant-stubs/components/tailwind/binary_sensor.pyi +2 -4
  707. homeassistant-stubs/components/tailwind/button.pyi +2 -3
  708. homeassistant-stubs/components/tailwind/coordinator.pyi +0 -1
  709. homeassistant-stubs/components/tailwind/cover.pyi +2 -3
  710. homeassistant-stubs/components/tailwind/diagnostics.pyi +2 -4
  711. homeassistant-stubs/components/tailwind/number.pyi +2 -3
  712. homeassistant-stubs/components/tailwind/typing.pyi +4 -0
  713. homeassistant-stubs/components/technove/helpers.pyi +1 -4
  714. homeassistant-stubs/components/tedee/__init__.pyi +10 -3
  715. homeassistant-stubs/components/tedee/binary_sensor.pyi +2 -3
  716. homeassistant-stubs/components/tedee/config_flow.pyi +3 -1
  717. homeassistant-stubs/components/tedee/coordinator.pyi +5 -0
  718. homeassistant-stubs/components/tedee/diagnostics.pyi +2 -4
  719. homeassistant-stubs/components/tedee/lock.pyi +6 -3
  720. homeassistant-stubs/components/tedee/sensor.pyi +2 -3
  721. homeassistant-stubs/components/{ambiclimate → thethingsnetwork}/__init__.pyi +5 -4
  722. homeassistant-stubs/components/thethingsnetwork/config_flow.pyi +16 -0
  723. homeassistant-stubs/components/thethingsnetwork/const.pyi +8 -0
  724. homeassistant-stubs/components/thethingsnetwork/coordinator.pyi +16 -0
  725. homeassistant-stubs/components/thethingsnetwork/entity.pyi +22 -0
  726. homeassistant-stubs/components/thethingsnetwork/sensor.pyi +17 -0
  727. homeassistant-stubs/components/tibber/coordinator.pyi +19 -0
  728. homeassistant-stubs/components/tibber/notify.pyi +15 -3
  729. homeassistant-stubs/components/tibber/sensor.pyi +3 -13
  730. homeassistant-stubs/components/tilt_ble/sensor.pyi +2 -2
  731. homeassistant-stubs/components/timer/__init__.pyi +1 -2
  732. homeassistant-stubs/components/todo/intent.pyi +2 -0
  733. homeassistant-stubs/components/tplink/entity.pyi +2 -5
  734. homeassistant-stubs/components/tplink_omada/coordinator.pyi +3 -5
  735. homeassistant-stubs/components/tplink_omada/entity.pyi +2 -5
  736. homeassistant-stubs/components/tractive/__init__.pyi +10 -3
  737. homeassistant-stubs/components/tractive/binary_sensor.pyi +3 -4
  738. homeassistant-stubs/components/tractive/const.pyi +0 -2
  739. homeassistant-stubs/components/tractive/device_tracker.pyi +3 -4
  740. homeassistant-stubs/components/tractive/diagnostics.pyi +2 -3
  741. homeassistant-stubs/components/tractive/sensor.pyi +3 -4
  742. homeassistant-stubs/components/tractive/switch.pyi +3 -4
  743. homeassistant-stubs/components/trafikverket_camera/__init__.pyi +2 -1
  744. homeassistant-stubs/components/trafikverket_camera/binary_sensor.pyi +3 -4
  745. homeassistant-stubs/components/trafikverket_camera/camera.pyi +3 -3
  746. homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +3 -2
  747. homeassistant-stubs/components/trafikverket_camera/sensor.pyi +3 -4
  748. homeassistant-stubs/components/trafikverket_ferry/__init__.pyi +4 -2
  749. homeassistant-stubs/components/trafikverket_ferry/coordinator.pyi +3 -2
  750. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +2 -2
  751. homeassistant-stubs/components/trafikverket_train/__init__.pyi +4 -2
  752. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +4 -3
  753. homeassistant-stubs/components/trafikverket_train/sensor.pyi +2 -2
  754. homeassistant-stubs/components/trafikverket_weatherstation/__init__.pyi +4 -2
  755. homeassistant-stubs/components/trafikverket_weatherstation/coordinator.pyi +3 -2
  756. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +2 -2
  757. homeassistant-stubs/components/twentemilieu/__init__.pyi +4 -1
  758. homeassistant-stubs/components/twentemilieu/calendar.pyi +5 -7
  759. homeassistant-stubs/components/twentemilieu/diagnostics.pyi +0 -4
  760. homeassistant-stubs/components/twentemilieu/entity.pyi +4 -5
  761. homeassistant-stubs/components/twentemilieu/sensor.pyi +1 -2
  762. homeassistant-stubs/components/unifi/__init__.pyi +5 -4
  763. homeassistant-stubs/components/unifi/button.pyi +2 -3
  764. homeassistant-stubs/components/unifi/config_flow.pyi +2 -1
  765. homeassistant-stubs/components/unifi/device_tracker.pyi +3 -3
  766. homeassistant-stubs/components/unifi/diagnostics.pyi +2 -3
  767. homeassistant-stubs/components/unifi/hub/entity_loader.pyi +0 -1
  768. homeassistant-stubs/components/unifi/hub/hub.pyi +3 -5
  769. homeassistant-stubs/components/unifi/image.pyi +2 -2
  770. homeassistant-stubs/components/unifi/sensor.pyi +2 -2
  771. homeassistant-stubs/components/unifi/services.pyi +0 -1
  772. homeassistant-stubs/components/unifi/switch.pyi +3 -3
  773. homeassistant-stubs/components/unifi/update.pyi +2 -3
  774. homeassistant-stubs/components/unifiprotect/entity.pyi +1 -1
  775. homeassistant-stubs/components/unifiprotect/migrate.pyi +1 -1
  776. homeassistant-stubs/components/upcloud/__init__.pyi +2 -9
  777. homeassistant-stubs/components/upcloud/coordinator.pyi +16 -0
  778. homeassistant-stubs/components/vacuum/__init__.pyi +2 -4
  779. homeassistant-stubs/components/vacuum/const.pyi +1 -0
  780. homeassistant-stubs/components/vacuum/group.pyi +1 -1
  781. homeassistant-stubs/components/vallox/__init__.pyi +5 -6
  782. homeassistant-stubs/components/vallox/binary_sensor.pyi +2 -1
  783. homeassistant-stubs/components/vallox/config_flow.pyi +2 -1
  784. homeassistant-stubs/components/vallox/coordinator.pyi +12 -0
  785. homeassistant-stubs/components/vallox/date.pyi +2 -1
  786. homeassistant-stubs/components/vallox/fan.pyi +2 -1
  787. homeassistant-stubs/components/vallox/number.pyi +2 -1
  788. homeassistant-stubs/components/vallox/sensor.pyi +2 -1
  789. homeassistant-stubs/components/vallox/switch.pyi +2 -1
  790. homeassistant-stubs/components/velbus/entity.pyi +2 -4
  791. homeassistant-stubs/components/vlc_telnet/__init__.pyi +10 -3
  792. homeassistant-stubs/components/vlc_telnet/media_player.pyi +6 -6
  793. homeassistant-stubs/components/wallbox/coordinator.pyi +1 -3
  794. homeassistant-stubs/components/waqi/sensor.pyi +3 -6
  795. homeassistant-stubs/components/water_heater/__init__.pyi +2 -3
  796. homeassistant-stubs/components/water_heater/const.pyi +1 -0
  797. homeassistant-stubs/components/water_heater/group.pyi +2 -2
  798. homeassistant-stubs/components/weather/__init__.pyi +8 -7
  799. homeassistant-stubs/components/weather/group.pyi +1 -0
  800. homeassistant-stubs/components/weather/intent.pyi +2 -0
  801. homeassistant-stubs/components/webostv/media_player.pyi +2 -5
  802. homeassistant-stubs/components/websocket_api/commands.pyi +5 -5
  803. homeassistant-stubs/components/websocket_api/connection.pyi +2 -2
  804. homeassistant-stubs/components/websocket_api/const.pyi +5 -3
  805. homeassistant-stubs/components/websocket_api/http.pyi +4 -1
  806. homeassistant-stubs/components/websocket_api/messages.pyi +4 -5
  807. homeassistant-stubs/components/wemo/__init__.pyi +1 -1
  808. homeassistant-stubs/components/wemo/binary_sensor.pyi +1 -1
  809. homeassistant-stubs/components/wemo/config_flow.pyi +1 -1
  810. homeassistant-stubs/components/wemo/device_trigger.pyi +1 -1
  811. homeassistant-stubs/components/wemo/entity.pyi +1 -1
  812. homeassistant-stubs/components/wemo/fan.pyi +1 -1
  813. homeassistant-stubs/components/wemo/light.pyi +1 -1
  814. homeassistant-stubs/components/wemo/models.pyi +3 -3
  815. homeassistant-stubs/components/wemo/sensor.pyi +1 -1
  816. homeassistant-stubs/components/wemo/switch.pyi +1 -1
  817. homeassistant-stubs/components/withings/__init__.pyi +6 -5
  818. homeassistant-stubs/components/withings/binary_sensor.pyi +2 -2
  819. homeassistant-stubs/components/withings/calendar.pyi +2 -3
  820. homeassistant-stubs/components/withings/coordinator.pyi +5 -7
  821. homeassistant-stubs/components/withings/diagnostics.pyi +2 -4
  822. homeassistant-stubs/components/withings/entity.pyi +0 -3
  823. homeassistant-stubs/components/withings/sensor.pyi +3 -7
  824. homeassistant-stubs/components/wled/__init__.pyi +4 -3
  825. homeassistant-stubs/components/wled/binary_sensor.pyi +3 -4
  826. homeassistant-stubs/components/wled/button.pyi +3 -4
  827. homeassistant-stubs/components/wled/diagnostics.pyi +2 -4
  828. homeassistant-stubs/components/wled/helpers.pyi +2 -5
  829. homeassistant-stubs/components/wled/light.pyi +4 -4
  830. homeassistant-stubs/components/wled/number.pyi +4 -4
  831. homeassistant-stubs/components/wled/select.pyi +3 -4
  832. homeassistant-stubs/components/wled/sensor.pyi +3 -4
  833. homeassistant-stubs/components/wled/switch.pyi +4 -4
  834. homeassistant-stubs/components/wled/update.pyi +3 -4
  835. homeassistant-stubs/components/xiaomi_ble/__init__.pyi +1 -1
  836. homeassistant-stubs/components/xiaomi_ble/binary_sensor.pyi +2 -2
  837. homeassistant-stubs/components/xiaomi_ble/coordinator.pyi +4 -4
  838. homeassistant-stubs/components/xiaomi_ble/sensor.pyi +2 -2
  839. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +4 -2
  840. homeassistant-stubs/components/yale_smart_alarm/alarm_control_panel.pyi +3 -3
  841. homeassistant-stubs/components/yale_smart_alarm/binary_sensor.pyi +2 -3
  842. homeassistant-stubs/components/yale_smart_alarm/button.pyi +4 -3
  843. homeassistant-stubs/components/yale_smart_alarm/const.pyi +0 -1
  844. homeassistant-stubs/components/yale_smart_alarm/diagnostics.pyi +2 -4
  845. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +3 -3
  846. homeassistant-stubs/components/yale_smart_alarm/sensor.pyi +16 -0
  847. homeassistant-stubs/components/yalexs_ble/__init__.pyi +5 -4
  848. homeassistant-stubs/components/yalexs_ble/binary_sensor.pyi +2 -4
  849. homeassistant-stubs/components/yalexs_ble/lock.pyi +2 -4
  850. homeassistant-stubs/components/yalexs_ble/sensor.pyi +2 -3
  851. homeassistant-stubs/components/zwave_js/api.pyi +2 -3
  852. homeassistant-stubs/components/zwave_js/diagnostics.pyi +1 -1
  853. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +6 -6
  854. homeassistant-stubs/components/zwave_js/services.pyi +6 -8
  855. homeassistant-stubs/config.pyi +2 -1
  856. homeassistant-stubs/config_entries.pyi +18 -11
  857. homeassistant-stubs/const.pyi +5 -1
  858. homeassistant-stubs/core.pyi +19 -19
  859. homeassistant-stubs/data_entry_flow.pyi +0 -1
  860. homeassistant-stubs/generated/bluetooth.pyi +3 -1
  861. homeassistant-stubs/generated/countries.pyi +2 -2
  862. homeassistant-stubs/generated/dhcp.pyi +3 -1
  863. homeassistant-stubs/helpers/aiohttp_client.pyi +3 -2
  864. homeassistant-stubs/helpers/area_registry.pyi +9 -3
  865. homeassistant-stubs/helpers/category_registry.pyi +3 -1
  866. homeassistant-stubs/helpers/collection.pyi +3 -6
  867. homeassistant-stubs/helpers/condition.pyi +5 -5
  868. homeassistant-stubs/helpers/config_entry_flow.pyi +2 -3
  869. homeassistant-stubs/helpers/config_entry_oauth2_flow.pyi +4 -2
  870. homeassistant-stubs/helpers/config_validation.pyi +5 -5
  871. homeassistant-stubs/helpers/debounce.pyi +1 -4
  872. homeassistant-stubs/helpers/deprecation.pyi +1 -5
  873. homeassistant-stubs/helpers/device_registry.pyi +6 -5
  874. homeassistant-stubs/helpers/discovery.pyi +1 -1
  875. homeassistant-stubs/helpers/discovery_flow.pyi +2 -1
  876. homeassistant-stubs/helpers/dispatcher.pyi +5 -5
  877. homeassistant-stubs/helpers/entity.pyi +6 -5
  878. homeassistant-stubs/helpers/entity_platform.pyi +11 -9
  879. homeassistant-stubs/helpers/entity_registry.pyi +6 -5
  880. homeassistant-stubs/helpers/entity_values.pyi +1 -2
  881. homeassistant-stubs/helpers/entityfilter.pyi +1 -1
  882. homeassistant-stubs/helpers/event.pyi +24 -22
  883. homeassistant-stubs/helpers/floor_registry.pyi +3 -1
  884. homeassistant-stubs/helpers/frame.pyi +4 -6
  885. homeassistant-stubs/helpers/httpx_client.pyi +5 -4
  886. homeassistant-stubs/helpers/icon.pyi +2 -2
  887. homeassistant-stubs/helpers/importlib.pyi +5 -3
  888. homeassistant-stubs/helpers/integration_platform.pyi +2 -1
  889. homeassistant-stubs/helpers/intent.pyi +114 -32
  890. homeassistant-stubs/helpers/issue_registry.pyi +13 -5
  891. homeassistant-stubs/helpers/label_registry.pyi +3 -1
  892. homeassistant-stubs/helpers/llm.pyi +87 -0
  893. homeassistant-stubs/helpers/normalized_name_base_registry.pyi +0 -2
  894. homeassistant-stubs/helpers/ratelimit.pyi +0 -2
  895. homeassistant-stubs/helpers/recorder.pyi +3 -2
  896. homeassistant-stubs/helpers/redact.pyi +1 -3
  897. homeassistant-stubs/helpers/registry.pyi +5 -6
  898. homeassistant-stubs/helpers/restore_state.pyi +3 -1
  899. homeassistant-stubs/helpers/script.pyi +19 -9
  900. homeassistant-stubs/helpers/selector.pyi +4 -5
  901. homeassistant-stubs/helpers/service.pyi +8 -8
  902. homeassistant-stubs/helpers/service_info/mqtt.pyi +1 -2
  903. homeassistant-stubs/helpers/signal.pyi +3 -0
  904. homeassistant-stubs/helpers/significant_change.pyi +7 -3
  905. homeassistant-stubs/helpers/singleton.pyi +5 -2
  906. homeassistant-stubs/helpers/storage.pyi +8 -7
  907. homeassistant-stubs/helpers/sun.pyi +2 -1
  908. homeassistant-stubs/helpers/system_info.pyi +3 -0
  909. homeassistant-stubs/helpers/template.pyi +7 -12
  910. homeassistant-stubs/helpers/trace.pyi +1 -4
  911. homeassistant-stubs/helpers/translation.pyi +9 -3
  912. homeassistant-stubs/helpers/trigger.pyi +5 -2
  913. homeassistant-stubs/helpers/update_coordinator.pyi +1 -2
  914. homeassistant-stubs/loader.pyi +12 -8
  915. homeassistant-stubs/requirements.pyi +1 -0
  916. homeassistant-stubs/scripts/benchmark/__init__.pyi +1 -3
  917. homeassistant-stubs/setup.pyi +12 -10
  918. homeassistant-stubs/util/__init__.pyi +1 -3
  919. homeassistant-stubs/util/async_.pyi +1 -3
  920. homeassistant-stubs/util/collection.pyi +6 -0
  921. homeassistant-stubs/util/decorator.pyi +1 -5
  922. homeassistant-stubs/util/dt.pyi +2 -0
  923. homeassistant-stubs/util/enum.pyi +4 -8
  924. homeassistant-stubs/util/hass_dict.pyi +65 -0
  925. homeassistant-stubs/util/limited_size_dict.pyi +1 -4
  926. homeassistant-stubs/util/logging.pyi +1 -4
  927. homeassistant-stubs/util/loop.pyi +4 -7
  928. homeassistant-stubs/util/percentage.pyi +0 -3
  929. homeassistant-stubs/util/read_only_dict.pyi +3 -3
  930. homeassistant-stubs/util/signal_type.pyi +5 -12
  931. homeassistant-stubs/util/variance.pyi +2 -5
  932. homeassistant-stubs/util/yaml/loader.pyi +6 -0
  933. {homeassistant_stubs-2024.5.4.dist-info → homeassistant_stubs-2024.6.0.dist-info}/METADATA +2 -2
  934. {homeassistant_stubs-2024.5.4.dist-info → homeassistant_stubs-2024.6.0.dist-info}/RECORD +939 -863
  935. homeassistant-stubs/auth/session.pyi +0 -46
  936. homeassistant-stubs/components/aladdin_connect/model.pyi +0 -9
  937. homeassistant-stubs/components/ambiclimate/climate.pyi +0 -44
  938. homeassistant-stubs/components/ambiclimate/config_flow.pyi +0 -37
  939. homeassistant-stubs/components/ambiclimate/const.pyi +0 -9
  940. homeassistant-stubs/components/anova/util.pyi +0 -3
  941. homeassistant-stubs/components/brother/utils.pyi +0 -10
  942. homeassistant-stubs/components/cloud/util.pyi +0 -7
  943. homeassistant-stubs/components/fritzbox/common.pyi +0 -5
  944. homeassistant-stubs/components/http/session.pyi +0 -29
  945. homeassistant-stubs/components/knx/repairs.pyi +0 -7
  946. homeassistant-stubs/components/poolsense/binary_sensor.pyi +0 -15
  947. homeassistant-stubs/components/poolsense/const.pyi +0 -2
  948. homeassistant-stubs/components/poolsense/coordinator.pyi +0 -16
  949. homeassistant-stubs/components/poolsense/entity.pyi +0 -14
  950. homeassistant-stubs/components/poolsense/sensor.pyi +0 -16
  951. /homeassistant-stubs/components/mikrotik/{hub.pyi → coordinator.pyi} +0 -0
  952. /homeassistant-stubs/components/wemo/{wemo_device.pyi → coordinator.pyi} +0 -0
  953. /homeassistant-stubs/components/wled/{models.pyi → entity.pyi} +0 -0
  954. {homeassistant_stubs-2024.5.4.dist-info → homeassistant_stubs-2024.6.0.dist-info}/LICENSE +0 -0
  955. {homeassistant_stubs-2024.5.4.dist-info → homeassistant_stubs-2024.6.0.dist-info}/WHEEL +0 -0
@@ -1,8 +1,9 @@
1
- from .const import ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, DATA_MQTT as DATA_MQTT, DATA_MQTT_AVAILABLE as DATA_MQTT_AVAILABLE, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_RETAIN as DEFAULT_RETAIN, DOMAIN as DOMAIN
2
- from .models import MqttData as MqttData
1
+ import logging
2
+ from .const import ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_RETAIN as DEFAULT_RETAIN, DOMAIN as DOMAIN
3
+ from .models import DATA_MQTT as DATA_MQTT, DATA_MQTT_AVAILABLE as DATA_MQTT_AVAILABLE, ReceiveMessage as ReceiveMessage
3
4
  from _typeshed import Incomplete
4
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigEntryState as ConfigEntryState
5
- from homeassistant.const import Platform as Platform
6
+ from homeassistant.const import MAX_LENGTH_STATE_STATE as MAX_LENGTH_STATE_STATE, Platform as Platform, STATE_UNKNOWN as STATE_UNKNOWN
6
7
  from homeassistant.core import HomeAssistant as HomeAssistant
7
8
  from homeassistant.helpers import template as template
8
9
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -26,7 +27,7 @@ def valid_qos_schema(qos: Any) -> int: ...
26
27
  _MQTT_WILL_BIRTH_SCHEMA: Incomplete
27
28
 
28
29
  def valid_birth_will(config: ConfigType) -> ConfigType: ...
29
- def get_mqtt_data(hass: HomeAssistant) -> MqttData: ...
30
30
  async def async_create_certificate_temp_files(hass: HomeAssistant, config: ConfigType) -> None: ...
31
+ def check_state_too_long(logger: logging.Logger, proposed_state: str, entity_id: str, msg: ReceiveMessage) -> bool: ...
31
32
  def get_file_path(option: str, default: str | None = None) -> str | None: ...
32
33
  def migrate_certificate_file_to_content(file_name_or_auto: str) -> str | None: ...
@@ -1,10 +1,10 @@
1
1
  import voluptuous as vol
2
2
  from . import subscription as subscription
3
3
  from .config import MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
4
- from .const import CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_ENCODING as CONF_ENCODING, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_SCHEMA as CONF_SCHEMA, CONF_STATE_TOPIC as CONF_STATE_TOPIC, DOMAIN as DOMAIN
5
- from .debug_info import log_messages as log_messages
6
- from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper, write_state_on_attr_change as write_state_on_attr_change
4
+ from .const import CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_RETAIN as CONF_RETAIN, CONF_SCHEMA as CONF_SCHEMA, CONF_STATE_TOPIC as CONF_STATE_TOPIC, DOMAIN as DOMAIN
5
+ from .mixins import MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper
7
6
  from .models import ReceiveMessage as ReceiveMessage
7
+ from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
8
8
  from .util import valid_publish_topic as valid_publish_topic
9
9
  from _typeshed import Incomplete
10
10
  from collections.abc import Callable as Callable
@@ -85,7 +85,7 @@ class MqttStateVacuum(MqttEntity, StateVacuumEntity):
85
85
  _attr_battery_level: Incomplete
86
86
  def _update_state_attributes(self, payload: dict[str, Any]) -> None: ...
87
87
  _attr_state: Incomplete
88
- _sub_state: Incomplete
88
+ def _state_message_received(self, msg: ReceiveMessage) -> None: ...
89
89
  def _prepare_subscribe_topics(self) -> None: ...
90
90
  async def _subscribe_topics(self) -> None: ...
91
91
  async def _async_publish_command(self, feature: VacuumEntityFeature) -> None: ...
@@ -1,10 +1,10 @@
1
1
  import voluptuous as vol
2
2
  from . import subscription as subscription
3
3
  from .config import MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
4
- from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_ENCODING as CONF_ENCODING, CONF_PAYLOAD_CLOSE as CONF_PAYLOAD_CLOSE, CONF_PAYLOAD_OPEN as CONF_PAYLOAD_OPEN, CONF_PAYLOAD_STOP as CONF_PAYLOAD_STOP, CONF_POSITION_CLOSED as CONF_POSITION_CLOSED, CONF_POSITION_OPEN as CONF_POSITION_OPEN, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, CONF_STATE_OPEN as CONF_STATE_OPEN, CONF_STATE_OPENING as CONF_STATE_OPENING, CONF_STATE_TOPIC as CONF_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, DEFAULT_PAYLOAD_CLOSE as DEFAULT_PAYLOAD_CLOSE, DEFAULT_PAYLOAD_OPEN as DEFAULT_PAYLOAD_OPEN, DEFAULT_POSITION_CLOSED as DEFAULT_POSITION_CLOSED, DEFAULT_POSITION_OPEN as DEFAULT_POSITION_OPEN, DEFAULT_RETAIN as DEFAULT_RETAIN
5
- from .debug_info import log_messages as log_messages
6
- from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper, write_state_on_attr_change as write_state_on_attr_change
4
+ from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_PAYLOAD_CLOSE as CONF_PAYLOAD_CLOSE, CONF_PAYLOAD_OPEN as CONF_PAYLOAD_OPEN, CONF_PAYLOAD_STOP as CONF_PAYLOAD_STOP, CONF_POSITION_CLOSED as CONF_POSITION_CLOSED, CONF_POSITION_OPEN as CONF_POSITION_OPEN, CONF_RETAIN as CONF_RETAIN, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, CONF_STATE_OPEN as CONF_STATE_OPEN, CONF_STATE_OPENING as CONF_STATE_OPENING, CONF_STATE_TOPIC as CONF_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, DEFAULT_PAYLOAD_CLOSE as DEFAULT_PAYLOAD_CLOSE, DEFAULT_PAYLOAD_OPEN as DEFAULT_PAYLOAD_OPEN, DEFAULT_POSITION_CLOSED as DEFAULT_POSITION_CLOSED, DEFAULT_POSITION_OPEN as DEFAULT_POSITION_OPEN, DEFAULT_RETAIN as DEFAULT_RETAIN, PAYLOAD_NONE as PAYLOAD_NONE
5
+ from .mixins import MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper
7
6
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, ReceiveMessage as ReceiveMessage
7
+ from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
8
8
  from .util import valid_publish_topic as valid_publish_topic, valid_subscribe_topic as valid_subscribe_topic
9
9
  from _typeshed import Incomplete
10
10
  from homeassistant.components import valve as valve
@@ -52,11 +52,11 @@ class MqttValve(MqttEntity, ValveEntity):
52
52
  def _setup_from_config(self, config: ConfigType) -> None: ...
53
53
  _attr_is_opening: Incomplete
54
54
  _attr_is_closing: Incomplete
55
- def _update_state(self, state: str) -> None: ...
55
+ def _update_state(self, state: str | None) -> None: ...
56
56
  def _process_binary_valve_update(self, msg: ReceiveMessage, state_payload: str) -> None: ...
57
57
  _attr_current_valve_position: Incomplete
58
58
  def _process_position_valve_update(self, msg: ReceiveMessage, position_payload: str, state_payload: str) -> None: ...
59
- _sub_state: Incomplete
59
+ def _state_message_received(self, msg: ReceiveMessage) -> None: ...
60
60
  def _prepare_subscribe_topics(self) -> None: ...
61
61
  async def _subscribe_topics(self) -> None: ...
62
62
  async def async_open_valve(self) -> None: ...
@@ -1,10 +1,10 @@
1
1
  import voluptuous as vol
2
2
  from .climate import MqttTemperatureControlEntity as MqttTemperatureControlEntity
3
3
  from .config import DEFAULT_RETAIN as DEFAULT_RETAIN, MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
4
- from .const import CONF_CURRENT_TEMP_TEMPLATE as CONF_CURRENT_TEMP_TEMPLATE, CONF_CURRENT_TEMP_TOPIC as CONF_CURRENT_TEMP_TOPIC, CONF_MODE_COMMAND_TEMPLATE as CONF_MODE_COMMAND_TEMPLATE, CONF_MODE_COMMAND_TOPIC as CONF_MODE_COMMAND_TOPIC, CONF_MODE_LIST as CONF_MODE_LIST, CONF_MODE_STATE_TEMPLATE as CONF_MODE_STATE_TEMPLATE, CONF_MODE_STATE_TOPIC as CONF_MODE_STATE_TOPIC, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_RETAIN as CONF_RETAIN, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_MAX as CONF_TEMP_MAX, CONF_TEMP_MIN as CONF_TEMP_MIN, CONF_TEMP_STATE_TEMPLATE as CONF_TEMP_STATE_TEMPLATE, CONF_TEMP_STATE_TOPIC as CONF_TEMP_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC
5
- from .debug_info import log_messages as log_messages
6
- from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, async_setup_entity_entry_helper as async_setup_entity_entry_helper, write_state_on_attr_change as write_state_on_attr_change
4
+ from .const import CONF_CURRENT_TEMP_TEMPLATE as CONF_CURRENT_TEMP_TEMPLATE, CONF_CURRENT_TEMP_TOPIC as CONF_CURRENT_TEMP_TOPIC, CONF_MODE_COMMAND_TEMPLATE as CONF_MODE_COMMAND_TEMPLATE, CONF_MODE_COMMAND_TOPIC as CONF_MODE_COMMAND_TOPIC, CONF_MODE_LIST as CONF_MODE_LIST, CONF_MODE_STATE_TEMPLATE as CONF_MODE_STATE_TEMPLATE, CONF_MODE_STATE_TOPIC as CONF_MODE_STATE_TOPIC, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_RETAIN as CONF_RETAIN, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_MAX as CONF_TEMP_MAX, CONF_TEMP_MIN as CONF_TEMP_MIN, CONF_TEMP_STATE_TEMPLATE as CONF_TEMP_STATE_TEMPLATE, CONF_TEMP_STATE_TOPIC as CONF_TEMP_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, PAYLOAD_NONE as PAYLOAD_NONE
5
+ from .mixins import async_setup_entity_entry_helper as async_setup_entity_entry_helper
7
6
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, ReceiveMessage as ReceiveMessage
7
+ from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
8
8
  from .util import valid_publish_topic as valid_publish_topic, valid_subscribe_topic as valid_subscribe_topic
9
9
  from _typeshed import Incomplete
10
10
  from homeassistant.components import water_heater as water_heater
@@ -52,6 +52,7 @@ class MqttWaterHeater(MqttTemperatureControlEntity, WaterHeaterEntity):
52
52
  _command_templates: Incomplete
53
53
  _attr_supported_features: Incomplete
54
54
  def _setup_from_config(self, config: ConfigType) -> None: ...
55
+ def _handle_current_mode_received(self, msg: ReceiveMessage) -> None: ...
55
56
  def _prepare_subscribe_topics(self) -> None: ...
56
57
  async def async_set_temperature(self, **kwargs: Any) -> None: ...
57
58
  async def async_set_operation_mode(self, operation_mode: str) -> None: ...
@@ -16,4 +16,4 @@ CONFIG_SCHEMA: Incomplete
16
16
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
17
17
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
18
18
  async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ConfigEntry, device_entry: DeviceEntry) -> bool: ...
19
- def setup_mysensors_platform(hass: HomeAssistant, domain: Platform, discovery_info: DiscoveryInfo, device_class: type[MySensorsChildEntity] | Mapping[SensorType, type[MySensorsChildEntity]], device_args: None | tuple = None, async_add_entities: Callable | None = None) -> list[MySensorsChildEntity] | None: ...
19
+ def setup_mysensors_platform(hass: HomeAssistant, domain: Platform, discovery_info: DiscoveryInfo, device_class: type[MySensorsChildEntity] | Mapping[SensorType, type[MySensorsChildEntity]], device_args: tuple | None = None, async_add_entities: Callable | None = None) -> list[MySensorsChildEntity] | None: ...
@@ -1,5 +1,6 @@
1
- from .const import OAUTH2_AUTHORIZE as OAUTH2_AUTHORIZE, OAUTH2_TOKEN as OAUTH2_TOKEN
1
+ from .const import DOMAIN as DOMAIN, OAUTH2_AUTHORIZE as OAUTH2_AUTHORIZE, OAUTH2_TOKEN as OAUTH2_TOKEN
2
2
  from homeassistant.components.application_credentials import AuthorizationServer as AuthorizationServer
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant
4
4
 
5
5
  async def async_get_authorization_server(hass: HomeAssistant) -> AuthorizationServer: ...
6
+ async def async_get_description_placeholders(hass: HomeAssistant) -> dict[str, str]: ...
@@ -1,9 +1,9 @@
1
1
  from . import MyUplinkDataCoordinator as MyUplinkDataCoordinator
2
2
  from .const import DOMAIN as DOMAIN
3
- from .entity import MyUplinkEntity as MyUplinkEntity
3
+ from .entity import MyUplinkEntity as MyUplinkEntity, MyUplinkSystemEntity as MyUplinkSystemEntity
4
4
  from .helpers import find_matching_platform as find_matching_platform
5
5
  from _typeshed import Incomplete
6
- from homeassistant.components.binary_sensor import BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
6
+ from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import Platform as Platform
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -11,6 +11,8 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
11
11
  from myuplink import DevicePoint as DevicePoint
12
12
 
13
13
  CATEGORY_BASED_DESCRIPTIONS: dict[str, dict[str, BinarySensorEntityDescription]]
14
+ CONNECTED_BINARY_SENSOR_DESCRIPTION: Incomplete
15
+ ALARM_BINARY_SENSOR_DESCRIPTION: Incomplete
14
16
 
15
17
  def get_description(device_point: DevicePoint) -> BinarySensorEntityDescription | None: ...
16
18
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
@@ -22,3 +24,17 @@ class MyUplinkDevicePointBinarySensor(MyUplinkEntity, BinarySensorEntity):
22
24
  def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, device_point: DevicePoint, entity_description: BinarySensorEntityDescription | None, unique_id_suffix: str) -> None: ...
23
25
  @property
24
26
  def is_on(self) -> bool: ...
27
+ @property
28
+ def available(self) -> bool: ...
29
+
30
+ class MyUplinkDeviceBinarySensor(MyUplinkEntity, BinarySensorEntity):
31
+ entity_description: Incomplete
32
+ def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, entity_description: BinarySensorEntityDescription | None, unique_id_suffix: str) -> None: ...
33
+ @property
34
+ def is_on(self) -> bool: ...
35
+
36
+ class MyUplinkSystemBinarySensor(MyUplinkSystemEntity, BinarySensorEntity):
37
+ entity_description: Incomplete
38
+ def __init__(self, coordinator: MyUplinkDataCoordinator, system_id: str, device_id: str, entity_description: BinarySensorEntityDescription | None, unique_id_suffix: str) -> None: ...
39
+ @property
40
+ def is_on(self) -> bool | None: ...
@@ -10,3 +10,8 @@ class MyUplinkEntity(CoordinatorEntity[MyUplinkDataCoordinator]):
10
10
  _attr_unique_id: Incomplete
11
11
  _attr_device_info: Incomplete
12
12
  def __init__(self, coordinator: MyUplinkDataCoordinator, device_id: str, unique_id_suffix: str) -> None: ...
13
+
14
+ class MyUplinkSystemEntity(MyUplinkEntity):
15
+ system_id: Incomplete
16
+ _attr_unique_id: Incomplete
17
+ def __init__(self, coordinator: MyUplinkDataCoordinator, system_id: str, device_id: str, unique_id_suffix: str) -> None: ...
@@ -1,26 +1,15 @@
1
- from .const import ATTR_SDS011 as ATTR_SDS011, ATTR_SPS30 as ATTR_SPS30, DEFAULT_UPDATE_INTERVAL as DEFAULT_UPDATE_INTERVAL, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
1
+ from .const import ATTR_SDS011 as ATTR_SDS011, ATTR_SPS30 as ATTR_SPS30, DOMAIN as DOMAIN
2
+ from .coordinator import NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
5
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
6
  from homeassistant.core import HomeAssistant as HomeAssistant
6
7
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
7
8
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
- from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
10
- from nettigo_air_monitor import NAMSensors, NettigoAirMonitor
11
9
 
12
10
  _LOGGER: Incomplete
13
11
  PLATFORMS: Incomplete
12
+ NAMConfigEntry = ConfigEntry[NAMDataUpdateCoordinator]
14
13
 
15
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
16
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
17
-
18
- class NAMDataUpdateCoordinator(DataUpdateCoordinator[NAMSensors]):
19
- _unique_id: Incomplete
20
- nam: Incomplete
21
- def __init__(self, hass: HomeAssistant, nam: NettigoAirMonitor, unique_id: str | None) -> None: ...
22
- async def _async_update_data(self) -> NAMSensors: ...
23
- @property
24
- def unique_id(self) -> str | None: ...
25
- @property
26
- def device_info(self) -> DeviceInfo: ...
14
+ async def async_setup_entry(hass: HomeAssistant, entry: NAMConfigEntry) -> bool: ...
15
+ async def async_unload_entry(hass: HomeAssistant, entry: NAMConfigEntry) -> bool: ...
@@ -1,8 +1,6 @@
1
- from . import NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
2
- from .const import DOMAIN as DOMAIN
1
+ from . import NAMConfigEntry as NAMConfigEntry, NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
3
2
  from _typeshed import Incomplete
4
3
  from homeassistant.components.button import ButtonDeviceClass as ButtonDeviceClass, ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
4
  from homeassistant.const import EntityCategory as EntityCategory
7
5
  from homeassistant.core import HomeAssistant as HomeAssistant
8
6
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -12,7 +10,7 @@ PARALLEL_UPDATES: int
12
10
  _LOGGER: Incomplete
13
11
  RESTART_BUTTON: ButtonEntityDescription
14
12
 
15
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
13
+ async def async_setup_entry(hass: HomeAssistant, entry: NAMConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
16
14
 
17
15
  class NAMButton(CoordinatorEntity[NAMDataUpdateCoordinator], ButtonEntity):
18
16
  _attr_has_entity_name: bool
@@ -34,3 +34,5 @@ class NAMFlowHandler(ConfigFlow, domain=DOMAIN):
34
34
  async def async_step_confirm_discovery(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
35
35
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
36
36
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
37
+ async def async_step_reconfigure(self, _: dict[str, Any] | None = None) -> ConfigFlowResult: ...
38
+ async def async_step_reconfigure_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
@@ -0,0 +1,15 @@
1
+ from .const import DEFAULT_UPDATE_INTERVAL as DEFAULT_UPDATE_INTERVAL, DOMAIN as DOMAIN, MANUFACTURER as MANUFACTURER
2
+ from _typeshed import Incomplete
3
+ from homeassistant.core import HomeAssistant as HomeAssistant
4
+ from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC, DeviceInfo as DeviceInfo
5
+ from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
6
+ from nettigo_air_monitor import NAMSensors, NettigoAirMonitor as NettigoAirMonitor
7
+
8
+ _LOGGER: Incomplete
9
+
10
+ class NAMDataUpdateCoordinator(DataUpdateCoordinator[NAMSensors]):
11
+ unique_id: Incomplete
12
+ device_info: Incomplete
13
+ nam: Incomplete
14
+ def __init__(self, hass: HomeAssistant, nam: NettigoAirMonitor, unique_id: str) -> None: ...
15
+ async def _async_update_data(self) -> NAMSensors: ...
@@ -1,12 +1,10 @@
1
- from . import NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
2
- from .const import DOMAIN as DOMAIN
1
+ from . import NAMConfigEntry as NAMConfigEntry
3
2
  from _typeshed import Incomplete
4
3
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
4
  from homeassistant.const import CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME
7
5
  from homeassistant.core import HomeAssistant as HomeAssistant
8
6
  from typing import Any
9
7
 
10
8
  TO_REDACT: Incomplete
11
9
 
12
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: ConfigEntry) -> dict[str, Any]: ...
10
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: NAMConfigEntry) -> dict[str, Any]: ...
@@ -1,11 +1,10 @@
1
- from . import NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
1
+ from . import NAMConfigEntry as NAMConfigEntry, NAMDataUpdateCoordinator as NAMDataUpdateCoordinator
2
2
  from .const import ATTR_BME280_HUMIDITY as ATTR_BME280_HUMIDITY, ATTR_BME280_PRESSURE as ATTR_BME280_PRESSURE, ATTR_BME280_TEMPERATURE as ATTR_BME280_TEMPERATURE, ATTR_BMP180_PRESSURE as ATTR_BMP180_PRESSURE, ATTR_BMP180_TEMPERATURE as ATTR_BMP180_TEMPERATURE, ATTR_BMP280_PRESSURE as ATTR_BMP280_PRESSURE, ATTR_BMP280_TEMPERATURE as ATTR_BMP280_TEMPERATURE, ATTR_DHT22_HUMIDITY as ATTR_DHT22_HUMIDITY, ATTR_DHT22_TEMPERATURE as ATTR_DHT22_TEMPERATURE, ATTR_HECA_HUMIDITY as ATTR_HECA_HUMIDITY, ATTR_HECA_TEMPERATURE as ATTR_HECA_TEMPERATURE, ATTR_MHZ14A_CARBON_DIOXIDE as ATTR_MHZ14A_CARBON_DIOXIDE, ATTR_PMSX003_CAQI as ATTR_PMSX003_CAQI, ATTR_PMSX003_CAQI_LEVEL as ATTR_PMSX003_CAQI_LEVEL, ATTR_PMSX003_P0 as ATTR_PMSX003_P0, ATTR_PMSX003_P1 as ATTR_PMSX003_P1, ATTR_PMSX003_P2 as ATTR_PMSX003_P2, ATTR_SDS011_CAQI as ATTR_SDS011_CAQI, ATTR_SDS011_CAQI_LEVEL as ATTR_SDS011_CAQI_LEVEL, ATTR_SDS011_P1 as ATTR_SDS011_P1, ATTR_SDS011_P2 as ATTR_SDS011_P2, ATTR_SHT3X_HUMIDITY as ATTR_SHT3X_HUMIDITY, ATTR_SHT3X_TEMPERATURE as ATTR_SHT3X_TEMPERATURE, ATTR_SIGNAL_STRENGTH as ATTR_SIGNAL_STRENGTH, ATTR_SPS30_CAQI as ATTR_SPS30_CAQI, ATTR_SPS30_CAQI_LEVEL as ATTR_SPS30_CAQI_LEVEL, ATTR_SPS30_P0 as ATTR_SPS30_P0, ATTR_SPS30_P1 as ATTR_SPS30_P1, ATTR_SPS30_P2 as ATTR_SPS30_P2, ATTR_SPS30_P4 as ATTR_SPS30_P4, ATTR_UPTIME as ATTR_UPTIME, DOMAIN as DOMAIN, MIGRATION_SENSORS as MIGRATION_SENSORS
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable
5
5
  from dataclasses import dataclass
6
6
  from datetime import datetime
7
7
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
8
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
8
  from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfPressure as UnitOfPressure, UnitOfTemperature as UnitOfTemperature
10
9
  from homeassistant.core import HomeAssistant as HomeAssistant
11
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -24,7 +23,7 @@ class NAMSensorEntityDescription(SensorEntityDescription):
24
23
 
25
24
  SENSORS: tuple[NAMSensorEntityDescription, ...]
26
25
 
27
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
26
+ async def async_setup_entry(hass: HomeAssistant, entry: NAMConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
28
27
 
29
28
  class NAMSensor(CoordinatorEntity[NAMDataUpdateCoordinator], SensorEntity):
30
29
  _attr_has_entity_name: bool
@@ -15,8 +15,8 @@ from homeassistant.components.camera import Image as Image, img_util as img_util
15
15
  from homeassistant.components.http import KEY_HASS_USER as KEY_HASS_USER
16
16
  from homeassistant.components.http.view import HomeAssistantView as HomeAssistantView
17
17
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
18
- from homeassistant.const import CONF_BINARY_SENSORS as CONF_BINARY_SENSORS, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CLIENT_SECRET as CONF_CLIENT_SECRET, CONF_MONITORED_CONDITIONS as CONF_MONITORED_CONDITIONS, CONF_SENSORS as CONF_SENSORS, CONF_STRUCTURE as CONF_STRUCTURE, Platform as Platform
19
- from homeassistant.core import HomeAssistant as HomeAssistant
18
+ from homeassistant.const import CONF_BINARY_SENSORS as CONF_BINARY_SENSORS, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CLIENT_SECRET as CONF_CLIENT_SECRET, CONF_MONITORED_CONDITIONS as CONF_MONITORED_CONDITIONS, CONF_SENSORS as CONF_SENSORS, CONF_STRUCTURE as CONF_STRUCTURE, EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, Platform as Platform
19
+ from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
20
20
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady, HomeAssistantError as HomeAssistantError, Unauthorized as Unauthorized
21
21
  from homeassistant.helpers.entity_registry import async_entries_for_device as async_entries_for_device
22
22
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -3,7 +3,7 @@ from .device_info import NestDeviceInfo as NestDeviceInfo
3
3
  from _typeshed import Incomplete
4
4
  from google_nest_sdm.device import Device as Device
5
5
  from google_nest_sdm.device_manager import DeviceManager as DeviceManager
6
- from google_nest_sdm.thermostat_traits import ThermostatHeatCoolTrait as ThermostatHeatCoolTrait
6
+ from google_nest_sdm.thermostat_traits import ThermostatEcoTrait, ThermostatTemperatureSetpointTrait
7
7
  from homeassistant.components.climate import ATTR_HVAC_MODE as ATTR_HVAC_MODE, ATTR_TARGET_TEMP_HIGH as ATTR_TARGET_TEMP_HIGH, ATTR_TARGET_TEMP_LOW as ATTR_TARGET_TEMP_LOW, ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, FAN_OFF as FAN_OFF, FAN_ON as FAN_ON, HVACAction as HVACAction, HVACMode as HVACMode, PRESET_ECO as PRESET_ECO, PRESET_NONE as PRESET_NONE
8
8
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
9
9
  from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, UnitOfTemperature as UnitOfTemperature
@@ -56,7 +56,7 @@ class ThermostatEntity(ClimateEntity):
56
56
  @property
57
57
  def target_temperature_low(self) -> float | None: ...
58
58
  @property
59
- def _target_temperature_trait(self) -> ThermostatHeatCoolTrait | None: ...
59
+ def _target_temperature_trait(self) -> ThermostatEcoTrait | ThermostatTemperatureSetpointTrait | None: ...
60
60
  @property
61
61
  def hvac_mode(self) -> HVACMode: ...
62
62
  @property
@@ -10,7 +10,7 @@ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceCla
10
10
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
11
11
  from homeassistant.const import ATTR_LATITUDE as ATTR_LATITUDE, ATTR_LONGITUDE as ATTR_LONGITUDE, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, DEGREE as DEGREE, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature
12
12
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
13
- from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo, async_entries_for_config_entry as async_entries_for_config_entry
13
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
14
14
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
15
15
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
16
16
  from homeassistant.helpers.typing import StateType as StateType
@@ -14,7 +14,7 @@ def _adapter_has_external_address(adapter: Adapter) -> bool: ...
14
14
  def _has_external_address(ip_str: str) -> bool: ...
15
15
  def _ip_address_is_external(ip_addr: IPv4Address | IPv6Address) -> bool: ...
16
16
  def _reset_enabled_adapters(adapters: list[Adapter]) -> None: ...
17
- def _ifaddr_adapter_to_ha(adapter: ifaddr.Adapter, next_hop_address: None | IPv4Address | IPv6Address) -> Adapter: ...
17
+ def _ifaddr_adapter_to_ha(adapter: ifaddr.Adapter, next_hop_address: IPv4Address | IPv6Address | None) -> Adapter: ...
18
18
  def _ip_v6_from_adapter(ip_config: ifaddr.IP) -> IPv6ConfiguredAddress: ...
19
19
  def _ip_v4_from_adapter(ip_config: ifaddr.IP) -> IPv4ConfiguredAddress: ...
20
20
  def async_get_source_ip(target_ip: str) -> str | None: ...
@@ -1,15 +1,30 @@
1
- from .const import ATTR_CONNECTION as ATTR_CONNECTION, ATTR_DNSSEC as ATTR_DNSSEC, ATTR_ENCRYPTION as ATTR_ENCRYPTION, ATTR_IP_VERSIONS as ATTR_IP_VERSIONS, ATTR_PROTOCOLS as ATTR_PROTOCOLS, ATTR_SETTINGS as ATTR_SETTINGS, ATTR_STATUS as ATTR_STATUS, CONF_PROFILE_ID as CONF_PROFILE_ID, DOMAIN as DOMAIN, UPDATE_INTERVAL_ANALYTICS as UPDATE_INTERVAL_ANALYTICS, UPDATE_INTERVAL_CONNECTION as UPDATE_INTERVAL_CONNECTION, UPDATE_INTERVAL_SETTINGS as UPDATE_INTERVAL_SETTINGS
1
+ from .const import ATTR_CONNECTION as ATTR_CONNECTION, ATTR_DNSSEC as ATTR_DNSSEC, ATTR_ENCRYPTION as ATTR_ENCRYPTION, ATTR_IP_VERSIONS as ATTR_IP_VERSIONS, ATTR_PROTOCOLS as ATTR_PROTOCOLS, ATTR_SETTINGS as ATTR_SETTINGS, ATTR_STATUS as ATTR_STATUS, CONF_PROFILE_ID as CONF_PROFILE_ID, UPDATE_INTERVAL_ANALYTICS as UPDATE_INTERVAL_ANALYTICS, UPDATE_INTERVAL_CONNECTION as UPDATE_INTERVAL_CONNECTION, UPDATE_INTERVAL_SETTINGS as UPDATE_INTERVAL_SETTINGS
2
2
  from .coordinator import NextDnsConnectionUpdateCoordinator as NextDnsConnectionUpdateCoordinator, NextDnsDnssecUpdateCoordinator as NextDnsDnssecUpdateCoordinator, NextDnsEncryptionUpdateCoordinator as NextDnsEncryptionUpdateCoordinator, NextDnsIpVersionsUpdateCoordinator as NextDnsIpVersionsUpdateCoordinator, NextDnsProtocolsUpdateCoordinator as NextDnsProtocolsUpdateCoordinator, NextDnsSettingsUpdateCoordinator as NextDnsSettingsUpdateCoordinator, NextDnsStatusUpdateCoordinator as NextDnsStatusUpdateCoordinator, NextDnsUpdateCoordinator as NextDnsUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
+ from dataclasses import dataclass
4
5
  from datetime import timedelta
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
7
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, Platform as Platform
7
8
  from homeassistant.core import HomeAssistant as HomeAssistant
8
9
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
9
10
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
11
+ from nextdns import AnalyticsDnssec as AnalyticsDnssec, AnalyticsEncryption as AnalyticsEncryption, AnalyticsIpVersions as AnalyticsIpVersions, AnalyticsProtocols as AnalyticsProtocols, AnalyticsStatus as AnalyticsStatus, ConnectionStatus as ConnectionStatus, Settings as Settings
12
+
13
+ NextDnsConfigEntry = ConfigEntry[NextDnsData]
14
+
15
+ @dataclass
16
+ class NextDnsData:
17
+ connection: NextDnsUpdateCoordinator[ConnectionStatus]
18
+ dnssec: NextDnsUpdateCoordinator[AnalyticsDnssec]
19
+ encryption: NextDnsUpdateCoordinator[AnalyticsEncryption]
20
+ ip_versions: NextDnsUpdateCoordinator[AnalyticsIpVersions]
21
+ protocols: NextDnsUpdateCoordinator[AnalyticsProtocols]
22
+ settings: NextDnsUpdateCoordinator[Settings]
23
+ status: NextDnsUpdateCoordinator[AnalyticsStatus]
24
+ def __init__(self, connection, dnssec, encryption, ip_versions, protocols, settings, status) -> None: ...
10
25
 
11
26
  PLATFORMS: Incomplete
12
27
  COORDINATORS: list[tuple[str, type[NextDnsUpdateCoordinator], timedelta]]
13
28
 
14
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
15
- async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
29
+ async def async_setup_entry(hass: HomeAssistant, entry: NextDnsConfigEntry) -> bool: ...
30
+ async def async_unload_entry(hass: HomeAssistant, entry: NextDnsConfigEntry) -> bool: ...
@@ -1,36 +1,31 @@
1
- from .const import ATTR_CONNECTION as ATTR_CONNECTION, DOMAIN as DOMAIN
2
- from .coordinator import CoordinatorDataT as CoordinatorDataT, NextDnsConnectionUpdateCoordinator as NextDnsConnectionUpdateCoordinator
1
+ from . import NextDnsConfigEntry as NextDnsConfigEntry
2
+ from .coordinator import NextDnsUpdateCoordinator as NextDnsUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
7
  from homeassistant.const import EntityCategory as EntityCategory
9
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
9
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
10
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
12
- from typing import Generic
11
+ from nextdns import ConnectionStatus
13
12
 
14
13
  PARALLEL_UPDATES: int
15
14
 
16
- @dataclass(frozen=True)
17
- class NextDnsBinarySensorRequiredKeysMixin(Generic[CoordinatorDataT]):
18
- state: Callable[[CoordinatorDataT, str], bool]
19
- def __init__(self, state) -> None: ...
20
-
21
- @dataclass(frozen=True)
22
- class NextDnsBinarySensorEntityDescription(BinarySensorEntityDescription, NextDnsBinarySensorRequiredKeysMixin[CoordinatorDataT]):
23
- def __init__(self, state, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement) -> None: ...
15
+ @dataclass(frozen=True, kw_only=True)
16
+ class NextDnsBinarySensorEntityDescription(BinarySensorEntityDescription):
17
+ state: Callable[[ConnectionStatus, str], bool]
18
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, state) -> None: ...
24
19
 
25
20
  SENSORS: Incomplete
26
21
 
27
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
22
+ async def async_setup_entry(hass: HomeAssistant, entry: NextDnsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
28
23
 
29
- class NextDnsBinarySensor(CoordinatorEntity[NextDnsConnectionUpdateCoordinator], BinarySensorEntity):
24
+ class NextDnsBinarySensor(CoordinatorEntity[NextDnsUpdateCoordinator[ConnectionStatus]], BinarySensorEntity):
30
25
  _attr_has_entity_name: bool
31
26
  entity_description: NextDnsBinarySensorEntityDescription
32
27
  _attr_device_info: Incomplete
33
28
  _attr_unique_id: Incomplete
34
29
  _attr_is_on: Incomplete
35
- def __init__(self, coordinator: NextDnsConnectionUpdateCoordinator, description: NextDnsBinarySensorEntityDescription) -> None: ...
30
+ def __init__(self, coordinator: NextDnsUpdateCoordinator[ConnectionStatus], description: NextDnsBinarySensorEntityDescription) -> None: ...
36
31
  def _handle_coordinator_update(self) -> None: ...
@@ -1,22 +1,22 @@
1
- from .const import ATTR_STATUS as ATTR_STATUS, DOMAIN as DOMAIN
2
- from .coordinator import NextDnsStatusUpdateCoordinator as NextDnsStatusUpdateCoordinator
1
+ from . import NextDnsConfigEntry as NextDnsConfigEntry
2
+ from .coordinator import NextDnsUpdateCoordinator as NextDnsUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.components.button import ButtonEntity as ButtonEntity, ButtonEntityDescription as ButtonEntityDescription
5
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.const import EntityCategory as EntityCategory
7
6
  from homeassistant.core import HomeAssistant as HomeAssistant
8
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
8
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
9
+ from nextdns import AnalyticsStatus
10
10
 
11
11
  PARALLEL_UPDATES: int
12
12
  CLEAR_LOGS_BUTTON: Incomplete
13
13
 
14
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
14
+ async def async_setup_entry(hass: HomeAssistant, entry: NextDnsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
15
15
 
16
- class NextDnsButton(CoordinatorEntity[NextDnsStatusUpdateCoordinator], ButtonEntity):
16
+ class NextDnsButton(CoordinatorEntity[NextDnsUpdateCoordinator[AnalyticsStatus]], ButtonEntity):
17
17
  _attr_has_entity_name: bool
18
18
  _attr_device_info: Incomplete
19
19
  _attr_unique_id: Incomplete
20
20
  entity_description: Incomplete
21
- def __init__(self, coordinator: NextDnsStatusUpdateCoordinator, description: ButtonEntityDescription) -> None: ...
21
+ def __init__(self, coordinator: NextDnsUpdateCoordinator[AnalyticsStatus], description: ButtonEntityDescription) -> None: ...
22
22
  async def async_press(self) -> None: ...
@@ -1,11 +1,11 @@
1
- from .const import ATTR_DNSSEC as ATTR_DNSSEC, ATTR_ENCRYPTION as ATTR_ENCRYPTION, ATTR_IP_VERSIONS as ATTR_IP_VERSIONS, ATTR_PROTOCOLS as ATTR_PROTOCOLS, ATTR_SETTINGS as ATTR_SETTINGS, ATTR_STATUS as ATTR_STATUS, CONF_PROFILE_ID as CONF_PROFILE_ID, DOMAIN as DOMAIN
1
+ from . import NextDnsConfigEntry as NextDnsConfigEntry
2
+ from .const import CONF_PROFILE_ID as CONF_PROFILE_ID
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_UNIQUE_ID as CONF_UNIQUE_ID
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from typing import Any
8
8
 
9
9
  TO_REDACT: Incomplete
10
10
 
11
- async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: ConfigEntry) -> dict[str, Any]: ...
11
+ async def async_get_config_entry_diagnostics(hass: HomeAssistant, config_entry: NextDnsConfigEntry) -> dict[str, Any]: ...
@@ -1,10 +1,10 @@
1
- from .const import ATTR_DNSSEC as ATTR_DNSSEC, ATTR_ENCRYPTION as ATTR_ENCRYPTION, ATTR_IP_VERSIONS as ATTR_IP_VERSIONS, ATTR_PROTOCOLS as ATTR_PROTOCOLS, ATTR_STATUS as ATTR_STATUS, DOMAIN as DOMAIN
1
+ from . import NextDnsConfigEntry as NextDnsConfigEntry
2
+ from .const import ATTR_DNSSEC as ATTR_DNSSEC, ATTR_ENCRYPTION as ATTR_ENCRYPTION, ATTR_IP_VERSIONS as ATTR_IP_VERSIONS, ATTR_PROTOCOLS as ATTR_PROTOCOLS, ATTR_STATUS as ATTR_STATUS
2
3
  from .coordinator import CoordinatorDataT as CoordinatorDataT, NextDnsUpdateCoordinator as NextDnsUpdateCoordinator
3
4
  from _typeshed import Incomplete
4
5
  from collections.abc import Callable as Callable
5
6
  from dataclasses import dataclass
6
7
  from homeassistant.components.sensor import SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
@@ -14,19 +14,15 @@ from typing import Generic
14
14
 
15
15
  PARALLEL_UPDATES: int
16
16
 
17
- @dataclass(frozen=True)
18
- class NextDnsSensorRequiredKeysMixin(Generic[CoordinatorDataT]):
17
+ @dataclass(frozen=True, kw_only=True)
18
+ class NextDnsSensorEntityDescription(SensorEntityDescription, Generic[CoordinatorDataT]):
19
19
  coordinator_type: str
20
20
  value: Callable[[CoordinatorDataT], StateType]
21
- def __init__(self, coordinator_type, value) -> None: ...
22
-
23
- @dataclass(frozen=True)
24
- class NextDnsSensorEntityDescription(SensorEntityDescription, NextDnsSensorRequiredKeysMixin[CoordinatorDataT]):
25
- def __init__(self, coordinator_type, value, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement) -> None: ...
21
+ def __init__(self, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement, last_reset, native_unit_of_measurement, options, state_class, suggested_display_precision, suggested_unit_of_measurement, coordinator_type, value) -> None: ...
26
22
 
27
23
  SENSORS: tuple[NextDnsSensorEntityDescription, ...]
28
24
 
29
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
25
+ async def async_setup_entry(hass: HomeAssistant, entry: NextDnsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
30
26
 
31
27
  class NextDnsSensor(CoordinatorEntity[NextDnsUpdateCoordinator[CoordinatorDataT]], SensorEntity):
32
28
  _attr_has_entity_name: bool
@@ -1,39 +1,35 @@
1
- from .const import ATTR_SETTINGS as ATTR_SETTINGS, DOMAIN as DOMAIN
2
- from .coordinator import CoordinatorDataT as CoordinatorDataT, NextDnsSettingsUpdateCoordinator as NextDnsSettingsUpdateCoordinator
1
+ from . import NextDnsConfigEntry as NextDnsConfigEntry
2
+ from .coordinator import NextDnsUpdateCoordinator as NextDnsUpdateCoordinator
3
3
  from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable
5
5
  from dataclasses import dataclass
6
6
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
7
- from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
7
  from homeassistant.const import EntityCategory as EntityCategory
9
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
9
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
11
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
11
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
13
- from typing import Any, Generic
12
+ from nextdns import Settings
13
+ from typing import Any
14
14
 
15
15
  PARALLEL_UPDATES: int
16
16
 
17
- @dataclass(frozen=True)
18
- class NextDnsSwitchRequiredKeysMixin(Generic[CoordinatorDataT]):
19
- state: Callable[[CoordinatorDataT], bool]
20
- def __init__(self, state) -> None: ...
21
-
22
- @dataclass(frozen=True)
23
- class NextDnsSwitchEntityDescription(SwitchEntityDescription, NextDnsSwitchRequiredKeysMixin[CoordinatorDataT]):
24
- def __init__(self, state, *, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, translation_placeholders, unit_of_measurement) -> None: ...
17
+ @dataclass(frozen=True, kw_only=True)
18
+ class NextDnsSwitchEntityDescription(SwitchEntityDescription):
19
+ state: Callable[[Settings], bool]
20
+ 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, state) -> None: ...
25
21
 
26
22
  SWITCHES: Incomplete
27
23
 
28
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
24
+ async def async_setup_entry(hass: HomeAssistant, entry: NextDnsConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
29
25
 
30
- class NextDnsSwitch(CoordinatorEntity[NextDnsSettingsUpdateCoordinator], SwitchEntity):
26
+ class NextDnsSwitch(CoordinatorEntity[NextDnsUpdateCoordinator[Settings]], SwitchEntity):
31
27
  _attr_has_entity_name: bool
32
28
  entity_description: NextDnsSwitchEntityDescription
33
29
  _attr_device_info: Incomplete
34
30
  _attr_unique_id: Incomplete
35
31
  _attr_is_on: Incomplete
36
- def __init__(self, coordinator: NextDnsSettingsUpdateCoordinator, description: NextDnsSwitchEntityDescription) -> None: ...
32
+ def __init__(self, coordinator: NextDnsUpdateCoordinator[Settings], description: NextDnsSwitchEntityDescription) -> None: ...
37
33
  def _handle_coordinator_update(self) -> None: ...
38
34
  async def async_turn_on(self, **kwargs: Any) -> None: ...
39
35
  async def async_turn_off(self, **kwargs: Any) -> None: ...
@@ -1,6 +1,8 @@
1
1
  from .const import ATTR_DATA as ATTR_DATA, ATTR_MESSAGE as ATTR_MESSAGE, ATTR_RECIPIENTS as ATTR_RECIPIENTS, ATTR_TARGET as ATTR_TARGET, ATTR_TITLE as ATTR_TITLE, DOMAIN as DOMAIN, NOTIFY_SERVICE_SCHEMA as NOTIFY_SERVICE_SCHEMA, SERVICE_NOTIFY as SERVICE_NOTIFY, SERVICE_PERSISTENT_NOTIFICATION as SERVICE_PERSISTENT_NOTIFICATION, SERVICE_SEND_MESSAGE as SERVICE_SEND_MESSAGE
2
2
  from .legacy import BaseNotificationService as BaseNotificationService, async_reload as async_reload, async_reset_platform as async_reset_platform, async_setup_legacy as async_setup_legacy, check_templates_warn as check_templates_warn
3
+ from .repairs import migrate_notify_issue as migrate_notify_issue
3
4
  from _typeshed import Incomplete
5
+ from enum import IntFlag
4
6
  from functools import cached_property as cached_property
5
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
8
  from homeassistant.const import CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM, STATE_UNAVAILABLE as STATE_UNAVAILABLE
@@ -18,6 +20,9 @@ MIN_TIME_BETWEEN_SCANS: Incomplete
18
20
  _LOGGER: Incomplete
19
21
  PLATFORM_SCHEMA: Incomplete
20
22
 
23
+ class NotifyEntityFeature(IntFlag):
24
+ TITLE: int
25
+
21
26
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
22
27
 
23
28
  class NotifyEntityDescription(EntityDescription, frozen_or_thawed=True):
@@ -28,6 +33,7 @@ async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: .
28
33
 
29
34
  class NotifyEntity(RestoreEntity):
30
35
  entity_description: NotifyEntityDescription
36
+ _attr_supported_features: NotifyEntityFeature
31
37
  _attr_should_poll: bool
32
38
  _attr_device_class: None
33
39
  _attr_state: None
@@ -37,5 +43,5 @@ class NotifyEntity(RestoreEntity):
37
43
  def __set_state(self, state: str | None) -> None: ...
38
44
  async def async_internal_added_to_hass(self) -> None: ...
39
45
  async def _async_send_message(self, **kwargs: Any) -> None: ...
40
- def send_message(self, message: str) -> None: ...
41
- async def async_send_message(self, message: str) -> None: ...
46
+ def send_message(self, message: str, title: str | None = None) -> None: ...
47
+ async def async_send_message(self, message: str, title: str | None = None) -> None: ...
@@ -0,0 +1,7 @@
1
+ from .const import DOMAIN as DOMAIN
2
+ from homeassistant.components.repairs import RepairsFlow as RepairsFlow
3
+ from homeassistant.components.repairs.issue_handler import ConfirmRepairFlow as ConfirmRepairFlow
4
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
+
6
+ def migrate_notify_issue(hass: HomeAssistant, domain: str, integration_title: str, breaks_in_ha_version: str, service_name: str | None = None) -> None: ...
7
+ async def async_create_fix_flow(hass: HomeAssistant, issue_id: str, data: dict[str, str | int | float | None] | None) -> RepairsFlow: ...