homeassistant-stubs 2023.3.6__py3-none-any.whl → 2023.4.0b1__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 (333) hide show
  1. homeassistant-stubs/auth/__init__.pyi +1 -1
  2. homeassistant-stubs/auth/jwt_wrapper.pyi +14 -0
  3. homeassistant-stubs/auth/permissions/models.pyi +3 -3
  4. homeassistant-stubs/bootstrap.pyi +1 -1
  5. homeassistant-stubs/components/aladdin_connect/config_flow.pyi +0 -2
  6. homeassistant-stubs/components/aladdin_connect/cover.pyi +5 -7
  7. homeassistant-stubs/components/alarm_control_panel/device_action.pyi +0 -1
  8. homeassistant-stubs/components/alarm_control_panel/device_condition.pyi +1 -1
  9. homeassistant-stubs/components/alarm_control_panel/device_trigger.pyi +0 -1
  10. homeassistant-stubs/components/amazon_polly/tts.pyi +2 -2
  11. homeassistant-stubs/components/amcrest/camera.pyi +0 -1
  12. homeassistant-stubs/components/awair/sensor.pyi +2 -1
  13. homeassistant-stubs/components/backup/manager.pyi +2 -1
  14. homeassistant-stubs/components/bayesian/issues.pyi +0 -1
  15. homeassistant-stubs/components/bluetooth/wrappers.pyi +1 -0
  16. homeassistant-stubs/components/bmw_connected_drive/config_flow.pyi +3 -0
  17. homeassistant-stubs/components/bmw_connected_drive/coordinator.pyi +1 -0
  18. homeassistant-stubs/components/braviatv/media_player.pyi +2 -2
  19. homeassistant-stubs/components/button/device_action.pyi +0 -1
  20. homeassistant-stubs/components/button/device_trigger.pyi +0 -1
  21. homeassistant-stubs/components/calendar/__init__.pyi +8 -4
  22. homeassistant-stubs/components/calendar/const.pyi +2 -2
  23. homeassistant-stubs/components/calendar/trigger.pyi +25 -8
  24. homeassistant-stubs/components/camera/__init__.pyi +1 -1
  25. homeassistant-stubs/components/cover/device_action.pyi +0 -1
  26. homeassistant-stubs/components/cover/device_condition.pyi +1 -1
  27. homeassistant-stubs/components/cover/device_trigger.pyi +0 -1
  28. homeassistant-stubs/components/demo/sensor.pyi +2 -1
  29. homeassistant-stubs/components/demo/stt.pyi +2 -2
  30. homeassistant-stubs/components/device_automation/condition.pyi +2 -4
  31. homeassistant-stubs/components/device_tracker/device_condition.pyi +1 -1
  32. homeassistant-stubs/components/device_tracker/device_trigger.pyi +0 -1
  33. homeassistant-stubs/components/devolo_home_network/device_tracker.pyi +0 -1
  34. homeassistant-stubs/components/devolo_home_network/entity.pyi +1 -0
  35. homeassistant-stubs/components/dlna_dmr/config_flow.pyi +0 -1
  36. homeassistant-stubs/components/dlna_dmr/media_player.pyi +1 -2
  37. homeassistant-stubs/components/dormakaba_dkey/__init__.pyi +1 -1
  38. homeassistant-stubs/components/dormakaba_dkey/config_flow.pyi +5 -1
  39. homeassistant-stubs/components/efergy/sensor.pyi +2 -2
  40. homeassistant-stubs/components/emulated_hue/hue_api.pyi +1 -0
  41. homeassistant-stubs/components/energy/types.pyi +2 -2
  42. homeassistant-stubs/components/energy/websocket_api.pyi +1 -0
  43. homeassistant-stubs/components/esphome/bluetooth/client.pyi +3 -1
  44. homeassistant-stubs/components/esphome/entry_data.pyi +1 -0
  45. homeassistant-stubs/components/esphome/media_player.pyi +1 -1
  46. homeassistant-stubs/components/fan/device_condition.pyi +1 -1
  47. homeassistant-stubs/components/filesize/__init__.pyi +1 -2
  48. homeassistant-stubs/components/fitbit/sensor.pyi +1 -1
  49. homeassistant-stubs/components/fritz/binary_sensor.pyi +7 -11
  50. homeassistant-stubs/components/fritz/common.pyi +25 -3
  51. homeassistant-stubs/components/fritz/sensor.pyi +6 -15
  52. homeassistant-stubs/components/fritzbox/sensor.pyi +0 -1
  53. homeassistant-stubs/components/fronius/coordinator.pyi +2 -3
  54. homeassistant-stubs/components/fronius/sensor.pyi +13 -8
  55. homeassistant-stubs/components/fully_kiosk/media_player.pyi +3 -3
  56. homeassistant-stubs/components/fully_kiosk/sensor.pyi +3 -3
  57. homeassistant-stubs/components/gios/__init__.pyi +3 -3
  58. homeassistant-stubs/components/gios/const.pyi +0 -2
  59. homeassistant-stubs/components/gios/sensor.pyi +10 -13
  60. homeassistant-stubs/components/google/__init__.pyi +1 -1
  61. homeassistant-stubs/components/google/calendar.pyi +1 -1
  62. homeassistant-stubs/components/google/const.pyi +1 -0
  63. homeassistant-stubs/components/group/media_player.pyi +4 -3
  64. homeassistant-stubs/components/group/notify.pyi +1 -1
  65. homeassistant-stubs/components/group/sensor.pyi +2 -0
  66. homeassistant-stubs/components/guardian/util.pyi +0 -1
  67. homeassistant-stubs/components/history/websocket_api.pyi +2 -1
  68. homeassistant-stubs/components/homeassistant_alerts/__init__.pyi +4 -2
  69. homeassistant-stubs/components/homeassistant_hardware/silabs_multiprotocol_addon.pyi +7 -2
  70. homeassistant-stubs/components/homeassistant_sky_connect/__init__.pyi +2 -8
  71. homeassistant-stubs/components/homeassistant_yellow/__init__.pyi +3 -7
  72. homeassistant-stubs/components/homekit/__init__.pyi +6 -6
  73. homeassistant-stubs/components/homekit/config_flow.pyi +2 -2
  74. homeassistant-stubs/components/homekit/type_triggers.pyi +0 -1
  75. homeassistant-stubs/components/http/__init__.pyi +18 -1
  76. homeassistant-stubs/components/http/auth.pyi +1 -0
  77. homeassistant-stubs/components/http/security_filter.pyi +1 -0
  78. homeassistant-stubs/components/huawei_lte/__init__.pyi +1 -1
  79. homeassistant-stubs/components/huawei_lte/device_tracker.pyi +0 -1
  80. homeassistant-stubs/components/isy994/lock.pyi +8 -3
  81. homeassistant-stubs/components/isy994/services.pyi +6 -0
  82. homeassistant-stubs/components/jellyfin/coordinator.pyi +4 -2
  83. homeassistant-stubs/components/jellyfin/media_player.pyi +3 -3
  84. homeassistant-stubs/components/knx/__init__.pyi +3 -2
  85. homeassistant-stubs/components/knx/device.pyi +18 -0
  86. homeassistant-stubs/components/knx/light.pyi +2 -2
  87. homeassistant-stubs/components/knx/sensor.pyi +33 -2
  88. homeassistant-stubs/components/kraken/sensor.pyi +0 -1
  89. homeassistant-stubs/components/lametric/__init__.pyi +1 -2
  90. homeassistant-stubs/components/lidarr/const.pyi +0 -2
  91. homeassistant-stubs/components/lifx/__init__.pyi +2 -2
  92. homeassistant-stubs/components/light/intent.pyi +1 -1
  93. homeassistant-stubs/components/litejet/__init__.pyi +14 -0
  94. homeassistant-stubs/components/litejet/config_flow.pyi +18 -0
  95. homeassistant-stubs/components/litejet/const.pyi +8 -0
  96. homeassistant-stubs/components/litejet/diagnostics.pyi +7 -0
  97. homeassistant-stubs/components/litejet/light.pyi +39 -0
  98. homeassistant-stubs/components/litejet/scene.pyi +32 -0
  99. homeassistant-stubs/components/litejet/switch.pyi +37 -0
  100. homeassistant-stubs/components/litejet/trigger.pyi +16 -0
  101. homeassistant-stubs/components/litterrobot/select.pyi +11 -6
  102. homeassistant-stubs/components/lock/device_action.pyi +0 -1
  103. homeassistant-stubs/components/lock/device_condition.pyi +1 -1
  104. homeassistant-stubs/components/lock/device_trigger.pyi +0 -1
  105. homeassistant-stubs/components/logbook/__init__.pyi +3 -3
  106. homeassistant-stubs/components/logbook/const.pyi +0 -2
  107. homeassistant-stubs/components/logbook/helpers.pyi +1 -1
  108. homeassistant-stubs/components/logbook/models.pyi +25 -7
  109. homeassistant-stubs/components/logbook/processor.pyi +8 -7
  110. homeassistant-stubs/components/logbook/queries/__init__.pyi +3 -1
  111. homeassistant-stubs/components/logbook/queries/all.pyi +4 -4
  112. homeassistant-stubs/components/logbook/queries/common.pyi +2 -2
  113. homeassistant-stubs/components/logbook/queries/devices.pyi +1 -1
  114. homeassistant-stubs/components/logbook/queries/entities.pyi +6 -6
  115. homeassistant-stubs/components/logbook/queries/entities_and_devices.pyi +5 -5
  116. homeassistant-stubs/components/logbook/websocket_api.pyi +2 -2
  117. homeassistant-stubs/components/logger/helpers.pyi +1 -1
  118. homeassistant-stubs/components/logger/websocket_api.pyi +1 -1
  119. homeassistant-stubs/components/matter/binary_sensor.pyi +5 -1
  120. homeassistant-stubs/components/matter/entity.pyi +5 -1
  121. homeassistant-stubs/components/matter/lock.pyi +44 -0
  122. homeassistant-stubs/components/matter/models.pyi +2 -9
  123. homeassistant-stubs/components/matter/sensor.pyi +5 -1
  124. homeassistant-stubs/components/media_player/__init__.pyi +2 -2
  125. homeassistant-stubs/components/media_player/device_condition.pyi +1 -1
  126. homeassistant-stubs/components/media_player/device_trigger.pyi +0 -1
  127. homeassistant-stubs/components/metoffice/__init__.pyi +0 -2
  128. homeassistant-stubs/components/metoffice/sensor.pyi +2 -1
  129. homeassistant-stubs/components/mikrotik/const.pyi +2 -0
  130. homeassistant-stubs/components/mikrotik/device_tracker.pyi +0 -1
  131. homeassistant-stubs/components/mikrotik/hub.pyi +2 -1
  132. homeassistant-stubs/components/modbus/__init__.pyi +1 -1
  133. homeassistant-stubs/components/modbus/climate.pyi +3 -1
  134. homeassistant-stubs/components/modbus/const.pyi +1 -0
  135. homeassistant-stubs/components/modbus/modbus.pyi +1 -1
  136. homeassistant-stubs/components/modem_callerid/button.pyi +2 -2
  137. homeassistant-stubs/components/modem_callerid/sensor.pyi +2 -2
  138. homeassistant-stubs/components/moon/config_flow.pyi +0 -2
  139. homeassistant-stubs/components/moon/sensor.pyi +2 -7
  140. homeassistant-stubs/components/mqtt/__init__.pyi +5 -7
  141. homeassistant-stubs/components/mqtt/client.pyi +24 -2
  142. homeassistant-stubs/components/mqtt/config_integration.pyi +1 -1
  143. homeassistant-stubs/components/mqtt/const.pyi +0 -1
  144. homeassistant-stubs/components/mqtt/models.pyi +2 -1
  145. homeassistant-stubs/components/mysensors/__init__.pyi +4 -9
  146. homeassistant-stubs/components/mysensors/const.pyi +1 -3
  147. homeassistant-stubs/components/mysensors/device.pyi +1 -1
  148. homeassistant-stubs/components/mysensors/light.pyi +1 -1
  149. homeassistant-stubs/components/mysensors/switch.pyi +6 -20
  150. homeassistant-stubs/components/nam/__init__.pyi +0 -2
  151. homeassistant-stubs/components/nam/sensor.pyi +0 -1
  152. homeassistant-stubs/components/netatmo/device_trigger.pyi +0 -1
  153. homeassistant-stubs/components/nissan_leaf/sensor.pyi +2 -3
  154. homeassistant-stubs/components/notify/legacy.pyi +2 -2
  155. homeassistant-stubs/components/number/const.pyi +2 -0
  156. homeassistant-stubs/components/number/device_action.pyi +0 -1
  157. homeassistant-stubs/components/otbr/__init__.pyi +3 -0
  158. homeassistant-stubs/components/otbr/config_flow.pyi +3 -2
  159. homeassistant-stubs/components/otbr/util.pyi +6 -0
  160. homeassistant-stubs/components/otbr/websocket_api.pyi +7 -3
  161. homeassistant-stubs/components/overkiz/climate_entities/__init__.pyi +1 -0
  162. homeassistant-stubs/components/overkiz/climate_entities/atlantic_electrical_heater.pyi +2 -0
  163. homeassistant-stubs/components/overkiz/climate_entities/atlantic_electrical_heater_with_adjustable_temperature_setpoint.pyi +2 -0
  164. homeassistant-stubs/components/overkiz/climate_entities/atlantic_electrical_towel_dryer.pyi +2 -0
  165. homeassistant-stubs/components/overkiz/climate_entities/atlantic_heat_recovery_ventilation.pyi +2 -0
  166. homeassistant-stubs/components/overkiz/climate_entities/atlantic_pass_apc_heating_zone.pyi +2 -0
  167. homeassistant-stubs/components/overkiz/climate_entities/somfy_thermostat.pyi +2 -2
  168. homeassistant-stubs/components/overkiz/climate_entities/valve_heating_temperature_interface.pyi +37 -0
  169. homeassistant-stubs/components/overkiz/const.pyi +2 -1
  170. homeassistant-stubs/components/overkiz/sensor.pyi +3 -1
  171. homeassistant-stubs/components/overkiz/switch.pyi +2 -2
  172. homeassistant-stubs/components/pi_hole/sensor.pyi +2 -2
  173. homeassistant-stubs/components/rainmachine/util.pyi +0 -1
  174. homeassistant-stubs/components/recorder/__init__.pyi +3 -3
  175. homeassistant-stubs/components/recorder/auto_repairs/__init__.pyi +0 -0
  176. homeassistant-stubs/components/recorder/auto_repairs/events/__init__.pyi +0 -0
  177. homeassistant-stubs/components/recorder/auto_repairs/events/schema.pyi +6 -0
  178. homeassistant-stubs/components/recorder/auto_repairs/schema.pyi +23 -0
  179. homeassistant-stubs/components/recorder/auto_repairs/states/schema.pyi +9 -0
  180. homeassistant-stubs/components/recorder/auto_repairs/statistics/__init__.pyi +0 -0
  181. homeassistant-stubs/components/recorder/auto_repairs/statistics/duplicates.pyi +19 -0
  182. homeassistant-stubs/components/recorder/auto_repairs/statistics/schema.pyi +9 -0
  183. homeassistant-stubs/components/recorder/const.pyi +10 -0
  184. homeassistant-stubs/components/recorder/core.pyi +33 -29
  185. homeassistant-stubs/components/recorder/db_schema.pyi +36 -6
  186. homeassistant-stubs/components/recorder/entity_registry.pyi +10 -0
  187. homeassistant-stubs/components/recorder/filters.pyi +13 -11
  188. homeassistant-stubs/components/recorder/history/__init__.pyi +13 -0
  189. homeassistant-stubs/components/recorder/history/common.pyi +4 -0
  190. homeassistant-stubs/components/recorder/history/const.pyi +9 -0
  191. homeassistant-stubs/components/recorder/{history.pyi → history/legacy.pyi} +9 -14
  192. homeassistant-stubs/components/recorder/history/modern.pyi +41 -0
  193. homeassistant-stubs/components/recorder/migration.pyi +34 -6
  194. homeassistant-stubs/components/recorder/models/__init__.pyi +5 -0
  195. homeassistant-stubs/components/recorder/models/context.pyi +6 -0
  196. homeassistant-stubs/components/recorder/models/database.pyi +14 -0
  197. homeassistant-stubs/components/recorder/models/legacy.pyi +39 -0
  198. homeassistant-stubs/components/recorder/models/state.pyi +43 -0
  199. homeassistant-stubs/components/recorder/models/state_attributes.pyi +9 -0
  200. homeassistant-stubs/components/recorder/models/statistics.pyi +50 -0
  201. homeassistant-stubs/components/recorder/models/time.pyi +20 -0
  202. homeassistant-stubs/components/recorder/purge.pyi +9 -12
  203. homeassistant-stubs/components/recorder/queries.pyi +19 -3
  204. homeassistant-stubs/components/recorder/services.pyi +1 -1
  205. homeassistant-stubs/components/recorder/statistics.pyi +40 -42
  206. homeassistant-stubs/components/recorder/table_managers/__init__.pyi +20 -0
  207. homeassistant-stubs/components/recorder/table_managers/event_data.pyi +26 -0
  208. homeassistant-stubs/components/recorder/table_managers/event_types.pyi +20 -0
  209. homeassistant-stubs/components/recorder/{run_history.pyi → table_managers/recorder_runs.pyi} +3 -3
  210. homeassistant-stubs/components/recorder/table_managers/state_attributes.pyi +29 -0
  211. homeassistant-stubs/components/recorder/table_managers/states.pyi +14 -0
  212. homeassistant-stubs/components/recorder/table_managers/states_meta.pyi +23 -0
  213. homeassistant-stubs/components/recorder/table_managers/statistics_meta.pyi +35 -0
  214. homeassistant-stubs/components/recorder/tasks.pyi +39 -4
  215. homeassistant-stubs/components/recorder/util.pyi +2 -1
  216. homeassistant-stubs/components/recorder/websocket_api.pyi +2 -2
  217. homeassistant-stubs/components/renault/renault_vehicle.pyi +1 -0
  218. homeassistant-stubs/components/rest/__init__.pyi +1 -1
  219. homeassistant-stubs/components/rest/const.pyi +2 -0
  220. homeassistant-stubs/components/rest/data.pyi +3 -2
  221. homeassistant-stubs/components/rest/schema.pyi +1 -1
  222. homeassistant-stubs/components/ridwell/calendar.pyi +22 -0
  223. homeassistant-stubs/components/ridwell/coordinator.pyi +2 -2
  224. homeassistant-stubs/components/ridwell/entity.pyi +2 -4
  225. homeassistant-stubs/components/ridwell/sensor.pyi +2 -1
  226. homeassistant-stubs/components/ridwell/switch.pyi +4 -0
  227. homeassistant-stubs/components/roku/media_player.pyi +4 -4
  228. homeassistant-stubs/components/samsungtv/device_trigger.pyi +19 -0
  229. homeassistant-stubs/components/samsungtv/helpers.pyi +8 -0
  230. homeassistant-stubs/components/samsungtv/media_player.pyi +7 -2
  231. homeassistant-stubs/components/samsungtv/trigger.pyi +12 -0
  232. homeassistant-stubs/components/samsungtv/triggers/__init__.pyi +0 -0
  233. homeassistant-stubs/components/samsungtv/triggers/turn_on.pyi +14 -0
  234. homeassistant-stubs/components/scrape/config_flow.pyi +1 -1
  235. homeassistant-stubs/components/scrape/const.pyi +2 -0
  236. homeassistant-stubs/components/scrape/sensor.pyi +3 -6
  237. homeassistant-stubs/components/select/device_action.pyi +0 -1
  238. homeassistant-stubs/components/select/device_condition.pyi +1 -1
  239. homeassistant-stubs/components/select/device_trigger.pyi +0 -1
  240. homeassistant-stubs/components/sensor/const.pyi +2 -0
  241. homeassistant-stubs/components/sensor/recorder.pyi +3 -1
  242. homeassistant-stubs/components/sfr_box/__init__.pyi +1 -1
  243. homeassistant-stubs/components/sfr_box/binary_sensor.pyi +3 -1
  244. homeassistant-stubs/components/sfr_box/models.pyi +4 -2
  245. homeassistant-stubs/components/sfr_box/sensor.pyi +2 -1
  246. homeassistant-stubs/components/sleepiq/entity.pyi +0 -1
  247. homeassistant-stubs/components/statistics/sensor.pyi +2 -2
  248. homeassistant-stubs/components/sun/__init__.pyi +1 -1
  249. homeassistant-stubs/components/sun/sensor.pyi +36 -0
  250. homeassistant-stubs/components/switcher_kis/__init__.pyi +1 -1
  251. homeassistant-stubs/components/switcher_kis/button.pyi +0 -1
  252. homeassistant-stubs/components/switcher_kis/climate.pyi +0 -1
  253. homeassistant-stubs/components/switcher_kis/cover.pyi +0 -1
  254. homeassistant-stubs/components/switcher_kis/sensor.pyi +0 -1
  255. homeassistant-stubs/components/switcher_kis/switch.pyi +1 -1
  256. homeassistant-stubs/components/synology_dsm/sensor.pyi +5 -4
  257. homeassistant-stubs/components/threshold/__init__.pyi +7 -0
  258. homeassistant-stubs/components/threshold/binary_sensor.pyi +55 -0
  259. homeassistant-stubs/components/threshold/config_flow.pyi +19 -0
  260. homeassistant-stubs/components/threshold/const.pyi +5 -0
  261. homeassistant-stubs/components/tibber/config_flow.pyi +3 -0
  262. homeassistant-stubs/components/tibber/sensor.pyi +2 -1
  263. homeassistant-stubs/components/tplink/light.pyi +1 -1
  264. homeassistant-stubs/components/tplink_omada/__init__.pyi +1 -0
  265. homeassistant-stubs/components/tplink_omada/controller.pyi +21 -0
  266. homeassistant-stubs/components/tplink_omada/coordinator.pyi +3 -4
  267. homeassistant-stubs/components/tplink_omada/entity.pyi +6 -4
  268. homeassistant-stubs/components/tplink_omada/switch.pyi +4 -6
  269. homeassistant-stubs/components/tplink_omada/update.pyi +43 -0
  270. homeassistant-stubs/components/tradfri/sensor.pyi +0 -1
  271. homeassistant-stubs/components/tts/__init__.pyi +2 -1
  272. homeassistant-stubs/components/unifi/__init__.pyi +33 -0
  273. homeassistant-stubs/components/unifi/config_flow.pyi +46 -0
  274. homeassistant-stubs/components/unifi/const.pyi +30 -0
  275. homeassistant-stubs/components/unifi/controller.pyi +77 -0
  276. homeassistant-stubs/components/unifi/device_tracker.pyi +70 -0
  277. homeassistant-stubs/components/unifi/diagnostics.pyi +19 -0
  278. homeassistant-stubs/components/unifi/entity.pyi +58 -0
  279. homeassistant-stubs/components/unifi/errors.pyi +8 -0
  280. homeassistant-stubs/components/unifi/sensor.pyi +37 -0
  281. homeassistant-stubs/components/unifi/services.pyi +17 -0
  282. homeassistant-stubs/components/unifi/switch.pyi +55 -0
  283. homeassistant-stubs/components/unifi/update.pyi +1 -1
  284. homeassistant-stubs/components/unifiprotect/select.pyi +2 -2
  285. homeassistant-stubs/components/vacuum/device_action.pyi +0 -1
  286. homeassistant-stubs/components/vacuum/device_condition.pyi +1 -1
  287. homeassistant-stubs/components/vacuum/device_trigger.pyi +0 -1
  288. homeassistant-stubs/components/velbus/__init__.pyi +0 -2
  289. homeassistant-stubs/components/velbus/light.pyi +1 -1
  290. homeassistant-stubs/components/velbus/select.pyi +21 -0
  291. homeassistant-stubs/components/water_heater/device_action.pyi +0 -1
  292. homeassistant-stubs/components/weather/__init__.pyi +2 -23
  293. homeassistant-stubs/components/weather/const.pyi +25 -0
  294. homeassistant-stubs/components/weather/websocket_api.pyi +7 -0
  295. homeassistant-stubs/components/webostv/trigger.pyi +3 -3
  296. homeassistant-stubs/components/webostv/triggers/__init__.pyi +0 -5
  297. homeassistant-stubs/components/websocket_api/commands.pyi +2 -2
  298. homeassistant-stubs/components/websocket_api/connection.pyi +7 -1
  299. homeassistant-stubs/components/zwave_js/__init__.pyi +4 -4
  300. homeassistant-stubs/components/zwave_js/api.pyi +0 -1
  301. homeassistant-stubs/components/zwave_js/device_action.pyi +0 -1
  302. homeassistant-stubs/components/zwave_js/device_trigger.pyi +0 -1
  303. homeassistant-stubs/components/zwave_js/diagnostics.pyi +2 -1
  304. homeassistant-stubs/components/zwave_js/discovery.pyi +1 -1
  305. homeassistant-stubs/components/zwave_js/update.pyi +18 -8
  306. homeassistant-stubs/config_entries.pyi +4 -1
  307. homeassistant-stubs/core.pyi +4 -3
  308. homeassistant-stubs/helpers/condition.pyi +11 -3
  309. homeassistant-stubs/helpers/config_validation.pyi +1 -1
  310. homeassistant-stubs/helpers/debounce.pyi +1 -0
  311. homeassistant-stubs/helpers/device_registry.pyi +1 -1
  312. homeassistant-stubs/helpers/entity.pyi +1 -0
  313. homeassistant-stubs/helpers/entity_platform.pyi +2 -1
  314. homeassistant-stubs/helpers/entity_registry.pyi +9 -1
  315. homeassistant-stubs/helpers/event.pyi +3 -1
  316. homeassistant-stubs/helpers/httpx_client.pyi +1 -0
  317. homeassistant-stubs/helpers/integration_platform.pyi +3 -3
  318. homeassistant-stubs/helpers/script.pyi +5 -3
  319. homeassistant-stubs/helpers/selector.pyi +29 -12
  320. homeassistant-stubs/helpers/service.pyi +11 -0
  321. homeassistant-stubs/helpers/template.pyi +24 -3
  322. homeassistant-stubs/scripts/check_config.pyi +0 -1
  323. homeassistant-stubs/util/ssl.pyi +8 -0
  324. homeassistant-stubs/util/ulid.pyi +2 -1
  325. homeassistant-stubs/util/yaml/dumper.pyi +1 -1
  326. homeassistant-stubs/util/yaml/loader.pyi +4 -5
  327. homeassistant-stubs/util/yaml/objects.pyi +1 -0
  328. {homeassistant_stubs-2023.3.6.dist-info → homeassistant_stubs-2023.4.0b1.dist-info}/METADATA +2 -2
  329. {homeassistant_stubs-2023.3.6.dist-info → homeassistant_stubs-2023.4.0b1.dist-info}/RECORD +331 -265
  330. homeassistant-stubs/components/mysensors/notify.pyi +0 -23
  331. homeassistant-stubs/components/recorder/models.pyi +0 -148
  332. {homeassistant_stubs-2023.3.6.dist-info → homeassistant_stubs-2023.4.0b1.dist-info}/LICENSE +0 -0
  333. {homeassistant_stubs-2023.3.6.dist-info → homeassistant_stubs-2023.4.0b1.dist-info}/WHEEL +0 -0
