homeassistant-stubs 2023.8.4__py3-none-any.whl → 2023.9.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (794) hide show
  1. homeassistant-stubs/__main__.pyi +0 -1
  2. homeassistant-stubs/components/abode/__init__.pyi +2 -1
  3. homeassistant-stubs/components/abode/sensor.pyi +18 -6
  4. homeassistant-stubs/components/accuweather/__init__.pyi +1 -2
  5. homeassistant-stubs/components/accuweather/const.pyi +2 -0
  6. homeassistant-stubs/components/accuweather/sensor.pyi +4 -6
  7. homeassistant-stubs/components/accuweather/weather.pyi +6 -5
  8. homeassistant-stubs/components/actiontec/model.pyi +0 -1
  9. homeassistant-stubs/components/adguard/entity.pyi +2 -2
  10. homeassistant-stubs/components/adguard/sensor.pyi +0 -2
  11. homeassistant-stubs/components/adguard/switch.pyi +0 -2
  12. homeassistant-stubs/components/airly/sensor.pyi +1 -3
  13. homeassistant-stubs/components/airzone/binary_sensor.pyi +0 -1
  14. homeassistant-stubs/components/airzone/entity.pyi +7 -1
  15. homeassistant-stubs/components/airzone/select.pyi +0 -2
  16. homeassistant-stubs/components/airzone/sensor.pyi +9 -1
  17. homeassistant-stubs/components/airzone_cloud/binary_sensor.pyi +8 -2
  18. homeassistant-stubs/components/airzone_cloud/entity.pyi +7 -1
  19. homeassistant-stubs/components/aladdin_connect/cover.pyi +1 -1
  20. homeassistant-stubs/components/aladdin_connect/sensor.pyi +1 -3
  21. homeassistant-stubs/components/alarm_control_panel/__init__.pyi +0 -1
  22. homeassistant-stubs/components/alexa/__init__.pyi +16 -0
  23. homeassistant-stubs/components/alexa/auth.pyi +31 -0
  24. homeassistant-stubs/components/alexa/capabilities.pyi +281 -0
  25. homeassistant-stubs/components/alexa/config.pyi +57 -0
  26. homeassistant-stubs/components/alexa/const.pyi +51 -0
  27. homeassistant-stubs/components/alexa/entities.pyi +176 -0
  28. homeassistant-stubs/components/alexa/errors.pyi +69 -0
  29. homeassistant-stubs/components/alexa/flash_briefings.pyi +22 -0
  30. homeassistant-stubs/components/alexa/handlers.pyi +64 -0
  31. homeassistant-stubs/components/alexa/intent.pyi +53 -0
  32. homeassistant-stubs/components/alexa/logbook.pyi +6 -0
  33. homeassistant-stubs/components/alexa/resources.pyi +114 -0
  34. homeassistant-stubs/components/alexa/smart_home.pyi +51 -0
  35. homeassistant-stubs/components/alexa/state_report.pyi +53 -0
  36. homeassistant-stubs/components/ambient_station/__init__.pyi +1 -15
  37. homeassistant-stubs/components/ambient_station/binary_sensor.pyi +1 -3
  38. homeassistant-stubs/components/ambient_station/entity.pyi +21 -0
  39. homeassistant-stubs/components/ambient_station/sensor.pyi +2 -1
  40. homeassistant-stubs/components/amcrest/__init__.pyi +0 -1
  41. homeassistant-stubs/components/amcrest/binary_sensor.pyi +0 -1
  42. homeassistant-stubs/components/analytics/analytics.pyi +0 -1
  43. homeassistant-stubs/components/anova/__init__.pyi +1 -1
  44. homeassistant-stubs/components/anova/config_flow.pyi +4 -4
  45. homeassistant-stubs/components/anova/coordinator.pyi +2 -2
  46. homeassistant-stubs/components/anova/entity.pyi +2 -2
  47. homeassistant-stubs/components/anova/models.pyi +0 -1
  48. homeassistant-stubs/components/anova/sensor.pyi +0 -2
  49. homeassistant-stubs/components/anthemav/__init__.pyi +1 -1
  50. homeassistant-stubs/components/anthemav/const.pyi +1 -1
  51. homeassistant-stubs/components/anthemav/media_player.pyi +2 -2
  52. homeassistant-stubs/components/apcupsd/__init__.pyi +1 -1
  53. homeassistant-stubs/components/aqualogic/sensor.pyi +0 -1
  54. homeassistant-stubs/components/aseko_pool_live/binary_sensor.pyi +0 -2
  55. homeassistant-stubs/components/aseko_pool_live/entity.pyi +2 -1
  56. homeassistant-stubs/components/aseko_pool_live/sensor.pyi +1 -0
  57. homeassistant-stubs/components/assist_pipeline/__init__.pyi +2 -2
  58. homeassistant-stubs/components/assist_pipeline/const.pyi +3 -0
  59. homeassistant-stubs/components/assist_pipeline/error.pyi +2 -0
  60. homeassistant-stubs/components/assist_pipeline/pipeline.pyi +35 -14
  61. homeassistant-stubs/components/assist_pipeline/ring_buffer.pyi +15 -0
  62. homeassistant-stubs/components/assist_pipeline/vad.pyi +41 -6
  63. homeassistant-stubs/components/assist_pipeline/websocket_api.pyi +2 -2
  64. homeassistant-stubs/components/asuswrt/router.pyi +1 -2
  65. homeassistant-stubs/components/asuswrt/sensor.pyi +0 -1
  66. homeassistant-stubs/components/auth/__init__.pyi +2 -1
  67. homeassistant-stubs/components/automation/__init__.pyi +0 -1
  68. homeassistant-stubs/components/awair/__init__.pyi +0 -1
  69. homeassistant-stubs/components/awair/sensor.pyi +1 -3
  70. homeassistant-stubs/components/backup/manager.pyi +0 -1
  71. homeassistant-stubs/components/baf/binary_sensor.pyi +0 -2
  72. homeassistant-stubs/components/baf/entity.pyi +2 -2
  73. homeassistant-stubs/components/baf/light.pyi +1 -2
  74. homeassistant-stubs/components/baf/models.pyi +0 -2
  75. homeassistant-stubs/components/baf/number.pyi +0 -2
  76. homeassistant-stubs/components/baf/sensor.pyi +0 -2
  77. homeassistant-stubs/components/baf/switch.pyi +0 -2
  78. homeassistant-stubs/components/bayesian/helpers.pyi +0 -1
  79. homeassistant-stubs/components/binary_sensor/__init__.pyi +0 -1
  80. homeassistant-stubs/components/bluetooth/base_scanner.pyi +0 -1
  81. homeassistant-stubs/components/bluetooth/match.pyi +0 -1
  82. homeassistant-stubs/components/bluetooth/models.pyi +0 -1
  83. homeassistant-stubs/components/bluetooth/passive_update_processor.pyi +59 -20
  84. homeassistant-stubs/components/bluetooth/update_coordinator.pyi +6 -3
  85. homeassistant-stubs/components/bluetooth/wrappers.pyi +1 -2
  86. homeassistant-stubs/components/bmw_connected_drive/__init__.pyi +1 -1
  87. homeassistant-stubs/components/bmw_connected_drive/binary_sensor.pyi +0 -2
  88. homeassistant-stubs/components/bmw_connected_drive/button.pyi +6 -5
  89. homeassistant-stubs/components/bmw_connected_drive/number.pyi +0 -2
  90. homeassistant-stubs/components/bmw_connected_drive/select.pyi +0 -2
  91. homeassistant-stubs/components/bmw_connected_drive/sensor.pyi +0 -1
  92. homeassistant-stubs/components/bmw_connected_drive/switch.pyi +0 -2
  93. homeassistant-stubs/components/bond/button.pyi +0 -2
  94. homeassistant-stubs/components/bond/entity.pyi +2 -1
  95. homeassistant-stubs/components/bond/models.pyi +0 -1
  96. homeassistant-stubs/components/braviatv/button.pyi +0 -2
  97. homeassistant-stubs/components/braviatv/coordinator.pyi +2 -2
  98. homeassistant-stubs/components/braviatv/entity.pyi +1 -1
  99. homeassistant-stubs/components/brother/sensor.pyi +1 -3
  100. homeassistant-stubs/components/button/__init__.pyi +0 -1
  101. homeassistant-stubs/components/calendar/__init__.pyi +5 -3
  102. homeassistant-stubs/components/calendar/trigger.pyi +0 -2
  103. homeassistant-stubs/components/camera/__init__.pyi +3 -1
  104. homeassistant-stubs/components/camera/prefs.pyi +0 -1
  105. homeassistant-stubs/components/canary/camera.pyi +1 -1
  106. homeassistant-stubs/components/canary/sensor.pyi +1 -1
  107. homeassistant-stubs/components/cloud/alexa_config.pyi +3 -2
  108. homeassistant-stubs/components/cloud/http_api.pyi +3 -3
  109. homeassistant-stubs/components/cover/__init__.pyi +2 -3
  110. homeassistant-stubs/components/cpuspeed/sensor.pyi +1 -1
  111. homeassistant-stubs/components/crownstone/devices.pyi +2 -1
  112. homeassistant-stubs/components/deconz/binary_sensor.pyi +0 -2
  113. homeassistant-stubs/components/deconz/button.pyi +0 -2
  114. homeassistant-stubs/components/deconz/deconz_device.pyi +2 -2
  115. homeassistant-stubs/components/deconz/device_trigger.pyi +1 -0
  116. homeassistant-stubs/components/deconz/light.pyi +1 -1
  117. homeassistant-stubs/components/deconz/number.pyi +0 -2
  118. homeassistant-stubs/components/deconz/sensor.pyi +0 -2
  119. homeassistant-stubs/components/demo/binary_sensor.pyi +1 -1
  120. homeassistant-stubs/components/demo/button.pyi +1 -1
  121. homeassistant-stubs/components/demo/calendar.pyi +2 -2
  122. homeassistant-stubs/components/demo/climate.pyi +1 -1
  123. homeassistant-stubs/components/demo/cover.pyi +1 -1
  124. homeassistant-stubs/components/demo/date.pyi +1 -1
  125. homeassistant-stubs/components/demo/datetime.pyi +1 -1
  126. homeassistant-stubs/components/demo/event.pyi +1 -1
  127. homeassistant-stubs/components/demo/light.pyi +1 -1
  128. homeassistant-stubs/components/demo/number.pyi +1 -1
  129. homeassistant-stubs/components/demo/select.pyi +1 -1
  130. homeassistant-stubs/components/demo/sensor.pyi +1 -1
  131. homeassistant-stubs/components/demo/switch.pyi +1 -1
  132. homeassistant-stubs/components/demo/text.pyi +1 -1
  133. homeassistant-stubs/components/demo/time.pyi +1 -1
  134. homeassistant-stubs/components/demo/update.pyi +1 -1
  135. homeassistant-stubs/components/demo/weather.pyi +1 -0
  136. homeassistant-stubs/components/derivative/sensor.pyi +1 -1
  137. homeassistant-stubs/components/device_automation/__init__.pyi +0 -1
  138. homeassistant-stubs/components/device_tracker/config_entry.pyi +2 -1
  139. homeassistant-stubs/components/devolo_home_control/devolo_device.pyi +2 -1
  140. homeassistant-stubs/components/devolo_home_network/__init__.pyi +2 -2
  141. homeassistant-stubs/components/devolo_home_network/binary_sensor.pyi +0 -2
  142. homeassistant-stubs/components/devolo_home_network/button.pyi +0 -2
  143. homeassistant-stubs/components/devolo_home_network/const.pyi +2 -0
  144. homeassistant-stubs/components/devolo_home_network/entity.pyi +2 -1
  145. homeassistant-stubs/components/devolo_home_network/image.pyi +32 -0
  146. homeassistant-stubs/components/devolo_home_network/sensor.pyi +0 -2
  147. homeassistant-stubs/components/devolo_home_network/switch.pyi +0 -2
  148. homeassistant-stubs/components/devolo_home_network/update.pyi +40 -0
  149. homeassistant-stubs/components/dhcp/__init__.pyi +0 -1
  150. homeassistant-stubs/components/diagnostics/__init__.pyi +0 -2
  151. homeassistant-stubs/components/dlna_dmr/media_player.pyi +2 -2
  152. homeassistant-stubs/components/dnsip/sensor.pyi +1 -2
  153. homeassistant-stubs/components/doorbird/__init__.pyi +25 -0
  154. homeassistant-stubs/components/doorbird/button.pyi +32 -0
  155. homeassistant-stubs/components/doorbird/camera.pyi +33 -0
  156. homeassistant-stubs/components/doorbird/config_flow.pyi +37 -0
  157. homeassistant-stubs/components/doorbird/const.pyi +19 -0
  158. homeassistant-stubs/components/doorbird/device.pyi +40 -0
  159. homeassistant-stubs/components/doorbird/entity.pyi +14 -0
  160. homeassistant-stubs/components/doorbird/logbook.pyi +8 -0
  161. homeassistant-stubs/components/doorbird/models.pyi +8 -0
  162. homeassistant-stubs/components/doorbird/util.pyi +8 -0
  163. homeassistant-stubs/components/doorbird/view.pyi +14 -0
  164. homeassistant-stubs/components/dormakaba_dkey/binary_sensor.pyi +0 -2
  165. homeassistant-stubs/components/dormakaba_dkey/entity.pyi +1 -1
  166. homeassistant-stubs/components/dormakaba_dkey/models.pyi +0 -1
  167. homeassistant-stubs/components/dsmr/sensor.pyi +1 -3
  168. homeassistant-stubs/components/dunehd/media_player.pyi +3 -7
  169. homeassistant-stubs/components/efergy/__init__.pyi +2 -1
  170. homeassistant-stubs/components/electrasmart/climate.pyi +1 -1
  171. homeassistant-stubs/components/electric_kiwi/select.pyi +27 -0
  172. homeassistant-stubs/components/electric_kiwi/sensor.pyi +1 -3
  173. homeassistant-stubs/components/elgato/button.pyi +0 -2
  174. homeassistant-stubs/components/elgato/coordinator.pyi +0 -1
  175. homeassistant-stubs/components/elgato/entity.pyi +1 -2
  176. homeassistant-stubs/components/elgato/sensor.pyi +0 -2
  177. homeassistant-stubs/components/elgato/switch.pyi +0 -2
  178. homeassistant-stubs/components/elkm1/__init__.pyi +2 -2
  179. homeassistant-stubs/components/elkm1/climate.pyi +6 -15
  180. homeassistant-stubs/components/elkm1/sensor.pyi +10 -18
  181. homeassistant-stubs/components/energy/sensor.pyi +0 -1
  182. homeassistant-stubs/components/energy/validate.pyi +0 -3
  183. homeassistant-stubs/components/esphome/bluetooth/cache.pyi +0 -1
  184. homeassistant-stubs/components/esphome/bluetooth/client.pyi +3 -3
  185. homeassistant-stubs/components/esphome/bluetooth/device.pyi +0 -1
  186. homeassistant-stubs/components/esphome/bluetooth/scanner.pyi +2 -0
  187. homeassistant-stubs/components/esphome/domain_data.pyi +0 -1
  188. homeassistant-stubs/components/esphome/entity.pyi +2 -1
  189. homeassistant-stubs/components/esphome/entry_data.pyi +0 -1
  190. homeassistant-stubs/components/esphome/manager.pyi +1 -1
  191. homeassistant-stubs/components/esphome/update.pyi +1 -1
  192. homeassistant-stubs/components/esphome/voice_assistant.pyi +5 -7
  193. homeassistant-stubs/components/event/__init__.pyi +0 -2
  194. homeassistant-stubs/components/evil_genius_labs/__init__.pyi +1 -1
  195. homeassistant-stubs/components/evil_genius_labs/util.pyi +3 -2
  196. homeassistant-stubs/components/fan/__init__.pyi +0 -1
  197. homeassistant-stubs/components/feedreader/__init__.pyi +21 -18
  198. homeassistant-stubs/components/file_upload/__init__.pyi +0 -1
  199. homeassistant-stubs/components/filesize/__init__.pyi +2 -1
  200. homeassistant-stubs/components/filesize/coordinator.pyi +12 -0
  201. homeassistant-stubs/components/filesize/sensor.pyi +3 -8
  202. homeassistant-stubs/components/filter/sensor.pyi +0 -1
  203. homeassistant-stubs/components/fitbit/sensor.pyi +0 -1
  204. homeassistant-stubs/components/flux_led/entity.pyi +2 -1
  205. homeassistant-stubs/components/forecast_solar/__init__.pyi +2 -1
  206. homeassistant-stubs/components/forecast_solar/config_flow.pyi +1 -1
  207. homeassistant-stubs/components/forecast_solar/const.pyi +2 -0
  208. homeassistant-stubs/components/forecast_solar/coordinator.pyi +1 -1
  209. homeassistant-stubs/components/forecast_solar/sensor.pyi +1 -3
  210. homeassistant-stubs/components/fritz/binary_sensor.pyi +0 -1
  211. homeassistant-stubs/components/fritz/button.pyi +1 -4
  212. homeassistant-stubs/components/fritz/common.pyi +2 -6
  213. homeassistant-stubs/components/fritz/sensor.pyi +0 -1
  214. homeassistant-stubs/components/fritz/switch.pyi +2 -2
  215. homeassistant-stubs/components/fritzbox/__init__.pyi +3 -2
  216. homeassistant-stubs/components/fritzbox/binary_sensor.pyi +0 -2
  217. homeassistant-stubs/components/fritzbox/button.pyi +1 -1
  218. homeassistant-stubs/components/fritzbox/coordinator.pyi +0 -1
  219. homeassistant-stubs/components/fritzbox/model.pyi +0 -1
  220. homeassistant-stubs/components/fritzbox/sensor.pyi +5 -3
  221. homeassistant-stubs/components/fritzbox_callmonitor/sensor.pyi +1 -1
  222. homeassistant-stubs/components/fronius/__init__.pyi +1 -1
  223. homeassistant-stubs/components/fronius/const.pyi +1 -1
  224. homeassistant-stubs/components/fronius/sensor.pyi +1 -2
  225. homeassistant-stubs/components/fully_kiosk/button.pyi +0 -2
  226. homeassistant-stubs/components/fully_kiosk/entity.pyi +2 -2
  227. homeassistant-stubs/components/fully_kiosk/sensor.pyi +0 -1
  228. homeassistant-stubs/components/fully_kiosk/switch.pyi +0 -2
  229. homeassistant-stubs/components/geocaching/sensor.pyi +1 -4
  230. homeassistant-stubs/components/gios/sensor.pyi +1 -4
  231. homeassistant-stubs/components/goalzero/entity.pyi +2 -1
  232. homeassistant-stubs/components/google/calendar.pyi +3 -8
  233. homeassistant-stubs/components/group/__init__.pyi +4 -1
  234. homeassistant-stubs/components/group/binary_sensor.pyi +4 -4
  235. homeassistant-stubs/components/group/config_flow.pyi +22 -7
  236. homeassistant-stubs/components/group/cover.pyi +6 -9
  237. homeassistant-stubs/components/group/event.pyi +29 -0
  238. homeassistant-stubs/components/group/fan.pyi +6 -9
  239. homeassistant-stubs/components/group/light.pyi +3 -4
  240. homeassistant-stubs/components/group/lock.pyi +2 -3
  241. homeassistant-stubs/components/group/media_player.pyi +5 -3
  242. homeassistant-stubs/components/group/sensor.pyi +2 -3
  243. homeassistant-stubs/components/group/switch.pyi +2 -3
  244. homeassistant-stubs/components/guardian/__init__.pyi +2 -4
  245. homeassistant-stubs/components/guardian/binary_sensor.pyi +0 -1
  246. homeassistant-stubs/components/guardian/button.pyi +0 -2
  247. homeassistant-stubs/components/guardian/sensor.pyi +0 -1
  248. homeassistant-stubs/components/guardian/switch.pyi +0 -2
  249. homeassistant-stubs/components/guardian/util.pyi +0 -1
  250. homeassistant-stubs/components/hardware/models.pyi +0 -3
  251. homeassistant-stubs/components/hardware/websocket_api.pyi +0 -1
  252. homeassistant-stubs/components/here_travel_time/model.pyi +0 -1
  253. homeassistant-stubs/components/here_travel_time/sensor.pyi +1 -2
  254. homeassistant-stubs/components/history/websocket_api.pyi +0 -1
  255. homeassistant-stubs/components/homeassistant/exposed_entities.pyi +0 -2
  256. homeassistant-stubs/components/homeassistant_alerts/__init__.pyi +0 -1
  257. homeassistant-stubs/components/homeassistant_green/__init__.pyi +7 -0
  258. homeassistant-stubs/components/homeassistant_green/config_flow.pyi +8 -0
  259. homeassistant-stubs/components/homeassistant_green/const.pyi +1 -0
  260. homeassistant-stubs/components/homeassistant_green/hardware.pyi +11 -0
  261. homeassistant-stubs/components/homeassistant_hardware/const.pyi +1 -0
  262. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +29 -13
  263. homeassistant-stubs/components/homeassistant_sky_connect/hardware.pyi +1 -0
  264. homeassistant-stubs/components/homeassistant_yellow/hardware.pyi +1 -0
  265. homeassistant-stubs/components/homekit_controller/button.pyi +0 -1
  266. homeassistant-stubs/components/homewizard/const.pyi +0 -1
  267. homeassistant-stubs/components/homewizard/entity.pyi +1 -1
  268. homeassistant-stubs/components/homewizard/helpers.pyi +3 -2
  269. homeassistant-stubs/components/homewizard/sensor.pyi +0 -2
  270. homeassistant-stubs/components/homewizard/switch.pyi +0 -2
  271. homeassistant-stubs/components/http/__init__.pyi +5 -1
  272. homeassistant-stubs/components/http/ban.pyi +2 -2
  273. homeassistant-stubs/components/http/data_validator.pyi +2 -2
  274. homeassistant-stubs/components/http/decorators.pyi +15 -0
  275. homeassistant-stubs/components/http/headers.pyi +5 -0
  276. homeassistant-stubs/components/huawei_lte/__init__.pyi +2 -4
  277. homeassistant-stubs/components/huawei_lte/binary_sensor.pyi +0 -11
  278. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +0 -1
  279. homeassistant-stubs/components/huawei_lte/notify.pyi +0 -1
  280. homeassistant-stubs/components/huawei_lte/sensor.pyi +0 -4
  281. homeassistant-stubs/components/huawei_lte/switch.pyi +0 -5
  282. homeassistant-stubs/components/hyperion/camera.pyi +4 -5
  283. homeassistant-stubs/components/hyperion/const.pyi +0 -2
  284. homeassistant-stubs/components/hyperion/light.pyi +3 -5
  285. homeassistant-stubs/components/hyperion/switch.pyi +5 -6
  286. homeassistant-stubs/components/ibeacon/entity.pyi +2 -1
  287. homeassistant-stubs/components/ibeacon/sensor.pyi +0 -2
  288. homeassistant-stubs/components/image/__init__.pyi +0 -2
  289. homeassistant-stubs/components/image_processing/__init__.pyi +0 -1
  290. homeassistant-stubs/components/imap/sensor.pyi +1 -2
  291. homeassistant-stubs/components/integration/sensor.pyi +1 -2
  292. homeassistant-stubs/components/ipp/__init__.pyi +11 -0
  293. homeassistant-stubs/components/ipp/config_flow.pyi +22 -0
  294. homeassistant-stubs/components/ipp/const.pyi +13 -0
  295. homeassistant-stubs/components/ipp/coordinator.pyi +15 -0
  296. homeassistant-stubs/components/ipp/entity.pyi +13 -0
  297. homeassistant-stubs/components/ipp/sensor.pyi +36 -0
  298. homeassistant-stubs/components/isy994/__init__.pyi +1 -2
  299. homeassistant-stubs/components/isy994/binary_sensor.pyi +2 -1
  300. homeassistant-stubs/components/isy994/button.pyi +2 -1
  301. homeassistant-stubs/components/isy994/climate.pyi +2 -1
  302. homeassistant-stubs/components/isy994/cover.pyi +2 -1
  303. homeassistant-stubs/components/isy994/entity.pyi +2 -1
  304. homeassistant-stubs/components/isy994/fan.pyi +2 -1
  305. homeassistant-stubs/components/isy994/helpers.pyi +1 -1
  306. homeassistant-stubs/components/isy994/light.pyi +2 -1
  307. homeassistant-stubs/components/isy994/lock.pyi +2 -1
  308. homeassistant-stubs/components/isy994/models.pyi +1 -2
  309. homeassistant-stubs/components/isy994/number.pyi +2 -1
  310. homeassistant-stubs/components/isy994/select.pyi +1 -1
  311. homeassistant-stubs/components/isy994/sensor.pyi +2 -1
  312. homeassistant-stubs/components/isy994/switch.pyi +1 -2
  313. homeassistant-stubs/components/jellyfin/entity.pyi +2 -2
  314. homeassistant-stubs/components/jellyfin/media_player.pyi +1 -1
  315. homeassistant-stubs/components/jellyfin/models.pyi +0 -1
  316. homeassistant-stubs/components/jellyfin/sensor.pyi +0 -2
  317. homeassistant-stubs/components/jewish_calendar/binary_sensor.pyi +0 -2
  318. homeassistant-stubs/components/jvc_projector/entity.pyi +1 -1
  319. homeassistant-stubs/components/kaleidescape/__init__.pyi +0 -1
  320. homeassistant-stubs/components/kaleidescape/entity.pyi +2 -1
  321. homeassistant-stubs/components/kaleidescape/sensor.pyi +0 -2
  322. homeassistant-stubs/components/knx/config_flow.pyi +1 -4
  323. homeassistant-stubs/components/knx/device.pyi +1 -1
  324. homeassistant-stubs/components/knx/helpers/keyring.pyi +12 -0
  325. homeassistant-stubs/components/knx/project.pyi +0 -1
  326. homeassistant-stubs/components/knx/sensor.pyi +0 -1
  327. homeassistant-stubs/components/kraken/sensor.pyi +3 -5
  328. homeassistant-stubs/components/lacrosse_view/sensor.pyi +1 -3
  329. homeassistant-stubs/components/lametric/button.pyi +0 -2
  330. homeassistant-stubs/components/lametric/entity.pyi +1 -2
  331. homeassistant-stubs/components/lametric/helpers.pyi +3 -2
  332. homeassistant-stubs/components/lametric/number.pyi +0 -2
  333. homeassistant-stubs/components/lametric/select.pyi +0 -2
  334. homeassistant-stubs/components/lametric/sensor.pyi +0 -2
  335. homeassistant-stubs/components/lametric/switch.pyi +0 -2
  336. homeassistant-stubs/components/laundrify/binary_sensor.pyi +1 -1
  337. homeassistant-stubs/components/lawn_mower/__init__.pyi +35 -0
  338. homeassistant-stubs/components/lawn_mower/const.pyi +17 -0
  339. homeassistant-stubs/components/lcn/__init__.pyi +2 -1
  340. homeassistant-stubs/components/ld2410_ble/binary_sensor.pyi +1 -1
  341. homeassistant-stubs/components/ld2410_ble/coordinator.pyi +1 -1
  342. homeassistant-stubs/components/ld2410_ble/models.pyi +0 -1
  343. homeassistant-stubs/components/ld2410_ble/sensor.pyi +1 -1
  344. homeassistant-stubs/components/lidarr/__init__.pyi +2 -2
  345. homeassistant-stubs/components/lidarr/sensor.pyi +0 -2
  346. homeassistant-stubs/components/lifx/__init__.pyi +1 -1
  347. homeassistant-stubs/components/lifx/entity.pyi +1 -1
  348. homeassistant-stubs/components/lifx/light.pyi +1 -2
  349. homeassistant-stubs/components/light/__init__.pyi +0 -3
  350. homeassistant-stubs/components/litejet/config_flow.pyi +2 -1
  351. homeassistant-stubs/components/litejet/light.pyi +1 -1
  352. homeassistant-stubs/components/litejet/scene.pyi +1 -1
  353. homeassistant-stubs/components/litejet/switch.pyi +1 -1
  354. homeassistant-stubs/components/litterrobot/__init__.pyi +2 -0
  355. homeassistant-stubs/components/litterrobot/binary_sensor.pyi +0 -2
  356. homeassistant-stubs/components/litterrobot/button.pyi +0 -2
  357. homeassistant-stubs/components/litterrobot/entity.pyi +2 -1
  358. homeassistant-stubs/components/litterrobot/select.pyi +0 -2
  359. homeassistant-stubs/components/litterrobot/sensor.pyi +0 -1
  360. homeassistant-stubs/components/litterrobot/switch.pyi +0 -2
  361. homeassistant-stubs/components/litterrobot/time.pyi +0 -2
  362. homeassistant-stubs/components/lock/__init__.pyi +0 -1
  363. homeassistant-stubs/components/logbook/models.pyi +0 -2
  364. homeassistant-stubs/components/logbook/processor.pyi +0 -1
  365. homeassistant-stubs/components/logbook/websocket_api.pyi +0 -1
  366. homeassistant-stubs/components/logger/helpers.pyi +0 -2
  367. homeassistant-stubs/components/lookin/const.pyi +1 -1
  368. homeassistant-stubs/components/lookin/entity.pyi +1 -1
  369. homeassistant-stubs/components/lookin/models.pyi +0 -1
  370. homeassistant-stubs/components/luftdaten/sensor.pyi +1 -1
  371. homeassistant-stubs/components/matter/binary_sensor.pyi +0 -1
  372. homeassistant-stubs/components/matter/entity.pyi +2 -2
  373. homeassistant-stubs/components/matter/helpers.pyi +0 -1
  374. homeassistant-stubs/components/matter/models.pyi +0 -2
  375. homeassistant-stubs/components/matter/sensor.pyi +0 -1
  376. homeassistant-stubs/components/media_extractor/__init__.pyi +31 -0
  377. homeassistant-stubs/components/media_player/__init__.pyi +0 -1
  378. homeassistant-stubs/components/media_source/local_source.pyi +1 -1
  379. homeassistant-stubs/components/media_source/models.pyi +0 -2
  380. homeassistant-stubs/components/metoffice/__init__.pyi +1 -1
  381. homeassistant-stubs/components/metoffice/const.pyi +1 -0
  382. homeassistant-stubs/components/metoffice/data.pyi +0 -1
  383. homeassistant-stubs/components/metoffice/sensor.pyi +1 -1
  384. homeassistant-stubs/components/metoffice/weather.pyi +1 -2
  385. homeassistant-stubs/components/mjpeg/camera.pyi +1 -1
  386. homeassistant-stubs/components/modbus/__init__.pyi +2 -2
  387. homeassistant-stubs/components/modbus/base_platform.pyi +4 -3
  388. homeassistant-stubs/components/modbus/climate.pyi +4 -3
  389. homeassistant-stubs/components/modbus/const.pyi +3 -11
  390. homeassistant-stubs/components/modbus/modbus.pyi +6 -6
  391. homeassistant-stubs/components/modbus/sensor.pyi +4 -1
  392. homeassistant-stubs/components/modbus/validators.pyi +1 -0
  393. homeassistant-stubs/components/modem_callerid/button.pyi +4 -1
  394. homeassistant-stubs/components/modem_callerid/sensor.pyi +5 -2
  395. homeassistant-stubs/components/moon/sensor.pyi +1 -3
  396. homeassistant-stubs/components/mqtt/abbreviations.pyi +1 -0
  397. homeassistant-stubs/components/mqtt/alarm_control_panel.pyi +2 -3
  398. homeassistant-stubs/components/mqtt/climate.pyi +4 -1
  399. homeassistant-stubs/components/mqtt/const.pyi +13 -0
  400. homeassistant-stubs/components/mqtt/device_tracker.pyi +2 -0
  401. homeassistant-stubs/components/mqtt/discovery.pyi +6 -4
  402. homeassistant-stubs/components/mqtt/lawn_mower.pyi +64 -0
  403. homeassistant-stubs/components/mqtt/mixins.pyi +4 -14
  404. homeassistant-stubs/components/mqtt/models.pyi +7 -1
  405. homeassistant-stubs/components/mysensors/binary_sensor.pyi +0 -1
  406. homeassistant-stubs/components/mysensors/device.pyi +2 -1
  407. homeassistant-stubs/components/nam/__init__.pyi +1 -1
  408. homeassistant-stubs/components/nam/config_flow.pyi +0 -1
  409. homeassistant-stubs/components/nam/sensor.pyi +0 -2
  410. homeassistant-stubs/components/nanoleaf/__init__.pyi +0 -1
  411. homeassistant-stubs/components/nanoleaf/entity.pyi +1 -1
  412. homeassistant-stubs/components/neato/__init__.pyi +1 -0
  413. homeassistant-stubs/components/neato/button.pyi +18 -0
  414. homeassistant-stubs/components/neato/camera.pyi +4 -9
  415. homeassistant-stubs/components/neato/entity.pyi +12 -0
  416. homeassistant-stubs/components/neato/sensor.pyi +3 -9
  417. homeassistant-stubs/components/neato/switch.pyi +4 -9
  418. homeassistant-stubs/components/neato/vacuum.pyi +5 -5
  419. homeassistant-stubs/components/nest/camera.pyi +6 -4
  420. homeassistant-stubs/components/nest/climate.pyi +5 -11
  421. homeassistant-stubs/components/nest/device_info.pyi +1 -1
  422. homeassistant-stubs/components/nest/media_source.pyi +0 -1
  423. homeassistant-stubs/components/netatmo/__init__.pyi +1 -0
  424. homeassistant-stubs/components/netatmo/climate.pyi +1 -1
  425. homeassistant-stubs/components/netatmo/data_handler.pyi +0 -4
  426. homeassistant-stubs/components/netatmo/helper.pyi +0 -1
  427. homeassistant-stubs/components/netatmo/netatmo_entity_base.pyi +2 -1
  428. homeassistant-stubs/components/netatmo/sensor.pyi +0 -2
  429. homeassistant-stubs/components/nextdns/__init__.pyi +2 -3
  430. homeassistant-stubs/components/nextdns/binary_sensor.pyi +0 -2
  431. homeassistant-stubs/components/nextdns/sensor.pyi +0 -2
  432. homeassistant-stubs/components/nextdns/switch.pyi +0 -2
  433. homeassistant-stubs/components/notion/__init__.pyi +2 -2
  434. homeassistant-stubs/components/notion/binary_sensor.pyi +0 -2
  435. homeassistant-stubs/components/notion/model.pyi +0 -1
  436. homeassistant-stubs/components/notion/sensor.pyi +0 -1
  437. homeassistant-stubs/components/number/__init__.pyi +0 -2
  438. homeassistant-stubs/components/nut/__init__.pyi +0 -1
  439. homeassistant-stubs/components/nut/sensor.pyi +1 -1
  440. homeassistant-stubs/components/oncue/entity.pyi +3 -1
  441. homeassistant-stubs/components/onewire/binary_sensor.pyi +0 -1
  442. homeassistant-stubs/components/onewire/model.pyi +1 -2
  443. homeassistant-stubs/components/onewire/onewire_entities.pyi +2 -2
  444. homeassistant-stubs/components/onewire/onewirehub.pyi +1 -1
  445. homeassistant-stubs/components/onewire/sensor.pyi +0 -1
  446. homeassistant-stubs/components/onewire/switch.pyi +0 -1
  447. homeassistant-stubs/components/open_meteo/weather.pyi +7 -6
  448. homeassistant-stubs/components/openexchangerates/sensor.pyi +4 -5
  449. homeassistant-stubs/components/opensky/__init__.pyi +5 -1
  450. homeassistant-stubs/components/opensky/config_flow.pyi +10 -3
  451. homeassistant-stubs/components/opensky/const.pyi +3 -1
  452. homeassistant-stubs/components/opensky/coordinator.pyi +17 -0
  453. homeassistant-stubs/components/opensky/sensor.pyi +14 -22
  454. homeassistant-stubs/components/openuv/config_flow.pyi +0 -1
  455. homeassistant-stubs/components/otbr/util.pyi +6 -4
  456. homeassistant-stubs/components/otbr/websocket_api.pyi +0 -1
  457. homeassistant-stubs/components/overkiz/__init__.pyi +0 -1
  458. homeassistant-stubs/components/overkiz/alarm_control_panel.pyi +0 -2
  459. homeassistant-stubs/components/overkiz/binary_sensor.pyi +0 -2
  460. homeassistant-stubs/components/overkiz/button.pyi +0 -1
  461. homeassistant-stubs/components/overkiz/entity.pyi +2 -1
  462. homeassistant-stubs/components/overkiz/number.pyi +0 -2
  463. homeassistant-stubs/components/overkiz/select.pyi +0 -2
  464. homeassistant-stubs/components/overkiz/sensor.pyi +1 -2
  465. homeassistant-stubs/components/overkiz/switch.pyi +0 -2
  466. homeassistant-stubs/components/peco/__init__.pyi +0 -1
  467. homeassistant-stubs/components/peco/sensor.pyi +3 -3
  468. homeassistant-stubs/components/pi_hole/__init__.pyi +1 -1
  469. homeassistant-stubs/components/pi_hole/binary_sensor.pyi +0 -2
  470. homeassistant-stubs/components/pi_hole/update.pyi +0 -1
  471. homeassistant-stubs/components/powerwall/binary_sensor.pyi +4 -5
  472. homeassistant-stubs/components/powerwall/entity.pyi +2 -1
  473. homeassistant-stubs/components/powerwall/models.pyi +0 -2
  474. homeassistant-stubs/components/powerwall/sensor.pyi +4 -6
  475. homeassistant-stubs/components/powerwall/switch.pyi +1 -2
  476. homeassistant-stubs/components/prusalink/__init__.pyi +1 -1
  477. homeassistant-stubs/components/prusalink/button.pyi +0 -2
  478. homeassistant-stubs/components/prusalink/sensor.pyi +0 -2
  479. homeassistant-stubs/components/pure_energie/sensor.pyi +1 -3
  480. homeassistant-stubs/components/purpleair/__init__.pyi +1 -1
  481. homeassistant-stubs/components/purpleair/config_flow.pyi +0 -1
  482. homeassistant-stubs/components/purpleair/sensor.pyi +0 -2
  483. homeassistant-stubs/components/pvoutput/sensor.pyi +1 -3
  484. homeassistant-stubs/components/qnap_qsw/binary_sensor.pyi +2 -1
  485. homeassistant-stubs/components/qnap_qsw/button.pyi +1 -3
  486. homeassistant-stubs/components/qnap_qsw/entity.pyi +3 -3
  487. homeassistant-stubs/components/qnap_qsw/sensor.pyi +2 -1
  488. homeassistant-stubs/components/qnap_qsw/update.pyi +0 -1
  489. homeassistant-stubs/components/radarr/__init__.pyi +2 -2
  490. homeassistant-stubs/components/radarr/sensor.pyi +0 -2
  491. homeassistant-stubs/components/rainmachine/__init__.pyi +1 -2
  492. homeassistant-stubs/components/rainmachine/binary_sensor.pyi +0 -1
  493. homeassistant-stubs/components/rainmachine/button.pyi +0 -2
  494. homeassistant-stubs/components/rainmachine/model.pyi +0 -4
  495. homeassistant-stubs/components/rainmachine/select.pyi +0 -4
  496. homeassistant-stubs/components/rainmachine/sensor.pyi +0 -2
  497. homeassistant-stubs/components/rainmachine/switch.pyi +2 -5
  498. homeassistant-stubs/components/rainmachine/util.pyi +0 -1
  499. homeassistant-stubs/components/rdw/binary_sensor.pyi +1 -4
  500. homeassistant-stubs/components/rdw/sensor.pyi +1 -4
  501. homeassistant-stubs/components/recollect_waste/entity.pyi +1 -2
  502. homeassistant-stubs/components/recorder/migration.pyi +0 -2
  503. homeassistant-stubs/components/recorder/models/database.pyi +0 -2
  504. homeassistant-stubs/components/recorder/statistics.pyi +0 -2
  505. homeassistant-stubs/components/recorder/table_managers/recorder_runs.pyi +0 -1
  506. homeassistant-stubs/components/recorder/tasks.pyi +0 -30
  507. homeassistant-stubs/components/recorder/util.pyi +2 -2
  508. homeassistant-stubs/components/remote/__init__.pyi +0 -1
  509. homeassistant-stubs/components/renault/binary_sensor.pyi +0 -2
  510. homeassistant-stubs/components/renault/button.pyi +0 -2
  511. homeassistant-stubs/components/renault/entity.pyi +0 -2
  512. homeassistant-stubs/components/renault/renault_hub.pyi +1 -0
  513. homeassistant-stubs/components/renault/renault_vehicle.pyi +3 -4
  514. homeassistant-stubs/components/renault/select.pyi +0 -2
  515. homeassistant-stubs/components/renault/sensor.pyi +0 -2
  516. homeassistant-stubs/components/repairs/websocket_api.pyi +1 -0
  517. homeassistant-stubs/components/rest/binary_sensor.pyi +7 -5
  518. homeassistant-stubs/components/rest/schema.pyi +1 -1
  519. homeassistant-stubs/components/rest/sensor.pyi +13 -6
  520. homeassistant-stubs/components/rest/switch.pyi +6 -5
  521. homeassistant-stubs/components/rest/util.pyi +7 -0
  522. homeassistant-stubs/components/rfxtrx/__init__.pyi +2 -1
  523. homeassistant-stubs/components/rfxtrx/sensor.pyi +0 -1
  524. homeassistant-stubs/components/ridwell/entity.pyi +1 -2
  525. homeassistant-stubs/components/ridwell/switch.pyi +0 -1
  526. homeassistant-stubs/components/rituals_perfume_genie/binary_sensor.pyi +0 -2
  527. homeassistant-stubs/components/rituals_perfume_genie/entity.pyi +2 -1
  528. homeassistant-stubs/components/rituals_perfume_genie/number.pyi +0 -2
  529. homeassistant-stubs/components/rituals_perfume_genie/select.pyi +0 -2
  530. homeassistant-stubs/components/rituals_perfume_genie/sensor.pyi +0 -2
  531. homeassistant-stubs/components/rituals_perfume_genie/switch.pyi +0 -2
  532. homeassistant-stubs/components/roku/binary_sensor.pyi +0 -2
  533. homeassistant-stubs/components/roku/coordinator.pyi +2 -1
  534. homeassistant-stubs/components/roku/entity.pyi +4 -6
  535. homeassistant-stubs/components/roku/helpers.pyi +2 -2
  536. homeassistant-stubs/components/roku/select.pyi +0 -2
  537. homeassistant-stubs/components/roku/sensor.pyi +0 -2
  538. homeassistant-stubs/components/ruuvi_gateway/models.pyi +0 -1
  539. homeassistant-stubs/components/samsungtv/entity.pyi +2 -1
  540. homeassistant-stubs/components/scrape/__init__.pyi +1 -1
  541. homeassistant-stubs/components/scrape/config_flow.pyi +1 -1
  542. homeassistant-stubs/components/scrape/sensor.pyi +9 -6
  543. homeassistant-stubs/components/select/__init__.pyi +0 -1
  544. homeassistant-stubs/components/sensibo/binary_sensor.pyi +0 -4
  545. homeassistant-stubs/components/sensibo/button.pyi +0 -2
  546. homeassistant-stubs/components/sensibo/climate.pyi +3 -0
  547. homeassistant-stubs/components/sensibo/entity.pyi +3 -4
  548. homeassistant-stubs/components/sensibo/number.pyi +0 -2
  549. homeassistant-stubs/components/sensibo/select.pyi +0 -2
  550. homeassistant-stubs/components/sensibo/sensor.pyi +0 -4
  551. homeassistant-stubs/components/sensibo/switch.pyi +0 -2
  552. homeassistant-stubs/components/sensibo/update.pyi +0 -2
  553. homeassistant-stubs/components/sensor/__init__.pyi +0 -2
  554. homeassistant-stubs/components/senz/climate.pyi +1 -1
  555. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +1 -3
  556. homeassistant-stubs/components/sfr_box/button.pyi +3 -5
  557. homeassistant-stubs/components/sfr_box/models.pyi +0 -1
  558. homeassistant-stubs/components/sfr_box/sensor.pyi +1 -3
  559. homeassistant-stubs/components/shelly/__init__.pyi +2 -1
  560. homeassistant-stubs/components/shelly/binary_sensor.pyi +0 -3
  561. homeassistant-stubs/components/shelly/button.pyi +1 -4
  562. homeassistant-stubs/components/shelly/climate.pyi +1 -3
  563. homeassistant-stubs/components/shelly/const.pyi +1 -0
  564. homeassistant-stubs/components/shelly/coordinator.pyi +4 -4
  565. homeassistant-stubs/components/shelly/entity.pyi +2 -6
  566. homeassistant-stubs/components/shelly/number.pyi +0 -1
  567. homeassistant-stubs/components/shelly/sensor.pyi +0 -3
  568. homeassistant-stubs/components/shelly/switch.pyi +20 -2
  569. homeassistant-stubs/components/shelly/update.pyi +0 -4
  570. homeassistant-stubs/components/simplisafe/__init__.pyi +1 -1
  571. homeassistant-stubs/components/simplisafe/button.pyi +0 -2
  572. homeassistant-stubs/components/skybell/entity.pyi +2 -1
  573. homeassistant-stubs/components/skybell/sensor.pyi +0 -2
  574. homeassistant-stubs/components/slack/__init__.pyi +2 -2
  575. homeassistant-stubs/components/sleepiq/button.pyi +0 -2
  576. homeassistant-stubs/components/sleepiq/coordinator.pyi +0 -1
  577. homeassistant-stubs/components/sleepiq/entity.pyi +2 -1
  578. homeassistant-stubs/components/sleepiq/number.pyi +0 -2
  579. homeassistant-stubs/components/smhi/weather.pyi +11 -6
  580. homeassistant-stubs/components/snooz/config_flow.pyi +0 -1
  581. homeassistant-stubs/components/snooz/fan.pyi +4 -1
  582. homeassistant-stubs/components/snooz/models.pyi +0 -1
  583. homeassistant-stubs/components/sonarr/entity.pyi +2 -2
  584. homeassistant-stubs/components/sonarr/sensor.pyi +0 -2
  585. homeassistant-stubs/components/speedtestdotnet/sensor.pyi +1 -3
  586. homeassistant-stubs/components/sql/__init__.pyi +1 -1
  587. homeassistant-stubs/components/sql/models.pyi +0 -1
  588. homeassistant-stubs/components/sql/sensor.pyi +7 -9
  589. homeassistant-stubs/components/ssdp/__init__.pyi +0 -1
  590. homeassistant-stubs/components/starlink/__init__.pyi +11 -0
  591. homeassistant-stubs/components/starlink/binary_sensor.pyi +26 -0
  592. homeassistant-stubs/components/starlink/button.pyi +25 -0
  593. homeassistant-stubs/components/starlink/config_flow.pyi +12 -0
  594. homeassistant-stubs/components/starlink/const.pyi +1 -0
  595. homeassistant-stubs/components/starlink/coordinator.pyi +21 -0
  596. homeassistant-stubs/components/starlink/device_tracker.pyi +31 -0
  597. homeassistant-stubs/components/starlink/diagnostics.pyi +11 -0
  598. homeassistant-stubs/components/starlink/entity.pyi +13 -0
  599. homeassistant-stubs/components/starlink/sensor.pyi +28 -0
  600. homeassistant-stubs/components/starlink/switch.pyi +30 -0
  601. homeassistant-stubs/components/steamist/entity.pyi +2 -1
  602. homeassistant-stubs/components/steamist/sensor.pyi +0 -2
  603. homeassistant-stubs/components/stookalert/binary_sensor.pyi +1 -2
  604. homeassistant-stubs/components/stream/__init__.pyi +1 -1
  605. homeassistant-stubs/components/stream/core.pyi +4 -2
  606. homeassistant-stubs/components/sun/sensor.pyi +1 -4
  607. homeassistant-stubs/components/surepetcare/__init__.pyi +1 -0
  608. homeassistant-stubs/components/surepetcare/entity.pyi +1 -1
  609. homeassistant-stubs/components/switch/__init__.pyi +0 -1
  610. homeassistant-stubs/components/switchbee/entity.pyi +1 -1
  611. homeassistant-stubs/components/switcher_kis/button.pyi +2 -4
  612. homeassistant-stubs/components/switcher_kis/climate.pyi +3 -2
  613. homeassistant-stubs/components/switcher_kis/cover.pyi +3 -2
  614. homeassistant-stubs/components/switcher_kis/sensor.pyi +7 -20
  615. homeassistant-stubs/components/switcher_kis/switch.pyi +3 -2
  616. homeassistant-stubs/components/synology_dsm/binary_sensor.pyi +0 -1
  617. homeassistant-stubs/components/synology_dsm/button.pyi +1 -3
  618. homeassistant-stubs/components/synology_dsm/camera.pyi +1 -2
  619. homeassistant-stubs/components/synology_dsm/entity.pyi +2 -3
  620. homeassistant-stubs/components/synology_dsm/models.pyi +0 -1
  621. homeassistant-stubs/components/synology_dsm/sensor.pyi +0 -1
  622. homeassistant-stubs/components/synology_dsm/switch.pyi +1 -2
  623. homeassistant-stubs/components/synology_dsm/update.pyi +0 -1
  624. homeassistant-stubs/components/systemmonitor/sensor.pyi +0 -2
  625. homeassistant-stubs/components/tailscale/__init__.pyi +2 -2
  626. homeassistant-stubs/components/tailscale/binary_sensor.pyi +0 -2
  627. homeassistant-stubs/components/tailscale/sensor.pyi +0 -2
  628. homeassistant-stubs/components/tautulli/__init__.pyi +2 -2
  629. homeassistant-stubs/components/tautulli/sensor.pyi +0 -4
  630. homeassistant-stubs/components/text/__init__.pyi +0 -2
  631. homeassistant-stubs/components/threshold/binary_sensor.pyi +1 -1
  632. homeassistant-stubs/components/tibber/sensor.pyi +1 -1
  633. homeassistant-stubs/components/tile/__init__.pyi +0 -1
  634. homeassistant-stubs/components/tile/device_tracker.pyi +5 -1
  635. homeassistant-stubs/components/tolo/__init__.pyi +1 -1
  636. homeassistant-stubs/components/tolo/number.pyi +0 -2
  637. homeassistant-stubs/components/tolo/sensor.pyi +0 -2
  638. homeassistant-stubs/components/tplink/diagnostics.pyi +1 -0
  639. homeassistant-stubs/components/tplink/entity.pyi +3 -3
  640. homeassistant-stubs/components/tplink/sensor.pyi +0 -1
  641. homeassistant-stubs/components/tplink_omada/entity.pyi +1 -1
  642. homeassistant-stubs/components/tplink_omada/update.pyi +2 -2
  643. homeassistant-stubs/components/tractive/__init__.pyi +3 -2
  644. homeassistant-stubs/components/tractive/binary_sensor.pyi +5 -8
  645. homeassistant-stubs/components/tractive/const.pyi +2 -0
  646. homeassistant-stubs/components/tractive/device_tracker.pyi +2 -3
  647. homeassistant-stubs/components/tractive/entity.pyi +13 -4
  648. homeassistant-stubs/components/tractive/sensor.pyi +11 -24
  649. homeassistant-stubs/components/tractive/switch.pyi +4 -9
  650. homeassistant-stubs/components/tradfri/base_class.pyi +1 -1
  651. homeassistant-stubs/components/tradfri/sensor.pyi +0 -2
  652. homeassistant-stubs/components/trafikverket_camera/__init__.pyi +13 -0
  653. homeassistant-stubs/components/trafikverket_camera/camera.pyi +28 -0
  654. homeassistant-stubs/components/trafikverket_camera/config_flow.pyi +15 -0
  655. homeassistant-stubs/components/trafikverket_camera/const.pyi +9 -0
  656. homeassistant-stubs/components/trafikverket_camera/coordinator.pyi +24 -0
  657. homeassistant-stubs/components/trafikverket_camera/recorder.pyi +5 -0
  658. homeassistant-stubs/components/trafikverket_ferry/sensor.pyi +1 -4
  659. homeassistant-stubs/components/trafikverket_train/__init__.pyi +2 -1
  660. homeassistant-stubs/components/trafikverket_train/config_flow.pyi +13 -4
  661. homeassistant-stubs/components/trafikverket_train/const.pyi +1 -0
  662. homeassistant-stubs/components/trafikverket_train/coordinator.pyi +7 -7
  663. homeassistant-stubs/components/trafikverket_train/sensor.pyi +26 -26
  664. homeassistant-stubs/components/trafikverket_train/util.pyi +4 -1
  665. homeassistant-stubs/components/trafikverket_weatherstation/sensor.pyi +1 -4
  666. homeassistant-stubs/components/tts/models.pyi +0 -1
  667. homeassistant-stubs/components/twentemilieu/entity.pyi +2 -2
  668. homeassistant-stubs/components/twentemilieu/sensor.pyi +0 -2
  669. homeassistant-stubs/components/unifi/button.pyi +30 -0
  670. homeassistant-stubs/components/unifi/config_flow.pyi +2 -2
  671. homeassistant-stubs/components/unifi/controller.pyi +10 -14
  672. homeassistant-stubs/components/unifi/device_tracker.pyi +0 -2
  673. homeassistant-stubs/components/unifi/entity.pyi +7 -7
  674. homeassistant-stubs/components/unifi/image.pyi +1 -3
  675. homeassistant-stubs/components/unifi/sensor.pyi +3 -7
  676. homeassistant-stubs/components/unifi/switch.pyi +12 -13
  677. homeassistant-stubs/components/unifi/update.pyi +0 -2
  678. homeassistant-stubs/components/unifiprotect/binary_sensor.pyi +0 -2
  679. homeassistant-stubs/components/unifiprotect/button.pyi +0 -1
  680. homeassistant-stubs/components/unifiprotect/entity.pyi +2 -1
  681. homeassistant-stubs/components/unifiprotect/models.pyi +0 -4
  682. homeassistant-stubs/components/unifiprotect/number.pyi +0 -2
  683. homeassistant-stubs/components/unifiprotect/select.pyi +0 -1
  684. homeassistant-stubs/components/unifiprotect/sensor.pyi +0 -2
  685. homeassistant-stubs/components/unifiprotect/switch.pyi +0 -1
  686. homeassistant-stubs/components/unifiprotect/text.pyi +0 -1
  687. homeassistant-stubs/components/upcloud/__init__.pyi +1 -3
  688. homeassistant-stubs/components/update/__init__.pyi +1 -1
  689. homeassistant-stubs/components/uptime/sensor.pyi +1 -2
  690. homeassistant-stubs/components/uptimerobot/entity.pyi +2 -2
  691. homeassistant-stubs/components/usb/__init__.pyi +0 -1
  692. homeassistant-stubs/components/usb/models.pyi +0 -1
  693. homeassistant-stubs/components/vacuum/__init__.pyi +0 -2
  694. homeassistant-stubs/components/vallox/__init__.pyi +1 -2
  695. homeassistant-stubs/components/vallox/binary_sensor.pyi +0 -2
  696. homeassistant-stubs/components/vallox/number.pyi +0 -2
  697. homeassistant-stubs/components/vallox/sensor.pyi +0 -1
  698. homeassistant-stubs/components/vallox/switch.pyi +0 -2
  699. homeassistant-stubs/components/velbus/button.pyi +1 -1
  700. homeassistant-stubs/components/velbus/climate.pyi +1 -1
  701. homeassistant-stubs/components/velbus/cover.pyi +1 -1
  702. homeassistant-stubs/components/velbus/entity.pyi +9 -1
  703. homeassistant-stubs/components/velbus/light.pyi +1 -1
  704. homeassistant-stubs/components/velbus/select.pyi +1 -1
  705. homeassistant-stubs/components/velbus/switch.pyi +1 -1
  706. homeassistant-stubs/components/vlc_telnet/media_player.pyi +3 -4
  707. homeassistant-stubs/components/wallbox/__init__.pyi +1 -1
  708. homeassistant-stubs/components/wallbox/number.pyi +0 -1
  709. homeassistant-stubs/components/wallbox/sensor.pyi +0 -1
  710. homeassistant-stubs/components/water_heater/__init__.pyi +0 -1
  711. homeassistant-stubs/components/watttime/sensor.pyi +2 -1
  712. homeassistant-stubs/components/weather/__init__.pyi +60 -34
  713. homeassistant-stubs/components/weather/websocket_api.pyi +1 -0
  714. homeassistant-stubs/components/webostv/media_player.pyi +3 -3
  715. homeassistant-stubs/components/wemo/entity.pyi +1 -1
  716. homeassistant-stubs/components/wemo/light.pyi +1 -2
  717. homeassistant-stubs/components/wemo/models.pyi +0 -2
  718. homeassistant-stubs/components/wemo/sensor.pyi +0 -1
  719. homeassistant-stubs/components/wemo/wemo_device.pyi +1 -4
  720. homeassistant-stubs/components/whois/sensor.pyi +1 -4
  721. homeassistant-stubs/components/wiz/entity.pyi +2 -2
  722. homeassistant-stubs/components/wiz/models.pyi +0 -1
  723. homeassistant-stubs/components/wiz/number.pyi +0 -2
  724. homeassistant-stubs/components/wled/helpers.pyi +3 -2
  725. homeassistant-stubs/components/wled/models.pyi +1 -2
  726. homeassistant-stubs/components/wled/number.pyi +0 -2
  727. homeassistant-stubs/components/wled/sensor.pyi +0 -2
  728. homeassistant-stubs/components/yale_smart_alarm/__init__.pyi +4 -1
  729. homeassistant-stubs/components/yale_smart_alarm/config_flow.pyi +1 -1
  730. homeassistant-stubs/components/yale_smart_alarm/coordinator.pyi +1 -1
  731. homeassistant-stubs/components/yale_smart_alarm/entity.pyi +2 -2
  732. homeassistant-stubs/components/yale_smart_alarm/lock.pyi +1 -1
  733. homeassistant-stubs/components/yalexs_ble/entity.pyi +2 -1
  734. homeassistant-stubs/components/yalexs_ble/models.pyi +0 -1
  735. homeassistant-stubs/components/yalexs_ble/sensor.pyi +0 -2
  736. homeassistant-stubs/components/zeroconf/__init__.pyi +0 -1
  737. homeassistant-stubs/components/zodiac/sensor.pyi +1 -2
  738. homeassistant-stubs/components/zwave_js/__init__.pyi +2 -0
  739. homeassistant-stubs/components/zwave_js/api.pyi +1 -1
  740. homeassistant-stubs/components/zwave_js/binary_sensor.pyi +0 -3
  741. homeassistant-stubs/components/zwave_js/device_action.pyi +2 -2
  742. homeassistant-stubs/components/zwave_js/device_automation_helpers.pyi +1 -4
  743. homeassistant-stubs/components/zwave_js/device_condition.pyi +2 -2
  744. homeassistant-stubs/components/zwave_js/diagnostics.pyi +2 -2
  745. homeassistant-stubs/components/zwave_js/discovery.pyi +0 -5
  746. homeassistant-stubs/components/zwave_js/discovery_data_template.pyi +0 -12
  747. homeassistant-stubs/components/zwave_js/entity.pyi +4 -3
  748. homeassistant-stubs/components/zwave_js/helpers.pyi +1 -4
  749. homeassistant-stubs/components/zwave_js/humidifier.pyi +0 -2
  750. homeassistant-stubs/components/zwave_js/migrate.pyi +0 -1
  751. homeassistant-stubs/components/zwave_js/repairs.pyi +15 -0
  752. homeassistant-stubs/components/zwave_js/sensor.pyi +21 -2
  753. homeassistant-stubs/components/zwave_js/services.pyi +0 -1
  754. homeassistant-stubs/components/zwave_js/update.pyi +0 -1
  755. homeassistant-stubs/config_entries.pyi +3 -0
  756. homeassistant-stubs/const.pyi +2 -0
  757. homeassistant-stubs/core.pyi +6 -5
  758. homeassistant-stubs/data_entry_flow.pyi +7 -4
  759. homeassistant-stubs/exceptions.pyi +0 -4
  760. homeassistant-stubs/helpers/collection.pyi +0 -1
  761. homeassistant-stubs/helpers/deprecation.pyi +3 -2
  762. homeassistant-stubs/helpers/device_registry.pyi +18 -2
  763. homeassistant-stubs/helpers/entity.pyi +4 -22
  764. homeassistant-stubs/helpers/entity_registry.pyi +1 -2
  765. homeassistant-stubs/helpers/event.pyi +5 -7
  766. homeassistant-stubs/helpers/integration_platform.pyi +0 -1
  767. homeassistant-stubs/helpers/intent.pyi +0 -1
  768. homeassistant-stubs/helpers/issue_registry.pyi +3 -3
  769. homeassistant-stubs/helpers/recorder.pyi +0 -1
  770. homeassistant-stubs/helpers/schema_config_entry_flow.pyi +6 -7
  771. homeassistant-stubs/helpers/script.pyi +7 -2
  772. homeassistant-stubs/helpers/selector.pyi +1 -0
  773. homeassistant-stubs/helpers/sensor.pyi +1 -1
  774. homeassistant-stubs/helpers/service.pyi +0 -1
  775. homeassistant-stubs/helpers/service_info/mqtt.pyi +0 -1
  776. homeassistant-stubs/helpers/storage.pyi +2 -1
  777. homeassistant-stubs/helpers/template.pyi +9 -15
  778. homeassistant-stubs/helpers/trigger.pyi +0 -1
  779. homeassistant-stubs/helpers/trigger_template_entity.pyi +62 -0
  780. homeassistant-stubs/helpers/update_coordinator.pyi +7 -1
  781. homeassistant-stubs/loader.pyi +3 -2
  782. homeassistant-stubs/runner.pyi +0 -2
  783. homeassistant-stubs/scripts/check_config.pyi +1 -1
  784. homeassistant-stubs/util/async_.pyi +2 -2
  785. homeassistant-stubs/util/language.pyi +0 -2
  786. homeassistant-stubs/util/pil.pyi +1 -1
  787. homeassistant-stubs/util/variance.pyi +3 -2
  788. homeassistant-stubs/util/yaml/objects.pyi +0 -1
  789. {homeassistant_stubs-2023.8.4.dist-info → homeassistant_stubs-2023.9.0.dist-info}/METADATA +3 -3
  790. {homeassistant_stubs-2023.8.4.dist-info → homeassistant_stubs-2023.9.0.dist-info}/RECORD +792 -721
  791. homeassistant-stubs/components/nest/binary_sensor.pyi +0 -7
  792. homeassistant-stubs/helpers/template_entity.pyi +0 -107
  793. {homeassistant_stubs-2023.8.4.dist-info → homeassistant_stubs-2023.9.0.dist-info}/LICENSE +0 -0
  794. {homeassistant_stubs-2023.8.4.dist-info → homeassistant_stubs-2023.9.0.dist-info}/WHEEL +0 -0
