homeassistant-stubs 2025.10.4__py3-none-any.whl → 2025.11.0b0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of homeassistant-stubs might be problematic. Click here for more details.

Files changed (453) hide show
  1. homeassistant-stubs/components/acaia/coordinator.pyi +2 -0
  2. homeassistant-stubs/components/airly/config_flow.pyi +3 -0
  3. homeassistant-stubs/components/airos/__init__.pyi +4 -2
  4. homeassistant-stubs/components/airos/config_flow.pyi +10 -1
  5. homeassistant-stubs/components/airos/coordinator.pyi +1 -1
  6. homeassistant-stubs/components/airthings/config_flow.pyi +1 -0
  7. homeassistant-stubs/components/airthings_ble/config_flow.pyi +4 -2
  8. homeassistant-stubs/components/airthings_ble/sensor.pyi +2 -1
  9. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +0 -10
  10. homeassistant-stubs/components/alexa_devices/const.pyi +2 -0
  11. homeassistant-stubs/components/alexa_devices/sensor.pyi +12 -2
  12. homeassistant-stubs/components/androidtv_remote/config_flow.pyi +2 -0
  13. homeassistant-stubs/components/apple_tv/__init__.pyi +3 -3
  14. homeassistant-stubs/components/assist_pipeline/__init__.pyi +3 -3
  15. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +1 -1
  16. homeassistant-stubs/components/asuswrt/bridge.pyi +9 -9
  17. homeassistant-stubs/components/asuswrt/config_flow.pyi +1 -1
  18. homeassistant-stubs/components/asuswrt/device_tracker.pyi +0 -3
  19. homeassistant-stubs/components/asuswrt/helpers.pyi +2 -3
  20. homeassistant-stubs/components/asuswrt/router.pyi +1 -1
  21. homeassistant-stubs/components/backup/http.pyi +1 -0
  22. homeassistant-stubs/components/backup/manager.pyi +2 -1
  23. homeassistant-stubs/components/backup/util.pyi +2 -32
  24. homeassistant-stubs/components/bang_olufsen/media_player.pyi +5 -5
  25. homeassistant-stubs/components/bluetooth/__init__.pyi +2 -5
  26. homeassistant-stubs/components/bluetooth/api.pyi +2 -0
  27. homeassistant-stubs/components/bluetooth/manager.pyi +2 -0
  28. homeassistant-stubs/components/bryant_evolution/climate.pyi +2 -2
  29. homeassistant-stubs/components/calendar/trigger.pyi +1 -1
  30. homeassistant-stubs/components/camera/__init__.pyi +1 -9
  31. homeassistant-stubs/components/cert_expiry/config_flow.pyi +1 -1
  32. homeassistant-stubs/components/cert_expiry/errors.pyi +1 -0
  33. homeassistant-stubs/components/cert_expiry/helper.pyi +1 -1
  34. homeassistant-stubs/components/cloud/__init__.pyi +2 -1
  35. homeassistant-stubs/components/cloud/client.pyi +1 -1
  36. homeassistant-stubs/components/cloud/const.pyi +1 -1
  37. homeassistant-stubs/components/comelit/binary_sensor.pyi +1 -0
  38. homeassistant-stubs/components/comelit/cover.pyi +2 -2
  39. homeassistant-stubs/components/comelit/light.pyi +1 -1
  40. homeassistant-stubs/components/comelit/sensor.pyi +1 -0
  41. homeassistant-stubs/components/comelit/switch.pyi +1 -1
  42. homeassistant-stubs/components/comelit/utils.pyi +5 -1
  43. homeassistant-stubs/components/config/config_entries.pyi +5 -1
  44. homeassistant-stubs/components/cover/__init__.pyi +1 -11
  45. homeassistant-stubs/components/demo/valve.pyi +14 -5
  46. homeassistant-stubs/components/derivative/__init__.pyi +0 -1
  47. homeassistant-stubs/components/derivative/config_flow.pyi +1 -0
  48. homeassistant-stubs/components/derivative/sensor.pyi +2 -1
  49. homeassistant-stubs/components/device_automation/condition.pyi +7 -6
  50. homeassistant-stubs/components/devolo_home_control/binary_sensor.pyi +1 -1
  51. homeassistant-stubs/components/devolo_home_control/entity.pyi +1 -2
  52. homeassistant-stubs/components/devolo_home_control/sensor.pyi +1 -1
  53. homeassistant-stubs/components/devolo_home_control/subscriber.pyi +0 -1
  54. homeassistant-stubs/components/devolo_home_control/switch.pyi +1 -1
  55. homeassistant-stubs/components/dnsip/sensor.pyi +3 -3
  56. homeassistant-stubs/components/ecovacs/button.pyi +1 -1
  57. homeassistant-stubs/components/ecovacs/select.pyi +14 -2
  58. homeassistant-stubs/components/eheimdigital/sensor.pyi +1 -2
  59. homeassistant-stubs/components/enphase_envoy/sensor.pyi +4 -22
  60. homeassistant-stubs/components/eq3btsmart/sensor.pyi +1 -2
  61. homeassistant-stubs/components/esphome/__init__.pyi +1 -1
  62. homeassistant-stubs/components/esphome/assist_satellite.pyi +12 -2
  63. homeassistant-stubs/components/esphome/climate.pyi +1 -0
  64. homeassistant-stubs/components/esphome/config_flow.pyi +7 -4
  65. homeassistant-stubs/components/esphome/const.pyi +2 -0
  66. homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
  67. homeassistant-stubs/components/esphome/manager.pyi +8 -3
  68. homeassistant-stubs/components/esphome/select.pyi +1 -1
  69. homeassistant-stubs/components/evohome/climate.pyi +1 -1
  70. homeassistant-stubs/components/fastdotcom/coordinator.pyi +2 -2
  71. homeassistant-stubs/components/fastdotcom/sensor.pyi +1 -1
  72. homeassistant-stubs/components/filter/__init__.pyi +0 -1
  73. homeassistant-stubs/components/filter/config_flow.pyi +1 -0
  74. homeassistant-stubs/components/firefly_iii/__init__.pyi +8 -0
  75. homeassistant-stubs/components/firefly_iii/config_flow.pyi +24 -0
  76. homeassistant-stubs/components/firefly_iii/const.pyi +3 -0
  77. homeassistant-stubs/components/firefly_iii/coordinator.pyi +30 -0
  78. homeassistant-stubs/components/firefly_iii/diagnostics.pyi +11 -0
  79. homeassistant-stubs/components/firefly_iii/entity.pyi +30 -0
  80. homeassistant-stubs/components/firefly_iii/sensor.pyi +66 -0
  81. homeassistant-stubs/components/fritz/coordinator.pyi +3 -0
  82. homeassistant-stubs/components/fritz/models.pyi +2 -2
  83. homeassistant-stubs/components/fritz/services.pyi +3 -0
  84. homeassistant-stubs/components/fritzbox/climate.pyi +2 -5
  85. homeassistant-stubs/components/generic_hygrostat/__init__.pyi +0 -1
  86. homeassistant-stubs/components/generic_hygrostat/config_flow.pyi +1 -0
  87. homeassistant-stubs/components/generic_thermostat/__init__.pyi +0 -1
  88. homeassistant-stubs/components/generic_thermostat/config_flow.pyi +1 -0
  89. homeassistant-stubs/components/github/__init__.pyi +12 -0
  90. homeassistant-stubs/components/github/config_flow.pyi +28 -0
  91. homeassistant-stubs/components/github/const.pyi +10 -0
  92. homeassistant-stubs/components/github/coordinator.pyi +26 -0
  93. homeassistant-stubs/components/github/diagnostics.pyi +7 -0
  94. homeassistant-stubs/components/github/sensor.pyi +37 -0
  95. homeassistant-stubs/components/go2rtc/__init__.pyi +1 -2
  96. homeassistant-stubs/components/google_assistant_sdk/config_flow.pyi +2 -1
  97. homeassistant-stubs/components/google_drive/api.pyi +1 -0
  98. homeassistant-stubs/components/google_sheets/services.pyi +9 -2
  99. homeassistant-stubs/components/group/__init__.pyi +0 -1
  100. homeassistant-stubs/components/group/config_flow.pyi +2 -0
  101. homeassistant-stubs/components/group/entity.pyi +3 -0
  102. homeassistant-stubs/components/group/light.pyi +1 -1
  103. homeassistant-stubs/components/group/util.pyi +1 -0
  104. homeassistant-stubs/components/group/valve.pyi +47 -0
  105. homeassistant-stubs/components/habitica/__init__.pyi +1 -0
  106. homeassistant-stubs/components/habitica/config_flow.pyi +11 -3
  107. homeassistant-stubs/components/habitica/const.pyi +1 -0
  108. homeassistant-stubs/components/habitica/coordinator.pyi +9 -3
  109. homeassistant-stubs/components/habitica/entity.pyi +15 -2
  110. homeassistant-stubs/components/habitica/image.pyi +6 -2
  111. homeassistant-stubs/components/habitica/notify.pyi +42 -0
  112. homeassistant-stubs/components/habitica/sensor.pyi +9 -4
  113. homeassistant-stubs/components/hardkernel/hardware.pyi +1 -1
  114. homeassistant-stubs/components/hardware/__init__.pyi +2 -10
  115. homeassistant-stubs/components/history_stats/__init__.pyi +0 -1
  116. homeassistant-stubs/components/history_stats/config_flow.pyi +1 -0
  117. homeassistant-stubs/components/home_connect/application_credentials.pyi +1 -0
  118. homeassistant-stubs/components/home_connect/const.pyi +1 -0
  119. homeassistant-stubs/components/home_connect/select.pyi +1 -1
  120. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +4 -2
  121. homeassistant-stubs/components/homeassistant_green/hardware.pyi +1 -1
  122. homeassistant-stubs/components/homeassistant_hardware/const.pyi +1 -0
  123. homeassistant-stubs/components/homeassistant_hardware/helpers.pyi +12 -2
  124. homeassistant-stubs/components/homeassistant_hardware/switch.pyi +23 -0
  125. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +13 -4
  126. homeassistant-stubs/components/homeassistant_sky_connect/config_flow.pyi +4 -0
  127. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -1
  128. homeassistant-stubs/components/homeassistant_sky_connect/switch.pyi +17 -0
  129. homeassistant-stubs/components/homeassistant_sky_connect/update.pyi +5 -7
  130. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +12 -4
  131. homeassistant-stubs/components/homeassistant_yellow/config_flow.pyi +1 -1
  132. homeassistant-stubs/components/homeassistant_yellow/hardware.pyi +1 -1
  133. homeassistant-stubs/components/homeassistant_yellow/switch.pyi +17 -0
  134. homeassistant-stubs/components/homeassistant_yellow/update.pyi +5 -7
  135. homeassistant-stubs/components/homee/__init__.pyi +1 -0
  136. homeassistant-stubs/components/homewizard/__init__.pyi +2 -0
  137. homeassistant-stubs/components/husqvarna_automower/button.pyi +1 -0
  138. homeassistant-stubs/components/husqvarna_automower/entity.pyi +8 -4
  139. homeassistant-stubs/components/husqvarna_automower/lawn_mower.pyi +5 -0
  140. homeassistant-stubs/components/husqvarna_automower/select.pyi +1 -0
  141. homeassistant-stubs/components/husqvarna_automower/sensor.pyi +2 -0
  142. homeassistant-stubs/components/husqvarna_automower/switch.pyi +2 -0
  143. homeassistant-stubs/components/imap/__init__.pyi +3 -1
  144. homeassistant-stubs/components/imap/coordinator.pyi +4 -1
  145. homeassistant-stubs/components/inels/__init__.pyi +18 -0
  146. homeassistant-stubs/components/inels/config_flow.pyi +13 -0
  147. homeassistant-stubs/components/inels/const.pyi +7 -0
  148. homeassistant-stubs/components/inels/entity.pyi +20 -0
  149. homeassistant-stubs/components/inels/switch.pyi +34 -0
  150. homeassistant-stubs/components/knx/climate.pyi +23 -11
  151. homeassistant-stubs/components/knx/const.pyi +14 -0
  152. homeassistant-stubs/components/knx/schema.pyi +1 -13
  153. homeassistant-stubs/components/knx/sensor.pyi +8 -9
  154. homeassistant-stubs/components/knx/storage/const.pyi +20 -0
  155. homeassistant-stubs/components/knx/storage/entity_store_schema.pyi +13 -2
  156. homeassistant-stubs/components/libre_hardware_monitor/__init__.pyi +3 -0
  157. homeassistant-stubs/components/libre_hardware_monitor/sensor.pyi +2 -3
  158. homeassistant-stubs/components/litterrobot/update.pyi +2 -0
  159. homeassistant-stubs/components/lock/__init__.pyi +1 -6
  160. homeassistant-stubs/components/london_underground/__init__.pyi +9 -0
  161. homeassistant-stubs/components/london_underground/config_flow.pyi +22 -0
  162. homeassistant-stubs/components/london_underground/const.pyi +1 -0
  163. homeassistant-stubs/components/london_underground/coordinator.pyi +3 -1
  164. homeassistant-stubs/components/london_underground/sensor.pyi +10 -5
  165. homeassistant-stubs/components/lunatone/__init__.pyi +12 -0
  166. homeassistant-stubs/components/lunatone/config_flow.pyi +16 -0
  167. homeassistant-stubs/components/lunatone/const.pyi +3 -0
  168. homeassistant-stubs/components/lunatone/coordinator.pyi +29 -0
  169. homeassistant-stubs/components/lunatone/light.pyi +43 -0
  170. homeassistant-stubs/components/matrix/__init__.pyi +10 -2
  171. homeassistant-stubs/components/matrix/const.pyi +5 -0
  172. homeassistant-stubs/components/matrix/services.pyi +3 -1
  173. homeassistant-stubs/components/matter/__init__.pyi +5 -0
  174. homeassistant-stubs/components/matter/binary_sensor.pyi +1 -1
  175. homeassistant-stubs/components/matter/button.pyi +1 -1
  176. homeassistant-stubs/components/matter/climate.pyi +7 -1
  177. homeassistant-stubs/components/matter/cover.pyi +6 -2
  178. homeassistant-stubs/components/matter/entity.pyi +4 -2
  179. homeassistant-stubs/components/matter/event.pyi +5 -1
  180. homeassistant-stubs/components/matter/fan.pyi +5 -1
  181. homeassistant-stubs/components/matter/light.pyi +6 -2
  182. homeassistant-stubs/components/matter/lock.pyi +5 -1
  183. homeassistant-stubs/components/matter/models.pyi +3 -3
  184. homeassistant-stubs/components/matter/number.pyi +1 -1
  185. homeassistant-stubs/components/matter/select.pyi +1 -1
  186. homeassistant-stubs/components/matter/sensor.pyi +4 -1
  187. homeassistant-stubs/components/matter/services.pyi +11 -0
  188. homeassistant-stubs/components/matter/switch.pyi +5 -2
  189. homeassistant-stubs/components/matter/update.pyi +4 -1
  190. homeassistant-stubs/components/matter/vacuum.pyi +6 -2
  191. homeassistant-stubs/components/matter/valve.pyi +6 -2
  192. homeassistant-stubs/components/matter/water_heater.pyi +8 -1
  193. homeassistant-stubs/components/mcp/__init__.pyi +1 -6
  194. homeassistant-stubs/components/mcp/config_flow.pyi +12 -2
  195. homeassistant-stubs/components/mcp/const.pyi +1 -0
  196. homeassistant-stubs/components/mcp/coordinator.pyi +1 -1
  197. homeassistant-stubs/components/mcp_server/__init__.pyi +1 -8
  198. homeassistant-stubs/components/mcp_server/http.pyi +23 -1
  199. homeassistant-stubs/components/mealie/config_flow.pyi +8 -1
  200. homeassistant-stubs/components/media_player/__init__.pyi +1 -9
  201. homeassistant-stubs/components/media_player/const.pyi +10 -69
  202. homeassistant-stubs/components/media_player/intent.pyi +7 -9
  203. homeassistant-stubs/components/metoffice/__init__.pyi +1 -0
  204. homeassistant-stubs/components/metoffice/helpers.pyi +2 -2
  205. homeassistant-stubs/components/metoffice/weather.pyi +11 -11
  206. homeassistant-stubs/components/min_max/__init__.pyi +0 -1
  207. homeassistant-stubs/components/min_max/config_flow.pyi +1 -0
  208. homeassistant-stubs/components/mold_indicator/__init__.pyi +0 -1
  209. homeassistant-stubs/components/mold_indicator/config_flow.pyi +1 -0
  210. homeassistant-stubs/components/mqtt/__init__.pyi +1 -4
  211. homeassistant-stubs/components/mqtt/config_flow.pyi +23 -4
  212. homeassistant-stubs/components/mqtt/const.pyi +7 -1
  213. homeassistant-stubs/components/mqtt/number.pyi +1 -5
  214. homeassistant-stubs/components/mqtt/siren.pyi +1 -9
  215. homeassistant-stubs/components/music_assistant/const.pyi +4 -0
  216. homeassistant-stubs/components/music_assistant/media_player.pyi +1 -1
  217. homeassistant-stubs/components/music_assistant/schemas.pyi +2 -2
  218. homeassistant-stubs/components/nasweb/sensor.pyi +0 -5
  219. homeassistant-stubs/components/nasweb/switch.pyi +1 -0
  220. homeassistant-stubs/components/nextdns/config_flow.pyi +6 -1
  221. homeassistant-stubs/components/number/const.pyi +2 -1
  222. homeassistant-stubs/components/onedrive/backup.pyi +2 -1
  223. homeassistant-stubs/components/onewire/binary_sensor.pyi +5 -12
  224. homeassistant-stubs/components/onewire/const.pyi +0 -2
  225. homeassistant-stubs/components/onewire/diagnostics.pyi +2 -0
  226. homeassistant-stubs/components/onewire/entity.pyi +6 -14
  227. homeassistant-stubs/components/onewire/onewirehub.pyi +5 -5
  228. homeassistant-stubs/components/onewire/select.pyi +3 -10
  229. homeassistant-stubs/components/onewire/sensor.pyi +5 -7
  230. homeassistant-stubs/components/onewire/switch.pyi +7 -14
  231. homeassistant-stubs/components/onkyo/receiver.pyi +1 -1
  232. homeassistant-stubs/components/open_router/entity.pyi +4 -1
  233. homeassistant-stubs/components/openai_conversation/ai_task.pyi +1 -1
  234. homeassistant-stubs/components/openai_conversation/config_flow.pyi +1 -1
  235. homeassistant-stubs/components/openai_conversation/const.pyi +2 -0
  236. homeassistant-stubs/components/openai_conversation/entity.pyi +1 -1
  237. homeassistant-stubs/components/opower/coordinator.pyi +1 -0
  238. homeassistant-stubs/components/ping/__init__.pyi +1 -0
  239. homeassistant-stubs/components/ping/config_flow.pyi +1 -0
  240. homeassistant-stubs/components/ping/device_tracker.pyi +3 -2
  241. homeassistant-stubs/components/ping/entity.pyi +1 -0
  242. homeassistant-stubs/components/portainer/button.pyi +29 -0
  243. homeassistant-stubs/components/portainer/config_flow.pyi +4 -0
  244. homeassistant-stubs/components/portainer/const.pyi +1 -0
  245. homeassistant-stubs/components/portainer/coordinator.pyi +11 -2
  246. homeassistant-stubs/components/portainer/diagnostics.pyi +12 -0
  247. homeassistant-stubs/components/portainer/entity.pyi +2 -0
  248. homeassistant-stubs/components/portainer/sensor.pyi +41 -0
  249. homeassistant-stubs/components/portainer/switch.pyi +35 -0
  250. homeassistant-stubs/components/qbus/entity.pyi +1 -3
  251. homeassistant-stubs/components/raspberry_pi/hardware.pyi +1 -1
  252. homeassistant-stubs/components/recorder/const.pyi +1 -1
  253. homeassistant-stubs/components/recorder/core.pyi +3 -3
  254. homeassistant-stubs/components/recorder/db_schema.pyi +3 -10
  255. homeassistant-stubs/components/recorder/entity_registry.pyi +1 -0
  256. homeassistant-stubs/components/recorder/history/__init__.pyi +2 -2
  257. homeassistant-stubs/components/recorder/migration.pyi +4 -1
  258. homeassistant-stubs/components/recorder/models/statistics.pyi +1 -0
  259. homeassistant-stubs/components/recorder/statistics.pyi +17 -12
  260. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +0 -1
  261. homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +4 -2
  262. homeassistant-stubs/components/recorder/tasks.pyi +1 -0
  263. homeassistant-stubs/components/recorder/util.pyi +1 -1
  264. homeassistant-stubs/components/recorder/websocket_api.pyi +6 -4
  265. homeassistant-stubs/components/renault/sensor.pyi +1 -1
  266. homeassistant-stubs/components/reolink/__init__.pyi +1 -1
  267. homeassistant-stubs/components/reolink/binary_sensor.pyi +15 -0
  268. homeassistant-stubs/components/reolink/siren.pyi +2 -0
  269. homeassistant-stubs/components/reolink/switch.pyi +25 -7
  270. homeassistant-stubs/components/roborock/__init__.pyi +1 -1
  271. homeassistant-stubs/components/roborock/config_flow.pyi +1 -1
  272. homeassistant-stubs/components/roborock/coordinator.pyi +2 -1
  273. homeassistant-stubs/components/roborock/entity.pyi +1 -1
  274. homeassistant-stubs/components/roborock/models.pyi +1 -1
  275. homeassistant-stubs/components/scrape/coordinator.pyi +1 -2
  276. homeassistant-stubs/components/sensibo/__init__.pyi +6 -0
  277. homeassistant-stubs/components/sensibo/climate.pyi +3 -26
  278. homeassistant-stubs/components/sensibo/services.pyi +31 -0
  279. homeassistant-stubs/components/sensor/const.pyi +2 -1
  280. homeassistant-stubs/components/sensor/device_condition.pyi +1 -0
  281. homeassistant-stubs/components/sensor/device_trigger.pyi +1 -0
  282. homeassistant-stubs/components/sensor/recorder.pyi +6 -3
  283. homeassistant-stubs/components/sfr_box/__init__.pyi +4 -6
  284. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +5 -14
  285. homeassistant-stubs/components/sfr_box/button.pyi +4 -9
  286. homeassistant-stubs/components/sfr_box/config_flow.pyi +2 -1
  287. homeassistant-stubs/components/sfr_box/coordinator.pyi +13 -2
  288. homeassistant-stubs/components/sfr_box/diagnostics.pyi +2 -4
  289. homeassistant-stubs/components/sfr_box/entity.pyi +18 -0
  290. homeassistant-stubs/components/sfr_box/sensor.pyi +4 -13
  291. homeassistant-stubs/components/shelly/__init__.pyi +2 -2
  292. homeassistant-stubs/components/shelly/binary_sensor.pyi +6 -2
  293. homeassistant-stubs/components/shelly/button.pyi +26 -16
  294. homeassistant-stubs/components/shelly/climate.pyi +61 -7
  295. homeassistant-stubs/components/shelly/const.pyi +15 -3
  296. homeassistant-stubs/components/shelly/cover.pyi +31 -10
  297. homeassistant-stubs/components/shelly/entity.pyi +5 -4
  298. homeassistant-stubs/components/shelly/event.pyi +4 -0
  299. homeassistant-stubs/components/shelly/light.pyi +23 -7
  300. homeassistant-stubs/components/shelly/number.pyi +11 -2
  301. homeassistant-stubs/components/shelly/repairs.pyi +2 -2
  302. homeassistant-stubs/components/shelly/select.pyi +4 -1
  303. homeassistant-stubs/components/shelly/sensor.pyi +8 -7
  304. homeassistant-stubs/components/shelly/switch.pyi +7 -4
  305. homeassistant-stubs/components/shelly/text.pyi +4 -1
  306. homeassistant-stubs/components/shelly/update.pyi +4 -0
  307. homeassistant-stubs/components/shelly/utils.pyi +10 -5
  308. homeassistant-stubs/components/shelly/valve.pyi +34 -5
  309. homeassistant-stubs/components/sleep_as_android/event.pyi +1 -0
  310. homeassistant-stubs/components/sma/__init__.pyi +15 -0
  311. homeassistant-stubs/components/sma/config_flow.pyi +27 -0
  312. homeassistant-stubs/components/sma/const.pyi +11 -0
  313. homeassistant-stubs/components/sma/coordinator.pyi +28 -0
  314. homeassistant-stubs/components/sma/diagnostics.pyi +10 -0
  315. homeassistant-stubs/components/sma/sensor.pyi +33 -0
  316. homeassistant-stubs/components/sql/__init__.pyi +2 -4
  317. homeassistant-stubs/components/sql/sensor.pyi +6 -13
  318. homeassistant-stubs/components/sql/services.pyi +17 -0
  319. homeassistant-stubs/components/sql/util.pyi +16 -3
  320. homeassistant-stubs/components/squeezebox/__init__.pyi +4 -1
  321. homeassistant-stubs/components/squeezebox/browse_media.pyi +4 -3
  322. homeassistant-stubs/components/squeezebox/button.pyi +1 -0
  323. homeassistant-stubs/components/squeezebox/const.pyi +0 -1
  324. homeassistant-stubs/components/squeezebox/media_player.pyi +7 -2
  325. homeassistant-stubs/components/squeezebox/switch.pyi +1 -0
  326. homeassistant-stubs/components/squeezebox/util.pyi +6 -0
  327. homeassistant-stubs/components/suez_water/coordinator.pyi +2 -1
  328. homeassistant-stubs/components/sun/condition.pyi +10 -5
  329. homeassistant-stubs/components/switch_as_x/__init__.pyi +0 -1
  330. homeassistant-stubs/components/switch_as_x/config_flow.pyi +1 -0
  331. homeassistant-stubs/components/switchbot_cloud/climate.pyi +2 -0
  332. homeassistant-stubs/components/switchbot_cloud/lock.pyi +7 -2
  333. homeassistant-stubs/components/switchbot_cloud/sensor.pyi +25 -2
  334. homeassistant-stubs/components/switchbot_cloud/switch.pyi +13 -1
  335. homeassistant-stubs/components/switchbot_cloud/vacuum.pyi +4 -4
  336. homeassistant-stubs/components/switcher_kis/button.pyi +5 -6
  337. homeassistant-stubs/components/switcher_kis/climate.pyi +3 -3
  338. homeassistant-stubs/components/switcher_kis/const.pyi +1 -0
  339. homeassistant-stubs/components/switcher_kis/cover.pyi +4 -3
  340. homeassistant-stubs/components/switcher_kis/light.pyi +3 -2
  341. homeassistant-stubs/components/switcher_kis/sensor.pyi +4 -2
  342. homeassistant-stubs/components/switcher_kis/switch.pyi +3 -5
  343. homeassistant-stubs/components/systemmonitor/__init__.pyi +0 -1
  344. homeassistant-stubs/components/systemmonitor/config_flow.pyi +1 -0
  345. homeassistant-stubs/components/systemmonitor/coordinator.pyi +1 -0
  346. homeassistant-stubs/components/systemmonitor/sensor.pyi +3 -1
  347. homeassistant-stubs/components/telegram_bot/__init__.pyi +2 -1
  348. homeassistant-stubs/components/telegram_bot/bot.pyi +10 -5
  349. homeassistant-stubs/components/telegram_bot/const.pyi +9 -0
  350. homeassistant-stubs/components/telegram_bot/diagnostics.pyi +11 -0
  351. homeassistant-stubs/components/telegram_bot/entity.pyi +16 -0
  352. homeassistant-stubs/components/telegram_bot/event.pyi +18 -0
  353. homeassistant-stubs/components/telegram_bot/notify.pyi +6 -10
  354. homeassistant-stubs/components/tibber/coordinator.pyi +1 -0
  355. homeassistant-stubs/components/tod/__init__.pyi +0 -1
  356. homeassistant-stubs/components/tod/config_flow.pyi +1 -0
  357. homeassistant-stubs/components/tolo/__init__.pyi +3 -5
  358. homeassistant-stubs/components/tolo/binary_sensor.pyi +4 -6
  359. homeassistant-stubs/components/tolo/button.pyi +3 -5
  360. homeassistant-stubs/components/tolo/climate.pyi +3 -5
  361. homeassistant-stubs/components/tolo/coordinator.pyi +3 -2
  362. homeassistant-stubs/components/tolo/entity.pyi +2 -3
  363. homeassistant-stubs/components/tolo/fan.pyi +3 -5
  364. homeassistant-stubs/components/tolo/light.pyi +3 -5
  365. homeassistant-stubs/components/tolo/number.pyi +3 -5
  366. homeassistant-stubs/components/tolo/select.pyi +4 -5
  367. homeassistant-stubs/components/tolo/sensor.pyi +3 -5
  368. homeassistant-stubs/components/tolo/switch.pyi +3 -5
  369. homeassistant-stubs/components/trend/__init__.pyi +0 -1
  370. homeassistant-stubs/components/trend/config_flow.pyi +1 -0
  371. homeassistant-stubs/components/tts/__init__.pyi +2 -3
  372. homeassistant-stubs/components/unifi/light.pyi +44 -0
  373. homeassistant-stubs/components/uptimerobot/binary_sensor.pyi +2 -0
  374. homeassistant-stubs/components/uptimerobot/sensor.pyi +2 -0
  375. homeassistant-stubs/components/uptimerobot/switch.pyi +2 -0
  376. homeassistant-stubs/components/uptimerobot/utils.pyi +5 -0
  377. homeassistant-stubs/components/usb/__init__.pyi +2 -0
  378. homeassistant-stubs/components/usb/utils.pyi +7 -0
  379. homeassistant-stubs/components/vacuum/__init__.pyi +0 -15
  380. homeassistant-stubs/components/vivotek/__init__.pyi +0 -0
  381. homeassistant-stubs/components/vivotek/camera.pyi +35 -0
  382. homeassistant-stubs/components/vodafone_station/__init__.pyi +3 -1
  383. homeassistant-stubs/components/vodafone_station/config_flow.pyi +3 -2
  384. homeassistant-stubs/components/vodafone_station/const.pyi +3 -0
  385. homeassistant-stubs/components/vodafone_station/coordinator.pyi +4 -4
  386. homeassistant-stubs/components/volvo/__init__.pyi +2 -0
  387. homeassistant-stubs/components/volvo/binary_sensor.pyi +1 -3
  388. homeassistant-stubs/components/volvo/button.pyi +27 -0
  389. homeassistant-stubs/components/volvo/coordinator.pyi +12 -14
  390. homeassistant-stubs/components/volvo/device_tracker.pyi +23 -0
  391. homeassistant-stubs/components/volvo/diagnostics.pyi +12 -0
  392. homeassistant-stubs/components/volvo/entity.pyi +9 -5
  393. homeassistant-stubs/components/volvo/sensor.pyi +9 -8
  394. homeassistant-stubs/components/waqi/__init__.pyi +8 -0
  395. homeassistant-stubs/components/waqi/config_flow.pyi +14 -9
  396. homeassistant-stubs/components/waqi/const.pyi +1 -1
  397. homeassistant-stubs/components/waqi/coordinator.pyi +5 -4
  398. homeassistant-stubs/components/webostv/media_player.pyi +3 -0
  399. homeassistant-stubs/components/websocket_api/commands.pyi +2 -0
  400. homeassistant-stubs/components/wled/select.pyi +6 -3
  401. homeassistant-stubs/components/worldclock/__init__.pyi +0 -1
  402. homeassistant-stubs/components/worldclock/config_flow.pyi +1 -0
  403. homeassistant-stubs/components/zeroconf/__init__.pyi +3 -1
  404. homeassistant-stubs/components/zeroconf/discovery.pyi +8 -1
  405. homeassistant-stubs/components/zeroconf/repairs.pyi +13 -0
  406. homeassistant-stubs/components/zone/condition.pyi +10 -4
  407. homeassistant-stubs/components/zwave_js/config_flow.pyi +1 -0
  408. homeassistant-stubs/components/zwave_js/device_trigger.pyi +1 -1
  409. homeassistant-stubs/components/zwave_js/triggers/event.pyi +6 -8
  410. homeassistant-stubs/components/zwave_js/triggers/value_updated.pyi +6 -6
  411. homeassistant-stubs/config_entries.pyi +9 -0
  412. homeassistant-stubs/const.pyi +4 -21
  413. homeassistant-stubs/core.pyi +1 -7
  414. homeassistant-stubs/data_entry_flow.pyi +2 -0
  415. homeassistant-stubs/helpers/automation.pyi +6 -0
  416. homeassistant-stubs/helpers/condition.pyi +15 -5
  417. homeassistant-stubs/helpers/debounce.pyi +6 -1
  418. homeassistant-stubs/helpers/entity_platform.pyi +1 -1
  419. homeassistant-stubs/helpers/event.pyi +1 -1
  420. homeassistant-stubs/helpers/instance_id.pyi +1 -0
  421. homeassistant-stubs/helpers/llm.pyi +6 -1
  422. homeassistant-stubs/helpers/selector.pyi +5 -4
  423. homeassistant-stubs/helpers/service.pyi +4 -4
  424. homeassistant-stubs/helpers/template/__init__.pyi +0 -5
  425. homeassistant-stubs/helpers/trigger.pyi +18 -5
  426. homeassistant-stubs/helpers/update_coordinator.pyi +1 -0
  427. homeassistant-stubs/runner.pyi +1 -1
  428. homeassistant-stubs/util/async_iterator.pyi +33 -0
  429. homeassistant-stubs/util/unit_conversion.pyi +15 -0
  430. {homeassistant_stubs-2025.10.4.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/METADATA +2 -2
  431. {homeassistant_stubs-2025.10.4.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/RECORD +433 -397
  432. homeassistant-stubs/components/elevenlabs/__init__.pyi +0 -22
  433. homeassistant-stubs/components/elevenlabs/config_flow.pyi +0 -33
  434. homeassistant-stubs/components/elevenlabs/const.pyi +0 -14
  435. homeassistant-stubs/components/elevenlabs/tts.pyi +0 -36
  436. homeassistant-stubs/components/neato/__init__.pyi +0 -15
  437. homeassistant-stubs/components/neato/api.pyi +0 -17
  438. homeassistant-stubs/components/neato/application_credentials.pyi +0 -6
  439. homeassistant-stubs/components/neato/button.pyi +0 -18
  440. homeassistant-stubs/components/neato/camera.pyi +0 -34
  441. homeassistant-stubs/components/neato/config_flow.pyi +0 -15
  442. homeassistant-stubs/components/neato/const.pyi +0 -13
  443. homeassistant-stubs/components/neato/entity.pyi +0 -11
  444. homeassistant-stubs/components/neato/hub.pyi +0 -17
  445. homeassistant-stubs/components/neato/sensor.pyi +0 -30
  446. homeassistant-stubs/components/neato/switch.pyi +0 -34
  447. homeassistant-stubs/components/neato/vacuum.pyi +0 -70
  448. homeassistant-stubs/components/recorder/history/legacy.pyi +0 -48
  449. homeassistant-stubs/components/recorder/history/modern.pyi +0 -39
  450. homeassistant-stubs/components/recorder/models/legacy.pyi +0 -45
  451. homeassistant-stubs/components/sfr_box/models.pyi +0 -12
  452. {homeassistant_stubs-2025.10.4.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/WHEEL +0 -0
  453. {homeassistant_stubs-2025.10.4.dist-info → homeassistant_stubs-2025.11.0b0.dist-info}/licenses/LICENSE +0 -0
@@ -2,7 +2,7 @@ import asyncio
2
2
  import voluptuous as vol
3
3
  from .addon import get_addon_manager as get_addon_manager
4
4
  from .client import MqttClientSetup as MqttClientSetup
5
- from .const import ALARM_CONTROL_PANEL_SUPPORTED_FEATURES as ALARM_CONTROL_PANEL_SUPPORTED_FEATURES, ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONFIG_ENTRY_MINOR_VERSION as CONFIG_ENTRY_MINOR_VERSION, CONFIG_ENTRY_VERSION as CONFIG_ENTRY_VERSION, CONF_ACTION_TEMPLATE as CONF_ACTION_TEMPLATE, CONF_ACTION_TOPIC as CONF_ACTION_TOPIC, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BLUE_TEMPLATE as CONF_BLUE_TEMPLATE, CONF_BRIGHTNESS_COMMAND_TEMPLATE as CONF_BRIGHTNESS_COMMAND_TEMPLATE, CONF_BRIGHTNESS_COMMAND_TOPIC as CONF_BRIGHTNESS_COMMAND_TOPIC, CONF_BRIGHTNESS_SCALE as CONF_BRIGHTNESS_SCALE, CONF_BRIGHTNESS_STATE_TOPIC as CONF_BRIGHTNESS_STATE_TOPIC, CONF_BRIGHTNESS_TEMPLATE as CONF_BRIGHTNESS_TEMPLATE, CONF_BRIGHTNESS_VALUE_TEMPLATE as CONF_BRIGHTNESS_VALUE_TEMPLATE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_CODE_ARM_REQUIRED as CONF_CODE_ARM_REQUIRED, CONF_CODE_DISARM_REQUIRED as CONF_CODE_DISARM_REQUIRED, CONF_CODE_FORMAT as CONF_CODE_FORMAT, CONF_CODE_TRIGGER_REQUIRED as CONF_CODE_TRIGGER_REQUIRED, CONF_COLOR_MODE_STATE_TOPIC as CONF_COLOR_MODE_STATE_TOPIC, CONF_COLOR_MODE_VALUE_TEMPLATE as CONF_COLOR_MODE_VALUE_TEMPLATE, CONF_COLOR_TEMP_COMMAND_TEMPLATE as CONF_COLOR_TEMP_COMMAND_TEMPLATE, CONF_COLOR_TEMP_COMMAND_TOPIC as CONF_COLOR_TEMP_COMMAND_TOPIC, CONF_COLOR_TEMP_KELVIN as CONF_COLOR_TEMP_KELVIN, CONF_COLOR_TEMP_STATE_TOPIC as CONF_COLOR_TEMP_STATE_TOPIC, CONF_COLOR_TEMP_TEMPLATE as CONF_COLOR_TEMP_TEMPLATE, CONF_COLOR_TEMP_VALUE_TEMPLATE as CONF_COLOR_TEMP_VALUE_TEMPLATE, CONF_COMMAND_OFF_TEMPLATE as CONF_COMMAND_OFF_TEMPLATE, CONF_COMMAND_ON_TEMPLATE as CONF_COMMAND_ON_TEMPLATE, CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_CONTENT_TYPE as CONF_CONTENT_TYPE, CONF_CURRENT_HUMIDITY_TEMPLATE as CONF_CURRENT_HUMIDITY_TEMPLATE, CONF_CURRENT_HUMIDITY_TOPIC as CONF_CURRENT_HUMIDITY_TOPIC, CONF_CURRENT_TEMP_TEMPLATE as CONF_CURRENT_TEMP_TEMPLATE, CONF_CURRENT_TEMP_TOPIC as CONF_CURRENT_TEMP_TOPIC, CONF_DIRECTION_COMMAND_TEMPLATE as CONF_DIRECTION_COMMAND_TEMPLATE, CONF_DIRECTION_COMMAND_TOPIC as CONF_DIRECTION_COMMAND_TOPIC, CONF_DIRECTION_STATE_TOPIC as CONF_DIRECTION_STATE_TOPIC, CONF_DIRECTION_VALUE_TEMPLATE as CONF_DIRECTION_VALUE_TEMPLATE, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_EFFECT_COMMAND_TEMPLATE as CONF_EFFECT_COMMAND_TEMPLATE, CONF_EFFECT_COMMAND_TOPIC as CONF_EFFECT_COMMAND_TOPIC, CONF_EFFECT_LIST as CONF_EFFECT_LIST, CONF_EFFECT_STATE_TOPIC as CONF_EFFECT_STATE_TOPIC, CONF_EFFECT_TEMPLATE as CONF_EFFECT_TEMPLATE, CONF_EFFECT_VALUE_TEMPLATE as CONF_EFFECT_VALUE_TEMPLATE, CONF_ENTITY_PICTURE as CONF_ENTITY_PICTURE, CONF_EXPIRE_AFTER as CONF_EXPIRE_AFTER, CONF_FAN_MODE_COMMAND_TEMPLATE as CONF_FAN_MODE_COMMAND_TEMPLATE, CONF_FAN_MODE_COMMAND_TOPIC as CONF_FAN_MODE_COMMAND_TOPIC, CONF_FAN_MODE_LIST as CONF_FAN_MODE_LIST, CONF_FAN_MODE_STATE_TEMPLATE as CONF_FAN_MODE_STATE_TEMPLATE, CONF_FAN_MODE_STATE_TOPIC as CONF_FAN_MODE_STATE_TOPIC, CONF_FLASH as CONF_FLASH, CONF_FLASH_TIME_LONG as CONF_FLASH_TIME_LONG, CONF_FLASH_TIME_SHORT as CONF_FLASH_TIME_SHORT, CONF_GET_POSITION_TEMPLATE as CONF_GET_POSITION_TEMPLATE, CONF_GET_POSITION_TOPIC as CONF_GET_POSITION_TOPIC, CONF_GREEN_TEMPLATE as CONF_GREEN_TEMPLATE, CONF_HS_COMMAND_TEMPLATE as CONF_HS_COMMAND_TEMPLATE, CONF_HS_COMMAND_TOPIC as CONF_HS_COMMAND_TOPIC, CONF_HS_STATE_TOPIC as CONF_HS_STATE_TOPIC, CONF_HS_VALUE_TEMPLATE as CONF_HS_VALUE_TEMPLATE, CONF_HUMIDITY_COMMAND_TEMPLATE as CONF_HUMIDITY_COMMAND_TEMPLATE, CONF_HUMIDITY_COMMAND_TOPIC as CONF_HUMIDITY_COMMAND_TOPIC, CONF_HUMIDITY_MAX as CONF_HUMIDITY_MAX, CONF_HUMIDITY_MIN as CONF_HUMIDITY_MIN, CONF_HUMIDITY_STATE_TEMPLATE as CONF_HUMIDITY_STATE_TEMPLATE, CONF_HUMIDITY_STATE_TOPIC as CONF_HUMIDITY_STATE_TOPIC, CONF_IMAGE_ENCODING as CONF_IMAGE_ENCODING, CONF_IMAGE_TOPIC as CONF_IMAGE_TOPIC, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_LAST_RESET_VALUE_TEMPLATE as CONF_LAST_RESET_VALUE_TEMPLATE, CONF_MAX_KELVIN as CONF_MAX_KELVIN, CONF_MIN_KELVIN as CONF_MIN_KELVIN, 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_OFF_DELAY as CONF_OFF_DELAY, CONF_ON_COMMAND_TYPE as CONF_ON_COMMAND_TYPE, CONF_OPTIONS as CONF_OPTIONS, CONF_OSCILLATION_COMMAND_TEMPLATE as CONF_OSCILLATION_COMMAND_TEMPLATE, CONF_OSCILLATION_COMMAND_TOPIC as CONF_OSCILLATION_COMMAND_TOPIC, CONF_OSCILLATION_STATE_TOPIC as CONF_OSCILLATION_STATE_TOPIC, CONF_OSCILLATION_VALUE_TEMPLATE as CONF_OSCILLATION_VALUE_TEMPLATE, CONF_PAYLOAD_ARM_AWAY as CONF_PAYLOAD_ARM_AWAY, CONF_PAYLOAD_ARM_CUSTOM_BYPASS as CONF_PAYLOAD_ARM_CUSTOM_BYPASS, CONF_PAYLOAD_ARM_HOME as CONF_PAYLOAD_ARM_HOME, CONF_PAYLOAD_ARM_NIGHT as CONF_PAYLOAD_ARM_NIGHT, CONF_PAYLOAD_ARM_VACATION as CONF_PAYLOAD_ARM_VACATION, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_CLOSE as CONF_PAYLOAD_CLOSE, CONF_PAYLOAD_LOCK as CONF_PAYLOAD_LOCK, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_PAYLOAD_OPEN as CONF_PAYLOAD_OPEN, CONF_PAYLOAD_OSCILLATION_OFF as CONF_PAYLOAD_OSCILLATION_OFF, CONF_PAYLOAD_OSCILLATION_ON as CONF_PAYLOAD_OSCILLATION_ON, CONF_PAYLOAD_PRESS as CONF_PAYLOAD_PRESS, CONF_PAYLOAD_RESET as CONF_PAYLOAD_RESET, CONF_PAYLOAD_RESET_PERCENTAGE as CONF_PAYLOAD_RESET_PERCENTAGE, CONF_PAYLOAD_RESET_PRESET_MODE as CONF_PAYLOAD_RESET_PRESET_MODE, CONF_PAYLOAD_STOP as CONF_PAYLOAD_STOP, CONF_PAYLOAD_STOP_TILT as CONF_PAYLOAD_STOP_TILT, CONF_PAYLOAD_TRIGGER as CONF_PAYLOAD_TRIGGER, CONF_PAYLOAD_UNLOCK as CONF_PAYLOAD_UNLOCK, CONF_PERCENTAGE_COMMAND_TEMPLATE as CONF_PERCENTAGE_COMMAND_TEMPLATE, CONF_PERCENTAGE_COMMAND_TOPIC as CONF_PERCENTAGE_COMMAND_TOPIC, CONF_PERCENTAGE_STATE_TOPIC as CONF_PERCENTAGE_STATE_TOPIC, CONF_PERCENTAGE_VALUE_TEMPLATE as CONF_PERCENTAGE_VALUE_TEMPLATE, CONF_POSITION_CLOSED as CONF_POSITION_CLOSED, CONF_POSITION_OPEN as CONF_POSITION_OPEN, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_PRESET_MODES_LIST as CONF_PRESET_MODES_LIST, CONF_PRESET_MODE_COMMAND_TEMPLATE as CONF_PRESET_MODE_COMMAND_TEMPLATE, CONF_PRESET_MODE_COMMAND_TOPIC as CONF_PRESET_MODE_COMMAND_TOPIC, CONF_PRESET_MODE_STATE_TOPIC as CONF_PRESET_MODE_STATE_TOPIC, CONF_PRESET_MODE_VALUE_TEMPLATE as CONF_PRESET_MODE_VALUE_TEMPLATE, CONF_QOS as CONF_QOS, CONF_RED_TEMPLATE as CONF_RED_TEMPLATE, CONF_RETAIN as CONF_RETAIN, CONF_RGBWW_COMMAND_TEMPLATE as CONF_RGBWW_COMMAND_TEMPLATE, CONF_RGBWW_COMMAND_TOPIC as CONF_RGBWW_COMMAND_TOPIC, CONF_RGBWW_STATE_TOPIC as CONF_RGBWW_STATE_TOPIC, CONF_RGBWW_VALUE_TEMPLATE as CONF_RGBWW_VALUE_TEMPLATE, CONF_RGBW_COMMAND_TEMPLATE as CONF_RGBW_COMMAND_TEMPLATE, CONF_RGBW_COMMAND_TOPIC as CONF_RGBW_COMMAND_TOPIC, CONF_RGBW_STATE_TOPIC as CONF_RGBW_STATE_TOPIC, CONF_RGBW_VALUE_TEMPLATE as CONF_RGBW_VALUE_TEMPLATE, CONF_RGB_COMMAND_TEMPLATE as CONF_RGB_COMMAND_TEMPLATE, CONF_RGB_COMMAND_TOPIC as CONF_RGB_COMMAND_TOPIC, CONF_RGB_STATE_TOPIC as CONF_RGB_STATE_TOPIC, CONF_RGB_VALUE_TEMPLATE as CONF_RGB_VALUE_TEMPLATE, CONF_SCHEMA as CONF_SCHEMA, CONF_SET_POSITION_TEMPLATE as CONF_SET_POSITION_TEMPLATE, CONF_SET_POSITION_TOPIC as CONF_SET_POSITION_TOPIC, CONF_SPEED_RANGE_MAX as CONF_SPEED_RANGE_MAX, CONF_SPEED_RANGE_MIN as CONF_SPEED_RANGE_MIN, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, CONF_STATE_JAMMED as CONF_STATE_JAMMED, CONF_STATE_LOCKED as CONF_STATE_LOCKED, CONF_STATE_LOCKING as CONF_STATE_LOCKING, CONF_STATE_OFF as CONF_STATE_OFF, CONF_STATE_ON as CONF_STATE_ON, CONF_STATE_OPEN as CONF_STATE_OPEN, CONF_STATE_OPENING as CONF_STATE_OPENING, CONF_STATE_STOPPED as CONF_STATE_STOPPED, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_STATE_UNLOCKED as CONF_STATE_UNLOCKED, CONF_STATE_UNLOCKING as CONF_STATE_UNLOCKING, CONF_STATE_VALUE_TEMPLATE as CONF_STATE_VALUE_TEMPLATE, CONF_SUGGESTED_DISPLAY_PRECISION as CONF_SUGGESTED_DISPLAY_PRECISION, CONF_SUPPORTED_COLOR_MODES as CONF_SUPPORTED_COLOR_MODES, CONF_SUPPORTED_FEATURES as CONF_SUPPORTED_FEATURES, CONF_SWING_HORIZONTAL_MODE_COMMAND_TEMPLATE as CONF_SWING_HORIZONTAL_MODE_COMMAND_TEMPLATE, CONF_SWING_HORIZONTAL_MODE_COMMAND_TOPIC as CONF_SWING_HORIZONTAL_MODE_COMMAND_TOPIC, CONF_SWING_HORIZONTAL_MODE_LIST as CONF_SWING_HORIZONTAL_MODE_LIST, CONF_SWING_HORIZONTAL_MODE_STATE_TEMPLATE as CONF_SWING_HORIZONTAL_MODE_STATE_TEMPLATE, CONF_SWING_HORIZONTAL_MODE_STATE_TOPIC as CONF_SWING_HORIZONTAL_MODE_STATE_TOPIC, CONF_SWING_MODE_COMMAND_TEMPLATE as CONF_SWING_MODE_COMMAND_TEMPLATE, CONF_SWING_MODE_COMMAND_TOPIC as CONF_SWING_MODE_COMMAND_TOPIC, CONF_SWING_MODE_LIST as CONF_SWING_MODE_LIST, CONF_SWING_MODE_STATE_TEMPLATE as CONF_SWING_MODE_STATE_TEMPLATE, CONF_SWING_MODE_STATE_TOPIC as CONF_SWING_MODE_STATE_TOPIC, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_HIGH_COMMAND_TEMPLATE as CONF_TEMP_HIGH_COMMAND_TEMPLATE, CONF_TEMP_HIGH_COMMAND_TOPIC as CONF_TEMP_HIGH_COMMAND_TOPIC, CONF_TEMP_HIGH_STATE_TEMPLATE as CONF_TEMP_HIGH_STATE_TEMPLATE, CONF_TEMP_HIGH_STATE_TOPIC as CONF_TEMP_HIGH_STATE_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_LOW_COMMAND_TEMPLATE as CONF_TEMP_LOW_COMMAND_TEMPLATE, CONF_TEMP_LOW_COMMAND_TOPIC as CONF_TEMP_LOW_COMMAND_TOPIC, CONF_TEMP_LOW_STATE_TEMPLATE as CONF_TEMP_LOW_STATE_TEMPLATE, CONF_TEMP_LOW_STATE_TOPIC as CONF_TEMP_LOW_STATE_TOPIC, 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, CONF_TEMP_STEP as CONF_TEMP_STEP, CONF_TILT_CLOSED_POSITION as CONF_TILT_CLOSED_POSITION, CONF_TILT_COMMAND_TEMPLATE as CONF_TILT_COMMAND_TEMPLATE, CONF_TILT_COMMAND_TOPIC as CONF_TILT_COMMAND_TOPIC, CONF_TILT_MAX as CONF_TILT_MAX, CONF_TILT_MIN as CONF_TILT_MIN, CONF_TILT_OPEN_POSITION as CONF_TILT_OPEN_POSITION, CONF_TILT_STATE_OPTIMISTIC as CONF_TILT_STATE_OPTIMISTIC, CONF_TILT_STATUS_TEMPLATE as CONF_TILT_STATUS_TEMPLATE, CONF_TILT_STATUS_TOPIC as CONF_TILT_STATUS_TOPIC, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TRANSITION as CONF_TRANSITION, CONF_TRANSPORT as CONF_TRANSPORT, CONF_URL_TEMPLATE as CONF_URL_TEMPLATE, CONF_URL_TOPIC as CONF_URL_TOPIC, CONF_WHITE_COMMAND_TOPIC as CONF_WHITE_COMMAND_TOPIC, CONF_WHITE_SCALE as CONF_WHITE_SCALE, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, CONF_XY_COMMAND_TEMPLATE as CONF_XY_COMMAND_TEMPLATE, CONF_XY_COMMAND_TOPIC as CONF_XY_COMMAND_TOPIC, CONF_XY_STATE_TOPIC as CONF_XY_STATE_TOPIC, CONF_XY_VALUE_TEMPLATE as CONF_XY_VALUE_TEMPLATE, DEFAULT_ALARM_CONTROL_PANEL_COMMAND_TEMPLATE as DEFAULT_ALARM_CONTROL_PANEL_COMMAND_TEMPLATE, DEFAULT_BIRTH as DEFAULT_BIRTH, DEFAULT_CLIMATE_INITIAL_TEMPERATURE as DEFAULT_CLIMATE_INITIAL_TEMPERATURE, DEFAULT_DISCOVERY as DEFAULT_DISCOVERY, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_KEEPALIVE as DEFAULT_KEEPALIVE, DEFAULT_ON_COMMAND_TYPE as DEFAULT_ON_COMMAND_TYPE, DEFAULT_PAYLOAD_ARM_AWAY as DEFAULT_PAYLOAD_ARM_AWAY, DEFAULT_PAYLOAD_ARM_CUSTOM_BYPASS as DEFAULT_PAYLOAD_ARM_CUSTOM_BYPASS, DEFAULT_PAYLOAD_ARM_HOME as DEFAULT_PAYLOAD_ARM_HOME, DEFAULT_PAYLOAD_ARM_NIGHT as DEFAULT_PAYLOAD_ARM_NIGHT, DEFAULT_PAYLOAD_ARM_VACATION as DEFAULT_PAYLOAD_ARM_VACATION, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_CLOSE as DEFAULT_PAYLOAD_CLOSE, DEFAULT_PAYLOAD_LOCK as DEFAULT_PAYLOAD_LOCK, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE, DEFAULT_PAYLOAD_OFF as DEFAULT_PAYLOAD_OFF, DEFAULT_PAYLOAD_ON as DEFAULT_PAYLOAD_ON, DEFAULT_PAYLOAD_OPEN as DEFAULT_PAYLOAD_OPEN, DEFAULT_PAYLOAD_OSCILLATE_OFF as DEFAULT_PAYLOAD_OSCILLATE_OFF, DEFAULT_PAYLOAD_OSCILLATE_ON as DEFAULT_PAYLOAD_OSCILLATE_ON, DEFAULT_PAYLOAD_PRESS as DEFAULT_PAYLOAD_PRESS, DEFAULT_PAYLOAD_RESET as DEFAULT_PAYLOAD_RESET, DEFAULT_PAYLOAD_STOP as DEFAULT_PAYLOAD_STOP, DEFAULT_PAYLOAD_TRIGGER as DEFAULT_PAYLOAD_TRIGGER, DEFAULT_PAYLOAD_UNLOCK as DEFAULT_PAYLOAD_UNLOCK, DEFAULT_PORT as DEFAULT_PORT, DEFAULT_POSITION_CLOSED as DEFAULT_POSITION_CLOSED, DEFAULT_POSITION_OPEN as DEFAULT_POSITION_OPEN, DEFAULT_PREFIX as DEFAULT_PREFIX, DEFAULT_PROTOCOL as DEFAULT_PROTOCOL, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_SPEED_RANGE_MAX as DEFAULT_SPEED_RANGE_MAX, DEFAULT_SPEED_RANGE_MIN as DEFAULT_SPEED_RANGE_MIN, DEFAULT_STATE_JAMMED as DEFAULT_STATE_JAMMED, DEFAULT_STATE_LOCKED as DEFAULT_STATE_LOCKED, DEFAULT_STATE_LOCKING as DEFAULT_STATE_LOCKING, DEFAULT_STATE_STOPPED as DEFAULT_STATE_STOPPED, DEFAULT_STATE_UNLOCKED as DEFAULT_STATE_UNLOCKED, DEFAULT_STATE_UNLOCKING as DEFAULT_STATE_UNLOCKING, DEFAULT_TILT_CLOSED_POSITION as DEFAULT_TILT_CLOSED_POSITION, DEFAULT_TILT_MAX as DEFAULT_TILT_MAX, DEFAULT_TILT_MIN as DEFAULT_TILT_MIN, DEFAULT_TILT_OPEN_POSITION as DEFAULT_TILT_OPEN_POSITION, DEFAULT_TRANSPORT as DEFAULT_TRANSPORT, DEFAULT_WILL as DEFAULT_WILL, DEFAULT_WS_PATH as DEFAULT_WS_PATH, DOMAIN as DOMAIN, Platform as Platform, REMOTE_CODE as REMOTE_CODE, REMOTE_CODE_TEXT as REMOTE_CODE_TEXT, SUPPORTED_PROTOCOLS as SUPPORTED_PROTOCOLS, TRANSPORT_TCP as TRANSPORT_TCP, TRANSPORT_WEBSOCKETS as TRANSPORT_WEBSOCKETS, VALUES_ON_COMMAND_TYPE as VALUES_ON_COMMAND_TYPE
5
+ from .const import ALARM_CONTROL_PANEL_SUPPORTED_FEATURES as ALARM_CONTROL_PANEL_SUPPORTED_FEATURES, ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONFIG_ENTRY_MINOR_VERSION as CONFIG_ENTRY_MINOR_VERSION, CONFIG_ENTRY_VERSION as CONFIG_ENTRY_VERSION, CONF_ACTION_TEMPLATE as CONF_ACTION_TEMPLATE, CONF_ACTION_TOPIC as CONF_ACTION_TOPIC, CONF_AVAILABILITY_TEMPLATE as CONF_AVAILABILITY_TEMPLATE, CONF_AVAILABILITY_TOPIC as CONF_AVAILABILITY_TOPIC, CONF_AVAILABLE_TONES as CONF_AVAILABLE_TONES, CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BLUE_TEMPLATE as CONF_BLUE_TEMPLATE, CONF_BRIGHTNESS_COMMAND_TEMPLATE as CONF_BRIGHTNESS_COMMAND_TEMPLATE, CONF_BRIGHTNESS_COMMAND_TOPIC as CONF_BRIGHTNESS_COMMAND_TOPIC, CONF_BRIGHTNESS_SCALE as CONF_BRIGHTNESS_SCALE, CONF_BRIGHTNESS_STATE_TOPIC as CONF_BRIGHTNESS_STATE_TOPIC, CONF_BRIGHTNESS_TEMPLATE as CONF_BRIGHTNESS_TEMPLATE, CONF_BRIGHTNESS_VALUE_TEMPLATE as CONF_BRIGHTNESS_VALUE_TEMPLATE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_CODE_ARM_REQUIRED as CONF_CODE_ARM_REQUIRED, CONF_CODE_DISARM_REQUIRED as CONF_CODE_DISARM_REQUIRED, CONF_CODE_FORMAT as CONF_CODE_FORMAT, CONF_CODE_TRIGGER_REQUIRED as CONF_CODE_TRIGGER_REQUIRED, CONF_COLOR_MODE_STATE_TOPIC as CONF_COLOR_MODE_STATE_TOPIC, CONF_COLOR_MODE_VALUE_TEMPLATE as CONF_COLOR_MODE_VALUE_TEMPLATE, CONF_COLOR_TEMP_COMMAND_TEMPLATE as CONF_COLOR_TEMP_COMMAND_TEMPLATE, CONF_COLOR_TEMP_COMMAND_TOPIC as CONF_COLOR_TEMP_COMMAND_TOPIC, CONF_COLOR_TEMP_KELVIN as CONF_COLOR_TEMP_KELVIN, CONF_COLOR_TEMP_STATE_TOPIC as CONF_COLOR_TEMP_STATE_TOPIC, CONF_COLOR_TEMP_TEMPLATE as CONF_COLOR_TEMP_TEMPLATE, CONF_COLOR_TEMP_VALUE_TEMPLATE as CONF_COLOR_TEMP_VALUE_TEMPLATE, CONF_COMMAND_OFF_TEMPLATE as CONF_COMMAND_OFF_TEMPLATE, CONF_COMMAND_ON_TEMPLATE as CONF_COMMAND_ON_TEMPLATE, CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_CONTENT_TYPE as CONF_CONTENT_TYPE, CONF_CURRENT_HUMIDITY_TEMPLATE as CONF_CURRENT_HUMIDITY_TEMPLATE, CONF_CURRENT_HUMIDITY_TOPIC as CONF_CURRENT_HUMIDITY_TOPIC, CONF_CURRENT_TEMP_TEMPLATE as CONF_CURRENT_TEMP_TEMPLATE, CONF_CURRENT_TEMP_TOPIC as CONF_CURRENT_TEMP_TOPIC, CONF_DIRECTION_COMMAND_TEMPLATE as CONF_DIRECTION_COMMAND_TEMPLATE, CONF_DIRECTION_COMMAND_TOPIC as CONF_DIRECTION_COMMAND_TOPIC, CONF_DIRECTION_STATE_TOPIC as CONF_DIRECTION_STATE_TOPIC, CONF_DIRECTION_VALUE_TEMPLATE as CONF_DIRECTION_VALUE_TEMPLATE, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_EFFECT_COMMAND_TEMPLATE as CONF_EFFECT_COMMAND_TEMPLATE, CONF_EFFECT_COMMAND_TOPIC as CONF_EFFECT_COMMAND_TOPIC, CONF_EFFECT_LIST as CONF_EFFECT_LIST, CONF_EFFECT_STATE_TOPIC as CONF_EFFECT_STATE_TOPIC, CONF_EFFECT_TEMPLATE as CONF_EFFECT_TEMPLATE, CONF_EFFECT_VALUE_TEMPLATE as CONF_EFFECT_VALUE_TEMPLATE, CONF_ENTITY_PICTURE as CONF_ENTITY_PICTURE, CONF_EXPIRE_AFTER as CONF_EXPIRE_AFTER, CONF_FAN_MODE_COMMAND_TEMPLATE as CONF_FAN_MODE_COMMAND_TEMPLATE, CONF_FAN_MODE_COMMAND_TOPIC as CONF_FAN_MODE_COMMAND_TOPIC, CONF_FAN_MODE_LIST as CONF_FAN_MODE_LIST, CONF_FAN_MODE_STATE_TEMPLATE as CONF_FAN_MODE_STATE_TEMPLATE, CONF_FAN_MODE_STATE_TOPIC as CONF_FAN_MODE_STATE_TOPIC, CONF_FLASH as CONF_FLASH, CONF_FLASH_TIME_LONG as CONF_FLASH_TIME_LONG, CONF_FLASH_TIME_SHORT as CONF_FLASH_TIME_SHORT, CONF_GET_POSITION_TEMPLATE as CONF_GET_POSITION_TEMPLATE, CONF_GET_POSITION_TOPIC as CONF_GET_POSITION_TOPIC, CONF_GREEN_TEMPLATE as CONF_GREEN_TEMPLATE, CONF_HS_COMMAND_TEMPLATE as CONF_HS_COMMAND_TEMPLATE, CONF_HS_COMMAND_TOPIC as CONF_HS_COMMAND_TOPIC, CONF_HS_STATE_TOPIC as CONF_HS_STATE_TOPIC, CONF_HS_VALUE_TEMPLATE as CONF_HS_VALUE_TEMPLATE, CONF_HUMIDITY_COMMAND_TEMPLATE as CONF_HUMIDITY_COMMAND_TEMPLATE, CONF_HUMIDITY_COMMAND_TOPIC as CONF_HUMIDITY_COMMAND_TOPIC, CONF_HUMIDITY_MAX as CONF_HUMIDITY_MAX, CONF_HUMIDITY_MIN as CONF_HUMIDITY_MIN, CONF_HUMIDITY_STATE_TEMPLATE as CONF_HUMIDITY_STATE_TEMPLATE, CONF_HUMIDITY_STATE_TOPIC as CONF_HUMIDITY_STATE_TOPIC, CONF_IMAGE_ENCODING as CONF_IMAGE_ENCODING, CONF_IMAGE_TOPIC as CONF_IMAGE_TOPIC, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_LAST_RESET_VALUE_TEMPLATE as CONF_LAST_RESET_VALUE_TEMPLATE, CONF_MAX as CONF_MAX, CONF_MAX_KELVIN as CONF_MAX_KELVIN, CONF_MIN as CONF_MIN, CONF_MIN_KELVIN as CONF_MIN_KELVIN, 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_OFF_DELAY as CONF_OFF_DELAY, CONF_ON_COMMAND_TYPE as CONF_ON_COMMAND_TYPE, CONF_OPTIONS as CONF_OPTIONS, CONF_OSCILLATION_COMMAND_TEMPLATE as CONF_OSCILLATION_COMMAND_TEMPLATE, CONF_OSCILLATION_COMMAND_TOPIC as CONF_OSCILLATION_COMMAND_TOPIC, CONF_OSCILLATION_STATE_TOPIC as CONF_OSCILLATION_STATE_TOPIC, CONF_OSCILLATION_VALUE_TEMPLATE as CONF_OSCILLATION_VALUE_TEMPLATE, CONF_PAYLOAD_ARM_AWAY as CONF_PAYLOAD_ARM_AWAY, CONF_PAYLOAD_ARM_CUSTOM_BYPASS as CONF_PAYLOAD_ARM_CUSTOM_BYPASS, CONF_PAYLOAD_ARM_HOME as CONF_PAYLOAD_ARM_HOME, CONF_PAYLOAD_ARM_NIGHT as CONF_PAYLOAD_ARM_NIGHT, CONF_PAYLOAD_ARM_VACATION as CONF_PAYLOAD_ARM_VACATION, CONF_PAYLOAD_AVAILABLE as CONF_PAYLOAD_AVAILABLE, CONF_PAYLOAD_CLOSE as CONF_PAYLOAD_CLOSE, CONF_PAYLOAD_LOCK as CONF_PAYLOAD_LOCK, CONF_PAYLOAD_NOT_AVAILABLE as CONF_PAYLOAD_NOT_AVAILABLE, CONF_PAYLOAD_OPEN as CONF_PAYLOAD_OPEN, CONF_PAYLOAD_OSCILLATION_OFF as CONF_PAYLOAD_OSCILLATION_OFF, CONF_PAYLOAD_OSCILLATION_ON as CONF_PAYLOAD_OSCILLATION_ON, CONF_PAYLOAD_PRESS as CONF_PAYLOAD_PRESS, CONF_PAYLOAD_RESET as CONF_PAYLOAD_RESET, CONF_PAYLOAD_RESET_PERCENTAGE as CONF_PAYLOAD_RESET_PERCENTAGE, CONF_PAYLOAD_RESET_PRESET_MODE as CONF_PAYLOAD_RESET_PRESET_MODE, CONF_PAYLOAD_STOP as CONF_PAYLOAD_STOP, CONF_PAYLOAD_STOP_TILT as CONF_PAYLOAD_STOP_TILT, CONF_PAYLOAD_TRIGGER as CONF_PAYLOAD_TRIGGER, CONF_PAYLOAD_UNLOCK as CONF_PAYLOAD_UNLOCK, CONF_PERCENTAGE_COMMAND_TEMPLATE as CONF_PERCENTAGE_COMMAND_TEMPLATE, CONF_PERCENTAGE_COMMAND_TOPIC as CONF_PERCENTAGE_COMMAND_TOPIC, CONF_PERCENTAGE_STATE_TOPIC as CONF_PERCENTAGE_STATE_TOPIC, CONF_PERCENTAGE_VALUE_TEMPLATE as CONF_PERCENTAGE_VALUE_TEMPLATE, CONF_POSITION_CLOSED as CONF_POSITION_CLOSED, CONF_POSITION_OPEN as CONF_POSITION_OPEN, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_PRESET_MODES_LIST as CONF_PRESET_MODES_LIST, CONF_PRESET_MODE_COMMAND_TEMPLATE as CONF_PRESET_MODE_COMMAND_TEMPLATE, CONF_PRESET_MODE_COMMAND_TOPIC as CONF_PRESET_MODE_COMMAND_TOPIC, CONF_PRESET_MODE_STATE_TOPIC as CONF_PRESET_MODE_STATE_TOPIC, CONF_PRESET_MODE_VALUE_TEMPLATE as CONF_PRESET_MODE_VALUE_TEMPLATE, CONF_QOS as CONF_QOS, CONF_RED_TEMPLATE as CONF_RED_TEMPLATE, CONF_RETAIN as CONF_RETAIN, CONF_RGBWW_COMMAND_TEMPLATE as CONF_RGBWW_COMMAND_TEMPLATE, CONF_RGBWW_COMMAND_TOPIC as CONF_RGBWW_COMMAND_TOPIC, CONF_RGBWW_STATE_TOPIC as CONF_RGBWW_STATE_TOPIC, CONF_RGBWW_VALUE_TEMPLATE as CONF_RGBWW_VALUE_TEMPLATE, CONF_RGBW_COMMAND_TEMPLATE as CONF_RGBW_COMMAND_TEMPLATE, CONF_RGBW_COMMAND_TOPIC as CONF_RGBW_COMMAND_TOPIC, CONF_RGBW_STATE_TOPIC as CONF_RGBW_STATE_TOPIC, CONF_RGBW_VALUE_TEMPLATE as CONF_RGBW_VALUE_TEMPLATE, CONF_RGB_COMMAND_TEMPLATE as CONF_RGB_COMMAND_TEMPLATE, CONF_RGB_COMMAND_TOPIC as CONF_RGB_COMMAND_TOPIC, CONF_RGB_STATE_TOPIC as CONF_RGB_STATE_TOPIC, CONF_RGB_VALUE_TEMPLATE as CONF_RGB_VALUE_TEMPLATE, CONF_SCHEMA as CONF_SCHEMA, CONF_SET_POSITION_TEMPLATE as CONF_SET_POSITION_TEMPLATE, CONF_SET_POSITION_TOPIC as CONF_SET_POSITION_TOPIC, CONF_SPEED_RANGE_MAX as CONF_SPEED_RANGE_MAX, CONF_SPEED_RANGE_MIN as CONF_SPEED_RANGE_MIN, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, CONF_STATE_JAMMED as CONF_STATE_JAMMED, CONF_STATE_LOCKED as CONF_STATE_LOCKED, CONF_STATE_LOCKING as CONF_STATE_LOCKING, CONF_STATE_OFF as CONF_STATE_OFF, CONF_STATE_ON as CONF_STATE_ON, CONF_STATE_OPEN as CONF_STATE_OPEN, CONF_STATE_OPENING as CONF_STATE_OPENING, CONF_STATE_STOPPED as CONF_STATE_STOPPED, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_STATE_UNLOCKED as CONF_STATE_UNLOCKED, CONF_STATE_UNLOCKING as CONF_STATE_UNLOCKING, CONF_STATE_VALUE_TEMPLATE as CONF_STATE_VALUE_TEMPLATE, CONF_STEP as CONF_STEP, CONF_SUGGESTED_DISPLAY_PRECISION as CONF_SUGGESTED_DISPLAY_PRECISION, CONF_SUPPORTED_COLOR_MODES as CONF_SUPPORTED_COLOR_MODES, CONF_SUPPORTED_FEATURES as CONF_SUPPORTED_FEATURES, CONF_SUPPORT_DURATION as CONF_SUPPORT_DURATION, CONF_SUPPORT_VOLUME_SET as CONF_SUPPORT_VOLUME_SET, CONF_SWING_HORIZONTAL_MODE_COMMAND_TEMPLATE as CONF_SWING_HORIZONTAL_MODE_COMMAND_TEMPLATE, CONF_SWING_HORIZONTAL_MODE_COMMAND_TOPIC as CONF_SWING_HORIZONTAL_MODE_COMMAND_TOPIC, CONF_SWING_HORIZONTAL_MODE_LIST as CONF_SWING_HORIZONTAL_MODE_LIST, CONF_SWING_HORIZONTAL_MODE_STATE_TEMPLATE as CONF_SWING_HORIZONTAL_MODE_STATE_TEMPLATE, CONF_SWING_HORIZONTAL_MODE_STATE_TOPIC as CONF_SWING_HORIZONTAL_MODE_STATE_TOPIC, CONF_SWING_MODE_COMMAND_TEMPLATE as CONF_SWING_MODE_COMMAND_TEMPLATE, CONF_SWING_MODE_COMMAND_TOPIC as CONF_SWING_MODE_COMMAND_TOPIC, CONF_SWING_MODE_LIST as CONF_SWING_MODE_LIST, CONF_SWING_MODE_STATE_TEMPLATE as CONF_SWING_MODE_STATE_TEMPLATE, CONF_SWING_MODE_STATE_TOPIC as CONF_SWING_MODE_STATE_TOPIC, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_HIGH_COMMAND_TEMPLATE as CONF_TEMP_HIGH_COMMAND_TEMPLATE, CONF_TEMP_HIGH_COMMAND_TOPIC as CONF_TEMP_HIGH_COMMAND_TOPIC, CONF_TEMP_HIGH_STATE_TEMPLATE as CONF_TEMP_HIGH_STATE_TEMPLATE, CONF_TEMP_HIGH_STATE_TOPIC as CONF_TEMP_HIGH_STATE_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_LOW_COMMAND_TEMPLATE as CONF_TEMP_LOW_COMMAND_TEMPLATE, CONF_TEMP_LOW_COMMAND_TOPIC as CONF_TEMP_LOW_COMMAND_TOPIC, CONF_TEMP_LOW_STATE_TEMPLATE as CONF_TEMP_LOW_STATE_TEMPLATE, CONF_TEMP_LOW_STATE_TOPIC as CONF_TEMP_LOW_STATE_TOPIC, 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, CONF_TEMP_STEP as CONF_TEMP_STEP, CONF_TILT_CLOSED_POSITION as CONF_TILT_CLOSED_POSITION, CONF_TILT_COMMAND_TEMPLATE as CONF_TILT_COMMAND_TEMPLATE, CONF_TILT_COMMAND_TOPIC as CONF_TILT_COMMAND_TOPIC, CONF_TILT_MAX as CONF_TILT_MAX, CONF_TILT_MIN as CONF_TILT_MIN, CONF_TILT_OPEN_POSITION as CONF_TILT_OPEN_POSITION, CONF_TILT_STATE_OPTIMISTIC as CONF_TILT_STATE_OPTIMISTIC, CONF_TILT_STATUS_TEMPLATE as CONF_TILT_STATUS_TEMPLATE, CONF_TILT_STATUS_TOPIC as CONF_TILT_STATUS_TOPIC, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TRANSITION as CONF_TRANSITION, CONF_TRANSPORT as CONF_TRANSPORT, CONF_URL_TEMPLATE as CONF_URL_TEMPLATE, CONF_URL_TOPIC as CONF_URL_TOPIC, CONF_WHITE_COMMAND_TOPIC as CONF_WHITE_COMMAND_TOPIC, CONF_WHITE_SCALE as CONF_WHITE_SCALE, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, CONF_XY_COMMAND_TEMPLATE as CONF_XY_COMMAND_TEMPLATE, CONF_XY_COMMAND_TOPIC as CONF_XY_COMMAND_TOPIC, CONF_XY_STATE_TOPIC as CONF_XY_STATE_TOPIC, CONF_XY_VALUE_TEMPLATE as CONF_XY_VALUE_TEMPLATE, DEFAULT_ALARM_CONTROL_PANEL_COMMAND_TEMPLATE as DEFAULT_ALARM_CONTROL_PANEL_COMMAND_TEMPLATE, DEFAULT_BIRTH as DEFAULT_BIRTH, DEFAULT_CLIMATE_INITIAL_TEMPERATURE as DEFAULT_CLIMATE_INITIAL_TEMPERATURE, DEFAULT_DISCOVERY as DEFAULT_DISCOVERY, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_KEEPALIVE as DEFAULT_KEEPALIVE, DEFAULT_ON_COMMAND_TYPE as DEFAULT_ON_COMMAND_TYPE, DEFAULT_PAYLOAD_ARM_AWAY as DEFAULT_PAYLOAD_ARM_AWAY, DEFAULT_PAYLOAD_ARM_CUSTOM_BYPASS as DEFAULT_PAYLOAD_ARM_CUSTOM_BYPASS, DEFAULT_PAYLOAD_ARM_HOME as DEFAULT_PAYLOAD_ARM_HOME, DEFAULT_PAYLOAD_ARM_NIGHT as DEFAULT_PAYLOAD_ARM_NIGHT, DEFAULT_PAYLOAD_ARM_VACATION as DEFAULT_PAYLOAD_ARM_VACATION, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_CLOSE as DEFAULT_PAYLOAD_CLOSE, DEFAULT_PAYLOAD_LOCK as DEFAULT_PAYLOAD_LOCK, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE, DEFAULT_PAYLOAD_OFF as DEFAULT_PAYLOAD_OFF, DEFAULT_PAYLOAD_ON as DEFAULT_PAYLOAD_ON, DEFAULT_PAYLOAD_OPEN as DEFAULT_PAYLOAD_OPEN, DEFAULT_PAYLOAD_OSCILLATE_OFF as DEFAULT_PAYLOAD_OSCILLATE_OFF, DEFAULT_PAYLOAD_OSCILLATE_ON as DEFAULT_PAYLOAD_OSCILLATE_ON, DEFAULT_PAYLOAD_PRESS as DEFAULT_PAYLOAD_PRESS, DEFAULT_PAYLOAD_RESET as DEFAULT_PAYLOAD_RESET, DEFAULT_PAYLOAD_STOP as DEFAULT_PAYLOAD_STOP, DEFAULT_PAYLOAD_TRIGGER as DEFAULT_PAYLOAD_TRIGGER, DEFAULT_PAYLOAD_UNLOCK as DEFAULT_PAYLOAD_UNLOCK, DEFAULT_PORT as DEFAULT_PORT, DEFAULT_POSITION_CLOSED as DEFAULT_POSITION_CLOSED, DEFAULT_POSITION_OPEN as DEFAULT_POSITION_OPEN, DEFAULT_PREFIX as DEFAULT_PREFIX, DEFAULT_PROTOCOL as DEFAULT_PROTOCOL, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_SPEED_RANGE_MAX as DEFAULT_SPEED_RANGE_MAX, DEFAULT_SPEED_RANGE_MIN as DEFAULT_SPEED_RANGE_MIN, DEFAULT_STATE_JAMMED as DEFAULT_STATE_JAMMED, DEFAULT_STATE_LOCKED as DEFAULT_STATE_LOCKED, DEFAULT_STATE_LOCKING as DEFAULT_STATE_LOCKING, DEFAULT_STATE_STOPPED as DEFAULT_STATE_STOPPED, DEFAULT_STATE_UNLOCKED as DEFAULT_STATE_UNLOCKED, DEFAULT_STATE_UNLOCKING as DEFAULT_STATE_UNLOCKING, DEFAULT_TILT_CLOSED_POSITION as DEFAULT_TILT_CLOSED_POSITION, DEFAULT_TILT_MAX as DEFAULT_TILT_MAX, DEFAULT_TILT_MIN as DEFAULT_TILT_MIN, DEFAULT_TILT_OPEN_POSITION as DEFAULT_TILT_OPEN_POSITION, DEFAULT_TRANSPORT as DEFAULT_TRANSPORT, DEFAULT_WILL as DEFAULT_WILL, DEFAULT_WS_PATH as DEFAULT_WS_PATH, DOMAIN as DOMAIN, REMOTE_CODE as REMOTE_CODE, REMOTE_CODE_TEXT as REMOTE_CODE_TEXT, SUPPORTED_PROTOCOLS as SUPPORTED_PROTOCOLS, TRANSPORT_TCP as TRANSPORT_TCP, TRANSPORT_WEBSOCKETS as TRANSPORT_WEBSOCKETS, VALUES_ON_COMMAND_TYPE as VALUES_ON_COMMAND_TYPE
6
6
  from .models import MqttAvailabilityData as MqttAvailabilityData, MqttDeviceData as MqttDeviceData, MqttSubentryData as MqttSubentryData
7
7
  from .util import async_create_certificate_temp_files as async_create_certificate_temp_files, get_file_path as get_file_path, learn_more_url as learn_more_url, valid_birth_will as valid_birth_will, valid_publish_topic as valid_publish_topic, valid_subscribe_topic as valid_subscribe_topic, valid_subscribe_topic_template as valid_subscribe_topic_template
8
8
  from _typeshed import Incomplete
@@ -18,10 +18,11 @@ from homeassistant.components.file_upload import process_uploaded_file as proces
18
18
  from homeassistant.components.hassio import AddonError as AddonError, AddonManager as AddonManager, AddonState as AddonState
19
19
  from homeassistant.components.image import DEFAULT_CONTENT_TYPE as DEFAULT_CONTENT_TYPE
20
20
  from homeassistant.components.light import DEFAULT_MAX_KELVIN as DEFAULT_MAX_KELVIN, DEFAULT_MIN_KELVIN as DEFAULT_MIN_KELVIN, VALID_COLOR_MODES as VALID_COLOR_MODES, valid_supported_color_modes as valid_supported_color_modes
21
+ from homeassistant.components.number import DEFAULT_MAX_VALUE as DEFAULT_MAX_VALUE, DEFAULT_MIN_VALUE as DEFAULT_MIN_VALUE, DEFAULT_STEP as DEFAULT_STEP, NumberDeviceClass as NumberDeviceClass, NumberMode as NumberMode
21
22
  from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, DEVICE_CLASS_UNITS as DEVICE_CLASS_UNITS, STATE_CLASS_UNITS as STATE_CLASS_UNITS, SensorDeviceClass as SensorDeviceClass, SensorStateClass as SensorStateClass
22
23
  from homeassistant.components.switch import SwitchDeviceClass as SwitchDeviceClass
23
24
  from homeassistant.config_entries import ConfigEntry as ConfigEntry, ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult, ConfigSubentryFlow as ConfigSubentryFlow, OptionsFlow as OptionsFlow, SOURCE_RECONFIGURE as SOURCE_RECONFIGURE, SubentryFlowResult as SubentryFlowResult
24
- from homeassistant.const import ATTR_CONFIGURATION_URL as ATTR_CONFIGURATION_URL, ATTR_HW_VERSION as ATTR_HW_VERSION, ATTR_MODEL as ATTR_MODEL, ATTR_MODEL_ID as ATTR_MODEL_ID, ATTR_NAME as ATTR_NAME, ATTR_SW_VERSION as ATTR_SW_VERSION, CONF_BRIGHTNESS as CONF_BRIGHTNESS, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CODE as CONF_CODE, CONF_DEVICE as CONF_DEVICE, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_DISCOVERY as CONF_DISCOVERY, CONF_EFFECT as CONF_EFFECT, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_HOST as CONF_HOST, CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_PASSWORD as CONF_PASSWORD, CONF_PAYLOAD as CONF_PAYLOAD, CONF_PAYLOAD_OFF as CONF_PAYLOAD_OFF, CONF_PAYLOAD_ON as CONF_PAYLOAD_ON, CONF_PLATFORM as CONF_PLATFORM, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_STATE_TEMPLATE as CONF_STATE_TEMPLATE, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_USERNAME as CONF_USERNAME, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, EntityCategory as EntityCategory, STATE_CLOSED as STATE_CLOSED, STATE_CLOSING as STATE_CLOSING, STATE_OPEN as STATE_OPEN, STATE_OPENING as STATE_OPENING, UnitOfTemperature as UnitOfTemperature
25
+ from homeassistant.const import ATTR_CONFIGURATION_URL as ATTR_CONFIGURATION_URL, ATTR_HW_VERSION as ATTR_HW_VERSION, ATTR_MANUFACTURER as ATTR_MANUFACTURER, ATTR_MODEL as ATTR_MODEL, ATTR_MODEL_ID as ATTR_MODEL_ID, ATTR_NAME as ATTR_NAME, ATTR_SW_VERSION as ATTR_SW_VERSION, CONF_BRIGHTNESS as CONF_BRIGHTNESS, CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_CODE as CONF_CODE, CONF_DEVICE as CONF_DEVICE, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_DISCOVERY as CONF_DISCOVERY, CONF_EFFECT as CONF_EFFECT, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_HOST as CONF_HOST, CONF_MODE as CONF_MODE, CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_PASSWORD as CONF_PASSWORD, CONF_PAYLOAD as CONF_PAYLOAD, CONF_PAYLOAD_OFF as CONF_PAYLOAD_OFF, CONF_PAYLOAD_ON as CONF_PAYLOAD_ON, CONF_PLATFORM as CONF_PLATFORM, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_STATE_TEMPLATE as CONF_STATE_TEMPLATE, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT, CONF_USERNAME as CONF_USERNAME, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, EntityCategory as EntityCategory, Platform as Platform, STATE_CLOSED as STATE_CLOSED, STATE_CLOSING as STATE_CLOSING, STATE_OPEN as STATE_OPEN, STATE_OPENING as STATE_OPENING, UnitOfTemperature as UnitOfTemperature
25
26
  from homeassistant.core import HomeAssistant as HomeAssistant, async_get_hass as async_get_hass, callback as callback
26
27
  from homeassistant.data_entry_flow import AbortFlow as AbortFlow, SectionConfig as SectionConfig, section as section
27
28
  from homeassistant.helpers.hassio import is_hassio as is_hassio
@@ -46,6 +47,16 @@ SUBENTRY_PLATFORMS: Incomplete
46
47
  _CODE_VALIDATION_MODE: Incomplete
47
48
  EXCLUDE_FROM_CONFIG_IF_NONE: Incomplete
48
49
  PWD_NOT_CHANGED: str
50
+ DEVELOPER_DOCUMENTATION_URL: str
51
+ USER_DOCUMENTATION_URL: str
52
+ INTEGRATION_URL: Incomplete
53
+ TEMPLATING_URL: Incomplete
54
+ COMMAND_TEMPLATING_URL: Incomplete
55
+ VALUE_TEMPLATING_URL: Incomplete
56
+ AVAILABLE_STATE_CLASSES_URL: Incomplete
57
+ NAMING_ENTITIES_URL: Incomplete
58
+ REGISTRY_PROPERTIES_URL: Incomplete
59
+ TRANSLATION_DESCRIPTION_PLACEHOLDERS: Incomplete
49
60
  BOOLEAN_SELECTOR: Incomplete
50
61
  TEMPLATE_SELECTOR: Incomplete
51
62
  TEMPLATE_SELECTOR_READ_ONLY: Incomplete
@@ -86,6 +97,9 @@ IMAGE_ENCODING_SELECTOR: Incomplete
86
97
  IMAGE_PROCESSING_MODE_SELECTOR: Incomplete
87
98
  KELVIN_SELECTOR: Incomplete
88
99
  LIGHT_SCHEMA_SELECTOR: Incomplete
100
+ MIN_MAX_SELECTOR: Incomplete
101
+ NUMBER_DEVICE_CLASS_SELECTOR: Incomplete
102
+ NUMBER_MODE_SELECTOR: Incomplete
89
103
  ON_COMMAND_TYPE_SELECTOR: Incomplete
90
104
  POSITION_SELECTOR: Incomplete
91
105
  PRECISION_SELECTOR: Incomplete
@@ -94,6 +108,7 @@ SCALE_SELECTOR: Incomplete
94
108
  SENSOR_DEVICE_CLASS_SELECTOR: Incomplete
95
109
  SENSOR_ENTITY_CATEGORY_SELECTOR: Incomplete
96
110
  SENSOR_STATE_CLASS_SELECTOR: Incomplete
111
+ STEP_SELECTOR: Incomplete
97
112
  SUPPORTED_COLOR_MODES_SELECTOR: Incomplete
98
113
  SWITCH_DEVICE_CLASS_SELECTOR: Incomplete
99
114
  TARGET_TEMPERATURE_FEATURE_SELECTOR: Incomplete
@@ -116,6 +131,8 @@ def temperature_step_selector(config: dict[str, Any]) -> Selector: ...
116
131
  @callback
117
132
  def unit_of_measurement_selector(user_data: dict[str, Any | None]) -> Selector: ...
118
133
  @callback
134
+ def number_unit_of_measurement_selector(user_data: dict[str, Any | None]) -> Selector: ...
135
+ @callback
119
136
  def validate(validator: Callable[[Any], Any]) -> Callable[[Any], Any]: ...
120
137
  @callback
121
138
  def validate_field(field: str, validator: Callable[..., Any], user_input: dict[str, Any] | None, errors: dict[str, str], error: str) -> None: ...
@@ -128,6 +145,8 @@ def validate_fan_platform_config(config: dict[str, Any]) -> dict[str, str]: ...
128
145
  @callback
129
146
  def validate_light_platform_config(user_data: dict[str, Any]) -> dict[str, str]: ...
130
147
  @callback
148
+ def validate_number_platform_config(config: dict[str, Any]) -> dict[str, str]: ...
149
+ @callback
131
150
  def validate_sensor_platform_config(config: dict[str, Any]) -> dict[str, str]: ...
132
151
 
133
152
  ENTITY_CONFIG_VALIDATOR: dict[str, Callable[[dict[str, Any]], dict[str, str]] | None]
@@ -149,8 +168,8 @@ class PlatformField:
149
168
 
150
169
  COMMON_ENTITY_FIELDS: dict[str, PlatformField]
151
170
  SHARED_PLATFORM_ENTITY_FIELDS: dict[str, PlatformField]
152
- PLATFORM_ENTITY_FIELDS: dict[str, dict[str, PlatformField]]
153
- PLATFORM_MQTT_FIELDS: dict[str, dict[str, PlatformField]]
171
+ PLATFORM_ENTITY_FIELDS: dict[Platform, dict[str, PlatformField]]
172
+ PLATFORM_MQTT_FIELDS: dict[Platform, dict[str, PlatformField]]
154
173
  MQTT_DEVICE_PLATFORM_FIELDS: Incomplete
155
174
 
156
175
  @callback
@@ -21,6 +21,7 @@ CONF_AVAILABILITY: str
21
21
  CONF_AVAILABILITY_MODE: str
22
22
  CONF_AVAILABILITY_TEMPLATE: str
23
23
  CONF_AVAILABILITY_TOPIC: str
24
+ CONF_AVAILABLE_TONES: str
24
25
  CONF_BROKER: str
25
26
  CONF_BIRTH_MESSAGE: str
26
27
  CONF_CODE_ARM_REQUIRED: str
@@ -111,8 +112,10 @@ CONF_HUMIDITY_STATE_TOPIC: str
111
112
  CONF_HUMIDITY_MAX: str
112
113
  CONF_HUMIDITY_MIN: str
113
114
  CONF_LAST_RESET_VALUE_TEMPLATE: str
115
+ CONF_MAX: str
114
116
  CONF_MAX_KELVIN: str
115
117
  CONF_MAX_MIREDS: str
118
+ CONF_MIN: str
116
119
  CONF_MIN_KELVIN: str
117
120
  CONF_MIN_MIREDS: str
118
121
  CONF_MODE_COMMAND_TEMPLATE: str
@@ -187,7 +190,10 @@ CONF_STATE_OPENING: str
187
190
  CONF_STATE_STOPPED: str
188
191
  CONF_STATE_UNLOCKED: str
189
192
  CONF_STATE_UNLOCKING: str
193
+ CONF_STEP: str
190
194
  CONF_SUGGESTED_DISPLAY_PRECISION: str
195
+ CONF_SUPPORT_DURATION: str
196
+ CONF_SUPPORT_VOLUME_SET: str
191
197
  CONF_SUPPORTED_COLOR_MODES: str
192
198
  CONF_SWING_HORIZONTAL_MODE_COMMAND_TEMPLATE: str
193
199
  CONF_SWING_HORIZONTAL_MODE_COMMAND_TOPIC: str
@@ -284,7 +290,6 @@ DEFAULT_PAYLOAD_RESET: str
284
290
  DEFAULT_PAYLOAD_STOP: str
285
291
  DEFAULT_PAYLOAD_TRIGGER: str
286
292
  DEFAULT_PAYLOAD_UNLOCK: str
287
- DEFAULT_PORT: int
288
293
  DEFAULT_RETAIN: bool
289
294
  DEFAULT_TILT_CLOSED_POSITION: int
290
295
  DEFAULT_TILT_MAX: int
@@ -318,6 +323,7 @@ PROTOCOL_5: str
318
323
  SUPPORTED_PROTOCOLS: Incomplete
319
324
  TRANSPORT_TCP: str
320
325
  TRANSPORT_WEBSOCKETS: str
326
+ DEFAULT_PORT: int
321
327
  DEFAULT_KEEPALIVE: int
322
328
  DEFAULT_PROTOCOL = PROTOCOL_311
323
329
  DEFAULT_TRANSPORT = TRANSPORT_TCP
@@ -1,6 +1,6 @@
1
1
  from . import subscription as subscription
2
2
  from .config import MQTT_RW_SCHEMA as MQTT_RW_SCHEMA
3
- from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_PAYLOAD_RESET as CONF_PAYLOAD_RESET, CONF_STATE_TOPIC as CONF_STATE_TOPIC
3
+ from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_MAX as CONF_MAX, CONF_MIN as CONF_MIN, CONF_PAYLOAD_RESET as CONF_PAYLOAD_RESET, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_STEP as CONF_STEP, DEFAULT_PAYLOAD_RESET as DEFAULT_PAYLOAD_RESET
4
4
  from .entity import MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper
5
5
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage
6
6
  from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
@@ -18,11 +18,7 @@ from homeassistant.helpers.typing import ConfigType as ConfigType, VolSchemaType
18
18
 
19
19
  _LOGGER: Incomplete
20
20
  PARALLEL_UPDATES: int
21
- CONF_MIN: str
22
- CONF_MAX: str
23
- CONF_STEP: str
24
21
  DEFAULT_NAME: str
25
- DEFAULT_PAYLOAD_RESET: str
26
22
  MQTT_NUMBER_ATTRIBUTES_BLOCKED: Incomplete
27
23
 
28
24
  def validate_config(config: ConfigType) -> ConfigType: ...
@@ -1,6 +1,6 @@
1
1
  from . import subscription as subscription
2
2
  from .config import MQTT_RW_SCHEMA as MQTT_RW_SCHEMA
3
- from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_STATE_VALUE_TEMPLATE as CONF_STATE_VALUE_TEMPLATE, PAYLOAD_EMPTY_JSON as PAYLOAD_EMPTY_JSON, PAYLOAD_NONE as PAYLOAD_NONE
3
+ from .const import CONF_AVAILABLE_TONES as CONF_AVAILABLE_TONES, CONF_COMMAND_OFF_TEMPLATE as CONF_COMMAND_OFF_TEMPLATE, CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_STATE_OFF as CONF_STATE_OFF, CONF_STATE_ON as CONF_STATE_ON, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_STATE_VALUE_TEMPLATE as CONF_STATE_VALUE_TEMPLATE, CONF_SUPPORT_DURATION as CONF_SUPPORT_DURATION, CONF_SUPPORT_VOLUME_SET as CONF_SUPPORT_VOLUME_SET, DEFAULT_PAYLOAD_OFF as DEFAULT_PAYLOAD_OFF, DEFAULT_PAYLOAD_ON as DEFAULT_PAYLOAD_ON, PAYLOAD_EMPTY_JSON as PAYLOAD_EMPTY_JSON, PAYLOAD_NONE as PAYLOAD_NONE
4
4
  from .entity import MqttEntity as MqttEntity, async_setup_entity_entry_helper as async_setup_entity_entry_helper
5
5
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage
6
6
  from .schemas import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA
@@ -21,15 +21,7 @@ from typing import Any
21
21
 
22
22
  PARALLEL_UPDATES: int
23
23
  DEFAULT_NAME: str
24
- DEFAULT_PAYLOAD_ON: str
25
- DEFAULT_PAYLOAD_OFF: str
26
24
  ENTITY_ID_FORMAT: Incomplete
27
- CONF_AVAILABLE_TONES: str
28
- CONF_COMMAND_OFF_TEMPLATE: str
29
- CONF_STATE_ON: str
30
- CONF_STATE_OFF: str
31
- CONF_SUPPORT_DURATION: str
32
- CONF_SUPPORT_VOLUME_SET: str
33
25
  STATE: str
34
26
  PLATFORM_SCHEMA_MODERN: Incomplete
35
27
  DISCOVERY_SCHEMA: Incomplete
@@ -58,5 +58,9 @@ ATTR_SAMPLE_RATE: str
58
58
  ATTR_BIT_DEPTH: str
59
59
  ATTR_PROVIDER: str
60
60
  ATTR_ITEM_ID: str
61
+ ATTR_EXPLICIT: str
62
+ ATTR_BITRATE: str
63
+ ATTR_DISCART_IMAGE: str
64
+ ATTR_FANART_IMAGE: str
61
65
  ATTR_CONF_EXPOSE_PLAYER_TO_HA: str
62
66
  LOGGER: Incomplete
@@ -13,7 +13,7 @@ from homeassistant.core import HomeAssistant as HomeAssistant, ServiceResponse a
13
13
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError, ServiceValidationError as ServiceValidationError
14
14
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback, async_get_current_platform as async_get_current_platform
15
15
  from homeassistant.util.dt import utc_from_timestamp as utc_from_timestamp
16
- from music_assistant_client import MusicAssistantClient as MusicAssistantClient
16
+ from music_assistant_client.client import MusicAssistantClient as MusicAssistantClient
17
17
  from music_assistant_models.enums import MediaType, QueueOption
18
18
  from music_assistant_models.event import MassEvent as MassEvent
19
19
  from music_assistant_models.player import Player as Player
@@ -1,8 +1,8 @@
1
- from .const import ATTR_ACTIVE as ATTR_ACTIVE, ATTR_ALBUM as ATTR_ALBUM, ATTR_ALBUMS as ATTR_ALBUMS, ATTR_ARTISTS as ATTR_ARTISTS, ATTR_AUDIOBOOKS as ATTR_AUDIOBOOKS, ATTR_BIT_DEPTH as ATTR_BIT_DEPTH, ATTR_CONTENT_TYPE as ATTR_CONTENT_TYPE, ATTR_CURRENT_INDEX as ATTR_CURRENT_INDEX, ATTR_CURRENT_ITEM as ATTR_CURRENT_ITEM, ATTR_DURATION as ATTR_DURATION, ATTR_ELAPSED_TIME as ATTR_ELAPSED_TIME, ATTR_IMAGE as ATTR_IMAGE, ATTR_ITEMS as ATTR_ITEMS, ATTR_ITEM_ID as ATTR_ITEM_ID, ATTR_LIMIT as ATTR_LIMIT, ATTR_MEDIA_ITEM as ATTR_MEDIA_ITEM, ATTR_MEDIA_TYPE as ATTR_MEDIA_TYPE, ATTR_NEXT_ITEM as ATTR_NEXT_ITEM, ATTR_OFFSET as ATTR_OFFSET, ATTR_ORDER_BY as ATTR_ORDER_BY, ATTR_PLAYLISTS as ATTR_PLAYLISTS, ATTR_PODCASTS as ATTR_PODCASTS, ATTR_PROVIDER as ATTR_PROVIDER, ATTR_QUEUE_ID as ATTR_QUEUE_ID, ATTR_QUEUE_ITEM_ID as ATTR_QUEUE_ITEM_ID, ATTR_RADIO as ATTR_RADIO, ATTR_REPEAT_MODE as ATTR_REPEAT_MODE, ATTR_SAMPLE_RATE as ATTR_SAMPLE_RATE, ATTR_SHUFFLE_ENABLED as ATTR_SHUFFLE_ENABLED, ATTR_STREAM_DETAILS as ATTR_STREAM_DETAILS, ATTR_STREAM_TITLE as ATTR_STREAM_TITLE, ATTR_TRACKS as ATTR_TRACKS, ATTR_URI as ATTR_URI, ATTR_VERSION as ATTR_VERSION
1
+ from .const import ATTR_ACTIVE as ATTR_ACTIVE, ATTR_ALBUM as ATTR_ALBUM, ATTR_ALBUMS as ATTR_ALBUMS, ATTR_ARTISTS as ATTR_ARTISTS, ATTR_AUDIOBOOKS as ATTR_AUDIOBOOKS, ATTR_BITRATE as ATTR_BITRATE, ATTR_BIT_DEPTH as ATTR_BIT_DEPTH, ATTR_CONTENT_TYPE as ATTR_CONTENT_TYPE, ATTR_CURRENT_INDEX as ATTR_CURRENT_INDEX, ATTR_CURRENT_ITEM as ATTR_CURRENT_ITEM, ATTR_DISCART_IMAGE as ATTR_DISCART_IMAGE, ATTR_DURATION as ATTR_DURATION, ATTR_ELAPSED_TIME as ATTR_ELAPSED_TIME, ATTR_EXPLICIT as ATTR_EXPLICIT, ATTR_FANART_IMAGE as ATTR_FANART_IMAGE, ATTR_FAVORITE as ATTR_FAVORITE, ATTR_IMAGE as ATTR_IMAGE, ATTR_ITEMS as ATTR_ITEMS, ATTR_ITEM_ID as ATTR_ITEM_ID, ATTR_LIMIT as ATTR_LIMIT, ATTR_MEDIA_ITEM as ATTR_MEDIA_ITEM, ATTR_MEDIA_TYPE as ATTR_MEDIA_TYPE, ATTR_NEXT_ITEM as ATTR_NEXT_ITEM, ATTR_OFFSET as ATTR_OFFSET, ATTR_ORDER_BY as ATTR_ORDER_BY, ATTR_PLAYLISTS as ATTR_PLAYLISTS, ATTR_PODCASTS as ATTR_PODCASTS, ATTR_PROVIDER as ATTR_PROVIDER, ATTR_QUEUE_ID as ATTR_QUEUE_ID, ATTR_QUEUE_ITEM_ID as ATTR_QUEUE_ITEM_ID, ATTR_RADIO as ATTR_RADIO, ATTR_REPEAT_MODE as ATTR_REPEAT_MODE, ATTR_SAMPLE_RATE as ATTR_SAMPLE_RATE, ATTR_SHUFFLE_ENABLED as ATTR_SHUFFLE_ENABLED, ATTR_STREAM_DETAILS as ATTR_STREAM_DETAILS, ATTR_STREAM_TITLE as ATTR_STREAM_TITLE, ATTR_TRACKS as ATTR_TRACKS, ATTR_URI as ATTR_URI, ATTR_VERSION as ATTR_VERSION
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.const import ATTR_NAME as ATTR_NAME
4
4
  from music_assistant_client import MusicAssistantClient as MusicAssistantClient
5
- from music_assistant_models.media_items import ItemMapping as ItemMapping, MediaItemType as MediaItemType
5
+ from music_assistant_models.media_items import ItemMapping, MediaItemType as MediaItemType
6
6
  from music_assistant_models.queue_item import QueueItem as QueueItem
7
7
  from typing import Any
8
8
 
@@ -10,11 +10,6 @@ from homeassistant.helpers.update_coordinator import BaseCoordinatorEntity as Ba
10
10
  from webio_api import Input as NASwebInput, TempSensor as TempSensor
11
11
 
12
12
  SENSOR_INPUT_TRANSLATION_KEY: str
13
- STATE_UNDEFINED: str
14
- STATE_TAMPER: str
15
- STATE_ACTIVE: str
16
- STATE_NORMAL: str
17
- STATE_PROBLEM: str
18
13
  _LOGGER: Incomplete
19
14
 
20
15
  async def async_setup_entry(hass: HomeAssistant, config: NASwebConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback, discovery_info: DiscoveryInfoType | None = None) -> None: ...
@@ -12,6 +12,7 @@ from typing import Any
12
12
  from webio_api import Output as NASwebOutput
13
13
 
14
14
  OUTPUT_TRANSLATION_KEY: str
15
+ NASWEB_STATE_TO_HA_STATE: Incomplete
15
16
  _LOGGER: Incomplete
16
17
 
17
18
  def _get_output(coordinator: NASwebCoordinator, index: int) -> NASwebOutput | None: ...
@@ -4,6 +4,7 @@ from collections.abc import Mapping
4
4
  from homeassistant.config_entries import ConfigFlow as ConfigFlow, ConfigFlowResult as ConfigFlowResult
5
5
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_PROFILE_NAME as CONF_PROFILE_NAME
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
7
8
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
8
9
  from nextdns import NextDns
9
10
  from typing import Any
@@ -11,7 +12,8 @@ from typing import Any
11
12
  AUTH_SCHEMA: Incomplete
12
13
  _LOGGER: Incomplete
13
14
 
14
- async def async_init_nextdns(hass: HomeAssistant, api_key: str) -> NextDns: ...
15
+ async def async_init_nextdns(hass: HomeAssistant, api_key: str, profile_id: str | None = None) -> NextDns: ...
16
+ async def async_validate_new_api_key(hass: HomeAssistant, user_input: dict[str, Any], profile_id: str) -> dict[str, str]: ...
15
17
 
16
18
  class NextDnsFlowHandler(ConfigFlow, domain=DOMAIN):
17
19
  VERSION: int
@@ -22,3 +24,6 @@ class NextDnsFlowHandler(ConfigFlow, domain=DOMAIN):
22
24
  async def async_step_profiles(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
23
25
  async def async_step_reauth(self, entry_data: Mapping[str, Any]) -> ConfigFlowResult: ...
24
26
  async def async_step_reauth_confirm(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
27
+ async def async_step_reconfigure(self, user_input: dict[str, Any] | None = None) -> ConfigFlowResult: ...
28
+
29
+ class ProfileNotAvailable(HomeAssistantError): ...
@@ -1,7 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from enum import StrEnum
3
3
  from homeassistant.const import CONCENTRATION_GRAMS_PER_CUBIC_METER as CONCENTRATION_GRAMS_PER_CUBIC_METER, CONCENTRATION_MICROGRAMS_PER_CUBIC_FOOT as CONCENTRATION_MICROGRAMS_PER_CUBIC_FOOT, CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER as CONCENTRATION_MILLIGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_BILLION as CONCENTRATION_PARTS_PER_BILLION, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, DEGREE as DEGREE, LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS as SIGNAL_STRENGTH_DECIBELS, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfApparentPower as UnitOfApparentPower, UnitOfArea as UnitOfArea, UnitOfBloodGlucoseConcentration as UnitOfBloodGlucoseConcentration, UnitOfConductivity as UnitOfConductivity, UnitOfDataRate as UnitOfDataRate, UnitOfElectricCurrent as UnitOfElectricCurrent, UnitOfElectricPotential as UnitOfElectricPotential, UnitOfEnergy as UnitOfEnergy, UnitOfEnergyDistance as UnitOfEnergyDistance, UnitOfFrequency as UnitOfFrequency, UnitOfInformation as UnitOfInformation, UnitOfIrradiance as UnitOfIrradiance, UnitOfLength as UnitOfLength, UnitOfMass as UnitOfMass, UnitOfPower as UnitOfPower, UnitOfPrecipitationDepth as UnitOfPrecipitationDepth, UnitOfPressure as UnitOfPressure, UnitOfReactiveEnergy as UnitOfReactiveEnergy, UnitOfReactivePower as UnitOfReactivePower, UnitOfSoundPressure as UnitOfSoundPressure, UnitOfSpeed as UnitOfSpeed, UnitOfTemperature as UnitOfTemperature, UnitOfTime as UnitOfTime, UnitOfVolume as UnitOfVolume, UnitOfVolumeFlowRate as UnitOfVolumeFlowRate, UnitOfVolumetricFlux as UnitOfVolumetricFlux
4
- from homeassistant.util.unit_conversion import BaseUnitConverter as BaseUnitConverter, ReactiveEnergyConverter as ReactiveEnergyConverter, TemperatureConverter as TemperatureConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
4
+ from homeassistant.util.unit_conversion import BaseUnitConverter as BaseUnitConverter, ReactiveEnergyConverter as ReactiveEnergyConverter, TemperatureConverter as TemperatureConverter, TemperatureDeltaConverter as TemperatureDeltaConverter, VolumeFlowRateConverter as VolumeFlowRateConverter
5
5
  from typing import Final
6
6
 
7
7
  ATTR_VALUE: str
@@ -66,6 +66,7 @@ class NumberDeviceClass(StrEnum):
66
66
  SPEED = 'speed'
67
67
  SULPHUR_DIOXIDE = 'sulphur_dioxide'
68
68
  TEMPERATURE = 'temperature'
69
+ TEMPERATURE_DELTA = 'temperature_delta'
69
70
  VOLATILE_ORGANIC_COMPOUNDS = 'volatile_organic_compounds'
70
71
  VOLATILE_ORGANIC_COMPOUNDS_PARTS = 'volatile_organic_compounds_parts'
71
72
  VOLTAGE = 'voltage'
@@ -9,7 +9,8 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession as asyn
9
9
  from typing import Any, Concatenate
10
10
 
11
11
  _LOGGER: Incomplete
12
- UPLOAD_CHUNK_SIZE: Incomplete
12
+ MAX_CHUNK_SIZE: Incomplete
13
+ TARGET_CHUNKS: int
13
14
  TIMEOUT: Incomplete
14
15
  METADATA_VERSION: int
15
16
  CACHE_TTL: int
@@ -1,8 +1,7 @@
1
- from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_0_7 as DEVICE_KEYS_0_7, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B, READ_MODE_INT as READ_MODE_INT
2
- from .entity import OneWireEntity as OneWireEntity, OneWireEntityDescription as OneWireEntityDescription
1
+ from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_0_7 as DEVICE_KEYS_0_7, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B
2
+ from .entity import OneWireEntity as OneWireEntity
3
3
  from .onewirehub import OWDeviceDescription as OWDeviceDescription, OneWireConfigEntry as OneWireConfigEntry, OneWireHub as OneWireHub, SIGNAL_NEW_DEVICE_CONNECTED as SIGNAL_NEW_DEVICE_CONNECTED
4
4
  from _typeshed import Incomplete
5
- from dataclasses import dataclass
6
5
  from homeassistant.components.binary_sensor import BinarySensorDeviceClass as BinarySensorDeviceClass, BinarySensorEntity as BinarySensorEntity, BinarySensorEntityDescription as BinarySensorEntityDescription
7
6
  from homeassistant.const import EntityCategory as EntityCategory
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -11,19 +10,13 @@ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
11
10
 
12
11
  PARALLEL_UPDATES: int
13
12
  SCAN_INTERVAL: Incomplete
13
+ DEVICE_BINARY_SENSORS: dict[str, tuple[BinarySensorEntityDescription, ...]]
14
+ HOBBYBOARD_EF: dict[str, tuple[BinarySensorEntityDescription, ...]]
14
15
 
15
- @dataclass(frozen=True)
16
- class OneWireBinarySensorEntityDescription(OneWireEntityDescription, BinarySensorEntityDescription):
17
- read_mode = READ_MODE_INT
18
-
19
- DEVICE_BINARY_SENSORS: dict[str, tuple[OneWireBinarySensorEntityDescription, ...]]
20
- HOBBYBOARD_EF: dict[str, tuple[OneWireBinarySensorEntityDescription, ...]]
21
-
22
- def get_sensor_types(device_sub_type: str) -> dict[str, tuple[OneWireBinarySensorEntityDescription, ...]]: ...
16
+ def get_sensor_types(device_sub_type: str) -> dict[str, tuple[BinarySensorEntityDescription, ...]]: ...
23
17
  async def async_setup_entry(hass: HomeAssistant, config_entry: OneWireConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
24
18
  def get_entities(onewire_hub: OneWireHub, devices: list[OWDeviceDescription]) -> list[OneWireBinarySensorEntity]: ...
25
19
 
26
20
  class OneWireBinarySensorEntity(OneWireEntity, BinarySensorEntity):
27
- entity_description: OneWireBinarySensorEntityDescription
28
21
  @property
29
22
  def is_on(self) -> bool | None: ...
@@ -17,5 +17,3 @@ INPUT_ENTRY_DEVICE_SELECTION: str
17
17
  MANUFACTURER_MAXIM: str
18
18
  MANUFACTURER_HOBBYBOARDS: str
19
19
  MANUFACTURER_EDS: str
20
- READ_MODE_FLOAT: str
21
- READ_MODE_INT: str
@@ -3,8 +3,10 @@ from _typeshed import Incomplete
3
3
  from homeassistant.components.diagnostics import async_redact_data as async_redact_data
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.helpers import device_registry as dr
6
7
  from typing import Any
7
8
 
8
9
  TO_REDACT: Incomplete
9
10
 
10
11
  async def async_get_config_entry_diagnostics(hass: HomeAssistant, entry: OneWireConfigEntry) -> dict[str, Any]: ...
12
+ async def async_get_device_diagnostics(hass: HomeAssistant, entry: OneWireConfigEntry, device_entry: dr.DeviceEntry) -> dict[str, Any]: ...
@@ -1,30 +1,22 @@
1
- from .const import READ_MODE_INT as READ_MODE_INT
2
1
  from _typeshed import Incomplete
3
- from dataclasses import dataclass
2
+ from aio_ownet.proxy import OWServerStatelessProxy as OWServerStatelessProxy
4
3
  from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
5
4
  from homeassistant.helpers.entity import Entity as Entity, EntityDescription as EntityDescription
6
- from pyownet import protocol
7
5
  from typing import Any
8
6
 
9
- @dataclass(frozen=True)
10
- class OneWireEntityDescription(EntityDescription):
11
- read_mode: str | None = ...
12
-
13
7
  _LOGGER: Incomplete
14
8
 
15
9
  class OneWireEntity(Entity):
16
- entity_description: OneWireEntityDescription
17
10
  _attr_has_entity_name: bool
11
+ entity_description: Incomplete
18
12
  _last_update_success: bool
19
13
  _attr_unique_id: Incomplete
20
14
  _attr_device_info: Incomplete
21
15
  _device_file: Incomplete
22
- _state: int | float | None
23
- _value_raw: float | None
16
+ _state: str | None
24
17
  _owproxy: Incomplete
25
- def __init__(self, description: OneWireEntityDescription, device_id: str, device_info: DeviceInfo, device_file: str, owproxy: protocol._Proxy) -> None: ...
18
+ def __init__(self, description: EntityDescription, device_id: str, device_info: DeviceInfo, device_file: str, owproxy: OWServerStatelessProxy) -> None: ...
26
19
  @property
27
20
  def extra_state_attributes(self) -> dict[str, Any] | None: ...
28
- def _read_value(self) -> str: ...
29
- def _write_value(self, value: bytes) -> None: ...
30
- def update(self) -> None: ...
21
+ async def _write_value(self, value: bytes) -> None: ...
22
+ async def async_update(self) -> None: ...
@@ -1,6 +1,7 @@
1
1
  from .const import DEVICE_SUPPORT as DEVICE_SUPPORT, DOMAIN as DOMAIN, MANUFACTURER_EDS as MANUFACTURER_EDS, MANUFACTURER_HOBBYBOARDS as MANUFACTURER_HOBBYBOARDS, MANUFACTURER_MAXIM as MANUFACTURER_MAXIM
2
2
  from .model import OWDeviceDescription as OWDeviceDescription
3
3
  from _typeshed import Incomplete
4
+ from aio_ownet.proxy import OWServerStatelessProxy
4
5
  from datetime import datetime
5
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
7
  from homeassistant.const import ATTR_VIA_DEVICE as ATTR_VIA_DEVICE, CONF_HOST as CONF_HOST, CONF_PORT as CONF_PORT
@@ -9,7 +10,6 @@ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
9
10
  from homeassistant.helpers.dispatcher import async_dispatcher_send as async_dispatcher_send
10
11
  from homeassistant.helpers.event import async_track_time_interval as async_track_time_interval
11
12
  from homeassistant.util.signal_type import SignalType as SignalType
12
- from pyownet import protocol
13
13
 
14
14
  DEVICE_COUPLERS: Incomplete
15
15
  DEVICE_MANUFACTURER: Incomplete
@@ -21,18 +21,18 @@ SIGNAL_NEW_DEVICE_CONNECTED: Incomplete
21
21
  def _is_known_device(device_family: str, device_type: str | None) -> bool: ...
22
22
 
23
23
  class OneWireHub:
24
- owproxy: protocol._Proxy
24
+ owproxy: OWServerStatelessProxy
25
25
  devices: list[OWDeviceDescription]
26
26
  _version: str | None
27
27
  _hass: Incomplete
28
28
  _config_entry: Incomplete
29
29
  def __init__(self, hass: HomeAssistant, config_entry: OneWireConfigEntry) -> None: ...
30
- def _initialize(self) -> None: ...
30
+ async def _initialize(self) -> None: ...
31
31
  async def initialize(self) -> None: ...
32
32
  @callback
33
33
  def _populate_device_registry(self, devices: list[OWDeviceDescription]) -> None: ...
34
34
  def schedule_scan_for_new_devices(self) -> None: ...
35
35
  async def _scan_for_new_devices(self, _: datetime) -> None: ...
36
36
 
37
- def _discover_devices(owproxy: protocol._Proxy, path: str = '/', parent_id: str | None = None) -> list[OWDeviceDescription]: ...
38
- def _get_device_type(owproxy: protocol._Proxy, device_path: str) -> str | None: ...
37
+ async def _discover_devices(owproxy: OWServerStatelessProxy, path: str = '/', parent_id: str | None = None) -> list[OWDeviceDescription]: ...
38
+ async def _get_device_type(owproxy: OWServerStatelessProxy, device_path: str) -> str | None: ...
@@ -1,8 +1,6 @@
1
- from .const import READ_MODE_INT as READ_MODE_INT
2
- from .entity import OneWireEntity as OneWireEntity, OneWireEntityDescription as OneWireEntityDescription
1
+ from .entity import OneWireEntity as OneWireEntity
3
2
  from .onewirehub import OWDeviceDescription as OWDeviceDescription, OneWireConfigEntry as OneWireConfigEntry, OneWireHub as OneWireHub, SIGNAL_NEW_DEVICE_CONNECTED as SIGNAL_NEW_DEVICE_CONNECTED
4
3
  from _typeshed import Incomplete
5
- from dataclasses import dataclass
6
4
  from homeassistant.components.select import SelectEntity as SelectEntity, SelectEntityDescription as SelectEntityDescription
7
5
  from homeassistant.const import EntityCategory as EntityCategory
8
6
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -11,17 +9,12 @@ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback
11
9
 
12
10
  PARALLEL_UPDATES: int
13
11
  SCAN_INTERVAL: Incomplete
14
-
15
- @dataclass(frozen=True)
16
- class OneWireSelectEntityDescription(OneWireEntityDescription, SelectEntityDescription): ...
17
-
18
- ENTITY_DESCRIPTIONS: dict[str, tuple[OneWireEntityDescription, ...]]
12
+ ENTITY_DESCRIPTIONS: dict[str, tuple[SelectEntityDescription, ...]]
19
13
 
20
14
  async def async_setup_entry(hass: HomeAssistant, config_entry: OneWireConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
21
15
  def get_entities(onewire_hub: OneWireHub, devices: list[OWDeviceDescription]) -> list[OneWireSelectEntity]: ...
22
16
 
23
17
  class OneWireSelectEntity(OneWireEntity, SelectEntity):
24
- entity_description: OneWireSelectEntityDescription
25
18
  @property
26
19
  def current_option(self) -> str | None: ...
27
- def select_option(self, option: str) -> None: ...
20
+ async def async_select_option(self, option: str) -> None: ...
@@ -1,6 +1,6 @@
1
1
  import dataclasses
2
- from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B, DEVICE_KEYS_A_D as DEVICE_KEYS_A_D, OPTION_ENTRY_DEVICE_OPTIONS as OPTION_ENTRY_DEVICE_OPTIONS, OPTION_ENTRY_SENSOR_PRECISION as OPTION_ENTRY_SENSOR_PRECISION, PRECISION_MAPPING_FAMILY_28 as PRECISION_MAPPING_FAMILY_28, READ_MODE_FLOAT as READ_MODE_FLOAT, READ_MODE_INT as READ_MODE_INT
3
- from .entity import OneWireEntity as OneWireEntity, OneWireEntityDescription as OneWireEntityDescription
2
+ from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B, DEVICE_KEYS_A_D as DEVICE_KEYS_A_D, OPTION_ENTRY_DEVICE_OPTIONS as OPTION_ENTRY_DEVICE_OPTIONS, OPTION_ENTRY_SENSOR_PRECISION as OPTION_ENTRY_SENSOR_PRECISION, PRECISION_MAPPING_FAMILY_28 as PRECISION_MAPPING_FAMILY_28
3
+ from .entity import OneWireEntity as OneWireEntity
4
4
  from .onewirehub import OWDeviceDescription as OWDeviceDescription, OneWireConfigEntry as OneWireConfigEntry, OneWireHub as OneWireHub, SIGNAL_NEW_DEVICE_CONNECTED as SIGNAL_NEW_DEVICE_CONNECTED
5
5
  from _typeshed import Incomplete
6
6
  from collections.abc import Callable as Callable, Mapping
@@ -9,14 +9,13 @@ from homeassistant.const import LIGHT_LUX as LIGHT_LUX, PERCENTAGE as PERCENTAGE
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
11
11
  from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback as AddConfigEntryEntitiesCallback
12
- from homeassistant.helpers.typing import StateType as StateType
13
12
  from typing import Any
14
13
 
15
14
  PARALLEL_UPDATES: int
16
15
  SCAN_INTERVAL: Incomplete
17
16
 
18
17
  @dataclasses.dataclass(frozen=True)
19
- class OneWireSensorEntityDescription(OneWireEntityDescription, SensorEntityDescription):
18
+ class OneWireSensorEntityDescription(SensorEntityDescription):
20
19
  override_key: Callable[[str, Mapping[str, Any]], str] | None = ...
21
20
 
22
21
  def _get_sensor_precision_family_28(device_id: str, options: Mapping[str, Any]) -> str: ...
@@ -29,9 +28,8 @@ EDS_SENSORS: dict[str, tuple[OneWireSensorEntityDescription, ...]]
29
28
 
30
29
  def get_sensor_types(device_sub_type: str) -> dict[str, tuple[OneWireSensorEntityDescription, ...]]: ...
31
30
  async def async_setup_entry(hass: HomeAssistant, config_entry: OneWireConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
32
- def get_entities(onewire_hub: OneWireHub, devices: list[OWDeviceDescription], options: Mapping[str, Any]) -> list[OneWireSensorEntity]: ...
31
+ async def get_entities(onewire_hub: OneWireHub, devices: list[OWDeviceDescription], options: Mapping[str, Any]) -> list[OneWireSensorEntity]: ...
33
32
 
34
33
  class OneWireSensorEntity(OneWireEntity, SensorEntity):
35
- entity_description: OneWireSensorEntityDescription
36
34
  @property
37
- def native_value(self) -> StateType: ...
35
+ def native_value(self) -> float | int | None: ...
@@ -1,8 +1,7 @@
1
- from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_0_7 as DEVICE_KEYS_0_7, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B, READ_MODE_INT as READ_MODE_INT
2
- from .entity import OneWireEntity as OneWireEntity, OneWireEntityDescription as OneWireEntityDescription
1
+ from .const import DEVICE_KEYS_0_3 as DEVICE_KEYS_0_3, DEVICE_KEYS_0_7 as DEVICE_KEYS_0_7, DEVICE_KEYS_A_B as DEVICE_KEYS_A_B
2
+ from .entity import OneWireEntity as OneWireEntity
3
3
  from .onewirehub import OWDeviceDescription as OWDeviceDescription, OneWireConfigEntry as OneWireConfigEntry, OneWireHub as OneWireHub, SIGNAL_NEW_DEVICE_CONNECTED as SIGNAL_NEW_DEVICE_CONNECTED
4
4
  from _typeshed import Incomplete
5
- from dataclasses import dataclass
6
5
  from homeassistant.components.switch import SwitchEntity as SwitchEntity, SwitchEntityDescription as SwitchEntityDescription
7
6
  from homeassistant.const import EntityCategory as EntityCategory
8
7
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -12,21 +11,15 @@ from typing import Any
12
11
 
13
12
  PARALLEL_UPDATES: int
14
13
  SCAN_INTERVAL: Incomplete
14
+ DEVICE_SWITCHES: dict[str, tuple[SwitchEntityDescription, ...]]
15
+ HOBBYBOARD_EF: dict[str, tuple[SwitchEntityDescription, ...]]
15
16
 
16
- @dataclass(frozen=True)
17
- class OneWireSwitchEntityDescription(OneWireEntityDescription, SwitchEntityDescription):
18
- read_mode = READ_MODE_INT
19
-
20
- DEVICE_SWITCHES: dict[str, tuple[OneWireEntityDescription, ...]]
21
- HOBBYBOARD_EF: dict[str, tuple[OneWireEntityDescription, ...]]
22
-
23
- def get_sensor_types(device_sub_type: str) -> dict[str, tuple[OneWireEntityDescription, ...]]: ...
17
+ def get_sensor_types(device_sub_type: str) -> dict[str, tuple[SwitchEntityDescription, ...]]: ...
24
18
  async def async_setup_entry(hass: HomeAssistant, config_entry: OneWireConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback) -> None: ...
25
19
  def get_entities(onewire_hub: OneWireHub, devices: list[OWDeviceDescription]) -> list[OneWireSwitchEntity]: ...
26
20
 
27
21
  class OneWireSwitchEntity(OneWireEntity, SwitchEntity):
28
- entity_description: OneWireSwitchEntityDescription
29
22
  @property
30
23
  def is_on(self) -> bool | None: ...
31
- def turn_on(self, **kwargs: Any) -> None: ...
32
- def turn_off(self, **kwargs: Any) -> None: ...
24
+ async def async_turn_on(self, **kwargs: Any) -> None: ...
25
+ async def async_turn_off(self, **kwargs: Any) -> None: ...
@@ -31,5 +31,5 @@ class ReceiverManager:
31
31
  async def write(self, message: Instruction) -> None: ...
32
32
  def start_unloading(self) -> None: ...
33
33
 
34
- async def async_interview(host: str) -> ReceiverInfo | None: ...
34
+ async def async_interview(host: str) -> ReceiverInfo: ...
35
35
  async def async_discover(hass: HomeAssistant) -> Iterable[ReceiverInfo]: ...
@@ -6,11 +6,13 @@ from collections.abc import AsyncGenerator, Callable as Callable
6
6
  from homeassistant.components import conversation as conversation
7
7
  from homeassistant.config_entries import ConfigSubentry as ConfigSubentry
8
8
  from homeassistant.const import CONF_MODEL as CONF_MODEL
9
+ from homeassistant.core import HomeAssistant as HomeAssistant
9
10
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
10
11
  from homeassistant.helpers import llm as llm
11
12
  from homeassistant.helpers.entity import Entity as Entity
12
- from openai.types.chat import ChatCompletionFunctionToolParam, ChatCompletionMessage as ChatCompletionMessage, ChatCompletionMessageParam as ChatCompletionMessageParam
13
+ from openai.types.chat import ChatCompletionContentPartImageParam as ChatCompletionContentPartImageParam, ChatCompletionFunctionToolParam, ChatCompletionMessage as ChatCompletionMessage, ChatCompletionMessageParam as ChatCompletionMessageParam
13
14
  from openai.types.shared_params.response_format_json_schema import JSONSchema as JSONSchema
15
+ from pathlib import Path
14
16
  from typing import Any
15
17
 
16
18
  MAX_TOOL_ITERATIONS: int
@@ -21,6 +23,7 @@ def _format_tool(tool: llm.Tool, custom_serializer: Callable[[Any], Any] | None)
21
23
  def _convert_content_to_chat_message(content: conversation.Content) -> ChatCompletionMessageParam | None: ...
22
24
  def _decode_tool_arguments(arguments: str) -> Any: ...
23
25
  async def _transform_response(message: ChatCompletionMessage) -> AsyncGenerator[conversation.AssistantContentDeltaDict]: ...
26
+ async def async_prepare_files_for_prompt(hass: HomeAssistant, files: list[tuple[Path, str | None]]) -> list[ChatCompletionContentPartImageParam]: ...
24
27
 
25
28
  class OpenRouterEntity(Entity):
26
29
  _attr_has_entity_name: bool