@@ -1,4 +1,4 @@
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_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_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
2
2
  from .modbus import ModbusHub as ModbusHub, async_modbus_setup as async_modbus_setup
3
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
4
4
  from _typeshed import Incomplete
@@ -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, 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_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
@@ -31,7 +31,9 @@ class ModbusThermostat(BaseStructPlatform, RestoreEntity, ClimateEntity):
31
31
  _attr_hvac_modes: Incomplete
32
32
  _attr_hvac_mode: Incomplete
33
33
  _hvac_mode_mapping: Incomplete
34
+ _hvac_mode_write_type: Incomplete
34
35
  _hvac_onoff_register: Incomplete
36
+ _hvac_onoff_write_type: Incomplete
35
37
  def __init__(self, hub: ModbusHub, config: dict[str, Any]) -> None: ...
36
38
  async def async_added_to_hass(self) -> None: ...
37
39
  async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
@@ -55,6 +55,7 @@ CONF_HVAC_MODE_HEAT_COOL: str
55
55
  CONF_HVAC_MODE_AUTO: str
56
56
  CONF_HVAC_MODE_DRY: str
57
57
  CONF_HVAC_MODE_FAN_ONLY: str
58
+ CONF_WRITE_REGISTERS: str
58
59
  CONF_VERIFY: str