@@ -72,7 +72,6 @@ async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: .
72
72
  class MediaPlayerEntityDescription(EntityDescription):
73
73
  device_class: MediaPlayerDeviceClass | None
74
74
  def __init__(self, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, unit_of_measurement) -> None: ...
75
- def __mypy-replace(*, key, device_class, entity_category, entity_registry_enabled_default, entity_registry_visible_default, force_update, icon, has_entity_name, name, translation_key, unit_of_measurement) -> None: ...
76
75
 
77
76
  class MediaPlayerEntity(Entity):
78
77
  entity_description: MediaPlayerEntityDescription
@@ -5,9 +5,9 @@ from _typeshed import Incomplete
5
5
  from aiohttp import web
6
6
  from aiohttp.web_request import FileField
7
7
  from homeassistant.components import http as http, websocket_api as websocket_api
8
+ from homeassistant.components.http import require_admin as require_admin
8
9
  from homeassistant.components.media_player import BrowseError as BrowseError, MediaClass as MediaClass
9
10
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
- from homeassistant.exceptions import Unauthorized as Unauthorized
11
11
  from homeassistant.util import raise_if_invalid_filename as raise_if_invalid_filename, raise_if_invalid_path as raise_if_invalid_path
12
12
  from pathlib import Path
13
13
  from typing import Any
