@smarthome.exchange/integrations 0.1.0 → 1.0.0

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 (1066) hide show
  1. package/changelog.md +131 -0
  2. package/dist_ts/00_commitinfo_data.js +1 -1
  3. package/dist_ts/cli/classes.cliruntime.d.ts +1 -1
  4. package/dist_ts/cli/commands.discover.js +1 -1
  5. package/dist_ts/cli/commands.setup.d.ts +1 -1
  6. package/dist_ts/core/classes.configrecord.d.ts +15 -0
  7. package/dist_ts/core/classes.configrecord.js +93 -0
  8. package/dist_ts/core/classes.configstore.d.ts +38 -10
  9. package/dist_ts/core/classes.configstore.js +298 -32
  10. package/dist_ts/core/classes.discoveryengine.js +12 -2
  11. package/dist_ts/core/classes.runtimemanager.d.ts +6 -2
  12. package/dist_ts/core/classes.runtimemanager.js +74 -39
  13. package/dist_ts/core/classes.simplelocalintegration.js +1 -1
  14. package/dist_ts/core/errors.d.ts +2 -2
  15. package/dist_ts/core/errors.js +1 -1
  16. package/dist_ts/core/types.d.ts +13 -4
  17. package/dist_ts/index.d.ts +4 -1
  18. package/dist_ts/index.js +7 -1
  19. package/dist_ts/integrations/adguard/adguard.classes.client.js +1 -1
  20. package/dist_ts/integrations/adguard/adguard.classes.integration.d.ts +1 -1
  21. package/dist_ts/integrations/adguard/adguard.classes.integration.js +1 -1
  22. package/dist_ts/integrations/adguard/adguard.discovery.d.ts +1 -1
  23. package/dist_ts/integrations/adguard/adguard.mapper.js +1 -1
  24. package/dist_ts/integrations/agent_dvr/agent_dvr.classes.client.js +1 -1
  25. package/dist_ts/integrations/agent_dvr/agent_dvr.classes.integration.d.ts +1 -1
  26. package/dist_ts/integrations/agent_dvr/agent_dvr.classes.integration.js +1 -1
  27. package/dist_ts/integrations/agent_dvr/agent_dvr.discovery.d.ts +3 -3
  28. package/dist_ts/integrations/agent_dvr/agent_dvr.mapper.js +1 -1
  29. package/dist_ts/integrations/agent_dvr/agent_dvr.types.d.ts +1 -1
  30. package/dist_ts/integrations/airgradient/airgradient.classes.client.js +1 -1
  31. package/dist_ts/integrations/airgradient/airgradient.classes.integration.d.ts +1 -1
  32. package/dist_ts/integrations/airgradient/airgradient.classes.integration.js +1 -1
  33. package/dist_ts/integrations/airgradient/airgradient.discovery.d.ts +2 -2
  34. package/dist_ts/integrations/airos/airos.classes.client.js +1 -1
  35. package/dist_ts/integrations/airos/airos.classes.integration.d.ts +1 -1
  36. package/dist_ts/integrations/airos/airos.classes.integration.js +1 -1
  37. package/dist_ts/integrations/airos/airos.discovery.d.ts +4 -4
  38. package/dist_ts/integrations/airos/airos.discovery.js +1 -1
  39. package/dist_ts/integrations/airos/airos.mapper.js +1 -1
  40. package/dist_ts/integrations/amcrest/amcrest.classes.client.js +1 -1
  41. package/dist_ts/integrations/amcrest/amcrest.classes.integration.d.ts +1 -1
  42. package/dist_ts/integrations/amcrest/amcrest.classes.integration.js +1 -1
  43. package/dist_ts/integrations/amcrest/amcrest.discovery.d.ts +3 -3
  44. package/dist_ts/integrations/amcrest/amcrest.types.d.ts +5 -5
  45. package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.client.js +1 -1
  46. package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.integration.d.ts +1 -1
  47. package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.classes.integration.js +1 -1
  48. package/dist_ts/integrations/android_ip_webcam/android_ip_webcam.discovery.d.ts +1 -1
  49. package/dist_ts/integrations/androidtv/androidtv.classes.client.js +1 -1
  50. package/dist_ts/integrations/androidtv/androidtv.classes.integration.d.ts +1 -1
  51. package/dist_ts/integrations/androidtv/androidtv.classes.integration.js +1 -1
  52. package/dist_ts/integrations/androidtv/androidtv.discovery.d.ts +3 -3
  53. package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.client.js +1 -1
  54. package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.integration.d.ts +1 -1
  55. package/dist_ts/integrations/androidtv_remote/androidtv_remote.classes.integration.js +1 -1
  56. package/dist_ts/integrations/androidtv_remote/androidtv_remote.discovery.d.ts +2 -2
  57. package/dist_ts/integrations/apcupsd/apcupsd.classes.client.js +1 -1
  58. package/dist_ts/integrations/apcupsd/apcupsd.classes.integration.d.ts +1 -1
  59. package/dist_ts/integrations/apcupsd/apcupsd.classes.integration.js +1 -1
  60. package/dist_ts/integrations/apcupsd/apcupsd.discovery.d.ts +1 -1
  61. package/dist_ts/integrations/apcupsd/apcupsd.mapper.js +1 -1
  62. package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.client.js +1 -1
  63. package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.integration.d.ts +1 -1
  64. package/dist_ts/integrations/arcam_fmj/arcam_fmj.classes.integration.js +1 -1
  65. package/dist_ts/integrations/arcam_fmj/arcam_fmj.discovery.d.ts +2 -2
  66. package/dist_ts/integrations/asuswrt/asuswrt.classes.client.js +1 -1
  67. package/dist_ts/integrations/asuswrt/asuswrt.classes.integration.d.ts +1 -1
  68. package/dist_ts/integrations/asuswrt/asuswrt.classes.integration.js +1 -1
  69. package/dist_ts/integrations/asuswrt/asuswrt.discovery.d.ts +1 -1
  70. package/dist_ts/integrations/asuswrt/asuswrt.mapper.js +1 -1
  71. package/dist_ts/integrations/axis/axis.classes.client.js +1 -1
  72. package/dist_ts/integrations/axis/axis.classes.integration.d.ts +1 -1
  73. package/dist_ts/integrations/axis/axis.classes.integration.js +1 -1
  74. package/dist_ts/integrations/axis/axis.discovery.d.ts +3 -3
  75. package/dist_ts/integrations/blebox/blebox.classes.client.js +1 -1
  76. package/dist_ts/integrations/blebox/blebox.classes.integration.d.ts +1 -1
  77. package/dist_ts/integrations/blebox/blebox.classes.integration.js +1 -1
  78. package/dist_ts/integrations/blebox/blebox.discovery.d.ts +2 -2
  79. package/dist_ts/integrations/bluesound/bluesound.classes.client.d.ts +9 -4
  80. package/dist_ts/integrations/bluesound/bluesound.classes.client.js +1 -1
  81. package/dist_ts/integrations/bluesound/bluesound.classes.integration.d.ts +1 -1
  82. package/dist_ts/integrations/bluesound/bluesound.classes.integration.js +1 -1
  83. package/dist_ts/integrations/bluesound/bluesound.discovery.d.ts +2 -2
  84. package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.client.js +1 -1
  85. package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.integration.d.ts +1 -1
  86. package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.classes.integration.js +1 -1
  87. package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.discovery.d.ts +2 -2
  88. package/dist_ts/integrations/bluetooth_le_tracker/bluetooth_le_tracker.mapper.js +1 -1
  89. package/dist_ts/integrations/bond/bond.classes.client.js +1 -1
  90. package/dist_ts/integrations/bond/bond.classes.integration.d.ts +1 -1
  91. package/dist_ts/integrations/bond/bond.classes.integration.js +1 -1
  92. package/dist_ts/integrations/bond/bond.discovery.d.ts +3 -3
  93. package/dist_ts/integrations/bond/bond.mapper.js +1 -1
  94. package/dist_ts/integrations/bond/bond.types.d.ts +71 -71
  95. package/dist_ts/integrations/bosch_shc/bosch_shc.classes.client.js +1 -1
  96. package/dist_ts/integrations/bosch_shc/bosch_shc.classes.integration.d.ts +1 -1
  97. package/dist_ts/integrations/bosch_shc/bosch_shc.classes.integration.js +1 -1
  98. package/dist_ts/integrations/bosch_shc/bosch_shc.discovery.d.ts +2 -2
  99. package/dist_ts/integrations/bosch_shc/bosch_shc.mapper.js +1 -1
  100. package/dist_ts/integrations/braviatv/braviatv.classes.client.js +1 -1
  101. package/dist_ts/integrations/braviatv/braviatv.classes.integration.d.ts +1 -1
  102. package/dist_ts/integrations/braviatv/braviatv.classes.integration.js +1 -1
  103. package/dist_ts/integrations/braviatv/braviatv.discovery.d.ts +3 -3
  104. package/dist_ts/integrations/broadlink/broadlink.classes.client.js +1 -1
  105. package/dist_ts/integrations/broadlink/broadlink.classes.integration.d.ts +1 -1
  106. package/dist_ts/integrations/broadlink/broadlink.classes.integration.js +1 -1
  107. package/dist_ts/integrations/broadlink/broadlink.discovery.d.ts +3 -3
  108. package/dist_ts/integrations/broadlink/broadlink.mapper.js +1 -1
  109. package/dist_ts/integrations/broadlink/broadlink.packet.d.ts +2 -2
  110. package/dist_ts/integrations/broadlink/broadlink.packet.js +1 -1
  111. package/dist_ts/integrations/brother/brother.classes.client.js +1 -1
  112. package/dist_ts/integrations/brother/brother.classes.integration.d.ts +1 -1
  113. package/dist_ts/integrations/brother/brother.classes.integration.js +1 -1
  114. package/dist_ts/integrations/brother/brother.constants.d.ts +12 -12
  115. package/dist_ts/integrations/brother/brother.discovery.d.ts +2 -2
  116. package/dist_ts/integrations/brother/brother.mapper.js +1 -1
  117. package/dist_ts/integrations/cast/cast.classes.client.js +1 -1
  118. package/dist_ts/integrations/cast/cast.classes.integration.d.ts +1 -1
  119. package/dist_ts/integrations/cast/cast.classes.integration.js +1 -1
  120. package/dist_ts/integrations/cast/cast.discovery.d.ts +2 -2
  121. package/dist_ts/integrations/channels/channels.classes.client.js +1 -1
  122. package/dist_ts/integrations/channels/channels.classes.integration.d.ts +1 -1
  123. package/dist_ts/integrations/channels/channels.classes.integration.js +1 -1
  124. package/dist_ts/integrations/channels/channels.discovery.d.ts +2 -2
  125. package/dist_ts/integrations/cisco_ios/cisco_ios.classes.client.js +1 -1
  126. package/dist_ts/integrations/cisco_ios/cisco_ios.classes.integration.d.ts +1 -1
  127. package/dist_ts/integrations/cisco_ios/cisco_ios.classes.integration.js +1 -1
  128. package/dist_ts/integrations/cisco_ios/cisco_ios.discovery.d.ts +2 -2
  129. package/dist_ts/integrations/cisco_ios/cisco_ios.mapper.js +1 -1
  130. package/dist_ts/integrations/daikin/daikin.classes.client.js +1 -1
  131. package/dist_ts/integrations/daikin/daikin.classes.integration.d.ts +1 -1
  132. package/dist_ts/integrations/daikin/daikin.classes.integration.js +1 -1
  133. package/dist_ts/integrations/daikin/daikin.discovery.d.ts +5 -5
  134. package/dist_ts/integrations/daikin/daikin.mapper.js +1 -1
  135. package/dist_ts/integrations/ddwrt/ddwrt.classes.client.js +1 -1
  136. package/dist_ts/integrations/ddwrt/ddwrt.classes.integration.d.ts +1 -1
  137. package/dist_ts/integrations/ddwrt/ddwrt.classes.integration.js +1 -1
  138. package/dist_ts/integrations/ddwrt/ddwrt.discovery.d.ts +3 -3
  139. package/dist_ts/integrations/ddwrt/ddwrt.mapper.js +1 -1
  140. package/dist_ts/integrations/deconz/deconz.classes.client.d.ts +31 -22
  141. package/dist_ts/integrations/deconz/deconz.classes.client.js +302 -153
  142. package/dist_ts/integrations/deconz/deconz.classes.configflow.js +43 -26
  143. package/dist_ts/integrations/deconz/deconz.classes.integration.d.ts +3 -1
  144. package/dist_ts/integrations/deconz/deconz.classes.integration.js +133 -20
  145. package/dist_ts/integrations/deconz/deconz.discovery.d.ts +4 -4
  146. package/dist_ts/integrations/deconz/deconz.mapper.d.ts +2 -1
  147. package/dist_ts/integrations/deconz/deconz.mapper.js +23 -18
  148. package/dist_ts/integrations/deconz/deconz.types.d.ts +34 -3
  149. package/dist_ts/integrations/deconz/deconz.validation.d.ts +14 -0
  150. package/dist_ts/integrations/deconz/deconz.validation.js +269 -0
  151. package/dist_ts/integrations/deluge/deluge.classes.client.js +1 -1
  152. package/dist_ts/integrations/deluge/deluge.classes.integration.d.ts +1 -1
  153. package/dist_ts/integrations/deluge/deluge.classes.integration.js +1 -1
  154. package/dist_ts/integrations/deluge/deluge.discovery.d.ts +2 -2
  155. package/dist_ts/integrations/denon/denon.classes.client.js +1 -1
  156. package/dist_ts/integrations/denon/denon.classes.integration.d.ts +1 -1
  157. package/dist_ts/integrations/denon/denon.classes.integration.js +1 -1
  158. package/dist_ts/integrations/denon/denon.discovery.d.ts +1 -1
  159. package/dist_ts/integrations/denonavr/denonavr.classes.client.js +1 -1
  160. package/dist_ts/integrations/denonavr/denonavr.classes.integration.d.ts +1 -1
  161. package/dist_ts/integrations/denonavr/denonavr.classes.integration.js +1 -1
  162. package/dist_ts/integrations/denonavr/denonavr.discovery.d.ts +3 -3
  163. package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.client.js +1 -1
  164. package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.integration.d.ts +1 -1
  165. package/dist_ts/integrations/devolo_home_network/devolo_home_network.classes.integration.js +1 -1
  166. package/dist_ts/integrations/devolo_home_network/devolo_home_network.discovery.d.ts +3 -3
  167. package/dist_ts/integrations/devolo_home_network/devolo_home_network.mapper.js +1 -1
  168. package/dist_ts/integrations/directv/directv.classes.client.js +1 -1
  169. package/dist_ts/integrations/directv/directv.classes.integration.d.ts +1 -1
  170. package/dist_ts/integrations/directv/directv.classes.integration.js +1 -1
  171. package/dist_ts/integrations/directv/directv.discovery.d.ts +2 -2
  172. package/dist_ts/integrations/directv/directv.types.d.ts +1 -1
  173. package/dist_ts/integrations/dlink/dlink.classes.client.d.ts +6 -3
  174. package/dist_ts/integrations/dlink/dlink.classes.client.js +1 -1
  175. package/dist_ts/integrations/dlink/dlink.classes.integration.d.ts +1 -1
  176. package/dist_ts/integrations/dlink/dlink.classes.integration.js +1 -1
  177. package/dist_ts/integrations/dlink/dlink.discovery.d.ts +2 -2
  178. package/dist_ts/integrations/dlink/dlink.mapper.js +1 -1
  179. package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.client.js +1 -1
  180. package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.integration.d.ts +1 -1
  181. package/dist_ts/integrations/dlna_dmr/dlna_dmr.classes.integration.js +1 -1
  182. package/dist_ts/integrations/dlna_dmr/dlna_dmr.discovery.d.ts +2 -2
  183. package/dist_ts/integrations/dlna_dms/dlna_dms.classes.client.js +1 -1
  184. package/dist_ts/integrations/dlna_dms/dlna_dms.classes.integration.d.ts +1 -1
  185. package/dist_ts/integrations/dlna_dms/dlna_dms.classes.integration.js +1 -1
  186. package/dist_ts/integrations/dlna_dms/dlna_dms.discovery.d.ts +2 -2
  187. package/dist_ts/integrations/doorbird/doorbird.classes.client.js +1 -1
  188. package/dist_ts/integrations/doorbird/doorbird.classes.integration.d.ts +1 -1
  189. package/dist_ts/integrations/doorbird/doorbird.classes.integration.js +1 -1
  190. package/dist_ts/integrations/doorbird/doorbird.discovery.d.ts +2 -2
  191. package/dist_ts/integrations/dsmr/dsmr.classes.client.js +1 -1
  192. package/dist_ts/integrations/dsmr/dsmr.classes.integration.d.ts +1 -1
  193. package/dist_ts/integrations/dsmr/dsmr.classes.integration.js +1 -1
  194. package/dist_ts/integrations/dsmr/dsmr.discovery.d.ts +1 -1
  195. package/dist_ts/integrations/dsmr/dsmr.parser.js +1 -1
  196. package/dist_ts/integrations/dunehd/dunehd.classes.client.js +1 -1
  197. package/dist_ts/integrations/dunehd/dunehd.classes.integration.d.ts +1 -1
  198. package/dist_ts/integrations/dunehd/dunehd.classes.integration.js +1 -1
  199. package/dist_ts/integrations/dunehd/dunehd.discovery.d.ts +3 -3
  200. package/dist_ts/integrations/edimax/edimax.classes.client.js +1 -1
  201. package/dist_ts/integrations/edl21/edl21.classes.client.js +1 -1
  202. package/dist_ts/integrations/egardia/egardia.classes.client.js +1 -1
  203. package/dist_ts/integrations/elgato/elgato.classes.client.js +1 -1
  204. package/dist_ts/integrations/elgato/elgato.classes.integration.d.ts +1 -1
  205. package/dist_ts/integrations/elgato/elgato.classes.integration.js +1 -1
  206. package/dist_ts/integrations/elgato/elgato.discovery.d.ts +3 -3
  207. package/dist_ts/integrations/emby/emby.classes.client.js +1 -1
  208. package/dist_ts/integrations/emby/emby.classes.integration.d.ts +1 -1
  209. package/dist_ts/integrations/emby/emby.classes.integration.js +1 -1
  210. package/dist_ts/integrations/emby/emby.discovery.d.ts +3 -3
  211. package/dist_ts/integrations/emoncms_history/emoncms_history.classes.client.js +1 -1
  212. package/dist_ts/integrations/emonitor/emonitor.classes.client.js +1 -1
  213. package/dist_ts/integrations/emulated_hue/emulated_hue.classes.client.js +1 -1
  214. package/dist_ts/integrations/emulated_kasa/emulated_kasa.classes.client.js +1 -1
  215. package/dist_ts/integrations/emulated_roku/emulated_roku.classes.client.js +1 -1
  216. package/dist_ts/integrations/energenie_power_sockets/energenie_power_sockets.classes.client.js +1 -1
  217. package/dist_ts/integrations/enigma2/enigma2.classes.client.js +1 -1
  218. package/dist_ts/integrations/enocean/enocean.classes.client.js +1 -1
  219. package/dist_ts/integrations/esphome/esphome.classes.client.d.ts +35 -18
  220. package/dist_ts/integrations/esphome/esphome.classes.client.js +267 -77
  221. package/dist_ts/integrations/esphome/esphome.classes.configflow.js +2 -4
  222. package/dist_ts/integrations/esphome/esphome.classes.integration.d.ts +22 -11
  223. package/dist_ts/integrations/esphome/esphome.classes.integration.js +68 -61
  224. package/dist_ts/integrations/esphome/esphome.discovery.d.ts +2 -2
  225. package/dist_ts/integrations/esphome/esphome.discovery.js +2 -2
  226. package/dist_ts/integrations/esphome/esphome.mapper.d.ts +1 -2
  227. package/dist_ts/integrations/esphome/esphome.mapper.js +79 -36
  228. package/dist_ts/integrations/esphome/esphome.types.d.ts +2 -0
  229. package/dist_ts/integrations/fibaro/fibaro.classes.client.js +1 -1
  230. package/dist_ts/integrations/file/file.classes.client.js +1 -1
  231. package/dist_ts/integrations/filesize/filesize.classes.client.js +1 -1
  232. package/dist_ts/integrations/flexit_bacnet/flexit_bacnet.classes.client.js +1 -1
  233. package/dist_ts/integrations/flic/flic.classes.client.js +1 -1
  234. package/dist_ts/integrations/flux_led/flux_led.classes.client.js +1 -1
  235. package/dist_ts/integrations/folder/folder.classes.client.js +1 -1
  236. package/dist_ts/integrations/folder_watcher/folder_watcher.classes.client.js +1 -1
  237. package/dist_ts/integrations/forked_daapd/forked_daapd.classes.client.js +1 -1
  238. package/dist_ts/integrations/forked_daapd/forked_daapd.classes.integration.d.ts +1 -1
  239. package/dist_ts/integrations/forked_daapd/forked_daapd.classes.integration.js +1 -1
  240. package/dist_ts/integrations/forked_daapd/forked_daapd.discovery.d.ts +2 -2
  241. package/dist_ts/integrations/foscam/foscam.classes.client.js +1 -1
  242. package/dist_ts/integrations/foscam/foscam.classes.integration.d.ts +1 -1
  243. package/dist_ts/integrations/foscam/foscam.classes.integration.js +1 -1
  244. package/dist_ts/integrations/foscam/foscam.discovery.d.ts +3 -3
  245. package/dist_ts/integrations/foscam/foscam.types.d.ts +2 -2
  246. package/dist_ts/integrations/freebox/freebox.classes.client.js +1 -1
  247. package/dist_ts/integrations/freebox/freebox.classes.integration.d.ts +1 -1
  248. package/dist_ts/integrations/freebox/freebox.classes.integration.js +1 -1
  249. package/dist_ts/integrations/freebox/freebox.discovery.d.ts +2 -2
  250. package/dist_ts/integrations/freebox/freebox.mapper.js +1 -1
  251. package/dist_ts/integrations/freebox/freebox.types.d.ts +11 -11
  252. package/dist_ts/integrations/fritz/fritz.classes.client.js +1 -1
  253. package/dist_ts/integrations/fritz/fritz.classes.integration.d.ts +1 -1
  254. package/dist_ts/integrations/fritz/fritz.classes.integration.js +1 -1
  255. package/dist_ts/integrations/fritz/fritz.discovery.d.ts +3 -3
  256. package/dist_ts/integrations/fritz/fritz.mapper.js +1 -1
  257. package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.client.js +1 -1
  258. package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.integration.d.ts +1 -1
  259. package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.classes.integration.js +1 -1
  260. package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.discovery.d.ts +3 -3
  261. package/dist_ts/integrations/fritzbox_callmonitor/fritzbox_callmonitor.mapper.js +1 -1
  262. package/dist_ts/integrations/fronius/fronius.classes.client.js +1 -1
  263. package/dist_ts/integrations/fronius/fronius.classes.integration.d.ts +1 -1
  264. package/dist_ts/integrations/fronius/fronius.classes.integration.js +1 -1
  265. package/dist_ts/integrations/fronius/fronius.discovery.d.ts +2 -2
  266. package/dist_ts/integrations/fronius/fronius.mapper.js +1 -1
  267. package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.client.js +1 -1
  268. package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.integration.d.ts +1 -1
  269. package/dist_ts/integrations/frontier_silicon/frontier_silicon.classes.integration.js +1 -1
  270. package/dist_ts/integrations/frontier_silicon/frontier_silicon.discovery.d.ts +2 -2
  271. package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.client.js +1 -1
  272. package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.integration.d.ts +1 -1
  273. package/dist_ts/integrations/fully_kiosk/fully_kiosk.classes.integration.js +1 -1
  274. package/dist_ts/integrations/fully_kiosk/fully_kiosk.discovery.d.ts +2 -2
  275. package/dist_ts/integrations/fully_kiosk/fully_kiosk.mapper.js +1 -1
  276. package/dist_ts/integrations/generated/index.d.ts +1 -1
  277. package/dist_ts/integrations/generated/index.js +5 -7
  278. package/dist_ts/integrations/generic/generic.classes.client.js +1 -1
  279. package/dist_ts/integrations/geniushub/geniushub.classes.client.js +1 -1
  280. package/dist_ts/integrations/glances/glances.classes.client.js +1 -1
  281. package/dist_ts/integrations/glances/glances.classes.integration.d.ts +1 -1
  282. package/dist_ts/integrations/glances/glances.classes.integration.js +1 -1
  283. package/dist_ts/integrations/glances/glances.discovery.d.ts +2 -2
  284. package/dist_ts/integrations/go2rtc/go2rtc.classes.client.js +1 -1
  285. package/dist_ts/integrations/go2rtc/go2rtc.classes.integration.d.ts +1 -1
  286. package/dist_ts/integrations/go2rtc/go2rtc.classes.integration.js +1 -1
  287. package/dist_ts/integrations/go2rtc/go2rtc.discovery.d.ts +2 -2
  288. package/dist_ts/integrations/go2rtc/go2rtc.mapper.js +1 -1
  289. package/dist_ts/integrations/goalzero/goalzero.classes.client.js +1 -1
  290. package/dist_ts/integrations/gogogate2/gogogate2.classes.client.js +1 -1
  291. package/dist_ts/integrations/goodwe/goodwe.classes.client.js +1 -1
  292. package/dist_ts/integrations/goodwe/goodwe.classes.integration.d.ts +1 -1
  293. package/dist_ts/integrations/goodwe/goodwe.classes.integration.js +1 -1
  294. package/dist_ts/integrations/goodwe/goodwe.discovery.d.ts +1 -1
  295. package/dist_ts/integrations/goodwe/goodwe.types.d.ts +8 -8
  296. package/dist_ts/integrations/google_wifi/google_wifi.classes.client.js +1 -1
  297. package/dist_ts/integrations/govee_ble/govee_ble.classes.client.js +1 -1
  298. package/dist_ts/integrations/govee_light_local/govee_light_local.classes.client.js +1 -1
  299. package/dist_ts/integrations/gpsd/gpsd.classes.client.js +1 -1
  300. package/dist_ts/integrations/graphite/graphite.classes.client.js +1 -1
  301. package/dist_ts/integrations/gree/gree.classes.client.js +1 -1
  302. package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.client.js +1 -1
  303. package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.integration.d.ts +1 -1
  304. package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.classes.integration.js +1 -1
  305. package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.discovery.d.ts +1 -1
  306. package/dist_ts/integrations/harman_kardon_avr/harman_kardon_avr.types.d.ts +12 -12
  307. package/dist_ts/integrations/harmony/harmony.classes.client.js +1 -1
  308. package/dist_ts/integrations/harmony/harmony.classes.integration.d.ts +1 -1
  309. package/dist_ts/integrations/harmony/harmony.classes.integration.js +1 -1
  310. package/dist_ts/integrations/harmony/harmony.discovery.d.ts +2 -2
  311. package/dist_ts/integrations/hddtemp/hddtemp.classes.client.js +1 -1
  312. package/dist_ts/integrations/hddtemp/hddtemp.classes.integration.d.ts +1 -1
  313. package/dist_ts/integrations/hddtemp/hddtemp.classes.integration.js +1 -1
  314. package/dist_ts/integrations/hddtemp/hddtemp.discovery.d.ts +2 -2
  315. package/dist_ts/integrations/hdfury/hdfury.classes.client.js +1 -1
  316. package/dist_ts/integrations/hdmi_cec/hdmi_cec.classes.client.js +1 -1
  317. package/dist_ts/integrations/heatmiser/heatmiser.classes.client.js +1 -1
  318. package/dist_ts/integrations/hegel/hegel.classes.client.js +1 -1
  319. package/dist_ts/integrations/heos/heos.classes.client.js +1 -1
  320. package/dist_ts/integrations/heos/heos.classes.integration.d.ts +1 -1
  321. package/dist_ts/integrations/heos/heos.classes.integration.js +1 -1
  322. package/dist_ts/integrations/heos/heos.discovery.d.ts +3 -3
  323. package/dist_ts/integrations/hikvision/hikvision.classes.client.js +1 -1
  324. package/dist_ts/integrations/hikvision/hikvision.classes.integration.d.ts +1 -1
  325. package/dist_ts/integrations/hikvision/hikvision.classes.integration.js +1 -1
  326. package/dist_ts/integrations/hikvision/hikvision.discovery.d.ts +3 -3
  327. package/dist_ts/integrations/hikvisioncam/hikvisioncam.classes.client.js +1 -1
  328. package/dist_ts/integrations/hisense_aehw4a1/hisense_aehw4a1.classes.client.js +1 -1
  329. package/dist_ts/integrations/hitron_coda/hitron_coda.classes.client.js +1 -1
  330. package/dist_ts/integrations/hlk_sw16/hlk_sw16.classes.client.js +1 -1
  331. package/dist_ts/integrations/holiday/holiday.classes.client.js +1 -1
  332. package/dist_ts/integrations/homeassistant/homeassistant.classes.client.d.ts +7 -1
  333. package/dist_ts/integrations/homeassistant/homeassistant.classes.client.js +174 -50
  334. package/dist_ts/integrations/homeassistant/homeassistant.classes.integration.d.ts +1 -1
  335. package/dist_ts/integrations/homeassistant/homeassistant.classes.integration.js +1 -1
  336. package/dist_ts/integrations/homeassistant/homeassistant.classes.runtime.d.ts +2 -0
  337. package/dist_ts/integrations/homeassistant/homeassistant.classes.runtime.js +35 -3
  338. package/dist_ts/integrations/homeassistant/homeassistant.mapper.d.ts +4 -4
  339. package/dist_ts/integrations/homeassistant/homeassistant.mapper.js +25 -36
  340. package/dist_ts/integrations/homeassistant/homeassistant.types.d.ts +10 -0
  341. package/dist_ts/integrations/homeassistant/homeassistant.validation.d.ts +9 -0
  342. package/dist_ts/integrations/homeassistant/homeassistant.validation.js +137 -0
  343. package/dist_ts/integrations/homee/homee.classes.client.js +1 -1
  344. package/dist_ts/integrations/homekit_controller/homekit_controller.classes.client.js +1 -1
  345. package/dist_ts/integrations/homekit_controller/homekit_controller.classes.integration.d.ts +1 -1
  346. package/dist_ts/integrations/homekit_controller/homekit_controller.classes.integration.js +1 -1
  347. package/dist_ts/integrations/homekit_controller/homekit_controller.discovery.d.ts +2 -2
  348. package/dist_ts/integrations/homekit_controller/homekit_controller.mapper.js +1 -1
  349. package/dist_ts/integrations/homematic/homematic.classes.client.d.ts +2 -2
  350. package/dist_ts/integrations/homematic/homematic.classes.client.js +1 -1
  351. package/dist_ts/integrations/homematic/homematic.classes.integration.d.ts +1 -1
  352. package/dist_ts/integrations/homematic/homematic.classes.integration.js +1 -1
  353. package/dist_ts/integrations/homematic/homematic.constants.d.ts +2 -2
  354. package/dist_ts/integrations/homematic/homematic.discovery.d.ts +2 -2
  355. package/dist_ts/integrations/homewizard/homewizard.classes.client.js +1 -1
  356. package/dist_ts/integrations/homewizard/homewizard.classes.integration.d.ts +3 -3
  357. package/dist_ts/integrations/homewizard/homewizard.classes.integration.js +1 -1
  358. package/dist_ts/integrations/homewizard/homewizard.discovery.d.ts +3 -3
  359. package/dist_ts/integrations/homewizard/homewizard.mapper.js +1 -1
  360. package/dist_ts/integrations/homewizard/homewizard.types.d.ts +10 -10
  361. package/dist_ts/integrations/huawei_lte/huawei_lte.classes.client.js +1 -1
  362. package/dist_ts/integrations/huawei_lte/huawei_lte.classes.integration.d.ts +2 -2
  363. package/dist_ts/integrations/huawei_lte/huawei_lte.classes.integration.js +1 -1
  364. package/dist_ts/integrations/huawei_lte/huawei_lte.discovery.d.ts +3 -3
  365. package/dist_ts/integrations/huawei_lte/huawei_lte.mapper.js +1 -1
  366. package/dist_ts/integrations/huawei_lte/huawei_lte.types.d.ts +1 -1
  367. package/dist_ts/integrations/hue/hue.classes.client.d.ts +13 -5
  368. package/dist_ts/integrations/hue/hue.classes.client.js +278 -23
  369. package/dist_ts/integrations/hue/hue.classes.configflow.js +34 -14
  370. package/dist_ts/integrations/hue/hue.classes.integration.d.ts +2 -1
  371. package/dist_ts/integrations/hue/hue.classes.integration.js +85 -25
  372. package/dist_ts/integrations/hue/hue.discovery.d.ts +2 -2
  373. package/dist_ts/integrations/hue/hue.discovery.js +79 -26
  374. package/dist_ts/integrations/hue/hue.mapper.d.ts +0 -1
  375. package/dist_ts/integrations/hue/hue.mapper.js +26 -54
  376. package/dist_ts/integrations/hue/hue.types.d.ts +14 -7
  377. package/dist_ts/integrations/hue/hue.validation.d.ts +11 -0
  378. package/dist_ts/integrations/hue/hue.validation.js +160 -0
  379. package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.client.js +1 -1
  380. package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.integration.d.ts +2 -2
  381. package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.classes.integration.js +1 -1
  382. package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.discovery.d.ts +3 -3
  383. package/dist_ts/integrations/hunterdouglas_powerview/hunterdouglas_powerview.types.d.ts +1 -1
  384. package/dist_ts/integrations/hyperion/hyperion.classes.client.js +1 -1
  385. package/dist_ts/integrations/hyperion/hyperion.classes.integration.d.ts +1 -1
  386. package/dist_ts/integrations/hyperion/hyperion.classes.integration.js +1 -1
  387. package/dist_ts/integrations/hyperion/hyperion.discovery.d.ts +3 -3
  388. package/dist_ts/integrations/hyperion/hyperion.types.d.ts +1 -1
  389. package/dist_ts/integrations/imeon_inverter/imeon_inverter.classes.client.js +1 -1
  390. package/dist_ts/integrations/immich/immich.classes.client.js +1 -1
  391. package/dist_ts/integrations/incomfort/incomfort.classes.integration.js +1 -1
  392. package/dist_ts/integrations/indevolt/indevolt.classes.integration.js +1 -1
  393. package/dist_ts/integrations/index.d.ts +4 -1
  394. package/dist_ts/integrations/index.js +5 -2
  395. package/dist_ts/integrations/influxdb/influxdb.classes.client.js +1 -1
  396. package/dist_ts/integrations/intellifire/intellifire.classes.client.js +1 -1
  397. package/dist_ts/integrations/intellifire/intellifire.mapper.js +1 -1
  398. package/dist_ts/integrations/iometer/iometer.classes.client.js +1 -1
  399. package/dist_ts/integrations/iometer/iometer.mapper.js +1 -1
  400. package/dist_ts/integrations/iotawatt/iotawatt.classes.client.js +1 -1
  401. package/dist_ts/integrations/iperf3/iperf3.classes.client.js +1 -1
  402. package/dist_ts/integrations/ipp/ipp.classes.client.js +1 -1
  403. package/dist_ts/integrations/ipp/ipp.classes.integration.d.ts +1 -1
  404. package/dist_ts/integrations/ipp/ipp.classes.integration.js +1 -1
  405. package/dist_ts/integrations/ipp/ipp.discovery.d.ts +2 -2
  406. package/dist_ts/integrations/iron_os/iron_os.classes.client.js +1 -1
  407. package/dist_ts/integrations/iskra/iskra.classes.client.js +1 -1
  408. package/dist_ts/integrations/iskra/iskra.mapper.js +1 -1
  409. package/dist_ts/integrations/itunes/itunes.classes.client.js +1 -1
  410. package/dist_ts/integrations/jellyfin/jellyfin.classes.client.js +1 -1
  411. package/dist_ts/integrations/jellyfin/jellyfin.classes.integration.d.ts +1 -1
  412. package/dist_ts/integrations/jellyfin/jellyfin.classes.integration.js +1 -1
  413. package/dist_ts/integrations/jellyfin/jellyfin.discovery.d.ts +3 -3
  414. package/dist_ts/integrations/jvc_projector/jvc_projector.classes.client.js +1 -1
  415. package/dist_ts/integrations/kaleidescape/kaleidescape.classes.client.js +1 -1
  416. package/dist_ts/integrations/kankun/kankun.classes.client.js +1 -1
  417. package/dist_ts/integrations/keenetic_ndms2/keenetic_ndms2.classes.client.js +1 -1
  418. package/dist_ts/integrations/kef/kef.classes.client.js +1 -1
  419. package/dist_ts/integrations/kiosker/kiosker.classes.client.js +1 -1
  420. package/dist_ts/integrations/kira/kira.classes.client.js +1 -1
  421. package/dist_ts/integrations/kmtronic/kmtronic.classes.client.js +1 -1
  422. package/dist_ts/integrations/knx/knx.classes.client.js +1 -1
  423. package/dist_ts/integrations/knx/knx.classes.integration.d.ts +1 -1
  424. package/dist_ts/integrations/knx/knx.classes.integration.js +1 -1
  425. package/dist_ts/integrations/knx/knx.discovery.d.ts +3 -3
  426. package/dist_ts/integrations/knx/knx.mapper.d.ts +1 -1
  427. package/dist_ts/integrations/knx/knx.mapper.js +1 -1
  428. package/dist_ts/integrations/kodi/kodi.classes.client.d.ts +2 -2
  429. package/dist_ts/integrations/kodi/kodi.classes.client.js +1 -1
  430. package/dist_ts/integrations/kodi/kodi.classes.integration.d.ts +1 -1
  431. package/dist_ts/integrations/kodi/kodi.classes.integration.js +1 -1
  432. package/dist_ts/integrations/kodi/kodi.discovery.d.ts +2 -2
  433. package/dist_ts/integrations/konnected/konnected.classes.client.js +1 -1
  434. package/dist_ts/integrations/kostal_plenticore/kostal_plenticore.classes.client.js +1 -1
  435. package/dist_ts/integrations/kostal_plenticore/kostal_plenticore.mapper.js +1 -1
  436. package/dist_ts/integrations/kwb/kwb.classes.client.js +1 -1
  437. package/dist_ts/integrations/kwb/kwb.mapper.js +1 -1
  438. package/dist_ts/integrations/lametric/lametric.classes.client.js +1 -1
  439. package/dist_ts/integrations/landisgyr_heat_meter/landisgyr_heat_meter.mapper.js +1 -1
  440. package/dist_ts/integrations/lcn/lcn.classes.client.js +1 -1
  441. package/dist_ts/integrations/lektrico/lektrico.classes.client.js +1 -1
  442. package/dist_ts/integrations/lektrico/lektrico.types.d.ts +4 -4
  443. package/dist_ts/integrations/lg_netcast/lg_netcast.classes.client.js +1 -1
  444. package/dist_ts/integrations/lg_soundbar/lg_soundbar.classes.client.js +1 -1
  445. package/dist_ts/integrations/libre_hardware_monitor/libre_hardware_monitor.classes.client.js +1 -1
  446. package/dist_ts/integrations/lidarr/lidarr.classes.client.js +1 -1
  447. package/dist_ts/integrations/lifx/lifx.classes.client.d.ts +10 -4
  448. package/dist_ts/integrations/lifx/lifx.classes.client.js +94 -6
  449. package/dist_ts/integrations/lifx/lifx.classes.configflow.d.ts +3 -3
  450. package/dist_ts/integrations/lifx/lifx.classes.configflow.js +37 -6
  451. package/dist_ts/integrations/lifx/lifx.classes.integration.d.ts +19 -4
  452. package/dist_ts/integrations/lifx/lifx.classes.integration.js +152 -7
  453. package/dist_ts/integrations/lifx/lifx.discovery.d.ts +2 -1
  454. package/dist_ts/integrations/lifx/lifx.discovery.js +26 -4
  455. package/dist_ts/integrations/lifx/lifx.mapper.d.ts +7 -8
  456. package/dist_ts/integrations/lifx/lifx.mapper.js +42 -12
  457. package/dist_ts/integrations/lifx/lifx.types.d.ts +61 -9
  458. package/dist_ts/integrations/lifx/lifx.types.js +9 -116
  459. package/dist_ts/integrations/lifx/lifx.validation.d.ts +10 -0
  460. package/dist_ts/integrations/lifx/lifx.validation.js +83 -0
  461. package/dist_ts/integrations/linkplay/linkplay.classes.client.js +1 -1
  462. package/dist_ts/integrations/linkplay/linkplay.classes.integration.d.ts +1 -1
  463. package/dist_ts/integrations/linkplay/linkplay.classes.integration.js +1 -1
  464. package/dist_ts/integrations/linkplay/linkplay.discovery.d.ts +3 -3
  465. package/dist_ts/integrations/linksys_smart/linksys_smart.classes.client.js +1 -1
  466. package/dist_ts/integrations/livisi/livisi.classes.client.js +1 -1
  467. package/dist_ts/integrations/local_calendar/local_calendar.classes.client.js +1 -1
  468. package/dist_ts/integrations/local_file/local_file.classes.client.js +1 -1
  469. package/dist_ts/integrations/local_ip/local_ip.classes.client.js +1 -1
  470. package/dist_ts/integrations/local_todo/local_todo.classes.client.js +1 -1
  471. package/dist_ts/integrations/lookin/lookin.classes.client.js +1 -1
  472. package/dist_ts/integrations/loqed/loqed.classes.client.js +1 -1
  473. package/dist_ts/integrations/loqed/loqed.mapper.d.ts +1 -1
  474. package/dist_ts/integrations/loqed/loqed.mapper.js +1 -1
  475. package/dist_ts/integrations/luci/luci.classes.client.js +1 -1
  476. package/dist_ts/integrations/luci/luci.mapper.js +1 -1
  477. package/dist_ts/integrations/lunatone/lunatone.classes.client.js +1 -1
  478. package/dist_ts/integrations/lunatone/lunatone.mapper.js +1 -1
  479. package/dist_ts/integrations/madvr/madvr.classes.client.js +1 -1
  480. package/dist_ts/integrations/madvr/madvr.classes.integration.d.ts +1 -1
  481. package/dist_ts/integrations/madvr/madvr.classes.integration.js +1 -1
  482. package/dist_ts/integrations/madvr/madvr.discovery.d.ts +2 -2
  483. package/dist_ts/integrations/marytts/marytts.classes.client.js +1 -1
  484. package/dist_ts/integrations/marytts/marytts.classes.integration.js +1 -1
  485. package/dist_ts/integrations/matter/matter.classes.client.js +1 -1
  486. package/dist_ts/integrations/matter/matter.classes.integration.d.ts +1 -1
  487. package/dist_ts/integrations/matter/matter.classes.integration.js +1 -1
  488. package/dist_ts/integrations/matter/matter.discovery.d.ts +2 -2
  489. package/dist_ts/integrations/matter/matter.mapper.js +1 -1
  490. package/dist_ts/integrations/maxcube/maxcube.classes.client.js +1 -1
  491. package/dist_ts/integrations/mcp/mcp.classes.client.js +1 -1
  492. package/dist_ts/integrations/mcp_server/mcp_server.classes.client.js +1 -1
  493. package/dist_ts/integrations/mealie/mealie.classes.client.js +1 -1
  494. package/dist_ts/integrations/mealie/mealie.mapper.js +1 -1
  495. package/dist_ts/integrations/medcom_ble/medcom_ble.classes.client.js +1 -1
  496. package/dist_ts/integrations/medcom_ble/medcom_ble.mapper.js +1 -1
  497. package/dist_ts/integrations/mediaroom/mediaroom.classes.client.js +1 -1
  498. package/dist_ts/integrations/mediaroom/mediaroom.mapper.js +1 -1
  499. package/dist_ts/integrations/mfi/mfi.mapper.js +1 -1
  500. package/dist_ts/integrations/mikrotik/mikrotik.classes.client.js +1 -1
  501. package/dist_ts/integrations/mikrotik/mikrotik.classes.integration.d.ts +1 -1
  502. package/dist_ts/integrations/mikrotik/mikrotik.classes.integration.js +1 -1
  503. package/dist_ts/integrations/mikrotik/mikrotik.discovery.d.ts +1 -1
  504. package/dist_ts/integrations/mikrotik/mikrotik.mapper.js +1 -1
  505. package/dist_ts/integrations/mill/mill.classes.client.js +1 -1
  506. package/dist_ts/integrations/mill/mill.mapper.js +1 -1
  507. package/dist_ts/integrations/minecraft_server/minecraft_server.classes.client.js +1 -1
  508. package/dist_ts/integrations/mjpeg/mjpeg.classes.client.js +1 -1
  509. package/dist_ts/integrations/mobile_app/mobile_app.classes.client.js +1 -1
  510. package/dist_ts/integrations/mochad/mochad.classes.client.js +1 -1
  511. package/dist_ts/integrations/modbus/modbus.classes.client.js +1 -1
  512. package/dist_ts/integrations/modbus/modbus.classes.integration.d.ts +1 -1
  513. package/dist_ts/integrations/modbus/modbus.classes.integration.js +1 -1
  514. package/dist_ts/integrations/modbus/modbus.discovery.d.ts +1 -1
  515. package/dist_ts/integrations/modern_forms/modern_forms.classes.client.js +1 -1
  516. package/dist_ts/integrations/moehlenhoff_alpha2/moehlenhoff_alpha2.classes.client.js +1 -1
  517. package/dist_ts/integrations/monoprice/monoprice.classes.client.js +1 -1
  518. package/dist_ts/integrations/motioneye/motioneye.classes.client.js +1 -1
  519. package/dist_ts/integrations/motioneye/motioneye.classes.integration.d.ts +1 -1
  520. package/dist_ts/integrations/motioneye/motioneye.classes.integration.js +1 -1
  521. package/dist_ts/integrations/motioneye/motioneye.discovery.d.ts +2 -2
  522. package/dist_ts/integrations/motioneye/motioneye.types.d.ts +1 -1
  523. package/dist_ts/integrations/motionmount/motionmount.classes.client.js +1 -1
  524. package/dist_ts/integrations/mpd/mpd.classes.client.js +1 -1
  525. package/dist_ts/integrations/mpd/mpd.classes.integration.d.ts +1 -1
  526. package/dist_ts/integrations/mpd/mpd.classes.integration.js +1 -1
  527. package/dist_ts/integrations/mpd/mpd.discovery.d.ts +2 -2
  528. package/dist_ts/integrations/mqtt/mqtt.classes.client.d.ts +54 -9
  529. package/dist_ts/integrations/mqtt/mqtt.classes.client.js +443 -352
  530. package/dist_ts/integrations/mqtt/mqtt.classes.configflow.d.ts +0 -1
  531. package/dist_ts/integrations/mqtt/mqtt.classes.configflow.js +23 -18
  532. package/dist_ts/integrations/mqtt/mqtt.classes.integration.d.ts +1 -1
  533. package/dist_ts/integrations/mqtt/mqtt.classes.integration.js +140 -37
  534. package/dist_ts/integrations/mqtt/mqtt.discovery.d.ts +2 -2
  535. package/dist_ts/integrations/mqtt/mqtt.mapper.d.ts +7 -1
  536. package/dist_ts/integrations/mqtt/mqtt.mapper.js +161 -48
  537. package/dist_ts/integrations/mqtt/mqtt.types.d.ts +17 -0
  538. package/dist_ts/integrations/mqtt_eventstream/mqtt_eventstream.classes.client.js +1 -1
  539. package/dist_ts/integrations/mqtt_json/mqtt_json.classes.client.js +1 -1
  540. package/dist_ts/integrations/mqtt_room/mqtt_room.classes.client.js +1 -1
  541. package/dist_ts/integrations/music_assistant/music_assistant.classes.client.js +1 -1
  542. package/dist_ts/integrations/music_assistant/music_assistant.mapper.js +1 -1
  543. package/dist_ts/integrations/mutesync/mutesync.classes.client.js +1 -1
  544. package/dist_ts/integrations/mutesync/mutesync.mapper.js +1 -1
  545. package/dist_ts/integrations/mycroft/mycroft.classes.client.js +1 -1
  546. package/dist_ts/integrations/mysensors/mysensors.classes.client.js +1 -1
  547. package/dist_ts/integrations/mystrom/mystrom.classes.client.js +1 -1
  548. package/dist_ts/integrations/nad/nad.classes.client.js +1 -1
  549. package/dist_ts/integrations/nam/nam.classes.client.js +1 -1
  550. package/dist_ts/integrations/nanoleaf/nanoleaf.classes.client.js +1 -1
  551. package/dist_ts/integrations/nanoleaf/nanoleaf.classes.integration.d.ts +1 -1
  552. package/dist_ts/integrations/nanoleaf/nanoleaf.classes.integration.js +1 -1
  553. package/dist_ts/integrations/nanoleaf/nanoleaf.discovery.d.ts +3 -3
  554. package/dist_ts/integrations/nasweb/nasweb.classes.client.js +1 -1
  555. package/dist_ts/integrations/netdata/netdata.classes.client.js +1 -1
  556. package/dist_ts/integrations/nibe_heatpump/nibe_heatpump.classes.client.js +1 -1
  557. package/dist_ts/integrations/niko_home_control/niko_home_control.classes.client.js +1 -1
  558. package/dist_ts/integrations/nobo_hub/nobo_hub.classes.client.js +1 -1
  559. package/dist_ts/integrations/nrgkick/nrgkick.classes.client.js +1 -1
  560. package/dist_ts/integrations/nuki/nuki.classes.client.js +1 -1
  561. package/dist_ts/integrations/nut/nut.classes.client.js +1 -1
  562. package/dist_ts/integrations/nut/nut.classes.integration.js +1 -1
  563. package/dist_ts/integrations/nx584/nx584.classes.client.js +1 -1
  564. package/dist_ts/integrations/nx584/nx584.classes.integration.js +1 -1
  565. package/dist_ts/integrations/nzbget/nzbget.classes.client.js +1 -1
  566. package/dist_ts/integrations/nzbget/nzbget.mapper.js +1 -1
  567. package/dist_ts/integrations/obihai/obihai.classes.client.js +1 -1
  568. package/dist_ts/integrations/octoprint/octoprint.classes.client.js +1 -1
  569. package/dist_ts/integrations/octoprint/octoprint.mapper.js +1 -1
  570. package/dist_ts/integrations/oem/oem.classes.client.js +1 -1
  571. package/dist_ts/integrations/ollama/ollama.classes.client.js +1 -1
  572. package/dist_ts/integrations/ombi/ombi.classes.client.js +1 -1
  573. package/dist_ts/integrations/onewire/onewire.classes.client.js +1 -1
  574. package/dist_ts/integrations/onkyo/onkyo.classes.client.js +1 -1
  575. package/dist_ts/integrations/onvif/onvif.classes.client.js +1 -1
  576. package/dist_ts/integrations/onvif/onvif.classes.integration.d.ts +1 -1
  577. package/dist_ts/integrations/onvif/onvif.classes.integration.js +1 -1
  578. package/dist_ts/integrations/onvif/onvif.discovery.d.ts +3 -3
  579. package/dist_ts/integrations/onvif/onvif.mapper.js +1 -1
  580. package/dist_ts/integrations/openevse/openevse.classes.client.js +1 -1
  581. package/dist_ts/integrations/openevse/openevse.mapper.js +1 -1
  582. package/dist_ts/integrations/opengarage/opengarage.classes.client.js +1 -1
  583. package/dist_ts/integrations/opengarage/opengarage.mapper.js +1 -1
  584. package/dist_ts/integrations/openhardwaremonitor/openhardwaremonitor.classes.client.js +1 -1
  585. package/dist_ts/integrations/openhome/openhome.classes.client.d.ts +2 -1
  586. package/dist_ts/integrations/openhome/openhome.classes.client.js +21 -19
  587. package/dist_ts/integrations/openrgb/openrgb.classes.client.js +1 -1
  588. package/dist_ts/integrations/openrgb/openrgb.classes.integration.d.ts +1 -1
  589. package/dist_ts/integrations/openrgb/openrgb.classes.integration.js +1 -1
  590. package/dist_ts/integrations/openrgb/openrgb.discovery.d.ts +2 -2
  591. package/dist_ts/integrations/openrgb/openrgb.mapper.js +1 -1
  592. package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.client.d.ts +1 -1
  593. package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.client.js +1 -1
  594. package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.integration.d.ts +1 -1
  595. package/dist_ts/integrations/opentherm_gw/opentherm_gw.classes.integration.js +1 -1
  596. package/dist_ts/integrations/opentherm_gw/opentherm_gw.discovery.d.ts +1 -1
  597. package/dist_ts/integrations/opnsense/opnsense.classes.client.js +1 -1
  598. package/dist_ts/integrations/opnsense/opnsense.classes.integration.d.ts +1 -1
  599. package/dist_ts/integrations/opnsense/opnsense.classes.integration.js +1 -1
  600. package/dist_ts/integrations/opnsense/opnsense.discovery.d.ts +1 -1
  601. package/dist_ts/integrations/opnsense/opnsense.mapper.js +1 -1
  602. package/dist_ts/integrations/orvibo/orvibo.classes.client.js +1 -1
  603. package/dist_ts/integrations/osramlightify/osramlightify.classes.client.js +1 -1
  604. package/dist_ts/integrations/otbr/otbr.classes.client.js +1 -1
  605. package/dist_ts/integrations/overkiz/overkiz.classes.client.js +1 -1
  606. package/dist_ts/integrations/overseerr/overseerr.classes.client.js +1 -1
  607. package/dist_ts/integrations/owntracks/owntracks.classes.client.js +1 -1
  608. package/dist_ts/integrations/p1_monitor/p1_monitor.classes.client.js +1 -1
  609. package/dist_ts/integrations/palazzetti/palazzetti.classes.client.js +1 -1
  610. package/dist_ts/integrations/panasonic_bluray/panasonic_bluray.classes.client.js +1 -1
  611. package/dist_ts/integrations/panasonic_viera/panasonic_viera.classes.client.js +1 -1
  612. package/dist_ts/integrations/paperless_ngx/paperless_ngx.classes.client.js +1 -1
  613. package/dist_ts/integrations/paperless_ngx/paperless_ngx.mapper.js +1 -1
  614. package/dist_ts/integrations/peblar/peblar.classes.client.js +1 -1
  615. package/dist_ts/integrations/peblar/peblar.mapper.js +1 -1
  616. package/dist_ts/integrations/pencom/pencom.classes.client.js +1 -1
  617. package/dist_ts/integrations/philips_js/philips_js.classes.client.js +1 -1
  618. package/dist_ts/integrations/pi_hole/pi_hole.classes.client.js +1 -1
  619. package/dist_ts/integrations/pi_hole/pi_hole.classes.integration.d.ts +1 -1
  620. package/dist_ts/integrations/pi_hole/pi_hole.classes.integration.js +1 -1
  621. package/dist_ts/integrations/pi_hole/pi_hole.discovery.d.ts +2 -2
  622. package/dist_ts/integrations/pi_hole/pi_hole.mapper.js +1 -1
  623. package/dist_ts/integrations/picotts/picotts.classes.client.js +1 -1
  624. package/dist_ts/integrations/pilight/pilight.classes.client.js +1 -1
  625. package/dist_ts/integrations/pilight/pilight.classes.integration.js +1 -1
  626. package/dist_ts/integrations/ping/ping.classes.client.js +1 -1
  627. package/dist_ts/integrations/pioneer/pioneer.classes.client.js +1 -1
  628. package/dist_ts/integrations/pjlink/pjlink.classes.client.js +1 -1
  629. package/dist_ts/integrations/plex/plex.classes.client.d.ts +1 -1
  630. package/dist_ts/integrations/plex/plex.classes.client.js +1 -1
  631. package/dist_ts/integrations/plex/plex.classes.integration.d.ts +1 -1
  632. package/dist_ts/integrations/plex/plex.classes.integration.js +1 -1
  633. package/dist_ts/integrations/plex/plex.discovery.d.ts +5 -5
  634. package/dist_ts/integrations/plugwise/plugwise.classes.client.js +1 -1
  635. package/dist_ts/integrations/prusalink/prusalink.classes.client.js +1 -1
  636. package/dist_ts/integrations/prusalink/prusalink.classes.integration.d.ts +1 -1
  637. package/dist_ts/integrations/prusalink/prusalink.classes.integration.js +1 -1
  638. package/dist_ts/integrations/prusalink/prusalink.discovery.d.ts +2 -2
  639. package/dist_ts/integrations/rainbird/rainbird.classes.client.js +1 -1
  640. package/dist_ts/integrations/rainbird/rainbird.classes.integration.d.ts +1 -1
  641. package/dist_ts/integrations/rainbird/rainbird.classes.integration.js +1 -1
  642. package/dist_ts/integrations/rainbird/rainbird.discovery.d.ts +1 -1
  643. package/dist_ts/integrations/rflink/rflink.classes.client.js +1 -1
  644. package/dist_ts/integrations/rflink/rflink.classes.integration.d.ts +1 -1
  645. package/dist_ts/integrations/rflink/rflink.classes.integration.js +1 -1
  646. package/dist_ts/integrations/rflink/rflink.discovery.d.ts +1 -1
  647. package/dist_ts/integrations/roku/roku.classes.client.d.ts +27 -14
  648. package/dist_ts/integrations/roku/roku.classes.client.js +213 -132
  649. package/dist_ts/integrations/roku/roku.classes.configflow.js +23 -14
  650. package/dist_ts/integrations/roku/roku.classes.integration.d.ts +4 -1
  651. package/dist_ts/integrations/roku/roku.classes.integration.js +74 -91
  652. package/dist_ts/integrations/roku/roku.discovery.d.ts +8 -8
  653. package/dist_ts/integrations/roku/roku.discovery.js +82 -65
  654. package/dist_ts/integrations/roku/roku.mapper.d.ts +0 -3
  655. package/dist_ts/integrations/roku/roku.mapper.js +18 -50
  656. package/dist_ts/integrations/roku/roku.types.d.ts +21 -12
  657. package/dist_ts/integrations/roku/roku.validation.d.ts +9 -0
  658. package/dist_ts/integrations/roku/roku.validation.js +74 -0
  659. package/dist_ts/integrations/samsungtv/samsungtv.classes.client.d.ts +9 -38
  660. package/dist_ts/integrations/samsungtv/samsungtv.classes.client.js +113 -417
  661. package/dist_ts/integrations/samsungtv/samsungtv.classes.configflow.js +31 -29
  662. package/dist_ts/integrations/samsungtv/samsungtv.classes.integration.d.ts +8 -7
  663. package/dist_ts/integrations/samsungtv/samsungtv.classes.integration.js +122 -117
  664. package/dist_ts/integrations/samsungtv/samsungtv.discovery.d.ts +11 -11
  665. package/dist_ts/integrations/samsungtv/samsungtv.discovery.js +120 -143
  666. package/dist_ts/integrations/samsungtv/samsungtv.mapper.d.ts +3 -11
  667. package/dist_ts/integrations/samsungtv/samsungtv.mapper.js +18 -117
  668. package/dist_ts/integrations/samsungtv/samsungtv.types.d.ts +18 -85
  669. package/dist_ts/integrations/samsungtv/samsungtv.validation.d.ts +7 -0
  670. package/dist_ts/integrations/samsungtv/samsungtv.validation.js +83 -0
  671. package/dist_ts/integrations/shelly/shelly.classes.client.d.ts +29 -14
  672. package/dist_ts/integrations/shelly/shelly.classes.client.js +310 -126
  673. package/dist_ts/integrations/shelly/shelly.classes.configflow.js +29 -11
  674. package/dist_ts/integrations/shelly/shelly.classes.integration.d.ts +4 -1
  675. package/dist_ts/integrations/shelly/shelly.classes.integration.js +120 -27
  676. package/dist_ts/integrations/shelly/shelly.classes.subscription.d.ts +47 -0
  677. package/dist_ts/integrations/shelly/shelly.classes.subscription.js +206 -0
  678. package/dist_ts/integrations/shelly/shelly.discovery.d.ts +2 -2
  679. package/dist_ts/integrations/shelly/shelly.discovery.js +6 -3
  680. package/dist_ts/integrations/shelly/shelly.rpc.d.ts +21 -0
  681. package/dist_ts/integrations/shelly/shelly.rpc.js +210 -0
  682. package/dist_ts/integrations/shelly/shelly.types.d.ts +26 -4
  683. package/dist_ts/integrations/snapcast/snapcast.classes.client.js +1 -1
  684. package/dist_ts/integrations/snapcast/snapcast.classes.integration.d.ts +1 -1
  685. package/dist_ts/integrations/snapcast/snapcast.classes.integration.js +1 -1
  686. package/dist_ts/integrations/snapcast/snapcast.discovery.d.ts +2 -2
  687. package/dist_ts/integrations/sonos/index.d.ts +3 -0
  688. package/dist_ts/integrations/sonos/index.js +4 -1
  689. package/dist_ts/integrations/sonos/sonos.classes.client.d.ts +30 -29
  690. package/dist_ts/integrations/sonos/sonos.classes.client.js +162 -208
  691. package/dist_ts/integrations/sonos/sonos.classes.configflow.js +27 -9
  692. package/dist_ts/integrations/sonos/sonos.classes.integration.d.ts +6 -5
  693. package/dist_ts/integrations/sonos/sonos.classes.integration.js +280 -61
  694. package/dist_ts/integrations/sonos/sonos.classes.ssdpprobe.d.ts +17 -0
  695. package/dist_ts/integrations/sonos/sonos.classes.ssdpprobe.js +88 -0
  696. package/dist_ts/integrations/sonos/sonos.config.d.ts +12 -0
  697. package/dist_ts/integrations/sonos/sonos.config.js +52 -0
  698. package/dist_ts/integrations/sonos/sonos.discovery.d.ts +1 -25
  699. package/dist_ts/integrations/sonos/sonos.discovery.js +6 -114
  700. package/dist_ts/integrations/sonos/sonos.mapper.d.ts +2 -1
  701. package/dist_ts/integrations/sonos/sonos.mapper.js +33 -13
  702. package/dist_ts/integrations/sonos/sonos.matchers.d.ts +25 -0
  703. package/dist_ts/integrations/sonos/sonos.matchers.js +82 -0
  704. package/dist_ts/integrations/sonos/sonos.topology.d.ts +2 -0
  705. package/dist_ts/integrations/sonos/sonos.topology.js +59 -0
  706. package/dist_ts/integrations/sonos/sonos.types.d.ts +18 -8
  707. package/dist_ts/integrations/sonos/sonos.xml.d.ts +3 -0
  708. package/dist_ts/integrations/sonos/sonos.xml.js +21 -0
  709. package/dist_ts/integrations/soundtouch/soundtouch.classes.client.js +1 -1
  710. package/dist_ts/integrations/soundtouch/soundtouch.classes.integration.d.ts +1 -1
  711. package/dist_ts/integrations/soundtouch/soundtouch.classes.integration.js +1 -1
  712. package/dist_ts/integrations/soundtouch/soundtouch.discovery.d.ts +2 -2
  713. package/dist_ts/integrations/soundtouch/soundtouch.types.d.ts +1 -1
  714. package/dist_ts/integrations/squeezebox/squeezebox.classes.client.js +1 -1
  715. package/dist_ts/integrations/squeezebox/squeezebox.classes.integration.d.ts +1 -1
  716. package/dist_ts/integrations/squeezebox/squeezebox.classes.integration.js +1 -1
  717. package/dist_ts/integrations/squeezebox/squeezebox.discovery.d.ts +3 -3
  718. package/dist_ts/integrations/synology_dsm/synology_dsm.classes.client.js +1 -1
  719. package/dist_ts/integrations/synology_dsm/synology_dsm.classes.integration.d.ts +1 -1
  720. package/dist_ts/integrations/synology_dsm/synology_dsm.classes.integration.js +1 -1
  721. package/dist_ts/integrations/synology_dsm/synology_dsm.discovery.d.ts +4 -4
  722. package/dist_ts/integrations/synology_dsm/synology_dsm.mapper.js +1 -1
  723. package/dist_ts/integrations/synology_srm/synology_srm.classes.client.js +1 -1
  724. package/dist_ts/integrations/synology_srm/synology_srm.classes.integration.d.ts +1 -1
  725. package/dist_ts/integrations/synology_srm/synology_srm.classes.integration.js +1 -1
  726. package/dist_ts/integrations/synology_srm/synology_srm.discovery.d.ts +2 -2
  727. package/dist_ts/integrations/synology_srm/synology_srm.mapper.js +1 -1
  728. package/dist_ts/integrations/tasmota/index.d.ts +4 -0
  729. package/dist_ts/integrations/tasmota/index.js +5 -1
  730. package/dist_ts/integrations/tasmota/tasmota.classes.integration.d.ts +21 -3
  731. package/dist_ts/integrations/tasmota/tasmota.classes.integration.js +24 -25
  732. package/dist_ts/integrations/tasmota/tasmota.classes.runtime.d.ts +36 -0
  733. package/dist_ts/integrations/tasmota/tasmota.classes.runtime.js +292 -0
  734. package/dist_ts/integrations/tasmota/tasmota.config.d.ts +2 -0
  735. package/dist_ts/integrations/tasmota/tasmota.config.js +78 -0
  736. package/dist_ts/integrations/tasmota/tasmota.discovery.d.ts +7 -0
  737. package/dist_ts/integrations/tasmota/tasmota.discovery.js +85 -0
  738. package/dist_ts/integrations/tasmota/tasmota.mapper.d.ts +12 -0
  739. package/dist_ts/integrations/tasmota/tasmota.mapper.js +91 -0
  740. package/dist_ts/integrations/tasmota/tasmota.types.d.ts +51 -1
  741. package/dist_ts/integrations/tplink/index.d.ts +3 -0
  742. package/dist_ts/integrations/tplink/index.js +4 -1
  743. package/dist_ts/integrations/tplink/tplink.classes.client.d.ts +8 -14
  744. package/dist_ts/integrations/tplink/tplink.classes.client.js +64 -64
  745. package/dist_ts/integrations/tplink/tplink.classes.configflow.d.ts +3 -8
  746. package/dist_ts/integrations/tplink/tplink.classes.configflow.js +53 -89
  747. package/dist_ts/integrations/tplink/tplink.classes.integration.d.ts +8 -13
  748. package/dist_ts/integrations/tplink/tplink.classes.integration.js +136 -37
  749. package/dist_ts/integrations/tplink/tplink.discovery.d.ts +11 -14
  750. package/dist_ts/integrations/tplink/tplink.discovery.js +125 -210
  751. package/dist_ts/integrations/tplink/tplink.mapper.js +1 -1
  752. package/dist_ts/integrations/tplink/tplink.native.mapper.d.ts +11 -0
  753. package/dist_ts/integrations/tplink/tplink.native.mapper.js +61 -0
  754. package/dist_ts/integrations/tplink/tplink.native.types.d.ts +32 -0
  755. package/dist_ts/integrations/tplink/tplink.native.types.js +2 -0
  756. package/dist_ts/integrations/tplink/tplink.validation.d.ts +4 -0
  757. package/dist_ts/integrations/tplink/tplink.validation.js +48 -0
  758. package/dist_ts/integrations/tradfri/tradfri.classes.client.js +1 -1
  759. package/dist_ts/integrations/tradfri/tradfri.classes.integration.d.ts +1 -1
  760. package/dist_ts/integrations/tradfri/tradfri.classes.integration.js +1 -1
  761. package/dist_ts/integrations/tradfri/tradfri.discovery.d.ts +2 -3
  762. package/dist_ts/integrations/tradfri/tradfri.discovery.js +52 -26
  763. package/dist_ts/integrations/tradfri/tradfri.mapper.js +1 -1
  764. package/dist_ts/integrations/tuya/tuya.classes.integration.d.ts +21 -3
  765. package/dist_ts/integrations/tuya/tuya.classes.integration.js +139 -28
  766. package/dist_ts/integrations/tuya/tuya.classes.runtime.d.ts +15 -0
  767. package/dist_ts/integrations/tuya/tuya.classes.runtime.js +189 -0
  768. package/dist_ts/integrations/tuya/tuya.mapper.d.ts +13 -0
  769. package/dist_ts/integrations/tuya/tuya.mapper.js +30 -0
  770. package/dist_ts/integrations/tuya/tuya.types.d.ts +40 -1
  771. package/dist_ts/integrations/tuya/tuya.validation.d.ts +10 -0
  772. package/dist_ts/integrations/tuya/tuya.validation.js +122 -0
  773. package/dist_ts/integrations/unifi/unifi.classes.client.js +1 -1
  774. package/dist_ts/integrations/unifi/unifi.classes.integration.d.ts +1 -1
  775. package/dist_ts/integrations/unifi/unifi.classes.integration.js +1 -1
  776. package/dist_ts/integrations/unifi/unifi.discovery.d.ts +4 -4
  777. package/dist_ts/integrations/unifi/unifi.mapper.js +6 -6
  778. package/dist_ts/integrations/velbus/velbus.classes.client.js +1 -1
  779. package/dist_ts/integrations/velbus/velbus.classes.integration.d.ts +1 -1
  780. package/dist_ts/integrations/velbus/velbus.classes.integration.js +1 -1
  781. package/dist_ts/integrations/velbus/velbus.discovery.d.ts +2 -2
  782. package/dist_ts/integrations/volumio/volumio.classes.client.js +1 -1
  783. package/dist_ts/integrations/volumio/volumio.classes.integration.d.ts +1 -1
  784. package/dist_ts/integrations/volumio/volumio.classes.integration.js +1 -1
  785. package/dist_ts/integrations/volumio/volumio.discovery.d.ts +2 -2
  786. package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.client.js +1 -1
  787. package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.integration.d.ts +1 -1
  788. package/dist_ts/integrations/wake_on_lan/wake_on_lan.classes.integration.js +1 -1
  789. package/dist_ts/integrations/wake_on_lan/wake_on_lan.discovery.d.ts +2 -2
  790. package/dist_ts/integrations/wake_on_lan/wake_on_lan.mapper.js +1 -1
  791. package/dist_ts/integrations/wake_on_lan/wake_on_lan.packet.js +1 -1
  792. package/dist_ts/integrations/webostv/webostv.classes.client.d.ts +10 -4
  793. package/dist_ts/integrations/webostv/webostv.classes.client.js +370 -6
  794. package/dist_ts/integrations/webostv/webostv.classes.configflow.d.ts +3 -3
  795. package/dist_ts/integrations/webostv/webostv.classes.configflow.js +23 -6
  796. package/dist_ts/integrations/webostv/webostv.classes.integration.d.ts +20 -5
  797. package/dist_ts/integrations/webostv/webostv.classes.integration.js +138 -7
  798. package/dist_ts/integrations/webostv/webostv.discovery.d.ts +2 -1
  799. package/dist_ts/integrations/webostv/webostv.discovery.js +26 -4
  800. package/dist_ts/integrations/webostv/webostv.mapper.d.ts +6 -8
  801. package/dist_ts/integrations/webostv/webostv.mapper.js +24 -13
  802. package/dist_ts/integrations/webostv/webostv.types.d.ts +61 -5
  803. package/dist_ts/integrations/webostv/webostv.types.js +5 -96
  804. package/dist_ts/integrations/webostv/webostv.validation.d.ts +6 -0
  805. package/dist_ts/integrations/webostv/webostv.validation.js +54 -0
  806. package/dist_ts/integrations/wiz/wiz.classes.client.js +1 -1
  807. package/dist_ts/integrations/wiz/wiz.classes.integration.d.ts +7 -7
  808. package/dist_ts/integrations/wiz/wiz.classes.integration.js +1 -1
  809. package/dist_ts/integrations/wiz/wiz.discovery.d.ts +4 -4
  810. package/dist_ts/integrations/wiz/wiz.mapper.js +1 -1
  811. package/dist_ts/integrations/wled/index.d.ts +1 -0
  812. package/dist_ts/integrations/wled/index.js +2 -1
  813. package/dist_ts/integrations/wled/wled.classes.client.d.ts +27 -4
  814. package/dist_ts/integrations/wled/wled.classes.client.js +231 -6
  815. package/dist_ts/integrations/wled/wled.classes.configflow.d.ts +3 -3
  816. package/dist_ts/integrations/wled/wled.classes.configflow.js +33 -6
  817. package/dist_ts/integrations/wled/wled.classes.integration.d.ts +24 -4
  818. package/dist_ts/integrations/wled/wled.classes.integration.js +171 -7
  819. package/dist_ts/integrations/wled/wled.classes.subscription.d.ts +37 -0
  820. package/dist_ts/integrations/wled/wled.classes.subscription.js +116 -0
  821. package/dist_ts/integrations/wled/wled.commands.d.ts +4 -0
  822. package/dist_ts/integrations/wled/wled.commands.js +65 -0
  823. package/dist_ts/integrations/wled/wled.discovery.d.ts +17 -1
  824. package/dist_ts/integrations/wled/wled.discovery.js +68 -4
  825. package/dist_ts/integrations/wled/wled.errors.d.ts +5 -0
  826. package/dist_ts/integrations/wled/wled.errors.js +9 -0
  827. package/dist_ts/integrations/wled/wled.mapper.d.ts +8 -8
  828. package/dist_ts/integrations/wled/wled.mapper.js +40 -16
  829. package/dist_ts/integrations/wled/wled.types.d.ts +75 -6
  830. package/dist_ts/integrations/wled/wled.types.js +12 -82
  831. package/dist_ts/integrations/wled/wled.validation.d.ts +7 -0
  832. package/dist_ts/integrations/wled/wled.validation.js +85 -0
  833. package/dist_ts/integrations/wolf_smartset/wolf_smartset.classes.client.js +1 -1
  834. package/dist_ts/integrations/wolf_smartset/wolf_smartset.classes.integration.d.ts +1 -1
  835. package/dist_ts/integrations/wolf_smartset/wolf_smartset.discovery.d.ts +1 -1
  836. package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.client.js +1 -1
  837. package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.integration.d.ts +1 -1
  838. package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.classes.integration.js +1 -1
  839. package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.discovery.d.ts +3 -3
  840. package/dist_ts/integrations/xiaomi_miio/xiaomi_miio.mapper.js +1 -1
  841. package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.client.js +1 -1
  842. package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.integration.d.ts +1 -1
  843. package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.classes.integration.js +1 -1
  844. package/dist_ts/integrations/yamaha_musiccast/yamaha_musiccast.discovery.d.ts +3 -3
  845. package/dist_ts/integrations/yeelight/yeelight.classes.client.d.ts +34 -26
  846. package/dist_ts/integrations/yeelight/yeelight.classes.client.js +225 -275
  847. package/dist_ts/integrations/yeelight/yeelight.classes.configflow.d.ts +0 -2
  848. package/dist_ts/integrations/yeelight/yeelight.classes.configflow.js +29 -30
  849. package/dist_ts/integrations/yeelight/yeelight.classes.integration.d.ts +11 -5
  850. package/dist_ts/integrations/yeelight/yeelight.classes.integration.js +140 -80
  851. package/dist_ts/integrations/yeelight/yeelight.discovery.d.ts +11 -13
  852. package/dist_ts/integrations/yeelight/yeelight.discovery.js +90 -128
  853. package/dist_ts/integrations/yeelight/yeelight.mapper.d.ts +2 -10
  854. package/dist_ts/integrations/yeelight/yeelight.mapper.js +57 -178
  855. package/dist_ts/integrations/yeelight/yeelight.types.d.ts +37 -139
  856. package/dist_ts/integrations/yeelight/yeelight.validation.d.ts +10 -0
  857. package/dist_ts/integrations/yeelight/yeelight.validation.js +111 -0
  858. package/dist_ts/integrations/zha/zha.classes.client.js +1 -1
  859. package/dist_ts/integrations/zha/zha.classes.integration.d.ts +1 -1
  860. package/dist_ts/integrations/zha/zha.classes.integration.js +1 -1
  861. package/dist_ts/integrations/zha/zha.discovery.d.ts +3 -12
  862. package/dist_ts/integrations/zha/zha.discovery.js +102 -222
  863. package/dist_ts/integrations/zha/zha.discoveryvalidation.d.ts +10 -0
  864. package/dist_ts/integrations/zha/zha.discoveryvalidation.js +71 -0
  865. package/dist_ts/integrations/zha/zha.mapper.js +1 -1
  866. package/dist_ts/integrations/zigbee2mqtt/index.d.ts +5 -0
  867. package/dist_ts/integrations/zigbee2mqtt/index.js +6 -0
  868. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.d.ts +5 -0
  869. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.js +27 -0
  870. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.d.ts +19 -0
  871. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.js +19 -0
  872. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.d.ts +55 -0
  873. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.js +464 -0
  874. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.d.ts +15 -0
  875. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.js +186 -0
  876. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.types.d.ts +57 -0
  877. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.types.js +2 -0
  878. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.d.ts +5 -0
  879. package/dist_ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.js +66 -0
  880. package/dist_ts/integrations/zwave_js/zwave_js.classes.client.d.ts +19 -21
  881. package/dist_ts/integrations/zwave_js/zwave_js.classes.client.js +303 -134
  882. package/dist_ts/integrations/zwave_js/zwave_js.classes.configflow.d.ts +0 -3
  883. package/dist_ts/integrations/zwave_js/zwave_js.classes.configflow.js +31 -26
  884. package/dist_ts/integrations/zwave_js/zwave_js.classes.integration.d.ts +2 -1
  885. package/dist_ts/integrations/zwave_js/zwave_js.classes.integration.js +71 -76
  886. package/dist_ts/integrations/zwave_js/zwave_js.discovery.d.ts +3 -3
  887. package/dist_ts/integrations/zwave_js/zwave_js.discovery.js +120 -16
  888. package/dist_ts/integrations/zwave_js/zwave_js.mapper.d.ts +13 -14
  889. package/dist_ts/integrations/zwave_js/zwave_js.mapper.js +140 -257
  890. package/dist_ts/integrations/zwave_js/zwave_js.types.d.ts +30 -19
  891. package/dist_ts/integrations/zwave_js/zwave_js.validation.d.ts +15 -0
  892. package/dist_ts/integrations/zwave_js/zwave_js.validation.js +191 -0
  893. package/dist_ts/plugins.d.ts +10 -2
  894. package/dist_ts/plugins.js +11 -3
  895. package/dist_ts_migration/001.import-json-config.d.ts +10 -0
  896. package/dist_ts_migration/001.import-json-config.js +147 -0
  897. package/dist_ts_migration/index.d.ts +1 -0
  898. package/dist_ts_migration/index.js +2 -0
  899. package/package.json +20 -11
  900. package/readme.md +49 -10
  901. package/ts/00_commitinfo_data.ts +1 -1
  902. package/ts/core/classes.configrecord.ts +23 -0
  903. package/ts/core/classes.configstore.ts +324 -25
  904. package/ts/core/classes.discoveryengine.ts +11 -1
  905. package/ts/core/classes.runtimemanager.ts +88 -44
  906. package/ts/core/types.ts +15 -4
  907. package/ts/index.ts +6 -0
  908. package/ts/integrations/deconz/deconz.classes.client.ts +243 -190
  909. package/ts/integrations/deconz/deconz.classes.configflow.ts +34 -25
  910. package/ts/integrations/deconz/deconz.classes.integration.ts +105 -22
  911. package/ts/integrations/deconz/deconz.mapper.ts +24 -18
  912. package/ts/integrations/deconz/deconz.types.ts +38 -3
  913. package/ts/integrations/deconz/deconz.validation.ts +261 -0
  914. package/ts/integrations/deconz/readme.md +44 -0
  915. package/ts/integrations/esphome/esphome.classes.client.ts +254 -74
  916. package/ts/integrations/esphome/esphome.classes.configflow.ts +1 -3
  917. package/ts/integrations/esphome/esphome.classes.integration.ts +61 -66
  918. package/ts/integrations/esphome/esphome.discovery.ts +1 -1
  919. package/ts/integrations/esphome/esphome.mapper.ts +71 -37
  920. package/ts/integrations/esphome/esphome.types.ts +2 -0
  921. package/ts/integrations/esphome/readme.md +66 -0
  922. package/ts/integrations/generated/index.ts +4 -6
  923. package/ts/integrations/homeassistant/homeassistant.classes.client.ts +166 -63
  924. package/ts/integrations/homeassistant/homeassistant.classes.runtime.ts +41 -3
  925. package/ts/integrations/homeassistant/homeassistant.mapper.ts +32 -36
  926. package/ts/integrations/homeassistant/homeassistant.types.ts +11 -0
  927. package/ts/integrations/homeassistant/homeassistant.validation.ts +139 -0
  928. package/ts/integrations/homeassistant/readme.md +40 -0
  929. package/ts/integrations/hue/hue.classes.client.ts +251 -21
  930. package/ts/integrations/hue/hue.classes.configflow.ts +26 -13
  931. package/ts/integrations/hue/hue.classes.integration.ts +76 -30
  932. package/ts/integrations/hue/hue.discovery.ts +61 -26
  933. package/ts/integrations/hue/hue.mapper.ts +28 -60
  934. package/ts/integrations/hue/hue.types.ts +12 -18
  935. package/ts/integrations/hue/hue.validation.ts +154 -0
  936. package/ts/integrations/hue/readme.md +71 -0
  937. package/ts/integrations/index.ts +5 -1
  938. package/ts/integrations/lifx/lifx.classes.client.ts +95 -6
  939. package/ts/integrations/lifx/lifx.classes.configflow.ts +32 -5
  940. package/ts/integrations/lifx/lifx.classes.integration.ts +142 -7
  941. package/ts/integrations/lifx/lifx.discovery.ts +26 -3
  942. package/ts/integrations/lifx/lifx.mapper.ts +45 -17
  943. package/ts/integrations/lifx/lifx.types.ts +51 -125
  944. package/ts/integrations/lifx/lifx.validation.ts +86 -0
  945. package/ts/integrations/lifx/readme.md +55 -0
  946. package/ts/integrations/mqtt/mqtt.classes.client.ts +394 -366
  947. package/ts/integrations/mqtt/mqtt.classes.configflow.ts +22 -18
  948. package/ts/integrations/mqtt/mqtt.classes.integration.ts +119 -44
  949. package/ts/integrations/mqtt/mqtt.mapper.ts +139 -47
  950. package/ts/integrations/mqtt/mqtt.types.ts +19 -0
  951. package/ts/integrations/mqtt/readme.md +28 -0
  952. package/ts/integrations/openhome/openhome.classes.client.ts +22 -18
  953. package/ts/integrations/roku/readme.md +95 -0
  954. package/ts/integrations/roku/roku.classes.client.ts +194 -131
  955. package/ts/integrations/roku/roku.classes.configflow.ts +20 -13
  956. package/ts/integrations/roku/roku.classes.integration.ts +69 -98
  957. package/ts/integrations/roku/roku.discovery.ts +68 -71
  958. package/ts/integrations/roku/roku.mapper.ts +17 -52
  959. package/ts/integrations/roku/roku.types.ts +23 -14
  960. package/ts/integrations/roku/roku.validation.ts +79 -0
  961. package/ts/integrations/samsungtv/readme.md +30 -0
  962. package/ts/integrations/samsungtv/samsungtv.classes.client.ts +107 -481
  963. package/ts/integrations/samsungtv/samsungtv.classes.configflow.ts +28 -29
  964. package/ts/integrations/samsungtv/samsungtv.classes.integration.ts +108 -132
  965. package/ts/integrations/samsungtv/samsungtv.discovery.ts +101 -165
  966. package/ts/integrations/samsungtv/samsungtv.mapper.ts +20 -127
  967. package/ts/integrations/samsungtv/samsungtv.types.ts +18 -95
  968. package/ts/integrations/samsungtv/samsungtv.validation.ts +84 -0
  969. package/ts/integrations/shelly/readme.md +34 -0
  970. package/ts/integrations/shelly/shelly.classes.client.ts +275 -137
  971. package/ts/integrations/shelly/shelly.classes.configflow.ts +24 -10
  972. package/ts/integrations/shelly/shelly.classes.integration.ts +109 -32
  973. package/ts/integrations/shelly/shelly.classes.subscription.ts +218 -0
  974. package/ts/integrations/shelly/shelly.discovery.ts +5 -2
  975. package/ts/integrations/shelly/shelly.rpc.ts +190 -0
  976. package/ts/integrations/shelly/shelly.types.ts +16 -4
  977. package/ts/integrations/sonos/index.ts +3 -0
  978. package/ts/integrations/sonos/readme.md +74 -0
  979. package/ts/integrations/sonos/sonos.classes.client.ts +153 -225
  980. package/ts/integrations/sonos/sonos.classes.configflow.ts +21 -8
  981. package/ts/integrations/sonos/sonos.classes.integration.ts +234 -72
  982. package/ts/integrations/sonos/sonos.classes.ssdpprobe.ts +85 -0
  983. package/ts/integrations/sonos/sonos.config.ts +57 -0
  984. package/ts/integrations/sonos/sonos.discovery.ts +5 -123
  985. package/ts/integrations/sonos/sonos.mapper.ts +29 -13
  986. package/ts/integrations/sonos/sonos.matchers.ts +83 -0
  987. package/ts/integrations/sonos/sonos.topology.ts +54 -0
  988. package/ts/integrations/sonos/sonos.types.ts +20 -8
  989. package/ts/integrations/sonos/sonos.xml.ts +19 -0
  990. package/ts/integrations/tasmota/index.ts +4 -0
  991. package/ts/integrations/tasmota/readme.md +33 -0
  992. package/ts/integrations/tasmota/tasmota.classes.integration.ts +27 -24
  993. package/ts/integrations/tasmota/tasmota.classes.runtime.ts +274 -0
  994. package/ts/integrations/tasmota/tasmota.config.ts +69 -0
  995. package/ts/integrations/tasmota/tasmota.discovery.ts +84 -0
  996. package/ts/integrations/tasmota/tasmota.mapper.ts +88 -0
  997. package/ts/integrations/tasmota/tasmota.types.ts +48 -2
  998. package/ts/integrations/tplink/index.ts +3 -0
  999. package/ts/integrations/tplink/readme.md +38 -0
  1000. package/ts/integrations/tplink/tplink.classes.client.ts +56 -75
  1001. package/ts/integrations/tplink/tplink.classes.configflow.ts +48 -100
  1002. package/ts/integrations/tplink/tplink.classes.integration.ts +118 -40
  1003. package/ts/integrations/tplink/tplink.discovery.ts +106 -235
  1004. package/ts/integrations/tplink/tplink.native.mapper.ts +67 -0
  1005. package/ts/integrations/tplink/tplink.native.types.ts +32 -0
  1006. package/ts/integrations/tplink/tplink.validation.ts +50 -0
  1007. package/ts/integrations/tradfri/tradfri.discovery.ts +52 -26
  1008. package/ts/integrations/tuya/readme.md +106 -0
  1009. package/ts/integrations/tuya/tuya.classes.integration.ts +127 -28
  1010. package/ts/integrations/tuya/tuya.classes.runtime.ts +166 -0
  1011. package/ts/integrations/tuya/tuya.mapper.ts +47 -0
  1012. package/ts/integrations/tuya/tuya.types.ts +47 -2
  1013. package/ts/integrations/tuya/tuya.validation.ts +118 -0
  1014. package/ts/integrations/unifi/unifi.mapper.ts +8 -5
  1015. package/ts/integrations/webostv/readme.md +48 -0
  1016. package/ts/integrations/webostv/webostv.classes.client.ts +297 -6
  1017. package/ts/integrations/webostv/webostv.classes.configflow.ts +18 -5
  1018. package/ts/integrations/webostv/webostv.classes.integration.ts +92 -7
  1019. package/ts/integrations/webostv/webostv.discovery.ts +22 -3
  1020. package/ts/integrations/webostv/webostv.mapper.ts +27 -18
  1021. package/ts/integrations/webostv/webostv.types.ts +47 -101
  1022. package/ts/integrations/webostv/webostv.validation.ts +48 -0
  1023. package/ts/integrations/wled/index.ts +1 -0
  1024. package/ts/integrations/wled/readme.md +83 -0
  1025. package/ts/integrations/wled/wled.classes.client.ts +208 -6
  1026. package/ts/integrations/wled/wled.classes.configflow.ts +26 -5
  1027. package/ts/integrations/wled/wled.classes.integration.ts +142 -7
  1028. package/ts/integrations/wled/wled.classes.subscription.ts +122 -0
  1029. package/ts/integrations/wled/wled.commands.ts +54 -0
  1030. package/ts/integrations/wled/wled.discovery.ts +52 -3
  1031. package/ts/integrations/wled/wled.errors.ts +9 -0
  1032. package/ts/integrations/wled/wled.mapper.ts +39 -19
  1033. package/ts/integrations/wled/wled.types.ts +59 -87
  1034. package/ts/integrations/wled/wled.validation.ts +72 -0
  1035. package/ts/integrations/yeelight/readme.md +47 -0
  1036. package/ts/integrations/yeelight/yeelight.classes.client.ts +201 -302
  1037. package/ts/integrations/yeelight/yeelight.classes.configflow.ts +23 -32
  1038. package/ts/integrations/yeelight/yeelight.classes.integration.ts +115 -87
  1039. package/ts/integrations/yeelight/yeelight.discovery.ts +78 -140
  1040. package/ts/integrations/yeelight/yeelight.mapper.ts +61 -191
  1041. package/ts/integrations/yeelight/yeelight.types.ts +31 -162
  1042. package/ts/integrations/yeelight/yeelight.validation.ts +112 -0
  1043. package/ts/integrations/zha/readme.md +23 -0
  1044. package/ts/integrations/zha/zha.discovery.ts +92 -232
  1045. package/ts/integrations/zha/zha.discoveryvalidation.ts +67 -0
  1046. package/ts/integrations/zigbee2mqtt/index.ts +5 -0
  1047. package/ts/integrations/zigbee2mqtt/readme.md +40 -0
  1048. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.configflow.ts +26 -0
  1049. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.integration.ts +23 -0
  1050. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.classes.runtime.ts +414 -0
  1051. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.mapper.ts +172 -0
  1052. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.types.ts +63 -0
  1053. package/ts/integrations/zigbee2mqtt/zigbee2mqtt.validation.ts +65 -0
  1054. package/ts/integrations/zwave_js/readme.md +23 -0
  1055. package/ts/integrations/zwave_js/zwave_js.classes.client.ts +256 -136
  1056. package/ts/integrations/zwave_js/zwave_js.classes.configflow.ts +26 -28
  1057. package/ts/integrations/zwave_js/zwave_js.classes.integration.ts +65 -81
  1058. package/ts/integrations/zwave_js/zwave_js.discovery.ts +100 -15
  1059. package/ts/integrations/zwave_js/zwave_js.mapper.ts +129 -256
  1060. package/ts/integrations/zwave_js/zwave_js.types.ts +32 -19
  1061. package/ts/integrations/zwave_js/zwave_js.validation.ts +191 -0
  1062. package/ts/plugins.ts +12 -3
  1063. package/ts_migration/001.import-json-config.ts +81 -0
  1064. package/ts_migration/index.ts +1 -0
  1065. package/ts/integrations/tasmota/.generated-by-smarthome-exchange +0 -1
  1066. package/ts/integrations/tuya/.generated-by-smarthome-exchange +0 -1