59
60
  CONF_VERIFY_REGISTER: str
60
61
  CONF_VERIFY_STATE: str
@@ -47,5 +47,5 @@ class ModbusHub:
47
47
  async def async_restart(self) -> None: ...
48
48
  async def async_close(self) -> None: ...
49
49
  def _pymodbus_connect(self) -> bool: ...
50
- def _pymodbus_call(self, unit: Union[int, None], address: int, value: Union[int, list[int]], use_call: str) -> ModbusResponse: ...
50
+ def _pymodbus_call(self, unit: Union[int, None], address: int, value: Union[int, list[int]], use_call: str) -> Union[ModbusResponse, None]: ...
51
51
  async def async_pymodbus_call(self, unit: Union[int, None], address: int, value: Union[int, list[int]], use_call: str) -> Union[ModbusResponse, None]: ...
@@ -4,10 +4,10 @@ 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 import entity_platform as entity_platform
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
  from phone_modem import PhoneModem as PhoneModem
9
9
 
10
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: entity_platform.AddEntitiesCallback) -> None: ...
10
+ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
11
 
12
12
  class PhoneModemButton(ButtonEntity):
13
13
  _attr_icon: str
@@ -4,10 +4,10 @@ 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 import entity_platform as entity_platform
7
+ from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
  from phone_modem import PhoneModem as PhoneModem