@@ -9,7 +9,6 @@ class PlayMedia:
9
9
  url: str
10
10
  mime_type: str
11
11
  def __init__(self, url, mime_type) -> None: ...
12
- def __mypy-replace(*, url, mime_type) -> None: ...
13
12
 
14
13
  class BrowseMediaSource(BrowseMedia):
15
14
  domain: Incomplete
@@ -27,7 +26,6 @@ class MediaSourceItem:
27
26
  @classmethod
28
27
  def from_uri(cls, hass: HomeAssistant, uri: str, target_media_player: str | None) -> MediaSourceItem: ...
29
28
  def __init__(self, hass, domain, identifier, target_media_player) -> None: ...
30
- def __mypy-replace(*, hass, domain, identifier, target_media_player) -> None: ...
31
29
 
32
30
  class MediaSource(ABC):
33
31
  name: str | None
@@ -6,7 +6,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.const import CONF_API_KEY as CONF_API_KEY, CONF_LATITUDE as CONF_LATITUDE, CONF_LONGITUDE as CONF_LONGITUDE, CONF_NAME as CONF_NAME, Platform as Platform
7
7
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
8
8
  from homeassistant.exceptions import ConfigEntryNotReady as ConfigEntryNotReady
9
- from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
9
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
10
10
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator
11
11
 