@@ -0,0 +1,269 @@
1
+ function integerRange(minArg, maxArg) {
2
+ return (valueArg) => typeof valueArg === 'number' && Number.isInteger(valueArg) && valueArg >= minArg && valueArg <= maxArg;
3
+ }
4
+ function stringValues(valuesArg) {
5
+ return (valueArg) => typeof valueArg === 'string' && valuesArg.includes(valueArg);
6
+ }
7
+ const booleanValue = (valueArg) => typeof valueArg === 'boolean';
8
+ const effectValue = (valueArg) => typeof valueArg === 'string' && valueArg.length > 0;
9
+ const xyValue = (valueArg) => {
10
+ if (!Array.isArray(valueArg) || valueArg.length !== 2 || Reflect.ownKeys(valueArg).some((keyArg) => keyArg !== '0' && keyArg !== '1' && keyArg !== 'length'))
11
+ return false;
12
+ return ['0', '1'].every((keyArg) => {
13
+ const descriptor = Object.getOwnPropertyDescriptor(valueArg, keyArg);
14
+ const value = descriptor?.value;
15
+ return descriptor?.enumerable && 'value' in descriptor && typeof value === 'number' && Number.isFinite(value) && value >= 0 && value <= 1;
16
+ });
17
+ };
18
+ const LIGHTING_PATCH_FIELDS = {
19
+ alert: stringValues(['none', 'select', 'lselect', 'blink', 'breathe', 'okay', 'channelchange', 'finish', 'stop']),
20
+ bri: integerRange(0, 255),
21
+ colorloopspeed: integerRange(1, 255),
22
+ ct: integerRange(1, 65535),
23
+ effect: effectValue,
24
+ hue: integerRange(0, 65535),
25
+ on: booleanValue,
26
+ sat: integerRange(0, 255),
27
+ transitiontime: integerRange(0, 65535),
28
+ xy: xyValue,
29
+ };
30
+ const LIGHT_PATCH_FIELDS = {
31
+ ...LIGHTING_PATCH_FIELDS,
32
+ lift: (valueArg) => valueArg === 'stop' || integerRange(0, 100)(valueArg),
33
+ open: booleanValue,
34
+ speed: integerRange(0, 6),
35
+ stop: booleanValue,
36
+ tilt: integerRange(0, 100),
37
+ };
38
+ const GROUP_PATCH_FIELDS = {
39
+ ...LIGHTING_PATCH_FIELDS,
40
+ alert: stringValues(['none', 'select', 'lselect']),
41
+ effect: stringValues(['none', 'colorloop']),
42
+ toggle: booleanValue,
43
+ };
44
+ const SENSOR_CONFIG_PATCH_FIELDS = {
45
+ battery: integerRange(0, 100),
46
+ coolsetpoint: integerRange(700, 3500),
47
+ fanmode: stringValues(['off', 'low', 'medium', 'high', 'on', 'auto', 'smart']),
48
+ heatsetpoint: integerRange(500, 3200),
49
+ locked: booleanValue,
50
+ mode: stringValues(['momentary', 'rocker', 'off', 'auto', 'cool', 'heat', 'emergency heating', 'precooling', 'fan only', 'dry', 'sleep']),
51
+ offset: integerRange(-32768, 32767),
52
+ on: booleanValue,
53
+ preset: stringValues(['holiday', 'auto', 'manual', 'comfort', 'eco', 'boost', 'complex']),
54
+ reachable: booleanValue,
55
+ setvalve: booleanValue,
56
+ };
57
+ function writePatch(valueArg, fieldsArg) {
58
+ record(valueArg);
59
+ const prototype = Object.getPrototypeOf(valueArg);
60
+ if (prototype !== Object.prototype && prototype !== null)
61
+ throw new Error('Invalid deCONZ write patch object.');
62
+ const keys = Reflect.ownKeys(valueArg);
63
+ if (!keys.length)
64
+ throw new Error('deCONZ write patch must not be empty.');
65
+ const result = Object.create(null);
66
+ for (const key of keys) {
67
+ if (typeof key !== 'string' || !Object.hasOwn(fieldsArg, key))
68
+ throw new Error('Unsupported deCONZ write patch field.');
69
+ const descriptor = Object.getOwnPropertyDescriptor(valueArg, key);
70
+ const value = descriptor?.value;
71
+ if (!descriptor?.enumerable || !('value' in descriptor) || !fieldsArg[key](value))
72
+ throw new Error('Invalid deCONZ write patch field.');
73
+ result[key] = Array.isArray(value) ? [value[0], value[1]] : value;
74
+ }
75
+ if (result.colorloopspeed !== undefined && result.effect !== 'colorloop')
76
+ throw new Error('deCONZ colorloopspeed requires effect colorloop.');
77
+ return result;
78
+ }
79
+ export function deconzLightStatePatch(valueArg) {
80
+ return writePatch(valueArg, LIGHT_PATCH_FIELDS);
81
+ }
82
+ export function deconzGroupActionPatch(valueArg) {
83
+ return writePatch(valueArg, GROUP_PATCH_FIELDS);
84
+ }
85
+ export function deconzSensorConfigPatch(valueArg) {
86
+ return writePatch(valueArg, SENSOR_CONFIG_PATCH_FIELDS);
87
+ }
88
+ const CLIP_STATE_KEYS = {
89
+ CLIPAlarm: ['alarm'], CLIPBattery: ['battery'], CLIPCarbonMonoxide: ['carbonmonoxide'],
90
+ CLIPConsumption: ['consumption'], CLIPFire: ['fire'], CLIPGenericFlag: ['flag'],
91
+ CLIPGenericStatus: ['status'], CLIPHumidity: ['humidity'], CLIPLightLevel: ['lightlevel', 'lux', 'dark', 'daylight'],
92
+ CLIPOpenClose: ['open'], CLIPPower: ['power', 'voltage', 'current'], CLIPPresence: ['presence', 'duration'],
93
+ CLIPPressure: ['pressure'], CLIPSwitch: ['buttonevent'], CLIPTemperature: ['temperature'],
94
+ CLIPVibration: ['vibration'], CLIPWater: ['water'],
95
+ };
96
+ export function deconzWritableState(typeArg, keyArg) {
97
+ return Boolean(typeArg && CLIP_STATE_KEYS[typeArg]?.includes(keyArg));
98
+ }
99
+ export function deconzSensorStatePatch(typeArg, valueArg) {
100
+ record(valueArg);
101
+ state(valueArg);
102
+ if (!Object.keys(valueArg).length || Object.keys(valueArg).some((keyArg) => !deconzWritableState(typeArg, keyArg)))
103
+ throw new Error('Unsupported deCONZ CLIP sensor state field.');
104
+ for (const [key, value] of Object.entries(valueArg)) {
105
+ const booleanKey = ['alarm', 'carbonmonoxide', 'fire', 'flag', 'open', 'presence', 'vibration', 'water', 'dark', 'daylight'].includes(key);
106
+ if (booleanKey && typeof value !== 'boolean' || !booleanKey && typeof value !== 'number')
107
+ throw new Error('Invalid deCONZ CLIP state value type.');
108
+ if (typeof value !== 'boolean' && (typeof value !== 'number' || !Number.isSafeInteger(value)))
109
+ throw new Error('Invalid deCONZ CLIP state value.');
110
+ const range = key === 'temperature' || key === 'power' || key === 'pressure' ? [-32768, 32767] : key === 'status' ? [-2147483648, 2147483647] : key === 'consumption' ? [0, Number.MAX_SAFE_INTEGER] : key === 'lux' || key === 'buttonevent' ? [0, 4294967295] : key === 'battery' ? [0, 100] : [0, 65535];
111
+ if (typeof value === 'number' && (value < range[0] || value > range[1]))
112
+ throw new Error('deCONZ CLIP state value is out of range.');
113
+ }
114
+ }
115
+ export function isDeconzRecord(valueArg) {
116
+ return typeof valueArg === 'object' && valueArg !== null && !Array.isArray(valueArg);
117
+ }
118
+ function record(valueArg) {
119
+ if (!isDeconzRecord(valueArg))
120
+ throw new Error('Invalid deCONZ response shape.');
121
+ }
122
+ function fields(valueArg, keysArg, typeArg) {
123
+ for (const key of keysArg) {
124
+ const value = valueArg[key];
125
+ if (value !== undefined && (typeof value !== typeArg || typeArg === 'number' && !Number.isFinite(value))) {
126
+ throw new Error('Invalid deCONZ response field.');
127
+ }
128
+ }
129
+ }
130
+ export function deconzPort(valueArg) {
131
+ if (typeof valueArg !== 'number' || !Number.isInteger(valueArg) || valueArg < 1 || valueArg > 65535) {
132
+ throw new Error('deCONZ port must be an integer from 1 to 65535.');
133
+ }
134
+ return valueArg;
135
+ }
136
+ export function deconzEndpoint(configArg) {
137
+ if (configArg.protocol !== undefined && configArg.protocol !== 'http' && configArg.protocol !== 'https') {
138
+ throw new Error('deCONZ protocol must be http or https.');
139
+ }
140
+ const host = configArg.host;
141
+ if (typeof host !== 'string' || !host || host.trim() !== host || /[\s/@?#]/.test(host)) {
142
+ throw new Error('deCONZ requires a host without credentials, paths or query parameters.');
143
+ }
144
+ const protocol = configArg.protocol ?? 'http';
145
+ const port = deconzPort(configArg.port ?? (protocol === 'https' ? 443 : 80));
146
+ const hostname = host.includes(':') && !host.startsWith('[') ? `[${host}]` : host;
147
+ let endpoint;
148
+ try {
149
+ endpoint = new URL(`${protocol}://${hostname}:${port}`);
150
+ }
151
+ catch {
152
+ throw new Error('Invalid deCONZ host.');
153
+ }
154
+ if (endpoint.pathname !== '/' || endpoint.username || endpoint.password || endpoint.search || endpoint.hash) {
155
+ throw new Error('Invalid deCONZ endpoint.');
156
+ }
157
+ return endpoint;
158
+ }
159
+ export function deconzGatewayConfig(valueArg) {
160
+ record(valueArg);
161
+ const stringKeys = ['apiversion', 'bridgeid', 'devicename', 'fwversion', 'ipaddress', 'mac', 'modelid', 'name', 'swversion', 'uuid'];
162
+ fields(valueArg, stringKeys, 'string');
163
+ fields(valueArg, ['rfconnected', 'websocketnotifyall'], 'boolean');
164
+ if (valueArg.websocketport !== undefined)
165
+ deconzPort(valueArg.websocketport);
166
+ if (valueArg.bridgeid !== undefined && (typeof valueArg.bridgeid !== 'string' || !/^[a-f0-9]{16}$/i.test(valueArg.bridgeid)) || valueArg.uuid !== undefined && (typeof valueArg.uuid !== 'string' || !/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/i.test(valueArg.uuid)))
167
+ throw new Error('Invalid deCONZ gateway identity.');
168
+ if (!valueArg.bridgeid && !valueArg.uuid || valueArg.modelid !== undefined && valueArg.modelid !== 'deCONZ') {
169
+ throw new Error('Response is not an identified deCONZ gateway.');
170
+ }
171
+ const result = {};
172
+ for (const key of [...stringKeys, 'rfconnected', 'websocketnotifyall', 'websocketport']) {
173
+ if (valueArg[key] !== undefined)
174
+ result[key] = valueArg[key];
175
+ }
176
+ return result;
177
+ }
178
+ function state(valueArg) {
179
+ record(valueArg);
180
+ if (Object.values(valueArg).some((entryArg) => typeof entryArg === 'number' && !Number.isFinite(entryArg)))
181
+ throw new Error('Invalid deCONZ numeric state.');
182
+ fields(valueArg, ['alert', 'colormode', 'effect', 'airquality', 'lastupdated', 'mode', 'fanmode', 'preset'], 'string');
183
+ fields(valueArg, ['on', 'open', 'reachable', 'all_on', 'any_on', 'alarm', 'carbonmonoxide', 'fire', 'flag', 'presence', 'vibration', 'water', 'tampered', 'lowbattery', 'dark', 'daylight', 'locked', 'stop'], 'boolean');
184
+ fields(valueArg, ['bri', 'ct', 'hue', 'sat', 'tilt', 'speed', 'consumption', 'current', 'humidity', 'lux', 'lightlevel', 'power', 'pressure', 'status', 'temperature', 'voltage', 'heatsetpoint', 'coolsetpoint', 'offset', 'valve', 'airqualityppb'], 'number');
185
+ for (const key of ['battery', 'buttonevent']) {
186
+ if (valueArg[key] !== null)
187
+ fields(valueArg, [key], 'number');
188
+ }
189
+ if (valueArg.lift !== undefined && valueArg.lift !== 'stop')
190
+ fields(valueArg, ['lift'], 'number');
191
+ if (valueArg.xy !== undefined && (!Array.isArray(valueArg.xy) || valueArg.xy.length !== 2 || !valueArg.xy.every((itemArg) => typeof itemArg === 'number' && Number.isFinite(itemArg) && itemArg >= 0 && itemArg <= 1))) {
192
+ throw new Error('Invalid deCONZ color coordinates.');
193
+ }
194
+ }
195
+ function resource(valueArg, kindArg) {
196
+ record(valueArg);
197
+ fields(valueArg, ['id', 'name', 'type', 'uniqueid', 'manufacturername', 'modelid', 'swversion', 'etag'], 'string');
198
+ if (typeof valueArg.name !== 'string' || !valueArg.name || kindArg !== 'groups' && (typeof valueArg.type !== 'string' || !valueArg.type))
199
+ throw new Error('Invalid deCONZ resource description.');
200
+ record(valueArg.state);
201
+ if (kindArg === 'sensors')
202
+ record(valueArg.config);
203
+ for (const key of ['state', 'config', 'action'])
204
+ if (valueArg[key] !== undefined)
205
+ state(valueArg[key]);
206
+ if (kindArg === 'groups') {
207
+ for (const key of ['lights', 'devicemembership', 'lightsequence', 'multideviceids']) {
208
+ const value = valueArg[key];
209
+ if (value !== undefined && (!Array.isArray(value) || !value.every((itemArg) => typeof itemArg === 'string'))) {
210
+ throw new Error('Invalid deCONZ group membership.');
211
+ }
212
+ }
213
+ if (valueArg.scenes !== undefined) {
214
+ const scenes = valueArg.scenes;
215
+ if (!Array.isArray(scenes) && !isDeconzRecord(scenes))
216
+ throw new Error('Invalid deCONZ scene references.');
217
+ for (const scene of Object.values(scenes)) {
218
+ record(scene);
219
+ fields(scene, ['id', 'name'], 'string');
220
+ if (typeof scene.id !== 'string' || !scene.id)
221
+ throw new Error('Invalid deCONZ scene identity.');
222
+ }
223
+ }
224
+ }
225
+ }
226
+ export function deconzSnapshot(valueArg) {
227
+ record(valueArg);
228
+ const config = deconzGatewayConfig(valueArg.config);
229
+ for (const kind of ['lights', 'groups', 'sensors']) {
230
+ record(valueArg[kind]);
231
+ for (const [id, item] of Object.entries(valueArg[kind])) {
232
+ if (!id)
233
+ throw new Error('Invalid deCONZ resource identity.');
234
+ resource(item, kind);
235
+ }
236
+ }
237
+ if (valueArg.scenes !== undefined) {
238
+ record(valueArg.scenes);
239
+ for (const item of Object.values(valueArg.scenes)) {
240
+ record(item);
241
+ fields(item, ['id', 'groupId', 'name'], 'string');
242
+ }
243
+ }
244
+ return { ...valueArg, config };
245
+ }
246
+ export function deconzWebsocketEvent(valueArg) {
247
+ record(valueArg);
248
+ if (valueArg.t !== 'event' || typeof valueArg.e !== 'string' || !['added', 'changed', 'deleted', 'scene-called'].includes(valueArg.e) || typeof valueArg.r !== 'string' || !['groups', 'lights', 'sensors', 'scenes'].includes(valueArg.r)) {
249
+ throw new Error('Invalid deCONZ event envelope.');
250
+ }
251
+ fields(valueArg, ['id', 'gid', 'scid', 'uniqueid', 'name'], 'string');
252
+ if (valueArg.e === 'scene-called') {
253
+ if (valueArg.r !== 'scenes' || !valueArg.gid || !valueArg.scid)
254
+ throw new Error('Invalid deCONZ scene event.');
255
+ }
256
+ else if (!valueArg.id)
257
+ throw new Error('Invalid deCONZ event identity.');
258
+ for (const key of ['state', 'config'])
259
+ if (valueArg[key] !== undefined)
260
+ state(valueArg[key]);
261
+ for (const [key, kind] of [['light', 'lights'], ['group', 'groups'], ['sensor', 'sensors']]) {
262
+ if (valueArg[key] !== undefined)
263
+ resource(valueArg[key], kind);
264
+ if (valueArg.e === 'added' && valueArg.r === kind && valueArg[key] === undefined)
265
+ throw new Error('Invalid deCONZ added event.');
266
+ }
267
+ return valueArg;
268
+ }
269
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb256LnZhbGlkYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9pbnRlZ3JhdGlvbnMvZGVjb256L2RlY29uei52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLFNBQVMsWUFBWSxDQUFDLE1BQWMsRUFBRSxNQUFjO0lBQ2xELE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLE9BQU8sUUFBUSxLQUFLLFFBQVEsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsSUFBSSxNQUFNLElBQUksUUFBUSxJQUFJLE1BQU0sQ0FBQztBQUM5SCxDQUFDO0FBRUQsU0FBUyxZQUFZLENBQUMsU0FBNEI7SUFDaEQsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLFNBQVMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDcEYsQ0FBQztBQUVELE1BQU0sWUFBWSxHQUEwQixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsT0FBTyxRQUFRLEtBQUssU0FBUyxDQUFDO0FBQ3hGLE1BQU0sV0FBVyxHQUEwQixDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsT0FBTyxRQUFRLEtBQUssUUFBUSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0FBQzdHLE1BQU0sT0FBTyxHQUEwQixDQUFDLFFBQVEsRUFBRSxFQUFFO0lBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEtBQUssR0FBRyxJQUFJLE1BQU0sS0FBSyxHQUFHLElBQUksTUFBTSxLQUFLLFFBQVEsQ0FBQztRQUFFLE9BQU8s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M0UsS0FBSyxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUM7UUFBRSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTO1lBQUUsS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzdGLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFVLEVBQUUsQ0FBQztRQUNyRyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTO1lBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMvRCxJQUFJLFFBQVEsQ0FBQyxDQUFDLEtBQUssT0FBTyxJQUFJLFFBQVEsQ0FBQyxDQUFDLEtBQUssSUFBSSxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxTQUFTO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ25JLENBQUM7SUFDRCxPQUFPLFFBQTRDLENBQUM7QUFDdEQsQ0FBQyJ9
@@ -324,4 +324,4 @@ export class DelugeClient {
324
324
  const isDelugeSnapshot = (valueArg) => {
325
325
  return Boolean(valueArg && typeof valueArg === 'object' && 'device' in valueArg && 'torrents' in valueArg && 'sensors' in valueArg);
326
326
  };
327
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdWdlLmNsYXNzZXMuY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdHMvaW50ZWdyYXRpb25zL2RlbHVnZS9kZWx1Z2UuY2xhc3Nlcy5jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNELE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE9BQU87SUFDUCxRQUFRO0lBQ1IsVUFBVTtJQUNWLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGFBQWE7SUFDYixZQUFZO0lBQ1osWUFBWTtJQUNaLE9BQU87SUFDUCxLQUFLO0lBQ0wsV0FBVztJQUNYLFdBQVc7SUFDWCxjQUFjO0lBQ2QsV0FBVztDQUNaLENBQUM7QUFFRixNQUFNLHVCQUF1QixHQUFHLENBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBRXpHLE1BQU0sT0FBTyxlQUFnQixTQUFRLEtBQUs7SUFDWjtJQUE1QixZQUE0QixNQUFjLEVBQUUsVUFBa0I7UUFDNUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRFEsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUV4QyxJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxZQUFZO0lBS007SUFKckIsUUFBUSxDQUFtQjtJQUMzQixNQUFNLENBQVU7SUFDaEIsS0FBSyxHQUFHLENBQUMsQ0FBQztJQUVsQixZQUE2QixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO0lBQUcsQ0FBQztJQUUvQyxLQUFLLENBQUMsV0FBVyxDQUFDLGVBQWUsR0FBRyxLQUFLO1FBQzlDLElBQUksQ0FB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
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdWdlLmNsYXNzZXMuY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vdHMvaW50ZWdyYXRpb25zL2RlbHVnZS9kZWx1Z2UuY2xhc3Nlcy5jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNELE1BQU0saUJBQWlCLEdBQUc7SUFDeEIsTUFBTTtJQUNOLE9BQU87SUFDUCxRQUFRO0lBQ1IsVUFBVTtJQUNWLHVCQUF1QjtJQUN2QixxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGFBQWE7SUFDYixZQUFZO0lBQ1osWUFBWTtJQUNaLE9BQU87SUFDUCxLQUFLO0lBQ0wsV0FBVztJQUNYLFdBQVc7SUFDWCxjQUFjO0lBQ2QsV0FBVztDQUNaLENBQUM7QUFFRixNQUFNLHVCQUF1QixHQUFHLENBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0FBRXpHLE1BQU0sT0FBTyxlQUFnQixTQUFRLEtBQUs7SUFDWixNQUFNO0lBQWxDLFlBQTRCLE1BQWMsRUFBRSxVQUFrQjtRQUM1RCxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7c0JBRFEsTUFBTTtRQUVoQyxJQUFJLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDO0lBQ2hDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxZQUFZO0lBS00sTUFBTTtJQUozQixRQUFRLENBQW1CO0lBQzNCLE1BQU0sQ0FBVTtJQUNoQixLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBRWxCLFlBQTZCLE1BQXFCO3NCQUFyQixNQUFNO0lBQWtCLENBQUM7SUFFL0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxlQUFlLEdBQUcsS0FBSztRQUM5QyxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUks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
@@ -5,7 +5,7 @@ import type { IDelugeConfig } from './deluge.types.js';
5
5
  export declare class DelugeIntegration extends BaseIntegration<IDelugeConfig> {
6
6
  readonly domain = "deluge";
7
7
  readonly displayName = "Deluge";
8
- readonly status: "control-runtime";
8
+ readonly status: 'control-runtime';
9
9
  readonly discoveryDescriptor: import("../../index.js").DiscoveryDescriptor;
10
10
  readonly configFlow: DelugeConfigFlow;
11
11
  readonly metadata: {
@@ -86,4 +86,4 @@ class DelugeRuntime {
86
86
  await this.client.destroy();
87
87
  }
88
88
  }
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdWdlLmNsYXNzZXMuaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9pbnRlZ3JhdGlvbnMvZGVsdWdlL2RlbHVnZS5jbGFzc2VzLmludGVncmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVoSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZUFBOEI7SUFDbkQsTUFBTSxHQUFHLFlBQVksQ0FBQztJQUN0QixXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDaEMsTUFBTSxHQUFHLGlCQUEwQixDQUFDO0lBQ3BDLG1CQUFtQixHQUFHLCtCQUErQixFQUFFLENBQUM7SUFDeEQsVUFBVSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQUNwQyxRQUFRLEdBQUc7UUFDekIsTUFBTSxFQUFFLHFCQUFxQjtRQUM3QixZQUFZLEVBQUUsaUNBQWlDO1FBQy9DLGNBQWMsRUFBRSxZQUFZO1FBQzVCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFlBQVksRUFBRSxDQUFDLHVCQUF1QixDQUFDO1FBQ3ZDLFlBQVksRUFBRSxFQUFjO1FBQzVCLGlCQUFpQixFQUFFLEVBQWM7UUFDakMsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFVBQVUsRUFB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
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdWdlLmNsYXNzZXMuaW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9pbnRlZ3JhdGlvbnMvZGVsdWdlL2RlbHVnZS5jbGFzc2VzLmludGVncmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUV4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRWxELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVoSCxNQUFNLE9BQU8saUJBQWtCLFNBQVEsZUFBOEI7SUFDbkQsTUFBTSxHQUFHLFlBQVksQ0FBQztJQUN0QixXQUFXLEdBQUcsaUJBQWlCLENBQUM7SUFDaEMsTUFBTSxHQUFHLGlCQUEwQixDQUFDO0lBQ3BDLG1CQUFtQixHQUFHLCtCQUErQixFQUFFLENBQUM7SUFDeEQsVUFBVSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQUNwQyxRQUFRLEdBQUc7UUFDekIsTUFBTSxFQUFFLHFCQUFxQjtRQUM3QixZQUFZLEVBQUUsaUNBQWlDO1FBQy9DLGNBQWMsRUFBRSxZQUFZO1FBQzVCLGVBQWUsRUFBRSxTQUFTO1FBQzFCLFFBQVEsRUFBRSxlQUFlO1FBQ3pCLFlBQVksRUFBRSxDQUFDLHVCQUF1QixDQUFDO1FBQ3ZDLFlBQVksRUFBRSxFQUFjO1FBQzVCLGlCQUFpQixFQUFFLEVBQWM7UUFDakMsVUFBVSxFQUFFLENBQUMsU0FBUyxDQUFDO1FBQ3ZCLFVBQVUsRUFB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
@@ -3,13 +3,13 @@ import type { IDiscoveryCandidate, IDiscoveryContext, IDiscoveryMatch, IDiscover
3
3
  import type { IDelugeHttpDiscoveryInput, IDelugeManualEntry } from './deluge.types.js';
4
4
  export declare class DelugeManualMatcher implements IDiscoveryMatcher<IDelugeManualEntry> {
5
5
  id: string;
6
- source: "manual";
6
+ source: 'manual';
7
7
  description: string;
8
8
  matches(inputArg: IDelugeManualEntry, contextArg: IDiscoveryContext): Promise<IDiscoveryMatch>;
9
9
  }
10
10
  export declare class DelugeHttpMatcher implements IDiscoveryMatcher<IDelugeHttpDiscoveryInput> {
11
11
  id: string;
12
- source: "http";
12
+ source: 'http';
13
13
  description: string;
14
14
  matches(inputArg: IDelugeHttpDiscoveryInput, contextArg: IDiscoveryContext): Promise<IDiscoveryMatch>;
15
15
  }
@@ -546,4 +546,4 @@ const splitFirst = (valueArg, separatorArg) => {
546
546
  }
547
547
  return [valueArg.slice(0, index), valueArg.slice(index + separatorArg.length).trim() || undefined];
548
548
  };
549
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVub24uY2xhc3Nlcy5jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9pbnRlZ3JhdGlvbnMvZGVub24vZGVub24uY2xhc3Nlcy5jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQVM1QyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLG1CQUFtQixHQUNwQixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksVUFBa0I7UUFDNUIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGdCQUFnQjtJQUN2RCxZQUFZLFVBQWtCO1FBQzVCLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxXQUFXO0lBR087SUFGckIsZUFBZSxDQUFrQjtJQUV6QyxZQUE2QixNQUFvQjtRQUFwQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBQy9DLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDNUgsQ0FBQztJQUVNLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsZUFB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
549
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVub24uY2xhc3Nlcy5jbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi90cy9pbnRlZ3JhdGlvbnMvZGVub24vZGVub24uY2xhc3Nlcy5jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxrQkFBa0IsQ0FBQztBQVM1QyxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLG1CQUFtQixHQUNwQixNQUFNLGtCQUFrQixDQUFDO0FBRTFCLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxLQUFLO0lBQ3pDLFlBQVksVUFBa0I7UUFDNUIsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsa0JBQWtCLENBQUM7SUFDakMsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGdCQUFnQjtJQUN2RCxZQUFZLFVBQWtCO1FBQzVCLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsSUFBSSxHQUFHLHFCQUFxQixDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxXQUFXO0lBR08sTUFBTTtJQUYzQixlQUFlLENBQWtCO0lBRXpDLFlBQTZCLE1BQW9CO3NCQUFwQixNQUFNO1FBQ2pDLElBQUksQ0FBQyxlQUFlLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDNUgsQ0FBQztJQUVNLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLElB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
@@ -5,7 +5,7 @@ import type { IDenonConfig } from './denon.types.js';
5
5
  export declare class DenonIntegration extends BaseIntegration<IDenonConfig> {
6
6
  readonly domain = "denon";
7
7
  readonly displayName = "Denon Network Receivers";
8
- readonly status: "control-runtime";
8
+ readonly status: 'control-runtime';
9
9
  readonly discoveryDescriptor: import("../../index.js").DiscoveryDescriptor;
10
10
  readonly configFlow: DenonConfigFlow;
11
11
  readonly metadata: {