9
9
 
10
- async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: entity_platform.AddEntitiesCallback) -> None: ...
10
+ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
11
11
 
12
12
  class ModemCalleridSensor(SensorEntity):
13
13
  _attr_icon: Incomplete
@@ -1,10 +1,8 @@
1
1
  from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
2
2
  from homeassistant.config_entries import ConfigFlow as ConfigFlow
3
- from homeassistant.const import CONF_NAME as CONF_NAME
4
3
  from homeassistant.data_entry_flow import FlowResult as FlowResult
5
4
  from typing import Any
6
5
 
7
6
  class MoonConfigFlow(ConfigFlow):
8
7
  VERSION: int
9
8
  async def async_step_user(self, user_input: Union[dict[str, Any], None] = ...) -> FlowResult: ...
10
- async def async_step_import(self, user_input: dict[str, Any]) -> FlowResult: ...
@@ -1,14 +1,11 @@
1
- from .const import DEFAULT_NAME as DEFAULT_NAME, DOMAIN as DOMAIN
1
+ from .const import DOMAIN as DOMAIN
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity
4
- from homeassistant.config_entries import ConfigEntry as ConfigEntry, SOURCE_IMPORT as SOURCE_IMPORT
5
- from homeassistant.const import CONF_NAME as CONF_NAME
4
+ from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
5
  from homeassistant.core import HomeAssistant as HomeAssistant
7
6
  from homeassistant.helpers.device_registry import DeviceEntryType as DeviceEntryType
8
7
  from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
9
8
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
10
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
11
- from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
12
9
 
13
10
  STATE_FIRST_QUARTER: str
14
11
  STATE_FULL_MOON: str
@@ -19,9 +16,7 @@ STATE_WANING_GIBBOUS: str
19
16
  STATE_WAXING_CRESCENT: str
20
17
  STATE_WAXING_GIBBOUS: str
21
18
  MOON_ICONS: Incomplete
22
- PLATFORM_SCHEMA: Incomplete
23
19
 
24
- async def async_setup_platform(hass: HomeAssistant, config: ConfigType, async_add_entities: AddEntitiesCallback, discovery_info: Union[DiscoveryInfoType, None] = ...) -> None: ...
25
20
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
26
21
 
27
22
  class MoonSensorEntity(SensorEntity):
@@ -1,22 +1,20 @@
1
1
  from . import debug_info as debug_info, discovery as discovery
2
2
  from .client import MQTT as MQTT, async_publish as async_publish, async_subscribe as async_subscribe, publish as publish, subscribe as subscribe
3
- from .config_integration import CONFIG_SCHEMA_BASE as CONFIG_SCHEMA_BASE, CONFIG_SCHEMA_ENTRY as CONFIG_SCHEMA_ENTRY, DEFAULT_VALUES as DEFAULT_VALUES, DEPRECATED_CERTIFICATE_CONFIG_KEYS as DEPRECATED_CERTIFICATE_CONFIG_KEYS, DEPRECATED_CONFIG_KEYS as DEPRECATED_CONFIG_KEYS
4
- from .const import ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_QOS as CONF_QOS, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TLS_VERSION as CONF_TLS_VERSION, CONF_TOPIC as CONF_TOPIC, CONF_TRANSPORT as CONF_TRANSPORT, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, DATA_MQTT as DATA_MQTT, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_RETAIN as DEFAULT_RETAIN, DOMAIN as DOMAIN, MQTT_CONNECTED as MQTT_CONNECTED, MQTT_DISCONNECTED as MQTT_DISCONNECTED, PLATFORMS as PLATFORMS, RELOADABLE_PLATFORMS as RELOADABLE_PLATFORMS
3
+ from .config_integration import CONFIG_SCHEMA_ENTRY as CONFIG_SCHEMA_ENTRY, DEFAULT_VALUES as DEFAULT_VALUES, PLATFORM_CONFIG_SCHEMA_BASE as PLATFORM_CONFIG_SCHEMA_BASE
4
+ from .const import ATTR_PAYLOAD as ATTR_PAYLOAD, ATTR_QOS as ATTR_QOS, ATTR_RETAIN as ATTR_RETAIN, ATTR_TOPIC as ATTR_TOPIC, CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_COMMAND_TOPIC as CONF_COMMAND_TOPIC, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_QOS as CONF_QOS, CONF_STATE_TOPIC as CONF_STATE_TOPIC, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TOPIC as CONF_TOPIC, CONF_TRANSPORT as CONF_TRANSPORT, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, DATA_MQTT as DATA_MQTT, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_RETAIN as DEFAULT_RETAIN, DOMAIN as DOMAIN, MQTT_CONNECTED as MQTT_CONNECTED, MQTT_DISCONNECTED as MQTT_DISCONNECTED, PLATFORMS as PLATFORMS, RELOADABLE_PLATFORMS as RELOADABLE_PLATFORMS
5
5
  from .models import MqttCommandTemplate as MqttCommandTemplate, MqttValueTemplate as MqttValueTemplate, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage, ReceivePayloadType as ReceivePayloadType
6
- from .util import async_create_certificate_temp_files as async_create_certificate_temp_files, get_mqtt_data as get_mqtt_data, migrate_certificate_file_to_content as migrate_certificate_file_to_content, mqtt_config_entry_enabled as mqtt_config_entry_enabled, valid_publish_topic as valid_publish_topic, valid_qos_schema as valid_qos_schema, valid_subscribe_topic as valid_subscribe_topic
6
+ from .util import async_create_certificate_temp_files as async_create_certificate_temp_files, get_mqtt_data as get_mqtt_data, mqtt_config_entry_enabled as mqtt_config_entry_enabled, valid_publish_topic as valid_publish_topic, valid_qos_schema as valid_qos_schema, valid_subscribe_topic as valid_subscribe_topic
7
7
  from _typeshed import Incomplete
8
8
  from collections.abc import Callable
9
- from homeassistant import config_entries as config_entries
10
9
  from homeassistant.components import websocket_api as websocket_api