12
12
  _LOGGER: Incomplete
@@ -13,5 +13,6 @@ METOFFICE_NAME: str
13
13
  MODE_3HOURLY: str
14
14
  MODE_DAILY: str
15
15
  CONDITION_CLASSES: dict[str, list[str]]
16
+ CONDITION_MAP: Incomplete
16
17
  VISIBILITY_CLASSES: Incomplete
17
18
  VISIBILITY_DISTANCE_CLASSES: Incomplete
@@ -7,4 +7,3 @@ class MetOfficeData:
7
7
  forecast: list[Timestep]
8
8
  site: Site
9
9
  def __init__(self, now, forecast, site) -> None: ...
10
- def __mypy-replace(*, now, forecast, site) -> None: ...
@@ -1,5 +1,5 @@
1
1
  from . import get_device_info as get_device_info
2
- from .const import ATTRIBUTION as ATTRIBUTION, CONDITION_CLASSES as CONDITION_CLASSES, DOMAIN as DOMAIN, METOFFICE_COORDINATES as METOFFICE_COORDINATES, METOFFICE_DAILY_COORDINATOR as METOFFICE_DAILY_COORDINATOR, METOFFICE_HOURLY_COORDINATOR as METOFFICE_HOURLY_COORDINATOR, METOFFICE_NAME as METOFFICE_NAME, MODE_DAILY as MODE_DAILY, VISIBILITY_CLASSES as VISIBILITY_CLASSES, VISIBILITY_DISTANCE_CLASSES as VISIBILITY_DISTANCE_CLASSES
2
+ from .const import ATTRIBUTION as ATTRIBUTION, CONDITION_MAP as CONDITION_MAP, DOMAIN as DOMAIN, METOFFICE_COORDINATES as METOFFICE_COORDINATES, METOFFICE_DAILY_COORDINATOR as METOFFICE_DAILY_COORDINATOR, METOFFICE_HOURLY_COORDINATOR as METOFFICE_HOURLY_COORDINATOR, METOFFICE_NAME as METOFFICE_NAME, MODE_DAILY as MODE_DAILY, VISIBILITY_CLASSES as VISIBILITY_CLASSES, VISIBILITY_DISTANCE_CLASSES as VISIBILITY_DISTANCE_CLASSES
3
3
  from .data import MetOfficeData as MetOfficeData
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription
@@ -1,5 +1,5 @@
1
1
  from . import get_device_info as get_device_info
2
- from .const import ATTRIBUTION as ATTRIBUTION, CONDITION_CLASSES as CONDITION_CLASSES, DOMAIN as DOMAIN, METOFFICE_COORDINATES as METOFFICE_COORDINATES, METOFFICE_DAILY_COORDINATOR as METOFFICE_DAILY_COORDINATOR, METOFFICE_HOURLY_COORDINATOR as METOFFICE_HOURLY_COORDINATOR, METOFFICE_NAME as METOFFICE_NAME, MODE_DAILY as MODE_DAILY
2
+ from .const import ATTRIBUTION as ATTRIBUTION, CONDITION_MAP as CONDITION_MAP, DOMAIN as DOMAIN, METOFFICE_COORDINATES as METOFFICE_COORDINATES, METOFFICE_DAILY_COORDINATOR as METOFFICE_DAILY_COORDINATOR, METOFFICE_HOURLY_COORDINATOR as METOFFICE_HOURLY_COORDINATOR, METOFFICE_NAME as METOFFICE_NAME, MODE_DAILY as MODE_DAILY
3
3
  from .data import MetOfficeData as MetOfficeData
4
4
  from _typeshed import Incomplete
5
5
  from datapoint.Timestep import Timestep as Timestep
@@ -13,7 +13,6 @@ from typing import Any
13
13
 
14
14
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
15
15
  def _build_forecast_data(timestep: Timestep) -> Forecast: ...
16
- def _get_weather_condition(metoffice_code: str) -> str | None: ...
17
16
 
18
17
  class MetOfficeWeather(CoordinatorEntity[DataUpdateCoordinator[MetOfficeData]], WeatherEntity):
19
18
  _attr_attribution = ATTRIBUTION
@@ -8,7 +8,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import CONF_AUTHENTICATION as CONF_AUTHENTICATION, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, CONF_VERIFY_SSL as CONF_VERIFY_SSL, HTTP_BASIC_AUTHENTICATION as HTTP_BASIC_AUTHENTICATION, HTTP_DIGEST_AUTHENTICATION as HTTP_DIGEST_AUTHENTICATION
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
10
  from homeassistant.helpers.aiohttp_client import async_aiohttp_proxy_web as async_aiohttp_proxy_web, async_get_clientsession as async_get_clientsession
11
- from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
11
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
12
12
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
13
13
  from homeassistant.helpers.httpx_client import get_async_client as get_async_client
14
14
 
@@ -1,6 +1,6 @@
1
- from .const import CALL_TYPE_COIL as CALL_TYPE_COIL, CALL_TYPE_DISCRETE as CALL_TYPE_DISCRETE, CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_REGISTER_INPUT as CALL_TYPE_REGISTER_INPUT, CALL_TYPE_WRITE_REGISTER as CALL_TYPE_WRITE_REGISTER, CALL_TYPE_X_COILS as CALL_TYPE_X_COILS, CALL_TYPE_X_REGISTER_HOLDINGS as CALL_TYPE_X_REGISTER_HOLDINGS, CONF_BAUDRATE as CONF_BAUDRATE, CONF_BYTESIZE as CONF_BYTESIZE, CONF_CLIMATES as CONF_CLIMATES, CONF_CLOSE_COMM_ON_ERROR as CONF_CLOSE_COMM_ON_ERROR, CONF_DATA_TYPE as CONF_DATA_TYPE, CONF_FANS as CONF_FANS, CONF_HUB as CONF_HUB, CONF_HVAC_MODE_AUTO as CONF_HVAC_MODE_AUTO, CONF_HVAC_MODE_COOL as CONF_HVAC_MODE_COOL, CONF_HVAC_MODE_DRY as CONF_HVAC_MODE_DRY, CONF_HVAC_MODE_FAN_ONLY as CONF_HVAC_MODE_FAN_ONLY, CONF_HVAC_MODE_HEAT as CONF_HVAC_MODE_HEAT, CONF_HVAC_MODE_HEAT_COOL as CONF_HVAC_MODE_HEAT_COOL, CONF_HVAC_MODE_OFF as CONF_HVAC_MODE_OFF, CONF_HVAC_MODE_REGISTER as CONF_HVAC_MODE_REGISTER, CONF_HVAC_MODE_VALUES as CONF_HVAC_MODE_VALUES, CONF_HVAC_ONOFF_REGISTER as CONF_HVAC_ONOFF_REGISTER, CONF_INPUT_TYPE as CONF_INPUT_TYPE, CONF_LAZY_ERROR as CONF_LAZY_ERROR, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MAX_VALUE as CONF_MAX_VALUE, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_MIN_VALUE as CONF_MIN_VALUE, CONF_MSG_WAIT as CONF_MSG_WAIT, CONF_PARITY as CONF_PARITY, CONF_PRECISION as CONF_PRECISION, CONF_RETRIES as CONF_RETRIES, CONF_RETRY_ON_EMPTY as CONF_RETRY_ON_EMPTY, CONF_SCALE as CONF_SCALE, CONF_SLAVE_COUNT as CONF_SLAVE_COUNT, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, 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_STATUS_REGISTER as CONF_STATUS_REGISTER, CONF_STATUS_REGISTER_TYPE as CONF_STATUS_REGISTER_TYPE, CONF_STEP as CONF_STEP, CONF_STOPBITS as CONF_STOPBITS, CONF_SWAP as CONF_SWAP, CONF_SWAP_BYTE as CONF_SWAP_BYTE, CONF_SWAP_NONE as CONF_SWAP_NONE, CONF_SWAP_WORD as CONF_SWAP_WORD, CONF_SWAP_WORD_BYTE as CONF_SWAP_WORD_BYTE, CONF_TARGET_TEMP as CONF_TARGET_TEMP, CONF_VERIFY as CONF_VERIFY, CONF_WRITE_REGISTERS as CONF_WRITE_REGISTERS, CONF_WRITE_TYPE as CONF_WRITE_TYPE, CONF_ZERO_SUPPRESS as CONF_ZERO_SUPPRESS, DEFAULT_HUB as DEFAULT_HUB, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL, DEFAULT_TEMP_UNIT as DEFAULT_TEMP_UNIT, DataType as DataType, RTUOVERTCP as RTUOVERTCP, SERIAL as SERIAL, TCP as TCP, UDP as UDP
1
+ from .const import CALL_TYPE_COIL as CALL_TYPE_COIL, CALL_TYPE_DISCRETE as CALL_TYPE_DISCRETE, CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_REGISTER_INPUT as CALL_TYPE_REGISTER_INPUT, CALL_TYPE_X_COILS as CALL_TYPE_X_COILS, CALL_TYPE_X_REGISTER_HOLDINGS as CALL_TYPE_X_REGISTER_HOLDINGS, CONF_BAUDRATE as CONF_BAUDRATE, CONF_BYTESIZE as CONF_BYTESIZE, CONF_CLIMATES as CONF_CLIMATES, CONF_CLOSE_COMM_ON_ERROR as CONF_CLOSE_COMM_ON_ERROR, CONF_DATA_TYPE as CONF_DATA_TYPE, CONF_FANS as CONF_FANS, CONF_HVAC_MODE_AUTO as CONF_HVAC_MODE_AUTO, CONF_HVAC_MODE_COOL as CONF_HVAC_MODE_COOL, CONF_HVAC_MODE_DRY as CONF_HVAC_MODE_DRY, CONF_HVAC_MODE_FAN_ONLY as CONF_HVAC_MODE_FAN_ONLY, CONF_HVAC_MODE_HEAT as CONF_HVAC_MODE_HEAT, CONF_HVAC_MODE_HEAT_COOL as CONF_HVAC_MODE_HEAT_COOL, CONF_HVAC_MODE_OFF as CONF_HVAC_MODE_OFF, CONF_HVAC_MODE_REGISTER as CONF_HVAC_MODE_REGISTER, CONF_HVAC_MODE_VALUES as CONF_HVAC_MODE_VALUES, CONF_HVAC_ONOFF_REGISTER as CONF_HVAC_ONOFF_REGISTER, CONF_INPUT_TYPE as CONF_INPUT_TYPE, CONF_LAZY_ERROR as CONF_LAZY_ERROR, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MAX_VALUE as CONF_MAX_VALUE, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_MIN_VALUE as CONF_MIN_VALUE, CONF_MSG_WAIT as CONF_MSG_WAIT, CONF_NAN_VALUE as CONF_NAN_VALUE, CONF_PARITY as CONF_PARITY, CONF_PRECISION as CONF_PRECISION, CONF_RETRIES as CONF_RETRIES, CONF_RETRY_ON_EMPTY as CONF_RETRY_ON_EMPTY, CONF_SCALE as CONF_SCALE, CONF_SLAVE_COUNT as CONF_SLAVE_COUNT, CONF_STATE_CLOSED as CONF_STATE_CLOSED, CONF_STATE_CLOSING as CONF_STATE_CLOSING, 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_STATUS_REGISTER as CONF_STATUS_REGISTER, CONF_STATUS_REGISTER_TYPE as CONF_STATUS_REGISTER_TYPE, CONF_STEP as CONF_STEP, CONF_STOPBITS as CONF_STOPBITS, CONF_SWAP as CONF_SWAP, CONF_SWAP_BYTE as CONF_SWAP_BYTE, CONF_SWAP_NONE as CONF_SWAP_NONE, CONF_SWAP_WORD as CONF_SWAP_WORD, CONF_SWAP_WORD_BYTE as CONF_SWAP_WORD_BYTE, CONF_TARGET_TEMP as CONF_TARGET_TEMP, CONF_TARGET_TEMP_WRITE_REGISTERS as CONF_TARGET_TEMP_WRITE_REGISTERS, CONF_VERIFY as CONF_VERIFY, CONF_WRITE_REGISTERS as CONF_WRITE_REGISTERS, CONF_WRITE_TYPE as CONF_WRITE_TYPE, CONF_ZERO_SUPPRESS as CONF_ZERO_SUPPRESS, DEFAULT_HUB as DEFAULT_HUB, DEFAULT_SCAN_INTERVAL as DEFAULT_SCAN_INTERVAL, DEFAULT_TEMP_UNIT as DEFAULT_TEMP_UNIT, DataType as DataType, RTUOVERTCP as RTUOVERTCP, SERIAL as SERIAL, TCP as TCP, UDP as UDP
2
2
  from .modbus import ModbusHub as ModbusHub, async_modbus_setup as async_modbus_setup