11
10
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
12
11
  from homeassistant.const import CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_DISCOVERY as CONF_DISCOVERY, CONF_PASSWORD as CONF_PASSWORD, CONF_PAYLOAD as CONF_PAYLOAD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME, SERVICE_RELOAD as SERVICE_RELOAD
13
12
  from homeassistant.core import HassJob as HassJob, HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
14
13
  from homeassistant.exceptions import TemplateError as TemplateError, Unauthorized as Unauthorized
15
- from homeassistant.helpers import discovery_flow as discovery_flow, event as event, template as template
14
+ from homeassistant.helpers import event as event, template as template
16
15
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
17
16
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
18
17
  from homeassistant.helpers.entity_platform import async_get_platforms as async_get_platforms
19
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
20
18
  from homeassistant.helpers.reload import async_integration_yaml_config as async_integration_yaml_config, async_reload_integration_platforms as async_reload_integration_platforms
21
19
  from homeassistant.helpers.service import async_register_admin_service as async_register_admin_service
22
20
  from homeassistant.helpers.typing import ConfigType as ConfigType
@@ -39,7 +37,7 @@ MQTT_PUBLISH_SCHEMA: Incomplete
39
37
  async def _async_setup_discovery(hass: HomeAssistant, conf: ConfigType, config_entry: ConfigEntry) -> None: ...