3
- from .validators import duplicate_entity_validator as duplicate_entity_validator, duplicate_modbus_validator as duplicate_modbus_validator, number_validator as number_validator, scan_interval_validator as scan_interval_validator, struct_validator as struct_validator
3
+ from .validators import duplicate_entity_validator as duplicate_entity_validator, duplicate_modbus_validator as duplicate_modbus_validator, nan_validator as nan_validator, number_validator as number_validator, scan_interval_validator as scan_interval_validator, struct_validator as struct_validator
4
4
  from _typeshed import Incomplete
5
5
  from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS
6
6
  from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_BINARY_SENSORS as CONF_BINARY_SENSORS, CONF_COMMAND_OFF as CONF_COMMAND_OFF, CONF_COMMAND_ON as CONF_COMMAND_ON, CONF_COUNT as CONF_COUNT, CONF_COVERS as CONF_COVERS, CONF_DELAY as CONF_DELAY, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_HOST as CONF_HOST, CONF_LIGHTS as CONF_LIGHTS, CONF_METHOD as CONF_METHOD, CONF_NAME as CONF_NAME, CONF_OFFSET as CONF_OFFSET, CONF_PORT as CONF_PORT, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_SENSORS as CONF_SENSORS, CONF_SLAVE as CONF_SLAVE, CONF_STRUCTURE as CONF_STRUCTURE, CONF_SWITCHES as CONF_SWITCHES, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_TIMEOUT as CONF_TIMEOUT, CONF_TYPE as CONF_TYPE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT
@@ -1,11 +1,11 @@
1
1
  import abc
2
- from .const import ACTIVE_SCAN_INTERVAL as ACTIVE_SCAN_INTERVAL, CALL_TYPE_COIL as CALL_TYPE_COIL, CALL_TYPE_DISCRETE as CALL_TYPE_DISCRETE, CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_REGISTER_INPUT as CALL_TYPE_REGISTER_INPUT, CALL_TYPE_WRITE_COIL as CALL_TYPE_WRITE_COIL, CALL_TYPE_WRITE_COILS as CALL_TYPE_WRITE_COILS, CALL_TYPE_WRITE_REGISTER as CALL_TYPE_WRITE_REGISTER, CALL_TYPE_WRITE_REGISTERS as CALL_TYPE_WRITE_REGISTERS, CALL_TYPE_X_COILS as CALL_TYPE_X_COILS, CALL_TYPE_X_REGISTER_HOLDINGS as CALL_TYPE_X_REGISTER_HOLDINGS, CONF_DATA_TYPE as CONF_DATA_TYPE, CONF_INPUT_TYPE as CONF_INPUT_TYPE, CONF_LAZY_ERROR as CONF_LAZY_ERROR, CONF_MAX_VALUE as CONF_MAX_VALUE, CONF_MIN_VALUE as CONF_MIN_VALUE, CONF_PRECISION as CONF_PRECISION, CONF_SCALE as CONF_SCALE, CONF_SLAVE_COUNT as CONF_SLAVE_COUNT, CONF_STATE_OFF as CONF_STATE_OFF, CONF_STATE_ON as CONF_STATE_ON, CONF_SWAP as CONF_SWAP, CONF_SWAP_BYTE as CONF_SWAP_BYTE, CONF_SWAP_NONE as CONF_SWAP_NONE, CONF_SWAP_WORD as CONF_SWAP_WORD, CONF_SWAP_WORD_BYTE as CONF_SWAP_WORD_BYTE, CONF_VERIFY as CONF_VERIFY, CONF_WRITE_TYPE as CONF_WRITE_TYPE, CONF_ZERO_SUPPRESS as CONF_ZERO_SUPPRESS, DataType as DataType, SIGNAL_START_ENTITY as SIGNAL_START_ENTITY, SIGNAL_STOP_ENTITY as SIGNAL_STOP_ENTITY
2
+ from .const import ACTIVE_SCAN_INTERVAL as ACTIVE_SCAN_INTERVAL, CALL_TYPE_COIL as CALL_TYPE_COIL, CALL_TYPE_DISCRETE as CALL_TYPE_DISCRETE, CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_REGISTER_INPUT as CALL_TYPE_REGISTER_INPUT, CALL_TYPE_WRITE_COIL as CALL_TYPE_WRITE_COIL, CALL_TYPE_WRITE_COILS as CALL_TYPE_WRITE_COILS, CALL_TYPE_WRITE_REGISTER as CALL_TYPE_WRITE_REGISTER, CALL_TYPE_WRITE_REGISTERS as CALL_TYPE_WRITE_REGISTERS, CALL_TYPE_X_COILS as CALL_TYPE_X_COILS, CALL_TYPE_X_REGISTER_HOLDINGS as CALL_TYPE_X_REGISTER_HOLDINGS, CONF_DATA_TYPE as CONF_DATA_TYPE, CONF_INPUT_TYPE as CONF_INPUT_TYPE, CONF_LAZY_ERROR as CONF_LAZY_ERROR, CONF_MAX_VALUE as CONF_MAX_VALUE, CONF_MIN_VALUE as CONF_MIN_VALUE, CONF_NAN_VALUE as CONF_NAN_VALUE, CONF_PRECISION as CONF_PRECISION, CONF_SCALE as CONF_SCALE, CONF_SLAVE_COUNT as CONF_SLAVE_COUNT, CONF_STATE_OFF as CONF_STATE_OFF, CONF_STATE_ON as CONF_STATE_ON, CONF_SWAP as CONF_SWAP, CONF_SWAP_BYTE as CONF_SWAP_BYTE, CONF_SWAP_NONE as CONF_SWAP_NONE, CONF_SWAP_WORD as CONF_SWAP_WORD, CONF_SWAP_WORD_BYTE as CONF_SWAP_WORD_BYTE, CONF_VERIFY as CONF_VERIFY, CONF_WRITE_TYPE as CONF_WRITE_TYPE, CONF_ZERO_SUPPRESS as CONF_ZERO_SUPPRESS, DataType as DataType, SIGNAL_START_ENTITY as SIGNAL_START_ENTITY, SIGNAL_STOP_ENTITY as SIGNAL_STOP_ENTITY
3
3
  from .modbus import ModbusHub as ModbusHub
4
4
  from _typeshed import Incomplete
5
5
  from abc import abstractmethod
6
6
  from collections.abc import Callable as Callable
7
7
  from datetime import datetime
8
- from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_COMMAND_OFF as CONF_COMMAND_OFF, CONF_COMMAND_ON as CONF_COMMAND_ON, CONF_COUNT as CONF_COUNT, CONF_DELAY as CONF_DELAY, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_NAME as CONF_NAME, CONF_OFFSET as CONF_OFFSET, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_SLAVE as CONF_SLAVE, CONF_STRUCTURE as CONF_STRUCTURE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, STATE_ON as STATE_ON
8
+ from homeassistant.const import CONF_ADDRESS as CONF_ADDRESS, CONF_COMMAND_OFF as CONF_COMMAND_OFF, CONF_COMMAND_ON as CONF_COMMAND_ON, CONF_COUNT as CONF_COUNT, CONF_DELAY as CONF_DELAY, CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_NAME as CONF_NAME, CONF_OFFSET as CONF_OFFSET, CONF_SCAN_INTERVAL as CONF_SCAN_INTERVAL, CONF_SLAVE as CONF_SLAVE, CONF_STRUCTURE as CONF_STRUCTURE, CONF_UNIQUE_ID as CONF_UNIQUE_ID, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON
9
9
  from homeassistant.core import callback as callback
10
10
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
11
11
  from homeassistant.helpers.entity import Entity as Entity, ToggleEntity as ToggleEntity
@@ -36,6 +36,7 @@ class BasePlatform(Entity, metaclass=abc.ABCMeta):
36
36
  _lazy_errors: Incomplete
37
37
  _min_value: Incomplete
38
38
  _max_value: Incomplete
39
+ _nan_value: Incomplete
39
40
  _zero_suppress: Incomplete
40
41
  def __init__(self, hub: ModbusHub, entry: dict[str, Any]) -> None: ...
41
42
  @abstractmethod
@@ -55,7 +56,7 @@ class BaseStructPlatform(BasePlatform, RestoreEntity, metaclass=abc.ABCMeta):
55
56
  _slave_size: Incomplete
56
57
  def __init__(self, hub: ModbusHub, config: dict) -> None: ...
57
58
  def _swap_registers(self, registers: list[int], slave_count: int) -> list[int]: ...
58
- def __process_raw_value(self, entry: float | int) -> float | int: ...
59
+ def __process_raw_value(self, entry: float | int | str) -> float | int | str | None: ...
59
60
  def unpack_structure_result(self, registers: list[int]) -> str | None: ...
60
61
 
61
62
  class BaseSwitch(BasePlatform, ToggleEntity, RestoreEntity):
@@ -1,6 +1,6 @@
1
1
  from . import get_hub as get_hub
2
2
  from .base_platform import BaseStructPlatform as BaseStructPlatform
3
- from .const import CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_WRITE_REGISTER as CALL_TYPE_WRITE_REGISTER, CALL_TYPE_WRITE_REGISTERS as CALL_TYPE_WRITE_REGISTERS, CONF_CLIMATES as CONF_CLIMATES, CONF_HVAC_MODE_AUTO as CONF_HVAC_MODE_AUTO, CONF_HVAC_MODE_COOL as CONF_HVAC_MODE_COOL, CONF_HVAC_MODE_DRY as CONF_HVAC_MODE_DRY, CONF_HVAC_MODE_FAN_ONLY as CONF_HVAC_MODE_FAN_ONLY, CONF_HVAC_MODE_HEAT as CONF_HVAC_MODE_HEAT, CONF_HVAC_MODE_HEAT_COOL as CONF_HVAC_MODE_HEAT_COOL, CONF_HVAC_MODE_OFF as CONF_HVAC_MODE_OFF, CONF_HVAC_MODE_REGISTER as CONF_HVAC_MODE_REGISTER, CONF_HVAC_MODE_VALUES as CONF_HVAC_MODE_VALUES, CONF_HVAC_ONOFF_REGISTER as CONF_HVAC_ONOFF_REGISTER, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_STEP as CONF_STEP, CONF_TARGET_TEMP as CONF_TARGET_TEMP, CONF_WRITE_REGISTERS as CONF_WRITE_REGISTERS, DataType as DataType
3
+ from .const import CALL_TYPE_REGISTER_HOLDING as CALL_TYPE_REGISTER_HOLDING, CALL_TYPE_WRITE_REGISTER as CALL_TYPE_WRITE_REGISTER, CALL_TYPE_WRITE_REGISTERS as CALL_TYPE_WRITE_REGISTERS, CONF_CLIMATES as CONF_CLIMATES, CONF_HVAC_MODE_AUTO as CONF_HVAC_MODE_AUTO, CONF_HVAC_MODE_COOL as CONF_HVAC_MODE_COOL, CONF_HVAC_MODE_DRY as CONF_HVAC_MODE_DRY, CONF_HVAC_MODE_FAN_ONLY as CONF_HVAC_MODE_FAN_ONLY, CONF_HVAC_MODE_HEAT as CONF_HVAC_MODE_HEAT, CONF_HVAC_MODE_HEAT_COOL as CONF_HVAC_MODE_HEAT_COOL, CONF_HVAC_MODE_OFF as CONF_HVAC_MODE_OFF, CONF_HVAC_MODE_REGISTER as CONF_HVAC_MODE_REGISTER, CONF_HVAC_MODE_VALUES as CONF_HVAC_MODE_VALUES, CONF_HVAC_ONOFF_REGISTER as CONF_HVAC_ONOFF_REGISTER, CONF_MAX_TEMP as CONF_MAX_TEMP, CONF_MIN_TEMP as CONF_MIN_TEMP, CONF_STEP as CONF_STEP, CONF_TARGET_TEMP as CONF_TARGET_TEMP, CONF_TARGET_TEMP_WRITE_REGISTERS as CONF_TARGET_TEMP_WRITE_REGISTERS, CONF_WRITE_REGISTERS as CONF_WRITE_REGISTERS, DataType as DataType
4
4
  from .modbus import ModbusHub as ModbusHub
5
5
  from _typeshed import Incomplete
6
6
  from datetime import datetime
@@ -19,6 +19,7 @@ async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_ad
19
19
  class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
20
20
  _attr_supported_features: Incomplete
21
21
  _target_temperature_register: Incomplete
22
+ _target_temperature_write_registers: Incomplete
22
23
  _unit: Incomplete
23
24
  _attr_current_temperature: Incomplete
24
25
  _attr_target_temperature: Incomplete
@@ -31,9 +32,9 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
31
32
  _attr_hvac_modes: Incomplete
32
33
  _attr_hvac_mode: Incomplete
33
34
  _hvac_mode_mapping: Incomplete
34
- _hvac_mode_write_type: Incomplete
35
+ _hvac_mode_write_registers: Incomplete
35
36
  _hvac_onoff_register: Incomplete
36
- _hvac_onoff_write_type: Incomplete
37
+ _hvac_onoff_write_registers: Incomplete
37
38
  def __init__(self, hub: ModbusHub, config: dict[str, Any]) -> None: ...
38
39
  async def async_added_to_hass(self) -> None: ...
39
40
  async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
@@ -6,13 +6,8 @@ CONF_BAUDRATE: str
6
6
  CONF_BYTESIZE: str
7
7
  CONF_CLIMATES: str
8
8
  CONF_CLOSE_COMM_ON_ERROR: str
9
- CONF_COILS: str
10
- CONF_CURRENT_TEMP: str
11
- CONF_CURRENT_TEMP_REGISTER_TYPE: str
12
9
  CONF_DATA_TYPE: str
13
10
  CONF_FANS: str
14
- CONF_HUB: str
15
- CONF_INPUTS: str
16
11
  CONF_INPUT_TYPE: str
17
12
  CONF_LAZY_ERROR: str
18
13
  CONF_MAX_TEMP: str
@@ -20,10 +15,8 @@ CONF_MAX_VALUE: str
20
15
  CONF_MIN_TEMP: str
21
16
  CONF_MIN_VALUE: str
22
17
  CONF_MSG_WAIT: str
18
+ CONF_NAN_VALUE: str
23
19
  CONF_PARITY: str
24
- CONF_REGISTER: str
25
- CONF_REGISTER_TYPE: str
26
- CONF_REGISTERS: str
27
20
  CONF_RETRIES: str
28
21
  CONF_RETRY_ON_EMPTY: str
29
22
  CONF_PRECISION: str
@@ -45,6 +38,7 @@ CONF_SWAP_NONE: str
45
38
  CONF_SWAP_WORD: str
46
39
  CONF_SWAP_WORD_BYTE: str
47
40
  CONF_TARGET_TEMP: str
41
+ CONF_TARGET_TEMP_WRITE_REGISTERS: str
48
42
  CONF_HVAC_MODE_REGISTER: str
49
43
  CONF_HVAC_MODE_VALUES: str
50
44
  CONF_HVAC_ONOFF_REGISTER: str
@@ -57,8 +51,6 @@ CONF_HVAC_MODE_DRY: str
57
51
  CONF_HVAC_MODE_FAN_ONLY: str
58
52
  CONF_WRITE_REGISTERS: str
59
53
  CONF_VERIFY: str
60
- CONF_VERIFY_REGISTER: str
61
- CONF_VERIFY_STATE: str
62
54
  CONF_WRITE_TYPE: str
63
55
  CONF_ZERO_SUPPRESS: str
64
56
  RTUOVERTCP: str
@@ -66,7 +58,7 @@ SERIAL: str
66
58
  TCP: str
67
59
  UDP: str
68
60
  ATTR_ADDRESS = CONF_ADDRESS
69
- ATTR_HUB = CONF_HUB
61
+ ATTR_HUB: str
70
62
  ATTR_UNIT: str
71
63
  ATTR_SLAVE: str
72
64
  ATTR_VALUE: str
@@ -23,7 +23,7 @@ class RunEntry(NamedTuple):
23
23
  attr: Incomplete
24
24
  func: Incomplete
25
25
 
26
- PYMODBUS_CALL: Incomplete
26
+ PB_CALL: Incomplete
27
27
 
28
28
  async def async_modbus_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
29
29
 
@@ -36,17 +36,17 @@ class ModbusHub:
36
36
  name: Incomplete
37
37
  _config_type: Incomplete
38
38
  _config_delay: Incomplete
39
- _pb_call: Incomplete
39
+ _pb_request: Incomplete
40
40
  _pb_class: Incomplete
41
41
  _pb_params: Incomplete
42
42
  _msg_wait: Incomplete
43
43
  def __init__(self, hass: HomeAssistant, client_config: dict[str, Any]) -> None: ...
44
44
  def _log_error(self, text: str, error_state: bool = ...) -> None: ...
45
- async def async_pymodbus_connect(self) -> None: ...
45
+ async def async_pb_connect(self) -> None: ...
46
46
  async def async_setup(self) -> bool: ...
47
47
  def async_end_delay(self, args: Any) -> None: ...
48
48
  async def async_restart(self) -> None: ...
49
49
  async def async_close(self) -> None: ...
50
- def _pymodbus_connect(self) -> bool: ...
51
- def _pymodbus_call(self, unit: int | None, address: int, value: int | list[int], use_call: str) -> ModbusResponse | None: ...
52
- async def async_pymodbus_call(self, unit: int | None, address: int, value: int | list[int], use_call: str) -> ModbusResponse | None: ...
50
+ def pb_connect(self) -> bool: ...
51
+ def pb_call(self, unit: int | None, address: int, value: int | list[int], use_call: str) -> ModbusResponse | None: ...
52
+ async def async_pb_call(self, unit: int | None, address: int, value: int | list[int], use_call: str) -> ModbusResponse | None: ...
@@ -5,7 +5,7 @@ from .modbus import ModbusHub as ModbusHub
5
5
  from _typeshed import Incomplete
6
6
  from datetime import datetime
7
7
  from homeassistant.components.sensor import CONF_STATE_CLASS as CONF_STATE_CLASS, RestoreSensor as RestoreSensor, SensorEntity as SensorEntity
8
- from homeassistant.const import CONF_NAME as CONF_NAME, CONF_SENSORS as CONF_SENSORS, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT
8
+ from homeassistant.const import CONF_DEVICE_CLASS as CONF_DEVICE_CLASS, CONF_NAME as CONF_NAME, CONF_SENSORS as CONF_SENSORS, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_UNIT_OF_MEASUREMENT as CONF_UNIT_OF_MEASUREMENT
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
11
11
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
@@ -22,6 +22,7 @@ class ModbusRegisterSensor(BaseStructPlatform, RestoreSensor, SensorEntity):
22
22
  _coordinator: Incomplete
23
23
  _attr_native_unit_of_measurement: Incomplete
24
24
  _attr_state_class: Incomplete
25
+ _attr_device_class: Incomplete
25
26
  def __init__(self, hub: ModbusHub, entry: dict[str, Any], slave_count: int) -> None: ...
26
27
  async def async_setup_slaves(self, hass: HomeAssistant, slave_count: int, entry: dict[str, Any]) -> list[SlaveSensor]: ...
27
28
  _attr_native_value: Incomplete