40
38
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
41
39
  def _filter_entry_config(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
42
- async def _async_merge_basic_config(hass: HomeAssistant, entry: ConfigEntry, yaml_config: dict[str, Any]) -> None: ...
40
+ async def _async_auto_mend_config(hass: HomeAssistant, entry: ConfigEntry, yaml_config: dict[str, Any]) -> None: ...
43
41
  def _merge_extended_config(entry: ConfigEntry, conf: ConfigType) -> dict[str, Any]: ...
44
42
  async def _async_config_entry_updated(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
45
43
  async def async_fetch_config(hass: HomeAssistant, entry: ConfigEntry) -> Union[dict[str, Any], None]: ...
@@ -1,3 +1,4 @@
1
+ import asyncio
1
2
  import paho.mqtt.client as mqtt
2
3
  from .const import ATTR_TOPIC as ATTR_TOPIC, CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TRANSPORT as CONF_TRANSPORT, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, DEFAULT_ENCODING as DEFAULT_ENCODING, DEFAULT_PROTOCOL as DEFAULT_PROTOCOL, DEFAULT_QOS as DEFAULT_QOS, DEFAULT_TRANSPORT as DEFAULT_TRANSPORT, MQTT_CONNECTED as MQTT_CONNECTED, MQTT_DISCONNECTED as MQTT_DISCONNECTED, PROTOCOL_31 as PROTOCOL_31, PROTOCOL_5 as PROTOCOL_5, TRANSPORT_WEBSOCKETS as TRANSPORT_WEBSOCKETS
3
4
  from .models import AsyncMessageCallbackType as AsyncMessageCallbackType, MessageCallbackType as MessageCallbackType, PublishMessage as PublishMessage, PublishPayloadType as PublishPayloadType, ReceiveMessage as ReceiveMessage
@@ -17,6 +18,8 @@ from typing import Any
17
18
 
18
19
  _LOGGER: Incomplete
19
20
  DISCOVERY_COOLDOWN: int
21
+ INITIAL_SUBSCRIBE_COOLDOWN: float
22
+ SUBSCRIBE_COOLDOWN: float
20
23
  TIMEOUT_ACK: int
21
24
  SubscribePayloadType: Incomplete
22
25
 
@@ -45,8 +48,24 @@ class MqttClientSetup:
45
48
 
46
49
  def _is_simple_match(topic: str) -> bool: ...
47
50
 
51
+ class EnsureJobAfterCooldown:
52
+ _loop: Incomplete
53
+ _timeout: Incomplete
54
+ _callback: Incomplete
55
+ _task: Incomplete
56
+ _timer: Incomplete
57
+ def __init__(self, timeout: float, callback_job: Callable[[], Coroutine[Any, None, None]]) -> None: ...
58
+ def set_timeout(self, timeout: float) -> None: ...
59
+ async def _async_job(self) -> None: ...
60
+ def _async_task_done(self, task: asyncio.Future) -> None: ...
61
+ def _async_execute(self) -> None: ...
62
+ def _async_cancel_timer(self) -> None: ...
63
+ def async_schedule(self) -> None: ...
64
+ async def async_cleanup(self) -> None: ...
65
+
48
66
  class MQTT:
49
67
  _mqttc: mqtt.Client
68
+ _last_subscribe: float
50
69
  _mqtt_data: Incomplete
51
70
  hass: Incomplete
52
71
  config_entry: Incomplete
@@ -55,11 +74,13 @@ class MQTT:
55
74
  _wildcard_subscriptions: Incomplete
56
75
  connected: bool
57
76
  _ha_started: Incomplete
58
- _last_subscribe: Incomplete
59
77
  _cleanup_on_unload: Incomplete
60
78
  _paho_lock: Incomplete
61
79
  _pending_operations: Incomplete
62
80
  _pending_operations_condition: Incomplete
81
+ _subscribe_debouncer: Incomplete
82
+ _max_qos: Incomplete
83
+ _pending_subscriptions: Incomplete
63
84
  def __init__(self, hass: HomeAssistant, config_entry: ConfigEntry, conf: ConfigType) -> None: ...
64
85
  @property
65
86
  def subscriptions(self) -> list[Subscription]: ...
@@ -72,9 +93,10 @@ class MQTT:
72
93
  def async_restore_tracked_subscriptions(self, subscriptions: list[Subscription]) -> None: ...
73
94
  def _async_track_subscription(self, subscription: Subscription) -> None: ...
74
95
  def _async_untrack_subscription(self, subscription: Subscription) -> None: ...
96
+ def _async_queue_subscriptions(self, subscriptions: Iterable[tuple[str, int]], queue_only: bool = ...) -> None: ...
75
97
  async def async_subscribe(self, topic: str, msg_callback: Union[AsyncMessageCallbackType, MessageCallbackType], qos: int, encoding: Union[str, None] = ...) -> Callable[[], None]: ...
76
98
  async def _async_unsubscribe(self, topic: str) -> None: ...
77
- async def _async_perform_subscriptions(self, subscriptions: Iterable[tuple[str, int]]) -> None: ...
99
+ async def _async_perform_subscriptions(self) -> None: ...
78
100
  def _mqtt_on_connect(self, _mqttc: mqtt.Client, _userdata: None, _flags: dict[str, int], result_code: int, properties: Union[mqtt.Properties, None] = ...) -> None: ...
79
101
  async def _async_resubscribe(self) -> None: ...
80
102
  def _mqtt_on_message(self, _mqttc: mqtt.Client, _userdata: None, msg: mqtt.MQTTMessage) -> None: ...
@@ -1,4 +1,4 @@
1
- from .const import CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TLS_VERSION as CONF_TLS_VERSION, CONF_TRANSPORT as CONF_TRANSPORT, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, DEFAULT_BIRTH as DEFAULT_BIRTH, DEFAULT_DISCOVERY as DEFAULT_DISCOVERY, DEFAULT_KEEPALIVE as DEFAULT_KEEPALIVE, DEFAULT_PORT as DEFAULT_PORT, DEFAULT_PREFIX as DEFAULT_PREFIX, DEFAULT_PROTOCOL as DEFAULT_PROTOCOL, DEFAULT_TRANSPORT as DEFAULT_TRANSPORT, DEFAULT_WILL as DEFAULT_WILL, SUPPORTED_PROTOCOLS as SUPPORTED_PROTOCOLS, TRANSPORT_TCP as TRANSPORT_TCP, TRANSPORT_WEBSOCKETS as TRANSPORT_WEBSOCKETS
1
+ from .const import CONF_BIRTH_MESSAGE as CONF_BIRTH_MESSAGE, CONF_BROKER as CONF_BROKER, CONF_CERTIFICATE as CONF_CERTIFICATE, CONF_CLIENT_CERT as CONF_CLIENT_CERT, CONF_CLIENT_KEY as CONF_CLIENT_KEY, CONF_DISCOVERY_PREFIX as CONF_DISCOVERY_PREFIX, CONF_KEEPALIVE as CONF_KEEPALIVE, CONF_TLS_INSECURE as CONF_TLS_INSECURE, CONF_TRANSPORT as CONF_TRANSPORT, CONF_WILL_MESSAGE as CONF_WILL_MESSAGE, CONF_WS_HEADERS as CONF_WS_HEADERS, CONF_WS_PATH as CONF_WS_PATH, DEFAULT_BIRTH as DEFAULT_BIRTH, DEFAULT_DISCOVERY as DEFAULT_DISCOVERY, DEFAULT_KEEPALIVE as DEFAULT_KEEPALIVE, DEFAULT_PORT as DEFAULT_PORT, DEFAULT_PREFIX as DEFAULT_PREFIX, DEFAULT_PROTOCOL as DEFAULT_PROTOCOL, DEFAULT_TRANSPORT as DEFAULT_TRANSPORT, DEFAULT_WILL as DEFAULT_WILL, SUPPORTED_PROTOCOLS as SUPPORTED_PROTOCOLS, TRANSPORT_TCP as TRANSPORT_TCP, TRANSPORT_WEBSOCKETS as TRANSPORT_WEBSOCKETS
2
2
  from .util import valid_birth_will as valid_birth_will, valid_publish_topic as valid_publish_topic
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.const import CONF_CLIENT_ID as CONF_CLIENT_ID, CONF_DISCOVERY as CONF_DISCOVERY, CONF_PASSWORD as CONF_PASSWORD, CONF_PORT as CONF_PORT, CONF_PROTOCOL as CONF_PROTOCOL, CONF_USERNAME as CONF_USERNAME, Platform as Platform
@@ -31,7 +31,6 @@ CONF_CERTIFICATE: str
31
31
  CONF_CLIENT_KEY: str
32
32
  CONF_CLIENT_CERT: str
33
33
  CONF_TLS_INSECURE: str
34
- CONF_TLS_VERSION: str
35
34
  DATA_MQTT: str
36
35
  DEFAULT_PREFIX: str
37
36
  DEFAULT_BIRTH_WILL_TOPIC: Incomplete
@@ -15,6 +15,7 @@ from homeassistant.helpers import template as template
15
15
  from homeassistant.helpers.entity import Entity as Entity
16
16
  from homeassistant.helpers.service_info.mqtt import ReceivePayloadType as ReceivePayloadType
17
17
  from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, TemplateVarsType as TemplateVarsType
18
+ from paho.mqtt.client import MQTTMessage as MQTTMessage
18
19
  from typing import Any, TypedDict
19
20
 
20
21
  class PayloadSentinel(StrEnum):
@@ -86,7 +87,7 @@ class MqttValueTemplate:
86
87
  class EntityTopicState:
87
88
  subscribe_calls: Incomplete
88
89
  def __init__(self) -> None: ...
89
- def process_write_state_requests(self) -> None: ...
90
+ def process_write_state_requests(self, msg: MQTTMessage) -> None: ...
90
91
  def write_state_request(self, entity: Entity) -> None: ...
91
92
 
92
93
  class MqttData:
@@ -1,24 +1,19 @@
1
- from .const import ATTR_DEVICES as ATTR_DEVICES, DOMAIN as DOMAIN, DevId as DevId, DiscoveryInfo as DiscoveryInfo, MYSENSORS_DISCOVERY as MYSENSORS_DISCOVERY, MYSENSORS_GATEWAYS as MYSENSORS_GATEWAYS, MYSENSORS_ON_UNLOAD as MYSENSORS_ON_UNLOAD, PLATFORMS_WITH_ENTRY_SUPPORT as PLATFORMS_WITH_ENTRY_SUPPORT, SensorType as SensorType
2
- from .device import MySensorsDevice as MySensorsDevice, get_mysensors_devices as get_mysensors_devices
1
+ from .const import ATTR_DEVICES as ATTR_DEVICES, DOMAIN as DOMAIN, DevId as DevId, DiscoveryInfo as DiscoveryInfo, MYSENSORS_GATEWAYS as MYSENSORS_GATEWAYS, MYSENSORS_ON_UNLOAD as MYSENSORS_ON_UNLOAD, PLATFORMS as PLATFORMS, SensorType as SensorType
2
+ from .device import MySensorsEntity as MySensorsEntity, get_mysensors_devices as get_mysensors_devices
3
3
  from .gateway import finish_setup as finish_setup, gw_stop as gw_stop, setup_gateway as setup_gateway
4
- from .helpers import on_unload as on_unload
5
4
  from _typeshed import Incomplete
6
- from collections.abc import Callable as Callable
5
+ from collections.abc import Callable as Callable, Mapping
7
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
7
  from homeassistant.const import Platform as Platform
9
8
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
10
9
  from homeassistant.helpers.device_registry import DeviceEntry as DeviceEntry
11
- from homeassistant.helpers.discovery import async_load_platform as async_load_platform
12
- from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
13
- from homeassistant.helpers.typing import ConfigType as ConfigType
14
10
  from mysensors import BaseAsyncGateway as BaseAsyncGateway
15
11
 
16
12
  _LOGGER: Incomplete
17
13
  DATA_HASS_CONFIG: str
18
14
  CONFIG_SCHEMA: Incomplete
19
15
 
20
- async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
21
16
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
22
17
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
23
18
  async def async_remove_config_entry_device(hass: HomeAssistant, config_entry: ConfigEntry, device_entry: DeviceEntry) -> bool: ...
24
- def setup_mysensors_platform(hass: HomeAssistant, domain: Platform, discovery_info: DiscoveryInfo, device_class: Union[type[MySensorsDevice], dict[SensorType, type[MySensorsDevice]]], device_args: Union[None, tuple] = ..., async_add_entities: Union[Callable, None] = ...) -> Union[list[MySensorsDevice], None]: ...
19
+ def setup_mysensors_platform(hass: HomeAssistant, domain: Platform, discovery_info: DiscoveryInfo, device_class: Union[type[MySensorsEntity], Mapping[SensorType, type[MySensorsEntity]]], device_args: Union[None, tuple] = ..., async_add_entities: Union[Callable, None] = ...) -> Union[list[MySensorsEntity], None]: ...
@@ -31,7 +31,6 @@ UPDATE_DELAY: float
31
31
 
32
32
  class DiscoveryInfo(TypedDict):
33
33
  devices: list[DevId]
34
- name: str
35
34
  gateway_id: GatewayId
36
35
 
37
36
  SERVICE_SEND_IR_CODE: Final[str]
@@ -44,7 +43,6 @@ CLIMATE_TYPES: dict[SensorType, set[ValueType]]
44
43
  COVER_TYPES: dict[SensorType, set[ValueType]]
45
44
  DEVICE_TRACKER_TYPES: dict[SensorType, set[ValueType]]
46
45
  LIGHT_TYPES: dict[SensorType, set[ValueType]]
47
- NOTIFY_TYPES: dict[SensorType, set[ValueType]]
48
46
  REMOTE_TYPES: dict[SensorType, set[ValueType]]
49
47
  SENSOR_TYPES: dict[SensorType, set[ValueType]]
50
48
  SWITCH_TYPES: dict[SensorType, set[ValueType]]
@@ -52,4 +50,4 @@ TEXT_TYPES: dict[SensorType, set[ValueType]]
52
50
  PLATFORM_TYPES: dict[Platform, dict[SensorType, set[ValueType]]]
53
51
  FLAT_PLATFORM_TYPES: dict[tuple[str, SensorType], set[ValueType]]
54
52
  TYPE_TO_PLATFORMS: dict[SensorType, list[Platform]]
55
- PLATFORMS_WITH_ENTRY_SUPPORT: Incomplete
53
+ PLATFORMS: Incomplete
@@ -56,7 +56,7 @@ class MySensorsDevice(ABC, metaclass=abc.ABCMeta):
56
56
  def _async_update_callback(self) -> None: ...
57
57
  async def async_update_callback(self) -> None: ...
58
58
 
59
- def get_mysensors_devices(hass: HomeAssistant, domain: Platform) -> dict[DevId, MySensorsDevice]: ...
59
+ def get_mysensors_devices(hass: HomeAssistant, domain: Platform) -> dict[DevId, MySensorsEntity]: ...
60
60
 
61
61
  class MySensorsEntity(MySensorsDevice, Entity):
62
62
  _attr_should_poll: bool
@@ -1,6 +1,6 @@
1
1
  from .. import mysensors as mysensors
2
2
  from .const import DiscoveryInfo as DiscoveryInfo, MYSENSORS_DISCOVERY as MYSENSORS_DISCOVERY, SensorType as SensorType
3
- from .device import MySensorsDevice as MySensorsDevice
3
+ from .device import MySensorsEntity as MySensorsEntity
4
4
  from .helpers import on_unload as on_unload
5
5
  from _typeshed import Incomplete
6
6
  from homeassistant.components.light import ATTR_BRIGHTNESS as ATTR_BRIGHTNESS, ATTR_RGBW_COLOR as ATTR_RGBW_COLOR, ATTR_RGB_COLOR as ATTR_RGB_COLOR, ColorMode as ColorMode, LightEntity as LightEntity
@@ -1,33 +1,19 @@
1
- from .. import mysensors as mysensors
2
- from .const import DiscoveryInfo as DiscoveryInfo, MYSENSORS_DISCOVERY as MYSENSORS_DISCOVERY, SERVICE_SEND_IR_CODE as SERVICE_SEND_IR_CODE, SensorType as SensorType
3
- from .device import MySensorsDevice as MySensorsDevice
1
+ from . import setup_mysensors_platform as setup_mysensors_platform
2
+ from .const import DiscoveryInfo as DiscoveryInfo, MYSENSORS_DISCOVERY as MYSENSORS_DISCOVERY, SensorType as SensorType
3
+ from .device import MySensorsEntity as MySensorsEntity
4
4
  from .helpers import on_unload as on_unload
5
- from _typeshed import Incomplete
6
5
  from homeassistant.components.switch import SwitchEntity as SwitchEntity
7
6
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
- from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, Platform as Platform, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON
9
- from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback, split_entity_id as split_entity_id
7
+ from homeassistant.const import Platform as Platform, STATE_OFF as STATE_OFF, STATE_ON as STATE_ON
8
+ from homeassistant.core import HomeAssistant as HomeAssistant
10
9
  from homeassistant.helpers.dispatcher import async_dispatcher_connect as async_dispatcher_connect
11
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
- from homeassistant.helpers.issue_registry import IssueSeverity as IssueSeverity, async_create_issue as async_create_issue
13
11
  from typing import Any
14
12
 
15
- ATTR_IR_CODE: str
16
- SEND_IR_CODE_SERVICE_SCHEMA: Incomplete
17
-
18
13
  async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry, async_add_entities: AddEntitiesCallback) -> None: ...
19
14
 
20
- class MySensorsSwitch(mysensors.device.MySensorsEntity, SwitchEntity):
21
- @property
22
- def is_on(self) -> bool: ...
23
- async def async_turn_on(self, **kwargs: Any) -> None: ...
24
- async def async_turn_off(self, **kwargs: Any) -> None: ...
25
-
26
- class MySensorsIRSwitch(MySensorsSwitch):
27
- _ir_code: Incomplete
28
- def __init__(self, *args: Any) -> None: ...
15
+ class MySensorsSwitch(MySensorsEntity, SwitchEntity):
29
16
  @property
30
17
  def is_on(self) -> bool: ...
31
18
  async def async_turn_on(self, **kwargs: Any) -> None: ...
32
19
  async def async_turn_off(self, **kwargs: Any) -> None: ...
33
- def _async_update(self) -> None: ...
@@ -4,9 +4,7 @@ from homeassistant.config_entries import ConfigEntry as ConfigEntry
4
4
  from homeassistant.const import CONF_HOST as CONF_HOST, CONF_PASSWORD as CONF_PASSWORD, CONF_USERNAME as CONF_USERNAME, Platform as Platform
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant
6
6
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed, ConfigEntryNotReady as ConfigEntryNotReady
7
- from homeassistant.helpers import entity_registry as entity_registry
8
7
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
9
- from homeassistant.helpers.device_registry import CONNECTION_NETWORK_MAC as CONNECTION_NETWORK_MAC
10
8
  from homeassistant.helpers.entity import DeviceInfo as DeviceInfo
11
9
  from homeassistant.helpers.update_coordinator import DataUpdateCoordinator as DataUpdateCoordinator, UpdateFailed as UpdateFailed
12
10
  from nettigo_air_monitor import NAMSensors, NettigoAirMonitor
@@ -7,7 +7,6 @@ from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceCla
7
7
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
8
8
  from homeassistant.const import CONCENTRATION_MICROGRAMS_PER_CUBIC_METER as CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, CONCENTRATION_PARTS_PER_MILLION as CONCENTRATION_PARTS_PER_MILLION, EntityCategory as EntityCategory, PERCENTAGE as PERCENTAGE, SIGNAL_STRENGTH_DECIBELS_MILLIWATT as SIGNAL_STRENGTH_DECIBELS_MILLIWATT, UnitOfPressure as UnitOfPressure, UnitOfTemperature as UnitOfTemperature
9
9
  from homeassistant.core import HomeAssistant as HomeAssistant
10
- from homeassistant.helpers import entity_registry as entity_registry
11
10
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
12
11
  from homeassistant.helpers.typing import StateType as StateType
13
12
  from homeassistant.helpers.update_coordinator import CoordinatorEntity as CoordinatorEntity
@@ -5,7 +5,6 @@ from homeassistant.components.device_automation import DEVICE_TRIGGER_BASE_SCHEM
5
5
  from homeassistant.components.device_automation.exceptions import InvalidDeviceAutomationConfig as InvalidDeviceAutomationConfig
6
6
  from homeassistant.const import ATTR_DEVICE_ID as ATTR_DEVICE_ID, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_DOMAIN as CONF_DOMAIN, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_PLATFORM as CONF_PLATFORM, CONF_TYPE as CONF_TYPE
7
7
  from homeassistant.core import CALLBACK_TYPE as CALLBACK_TYPE, HomeAssistant as HomeAssistant
8
- from homeassistant.helpers import entity_registry as entity_registry
9
8
  from homeassistant.helpers.trigger import TriggerActionType as TriggerActionType, TriggerInfo as TriggerInfo
10
9
  from homeassistant.helpers.typing import ConfigType as ConfigType
11
10
 
@@ -6,10 +6,9 @@ from homeassistant.const import PERCENTAGE as PERCENTAGE, UnitOfLength as UnitOf
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.helpers.entity_platform import AddEntitiesCallback as AddEntitiesCallback
8
8
  from homeassistant.helpers.icon import icon_for_battery_level as icon_for_battery_level
9
- from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType
9
+ from homeassistant.helpers.typing import ConfigType as ConfigType, DiscoveryInfoType as DiscoveryInfoType, StateType as StateType
10
10
  from homeassistant.util.unit_conversion import DistanceConverter as DistanceConverter
11
11
  from homeassistant.util.unit_system import US_CUSTOMARY_SYSTEM as US_CUSTOMARY_SYSTEM
12
- from voluptuous.validators import Number as Number
13
12
 
14
13
  _LOGGER: Incomplete
15
14
 
@@ -23,7 +22,7 @@ class LeafBatterySensor(LeafEntity, SensorEntity):
23
22
  @property
24
23
  def name(self) -> str: ...
25
24
  @property
26
- def native_value(self) -> Union[Number, None]: ...
25
+ def native_value(self) -> StateType: ...
27
26
  @property
28
27
  def icon(self) -> str: ...
29
28
 
@@ -1,6 +1,6 @@
1
1
  from .const import ATTR_DATA as ATTR_DATA, ATTR_MESSAGE as ATTR_MESSAGE, ATTR_TARGET as ATTR_TARGET, ATTR_TITLE as ATTR_TITLE, DOMAIN as DOMAIN, LOGGER as LOGGER, NOTIFY_SERVICE_SCHEMA as NOTIFY_SERVICE_SCHEMA, SERVICE_NOTIFY as SERVICE_NOTIFY
2
2
  from _typeshed import Incomplete
3
- from collections.abc import Callable as Callable, Coroutine
3
+ from collections.abc import Callable as Callable, Coroutine, Mapping
4
4
  from homeassistant.const import CONF_DESCRIPTION as CONF_DESCRIPTION, CONF_NAME as CONF_NAME
5
5
  from homeassistant.core import HomeAssistant as HomeAssistant, ServiceCall as ServiceCall, callback as callback
6
6
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
@@ -32,7 +32,7 @@ class BaseNotificationService:
32
32
  hass: HomeAssistant
33
33
  registered_targets: dict[str, Any]
34
34
  @property
35
- def targets(self) -> Union[dict[str, Any], None]: ...
35
+ def targets(self) -> Union[Mapping[str, Any], None]: ...
36
36
  def send_message(self, message: str, **kwargs: Any) -> None: ...
37
37
  async def async_send_message(self, message: str, **kwargs: Any) -> None: ...
38
38
  async def _async_notify_message_service(self, service: ServiceCall) -> None: ...
@@ -29,6 +29,7 @@ class NumberDeviceClass(StrEnum):
29
29
  DATA_SIZE: str
30
30
  DISTANCE: str
31
31
  ENERGY: str
32
+ ENERGY_STORAGE: str
32
33
  FREQUENCY: str
33
34
  GAS: str
34
35
  HUMIDITY: str
@@ -57,6 +58,7 @@ class NumberDeviceClass(StrEnum):
57
58
  VOLATILE_ORGANIC_COMPOUNDS: str
58
59
  VOLTAGE: str
59
60
  VOLUME: str
61
+ VOLUME_STORAGE: str
60
62
  WATER: str
61
63
  WEIGHT: str
62
64
  WIND_SPEED: str
@@ -3,7 +3,6 @@ from .const import ATTR_VALUE as ATTR_VALUE, DOMAIN as DOMAIN, SERVICE_SET_VALUE
3
3
  from _typeshed import Incomplete
4
4
  from homeassistant.const import ATTR_ENTITY_ID as ATTR_ENTITY_ID, CONF_DEVICE_ID as CONF_DEVICE_ID, CONF_DOMAIN as CONF_DOMAIN, CONF_ENTITY_ID as CONF_ENTITY_ID, CONF_TYPE as CONF_TYPE
5
5
  from homeassistant.core import Context as Context, HomeAssistant as HomeAssistant
6
- from homeassistant.helpers import entity_registry as entity_registry
7
6
  from homeassistant.helpers.typing import ConfigType as ConfigType, TemplateVarsType as TemplateVarsType
8
7
 
9
8
  ATYP_SET_VALUE: str
@@ -24,10 +24,13 @@ class OTBRData:
24
24
  async def set_enabled(self, enabled: bool) -> None: ...
25
25
  async def get_active_dataset_tlvs(self) -> Union[bytes, None]: ...
26
26
  async def create_active_dataset(self, dataset: python_otbr_api.OperationalDataSet) -> None: ...
27
+ async def set_active_dataset_tlvs(self, dataset: bytes) -> None: ...
28
+ async def get_extended_address(self) -> bytes: ...
27
29
  def __init__(self, url, api) -> None: ...
28
30
 
29
31
  async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: ...
30
32
  def _warn_on_default_network_settings(hass: HomeAssistant, entry: ConfigEntry, dataset_tlvs: bytes) -> None: ...
31
33
  async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
32
34
  async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool: ...
35
+ async def async_reload_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: ...
33
36
  async def async_get_active_dataset_tlvs(hass: HomeAssistant) -> Union[bytes, None]: ...
@@ -1,8 +1,9 @@
1
1
  from .const import DEFAULT_CHANNEL as DEFAULT_CHANNEL, DOMAIN as DOMAIN
2
+ from .util import get_allowed_channel as get_allowed_channel
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.components.hassio import HassioServiceInfo as HassioServiceInfo
4
5
  from homeassistant.components.thread import async_get_preferred_dataset as async_get_preferred_dataset
5
- from homeassistant.config_entries import ConfigFlow as ConfigFlow
6
+ from homeassistant.config_entries import ConfigFlow as ConfigFlow, SOURCE_HASSIO as SOURCE_HASSIO
6
7
  from homeassistant.const import CONF_URL as CONF_URL
7
8
  from homeassistant.data_entry_flow import FlowResult as FlowResult
8
9
  from homeassistant.helpers.aiohttp_client import async_get_clientsession as async_get_clientsession
@@ -11,6 +12,6 @@ _LOGGER: Incomplete
11
12
 
12
13
  class OTBRConfigFlow(ConfigFlow):
13
14
  VERSION: int
14
- async def _connect_and_create_dataset(self, url: str) -> None: ...
15
+ async def _connect_and_set_dataset(self, otbr_url: str) -> None: ...
15
16
  async def async_step_user(self, user_input: Union[dict[str, str], None] = ...) -> FlowResult: ...
16
17
  async def async_step_hassio(self, discovery_info: HassioServiceInfo) -> FlowResult: ...
@@ -0,0 +1,6 @@
1
+ from homeassistant.components.homeassistant_hardware.silabs_multiprotocol_addon import is_multiprotocol_url as is_multiprotocol_url
2
+ from homeassistant.core import HomeAssistant as HomeAssistant
3
+
4
+ def _get_zha_url(hass: HomeAssistant) -> Union[str, None]: ...
5
+ async def _get_zha_channel(hass: HomeAssistant) -> Union[int, None]: ...
6
+ async def get_allowed_channel(hass: HomeAssistant, otbr_url: str) -> Union[int, None]: ...
@@ -1,9 +1,13 @@
1
1
  from . import OTBRData as OTBRData
2
2
  from .const import DEFAULT_CHANNEL as DEFAULT_CHANNEL, DOMAIN as DOMAIN
3
- from homeassistant.components.websocket_api import ActiveConnection as ActiveConnection, async_register_command as async_register_command, async_response as async_response, websocket_command as websocket_command
3
+ from .util import get_allowed_channel as get_allowed_channel
4
+ from homeassistant.components import websocket_api as websocket_api
5
+ from homeassistant.components.thread import async_add_dataset as async_add_dataset, async_get_dataset as async_get_dataset
4
6
  from homeassistant.core import HomeAssistant as HomeAssistant, callback as callback
5
7
  from homeassistant.exceptions import HomeAssistantError as HomeAssistantError
6
8
 
7
9
  def async_setup(hass: HomeAssistant) -> None: ...
8
- async def websocket_info(hass: HomeAssistant, connection: ActiveConnection, msg: dict) -> None: ...
9
- async def websocket_create_network(hass: HomeAssistant, connection: ActiveConnection, msg: dict) -> None: ...
10
+ async def websocket_info(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
11
+ async def websocket_create_network(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
12
+ async def websocket_set_network(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
13
+ async def websocket_get_extended_address(hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg: dict) -> None: ...
@@ -5,6 +5,7 @@ from .atlantic_heat_recovery_ventilation import AtlanticHeatRecoveryVentilation
5
5
  from .atlantic_pass_apc_heating_zone import AtlanticPassAPCHeatingZone as AtlanticPassAPCHeatingZone
6
6
  from .atlantic_pass_apc_zone_control import AtlanticPassAPCZoneControl as AtlanticPassAPCZoneControl
7
7
  from .somfy_thermostat import SomfyThermostat as SomfyThermostat
8
+ from .valve_heating_temperature_interface import ValveHeatingTemperatureInterface as ValveHeatingTemperatureInterface
8
9
  from _typeshed import Incomplete
9
10
 
10
11
  WIDGET_TO_CLIMATE_ENTITY: Incomplete
@@ -1,3 +1,4 @@
1
+ from ..const import DOMAIN as DOMAIN
1
2
  from ..entity import OverkizEntity as OverkizEntity
2
3
  from _typeshed import Incomplete
3
4
  from homeassistant.components.climate import ClimateEntity as ClimateEntity, ClimateEntityFeature as ClimateEntityFeature, HVACMode as HVACMode, PRESET_COMFORT as PRESET_COMFORT, PRESET_ECO as PRESET_ECO, PRESET_NONE as PRESET_NONE
@@ -16,6 +17,7 @@ class AtlanticElectricalHeater(OverkizEntity, ClimateEntity):
16
17
  _attr_preset_modes: Incomplete
17
18
  _attr_supported_features: Incomplete
18
19
  _attr_temperature_unit: Incomplete
20
+ _attr_translation_key: Incomplete
19
21
  @property
20
22
  def hvac_mode(self) -> HVACMode: ...
21
23
  async def async_set_hvac_mode(self, hvac_mode: HVACMode) -> None: ...
@@ -1,3 +1,4 @@
1
+ from ..const import DOMAIN as DOMAIN
1
2
  from ..coordinator import OverkizDataUpdateCoordinator as OverkizDataUpdateCoordinator
2
3
  from ..entity import OverkizEntity as OverkizEntity
3
4
  from _typeshed import Incomplete
@@ -22,6 +23,7 @@ class AtlanticElectricalHeaterWithAdjustableTemperatureSetpoint(OverkizEntity, C
22
23
  _attr_preset_modes: Incomplete
23
24
  _attr_temperature_unit: Incomplete
24
25
  _attr_supported_features: Incomplete
26
+ _attr_translation_key: Incomplete
25
27
  temperature_device: Incomplete
26
28
  def __init__(self, device_url: str, coordinator: OverkizDataUpdateCoordinator) -> None: ...
27
29
  @property
@@ -1,3 +1,4 @@
1
+ from ..const import DOMAIN as DOMAIN
1
2
  from ..coordinator import OverkizDataUpdateCoordinator as OverkizDataUpdateCoordinator
2
3
  from ..entity import OverkizEntity as OverkizEntity
3
4
  from _typeshed import Incomplete
@@ -16,6 +17,7 @@ class AtlanticElectricalTowelDryer(OverkizEntity, ClimateEntity):
16
17
  _attr_hvac_modes: Incomplete
17
18
  _attr_preset_modes: Incomplete
18
19
  _attr_temperature_unit: Incomplete
20
+ _attr_translation_key: Incomplete
19
21
  temperature_device: Incomplete
20
22
  _attr_supported_features: Incomplete
21
23
  def __init__(self, device_url: str, coordinator: OverkizDataUpdateCoordinator) -> None: ...
@@ -1,3 +1,4 @@
1
+ from ..const import DOMAIN as DOMAIN
1
2
  from ..coordinator import OverkizDataUpdateCoordinator as OverkizDataUpdateCoordinator
2
3
  from ..entity import OverkizEntity as OverkizEntity
3
4
  from _typeshed import Incomplete
@@ -22,6 +23,7 @@ class AtlanticHeatRecoveryVentilation(OverkizEntity, ClimateEntity):
22
23
  _attr_preset_modes: Incomplete
23
24
  _attr_temperature_unit: Incomplete
24
25
  _attr_supported_features: Incomplete
26
+ _attr_translation_key: Incomplete
25
27
  temperature_device: Incomplete
26
28
  def __init__(self, device_url: str, coordinator: OverkizDataUpdateCoordinator) -> None: ...
27
29
  @property
@@ -1,3 +1,4 @@
1
+ from ..const import DOMAIN as DOMAIN
1
2
  from ..coordinator import OverkizDataUpdateCoordinator as OverkizDataUpdateCoordinator
2
3
  from ..entity import OverkizEntity as OverkizEntity
3
4
  from _typeshed import Incomplete
@@ -19,6 +20,7 @@ class AtlanticPassAPCHeatingZone(OverkizEntity, ClimateEntity):
19
20
  _attr_preset_modes: Incomplete
20
21
  _attr_supported_features: Incomplete
21
22
  _attr_temperature_unit: Incomplete
23
+ _attr_translation_key: Incomplete
22
24
  temperature_device: Incomplete
23
25
  def __init__(self, device_url: str, coordinator: OverkizDataUpdateCoordinator) -> None: ...
24
26
  @property