@@ -34,6 +35,8 @@ class SlaveSensor(CoordinatorEntity[DataUpdateCoordinator[list[int] | None]], Re
34
35
  _idx: Incomplete
35
36
  _attr_name: Incomplete
36
37
  _attr_unique_id: Incomplete
38
+ _attr_native_unit_of_measurement: Incomplete
39
+ _attr_state_class: Incomplete
37
40
  _attr_available: bool
38
41
  def __init__(self, coordinator: DataUpdateCoordinator[list[int] | None], idx: int, entry: dict[str, Any]) -> None: ...
39
42
  _attr_native_value: Incomplete
@@ -13,6 +13,7 @@ DEFAULT_STRUCT_FORMAT: Incomplete
13
13
 
14
14
  def struct_validator(config: dict[str, Any]) -> dict[str, Any]: ...
15
15
  def number_validator(value: Any) -> int | float: ...
16
+ def nan_validator(value: Any) -> int: ...
16
17
  def scan_interval_validator(config: dict) -> dict: ...
17
18
  def duplicate_entity_validator(config: dict) -> dict: ...
18
19
  def duplicate_modbus_validator(config: list) -> list: ...
@@ -4,6 +4,7 @@ from homeassistant.components.button import ButtonEntity as ButtonEntity
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import CONF_DEVICE as CONF_DEVICE
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
9
  from phone_modem import PhoneModem as PhoneModem
9
10
 
@@ -11,9 +12,11 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
11
12
 
12
13
  class PhoneModemButton(ButtonEntity):
13
14
  _attr_icon: str
14
- _attr_name: str
15
+ _attr_translation_key: str
16
+ _attr_has_entity_name: bool
15
17
  device: Incomplete
16
18
  api: Incomplete
17
19
  _attr_unique_id: Incomplete
20
+ _attr_device_info: Incomplete
18
21
  def __init__(self, api: PhoneModem, device: str, server_unique_id: str) -> None: ...
19
22
  async def async_press(self) -> None: ...
@@ -4,6 +4,7 @@ from homeassistant.components.sensor import SensorEntity as SensorEntity
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.const import EVENT_HOMEASSISTANT_STOP as EVENT_HOMEASSISTANT_STOP, STATE_IDLE as STATE_IDLE
6
6
  from homeassistant.core import Event as Event, HomeAssistant as HomeAssistant, callback as callback
7
+ from homeassistant.helpers.device_registry import DeviceInfo as DeviceInfo
7
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
9
  from phone_modem import PhoneModem as PhoneModem
9
10
 
@@ -12,11 +13,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
12
13
  class ModemCalleridSensor(SensorEntity):
13
14
  _attr_icon = ICON
14
15
  _attr_should_poll: bool
15
- api: Incomplete
16
+ _attr_has_entity_name: bool
16
17
  _attr_name: Incomplete
18
+ api: Incomplete
17
19
  _attr_unique_id: Incomplete
18
20
  _attr_native_value: Incomplete
19
21
  _attr_extra_state_attributes: Incomplete
20
- def __init__(self, api: PhoneModem, name: str, server_unique_id: str) -> None: ...
22
+ _attr_device_info: Incomplete
23
+ def __init__(self, api: PhoneModem, server_unique_id: str) -> None: ...
21
24
  async def async_added_to_hass(self) -> None: ...
22
25
  def _async_incoming_call(self, new_state: str) -> None: ...
@@ -3,8 +3,7 @@ from _typeshed import Incomplete
3
3
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity
4
4
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
- from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType
7
- from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
6
+ from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType, DeviceInfo as DeviceInfo
8
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
9
8
 
10
9
  STATE_FIRST_QUARTER: str
@@ -21,7 +20,6 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_e
21
20
 
22
21
  class MoonSensorEntity(SensorEntity):
23
22
  _attr_has_entity_name: bool
24
- _attr_name: str
25
23
  _attr_device_class: Incomplete
26
24
  _attr_options: Incomplete
27
25
  _attr_translation_key: str
@@ -2,3 +2,4 @@ from _typeshed import Incomplete
2
2
 
3
3
  ABBREVIATIONS: Incomplete
4
4
  DEVICE_ABBREVIATIONS: Incomplete
5
+ ORIGIN_ABBREVIATIONS: Incomplete
@@ -2,7 +2,7 @@ import homeassistant.components.alarm_control_panel as alarm
2
2
  import voluptuous as vol
3
3
  from . import subscription as subscription
4
4
  from .config import DEFAULT_RETAIN as DEFAULT_RETAIN, MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
5
- from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_ENCODING as CONF_ENCODING, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_STATE_TOPIC as CONF_STATE_TOPIC
5
+ from .const import CONF_COMMAND_TEMPLATE as CONF_COMMAND_TEMPLATE, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_ENCODING as CONF_ENCODING, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_SUPPORTED_FEATURES as CONF_SUPPORTED_FEATURES
6
6
  from .debug_info import log_messages as log_messages
7
7
  from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, MqttEntity as MqttEntity, async_setup_entry_helper as async_setup_entry_helper
8
8
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, ReceiveMessage as ReceiveMessage
@@ -16,6 +16,7 @@ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEnti
16
16
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
17
17
 
18
18
  _LOGGER: Incomplete
19
+ _SUPPORTED_FEATURES: Incomplete
19
20
  CONF_CODE_ARM_REQUIRED: str
20
21
  CONF_CODE_DISARM_REQUIRED: str
21
22
  CONF_CODE_TRIGGER_REQUIRED: str
@@ -61,8 +62,6 @@ class MqttAlarm(MqttEntity, alarm.AlarmControlPanelEntity):
61
62
  @property
62
63
  def state(self) -> str | None: ...
63
64
  @property
64
- def supported_features(self) -> AlarmControlPanelEntityFeature: ...
65
- @property
66
65
  def code_format(self) -> alarm.CodeFormat | None: ...
67
66
  @property
68
67
  def code_arm_required(self) -> bool: ...
@@ -2,7 +2,7 @@ import abc
2
2
  import voluptuous as vol
3
3
  from . import subscription as subscription
4
4
  from .config import DEFAULT_RETAIN as DEFAULT_RETAIN, MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
5
- from .const import CONF_ACTION_TEMPLATE as CONF_ACTION_TEMPLATE, CONF_ACTION_TOPIC as CONF_ACTION_TOPIC, 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_ENCODING as CONF_ENCODING, CONF_MODE_COMMAND_TEMPLATE as CONF_MODE_COMMAND_TEMPLATE, CONF_MODE_COMMAND_TOPIC as CONF_MODE_COMMAND_TOPIC, CONF_MODE_LIST as CONF_MODE_LIST, CONF_MODE_STATE_TEMPLATE as CONF_MODE_STATE_TEMPLATE, CONF_MODE_STATE_TOPIC as CONF_MODE_STATE_TOPIC, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_MAX as CONF_TEMP_MAX, CONF_TEMP_MIN as CONF_TEMP_MIN, CONF_TEMP_STATE_TEMPLATE as CONF_TEMP_STATE_TEMPLATE, CONF_TEMP_STATE_TOPIC as CONF_TEMP_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, PAYLOAD_NONE as PAYLOAD_NONE
5
+ from .const import CONF_ACTION_TEMPLATE as CONF_ACTION_TEMPLATE, CONF_ACTION_TOPIC as CONF_ACTION_TOPIC, 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_ENCODING as CONF_ENCODING, CONF_MODE_COMMAND_TEMPLATE as CONF_MODE_COMMAND_TEMPLATE, CONF_MODE_COMMAND_TOPIC as CONF_MODE_COMMAND_TOPIC, CONF_MODE_LIST as CONF_MODE_LIST, CONF_MODE_STATE_TEMPLATE as CONF_MODE_STATE_TEMPLATE, CONF_MODE_STATE_TOPIC as CONF_MODE_STATE_TOPIC, CONF_POWER_COMMAND_TEMPLATE as CONF_POWER_COMMAND_TEMPLATE, CONF_POWER_COMMAND_TOPIC as CONF_POWER_COMMAND_TOPIC, CONF_PRECISION as CONF_PRECISION, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, CONF_TEMP_COMMAND_TEMPLATE as CONF_TEMP_COMMAND_TEMPLATE, CONF_TEMP_COMMAND_TOPIC as CONF_TEMP_COMMAND_TOPIC, CONF_TEMP_INITIAL as CONF_TEMP_INITIAL, CONF_TEMP_MAX as CONF_TEMP_MAX, CONF_TEMP_MIN as CONF_TEMP_MIN, CONF_TEMP_STATE_TEMPLATE as CONF_TEMP_STATE_TEMPLATE, CONF_TEMP_STATE_TOPIC as CONF_TEMP_STATE_TOPIC, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, DOMAIN as DOMAIN, PAYLOAD_NONE as PAYLOAD_NONE
6
6
  from .debug_info import log_messages as log_messages
7
7
  from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, MqttEntity as MqttEntity, async_setup_entry_helper as async_setup_entry_helper
8
8
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage, ReceivePayloadType as ReceivePayloadType
@@ -16,12 +16,14 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
16
16
  from homeassistant.const import ATTR_TEMPERATURE as ATTR_TEMPERATURE, CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC, CONF_PAYLOAD_OFF as CONF_PAYLOAD_OFF, CONF_PAYLOAD_ON as CONF_PAYLOAD_ON, CONF_TEMPERATURE_UNIT as CONF_TEMPERATURE_UNIT, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE, PRECISION_HALVES as PRECISION_HALVES, PRECISION_TENTHS as PRECISION_TENTHS, PRECISION_WHOLE as PRECISION_WHOLE, UnitOfTemperature as UnitOfTemperature
17
17
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
18
18
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
19
+ from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
19
20
  from homeassistant.helpers.template import Template as Template
20
21
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
21
22
  from homeassistant.util.unit_conversion import TemperatureConverter as TemperatureConverter
22
23
  from typing import Any
23
24
 
24
25
  _LOGGER: Incomplete
26
+ MQTT_CLIMATE_AUX_DOCS: str
25
27
  DEFAULT_NAME: str
26
28
  CONF_AUX_COMMAND_TOPIC: str
27
29
  CONF_AUX_STATE_TEMPLATE: str
@@ -131,6 +133,7 @@ class MqttClimate(MqttTemperatureControlEntity, ClimateEntity):
131
133
  _command_templates: Incomplete
132
134
  _attr_supported_features: Incomplete
133
135
  def _setup_from_config(self, config: ConfigType) -> None: ...
136
+ async def mqtt_async_added_to_hass(self) -> None: ...
134
137
  def _prepare_subscribe_topics(self) -> None: ...
135
138
  async def async_set_temperature(self, **kwargs: Any) -> None: ...
136
139
  async def async_set_humidity(self, humidity: int) -> None: ...
@@ -16,6 +16,7 @@ CONF_COMMAND_TOPIC: str
16
16
  CONF_DISCOVERY_PREFIX: str
17
17
  CONF_ENCODING: str
18
18
  CONF_KEEPALIVE: str
19
+ CONF_ORIGIN: str
19
20
  CONF_QOS = ATTR_QOS
20
21
  CONF_RETAIN = ATTR_RETAIN
21
22
  CONF_SCHEMA: str
@@ -27,6 +28,7 @@ CONF_WS_PATH: str
27
28
  CONF_WS_HEADERS: str
28
29
  CONF_WILL_MESSAGE: str
29
30
  CONF_PAYLOAD_RESET: str
31
+ CONF_SUPPORTED_FEATURES: str
30
32
  CONF_ACTION_TEMPLATE: str
31
33
  CONF_ACTION_TOPIC: str
32
34
  CONF_CURRENT_HUMIDITY_TEMPLATE: str
@@ -52,6 +54,17 @@ CONF_CERTIFICATE: str
52
54
  CONF_CLIENT_KEY: str
53
55
  CONF_CLIENT_CERT: str
54
56
  CONF_TLS_INSECURE: str
57
+ CONF_IDENTIFIERS: str
58
+ CONF_CONNECTIONS: str
59
+ CONF_MANUFACTURER: str
60
+ CONF_HW_VERSION: str
61
+ CONF_SW_VERSION: str
62
+ CONF_VIA_DEVICE: str
63
+ CONF_DEPRECATED_VIA_HUB: str
64
+ CONF_SUGGESTED_AREA: str
65
+ CONF_CONFIGURATION_URL: str
66
+ CONF_OBJECT_ID: str
67
+ CONF_SUPPORT_URL: str
55
68
  DATA_MQTT: str
56
69
  DATA_MQTT_AVAILABLE: str
57
70
  DEFAULT_PREFIX: str
@@ -42,6 +42,8 @@ class MqttDeviceTracker(MqttEntity, TrackerEntity):
42
42
  def _setup_from_config(self, config: ConfigType) -> None: ...
43
43
  _sub_state: Incomplete
44
44
  def _prepare_subscribe_topics(self) -> None: ...
45
+ @property
46
+ def force_update(self) -> bool: ...
45
47
  async def _subscribe_topics(self) -> None: ...
46
48
  @property
47
49
  def latitude(self) -> float | None: ...
@@ -1,11 +1,11 @@
1
1
  from .. import mqtt as mqtt
2
- from .abbreviations import ABBREVIATIONS as ABBREVIATIONS, DEVICE_ABBREVIATIONS as DEVICE_ABBREVIATIONS
3
- from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_TOPIC as CONF_TOPIC, DOMAIN as DOMAIN
4
- from .models import ReceiveMessage as ReceiveMessage
2
+ from .abbreviations import ABBREVIATIONS as ABBREVIATIONS, DEVICE_ABBREVIATIONS as DEVICE_ABBREVIATIONS, ORIGIN_ABBREVIATIONS as ORIGIN_ABBREVIATIONS
3
+ from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_ORIGIN as CONF_ORIGIN, CONF_SUPPORT_URL as CONF_SUPPORT_URL, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, DOMAIN as DOMAIN
4
+ from .models import MqttOriginInfo as MqttOriginInfo, ReceiveMessage as ReceiveMessage
5
5
  from .util import get_mqtt_data as get_mqtt_data
6
6
  from _typeshed import Incomplete
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
- from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_PLATFORM as CONF_PLATFORM
8
+ from homeassistant.const import CONF_DEVICE as CONF_DEVICE, CONF_NAME as CONF_NAME, CONF_PLATFORM as CONF_PLATFORM
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
10
  from homeassistant.data_entry_flow import FlowResultType as FlowResultType
11
11
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
@@ -22,11 +22,13 @@ MQTT_DISCOVERY_UPDATED: str
22
22
  MQTT_DISCOVERY_NEW: str
23
23
  MQTT_DISCOVERY_DONE: str
24
24
  TOPIC_BASE: str
25
+ MQTT_ORIGIN_INFO_SCHEMA: Incomplete
25
26
 
26
27
  class MQTTDiscoveryPayload(dict[str, Any]):
27
28
  discovery_data: DiscoveryInfoType
28
29
 
29
30
  def clear_discovery_hash(hass: HomeAssistant, discovery_hash: tuple[str, str]) -> None: ...
30
31
  def set_discovery_hash(hass: HomeAssistant, discovery_hash: tuple[str, str]) -> None: ...
32
+ def async_log_discovery_origin_info(message: str, discovery_payload: MQTTDiscoveryPayload) -> None: ...
31
33
  async def async_start(hass: HomeAssistant, discovery_topic: str, config_entry: ConfigEntry) -> None: ...
32
34
  async def async_stop(hass: HomeAssistant) -> None: ...
@@ -0,0 +1,64 @@
1
+ import voluptuous as vol
2
+ from . import subscription as subscription
3
+ from .config import MQTT_BASE_SCHEMA as MQTT_BASE_SCHEMA
4
+ from .const import CONF_ENCODING as CONF_ENCODING, CONF_QOS as CONF_QOS, CONF_RETAIN as CONF_RETAIN, DEFAULT_OPTIMISTIC as DEFAULT_OPTIMISTIC, DEFAULT_RETAIN as DEFAULT_RETAIN
5
+ from .debug_info import log_messages as log_messages
6
+ from .mixins import MQTT_ENTITY_COMMON_SCHEMA as MQTT_ENTITY_COMMON_SCHEMA, MqttEntity as MqttEntity, async_setup_entry_helper as async_setup_entry_helper
7
+ from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage, ReceivePayloadType as ReceivePayloadType
8
+ from .util import get_mqtt_data as get_mqtt_data, valid_publish_topic as valid_publish_topic, valid_subscribe_topic as valid_subscribe_topic
9
+ from _typeshed import Incomplete
10
+ from collections.abc import Callable as Callable
11
+ from homeassistant.components import lawn_mower as lawn_mower
12
+ from homeassistant.components.lawn_mower import LawnMowerActivity as LawnMowerActivity, LawnMowerEntity as LawnMowerEntity, LawnMowerEntityFeature as LawnMowerEntityFeature
13
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
14
+ from homeassistant.const import CONF_NAME as CONF_NAME, CONF_OPTIMISTIC as CONF_OPTIMISTIC
15
+ from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
16
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
17
+ from homeassistant.helpers.restore_state import RestoreEntity as RestoreEntity
18
+ from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
19
+
20
+ _LOGGER: Incomplete
21
+ CONF_ACTIVITY_STATE_TOPIC: str
22
+ CONF_ACTIVITY_VALUE_TEMPLATE: str
23
+ CONF_DOCK_COMMAND_TOPIC: str
24
+ CONF_DOCK_COMMAND_TEMPLATE: str
25
+ CONF_PAUSE_COMMAND_TOPIC: str
26
+ CONF_PAUSE_COMMAND_TEMPLATE: str
27
+ CONF_START_MOWING_COMMAND_TOPIC: str
28
+ CONF_START_MOWING_COMMAND_TEMPLATE: str
29
+ DEFAULT_NAME: str
30
+ ENTITY_ID_FORMAT: Incomplete
31
+ MQTT_LAWN_MOWER_ATTRIBUTES_BLOCKED: frozenset[str]
32
+ FEATURE_DOCK: str
33
+ FEATURE_PAUSE: str
34
+ FEATURE_START_MOWING: str
35
+ PLATFORM_SCHEMA_MODERN: Incomplete
36
+ DISCOVERY_SCHEMA: Incomplete
37
+
38
+ async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
39
+ async def _async_setup_entity(hass: HomeAssistant, async_add_entities: AddEntitiesCallback, config: ConfigType, config_entry: ConfigEntry, discovery_data: DiscoveryInfoType | None = ...) -> None: ...
40
+
41
+ class MqttLawnMower(MqttEntity, LawnMowerEntity, RestoreEntity):
42
+ _default_name = DEFAULT_NAME
43
+ _entity_id_format = ENTITY_ID_FORMAT
44
+ _attributes_extra_blocked = MQTT_LAWN_MOWER_ATTRIBUTES_BLOCKED
45
+ _command_templates: dict[str, Callable[[PublishPayloadType], PublishPayloadType]]
46
+ _command_topics: dict[str, str]
47
+ _value_template: Callable[[ReceivePayloadType], ReceivePayloadType]
48
+ _optimistic: bool
49
+ _attr_current_option: Incomplete
50
+ def __init__(self, hass: HomeAssistant, config: ConfigType, config_entry: ConfigEntry, discovery_data: DiscoveryInfoType | None) -> None: ...
51
+ @staticmethod
52
+ def config_schema() -> vol.Schema: ...
53
+ _attr_supported_features: Incomplete
54
+ def _setup_from_config(self, config: ConfigType) -> None: ...
55
+ _attr_activity: Incomplete
56
+ _sub_state: Incomplete
57
+ def _prepare_subscribe_topics(self) -> None: ...
58
+ async def _subscribe_topics(self) -> None: ...
59
+ @property
60
+ def assumed_state(self) -> bool: ...
61
+ async def _async_operate(self, option: str, activity: LawnMowerActivity) -> None: ...
62
+ async def async_start_mowing(self) -> None: ...
63
+ async def async_dock(self) -> None: ...
64
+ async def async_pause(self) -> None: ...
@@ -2,9 +2,9 @@ import abc
2
2
  import voluptuous as vol
3
3
  from . import debug_info as debug_info, subscription as subscription
4
4
  from .client import async_publish as async_publish
5
- from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_ENCODING as CONF_ENCODING, CONF_QOS as CONF_QOS, CONF_TOPIC as CONF_TOPIC, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE, DOMAIN as DOMAIN, MQTT_CONNECTED as MQTT_CONNECTED, MQTT_DISCONNECTED as MQTT_DISCONNECTED
5
+ from .const import ATTR_DISCOVERY_HASH as ATTR_DISCOVERY_HASH, ATTR_DISCOVERY_PAYLOAD as ATTR_DISCOVERY_PAYLOAD, ATTR_DISCOVERY_TOPIC as ATTR_DISCOVERY_TOPIC, CONF_AVAILABILITY as CONF_AVAILABILITY, CONF_CONFIGURATION_URL as CONF_CONFIGURATION_URL, CONF_CONNECTIONS as CONF_CONNECTIONS, CONF_DEPRECATED_VIA_HUB as CONF_DEPRECATED_VIA_HUB, CONF_ENCODING as CONF_ENCODING, CONF_HW_VERSION as CONF_HW_VERSION, CONF_IDENTIFIERS as CONF_IDENTIFIERS, CONF_MANUFACTURER as CONF_MANUFACTURER, CONF_OBJECT_ID as CONF_OBJECT_ID, CONF_ORIGIN as CONF_ORIGIN, CONF_QOS as CONF_QOS, CONF_SUGGESTED_AREA as CONF_SUGGESTED_AREA, CONF_SW_VERSION as CONF_SW_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_VIA_DEVICE as CONF_VIA_DEVICE, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_PAYLOAD_AVAILABLE as DEFAULT_PAYLOAD_AVAILABLE, DEFAULT_PAYLOAD_NOT_AVAILABLE as DEFAULT_PAYLOAD_NOT_AVAILABLE, DOMAIN as DOMAIN, MQTT_CONNECTED as MQTT_CONNECTED, MQTT_DISCONNECTED as MQTT_DISCONNECTED
6
6
  from .debug_info import log_message as log_message, log_messages as log_messages
7
- from .discovery import MQTTDiscoveryPayload as MQTTDiscoveryPayload, MQTT_DISCOVERY_DONE as MQTT_DISCOVERY_DONE, MQTT_DISCOVERY_NEW as MQTT_DISCOVERY_NEW, MQTT_DISCOVERY_UPDATED as MQTT_DISCOVERY_UPDATED, clear_discovery_hash as clear_discovery_hash, set_discovery_hash as set_discovery_hash
7
+ from .discovery import MQTTDiscoveryPayload as MQTTDiscoveryPayload, MQTT_DISCOVERY_DONE as MQTT_DISCOVERY_DONE, MQTT_DISCOVERY_NEW as MQTT_DISCOVERY_NEW, MQTT_DISCOVERY_UPDATED as MQTT_DISCOVERY_UPDATED, MQTT_ORIGIN_INFO_SCHEMA as MQTT_ORIGIN_INFO_SCHEMA, clear_discovery_hash as clear_discovery_hash, set_discovery_hash as set_discovery_hash
8
8
  from .models import MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage, ReceivePayloadType as ReceivePayloadType
9
9
  from .subscription import EntitySubscription as EntitySubscription, async_prepare_subscribe_topics as async_prepare_subscribe_topics, async_subscribe_topics as async_subscribe_topics, async_unsubscribe_topics as async_unsubscribe_topics
10
10
  from .util import get_mqtt_data as get_mqtt_data, mqtt_config_entry_enabled as mqtt_config_entry_enabled, valid_subscribe_topic as valid_subscribe_topic
@@ -16,9 +16,9 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
16
16
  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_NAME as ATTR_NAME, ATTR_SUGGESTED_AREA as ATTR_SUGGESTED_AREA, ATTR_SW_VERSION as ATTR_SW_VERSION, ATTR_VIA_DEVICE as ATTR_VIA_DEVICE, CONF_DEVICE as CONF_DEVICE, CONF_ENTITY_CATEGORY as CONF_ENTITY_CATEGORY, CONF_ICON as CONF_ICON, CONF_MODEL as CONF_MODEL, CONF_NAME as CONF_NAME, CONF_UNIQUE_ID as CONF_UNIQUE_ID, CONF_VALUE_TEMPLATE as CONF_VALUE_TEMPLATE
17
17
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
18
18
  from homeassistant.helpers import entity_registry as er
19
- from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry, EventDeviceRegistryUpdatedData as EventDeviceRegistryUpdatedData
19
+ from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry, DeviceInfo as DeviceInfo, EventDeviceRegistryUpdatedData as EventDeviceRegistryUpdatedData
20
20
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect, async_dispatcher_send as async_dispatcher_send
21
- from homeassistant.helpers.entity import DeviceInfo as DeviceInfo, ENTITY_CATEGORIES_SCHEMA as ENTITY_CATEGORIES_SCHEMA, Entity as Entity, async_generate_entity_id as async_generate_entity_id
21
+ from homeassistant.helpers.entity import ENTITY_CATEGORIES_SCHEMA as ENTITY_CATEGORIES_SCHEMA, Entity as Entity, async_generate_entity_id as async_generate_entity_id
22
22
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
23
23
  from homeassistant.helpers.event import async_track_device_registry_updated_event as async_track_device_registry_updated_event, async_track_entity_registry_updated_event as async_track_entity_registry_updated_event
24
24
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, EventType as EventType, UNDEFINED as UNDEFINED, UndefinedType as UndefinedType
@@ -38,16 +38,6 @@ CONF_PAYLOAD_AVAILABLE: str
38
38
  CONF_PAYLOAD_NOT_AVAILABLE: str
39
39
  CONF_JSON_ATTRS_TOPIC: str
40
40
  CONF_JSON_ATTRS_TEMPLATE: str
41
- CONF_IDENTIFIERS: str
42
- CONF_CONNECTIONS: str
43
- CONF_MANUFACTURER: str
44
- CONF_HW_VERSION: str
45
- CONF_SW_VERSION: str
46
- CONF_VIA_DEVICE: str
47
- CONF_DEPRECATED_VIA_HUB: str
48
- CONF_SUGGESTED_AREA: str
49
- CONF_CONFIGURATION_URL: str
50
- CONF_OBJECT_ID: str
51
41
  MQTT_ATTRIBUTES_BLOCKED: Incomplete
52
42
  MQTT_AVAILABILITY_SINGLE_SCHEMA: Incomplete
53
43
  MQTT_AVAILABILITY_LIST_SCHEMA: Incomplete