@enyo-energy/energy-app-sdk 0.0.34

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 (330) hide show
  1. package/README.md +216 -0
  2. package/dist/cjs/connect-ems-api.cjs +2 -0
  3. package/dist/cjs/connect-ems-api.d.cts +30 -0
  4. package/dist/cjs/connect-ems-permission.enum.cjs +7 -0
  5. package/dist/cjs/connect-ems-permission.enum.d.cts +3 -0
  6. package/dist/cjs/connect-ems-permission.type.cjs +2 -0
  7. package/dist/cjs/connect-ems-permission.type.d.cts +1 -0
  8. package/dist/cjs/connect-package-definition.cjs +14 -0
  9. package/dist/cjs/connect-package-definition.d.cts +57 -0
  10. package/dist/cjs/energy-app-appliance-type.enum.cjs +14 -0
  11. package/dist/cjs/energy-app-appliance-type.enum.d.cts +10 -0
  12. package/dist/cjs/energy-app-package-configuration.cjs +2 -0
  13. package/dist/cjs/energy-app-package-configuration.d.cts +30 -0
  14. package/dist/cjs/energy-app-package-definition.cjs +30 -0
  15. package/dist/cjs/energy-app-package-definition.d.cts +123 -0
  16. package/dist/cjs/energy-app-permission.type.cjs +21 -0
  17. package/dist/cjs/energy-app-permission.type.d.cts +18 -0
  18. package/dist/cjs/enyo-energy-app-sdk.cjs +12 -0
  19. package/dist/cjs/enyo-energy-app-sdk.d.cts +67 -0
  20. package/dist/cjs/hems-one-energy-app-sdk.cjs +12 -0
  21. package/dist/cjs/hems-one-energy-app-sdk.d.cts +64 -0
  22. package/dist/cjs/implementations/modbus/EnergyAppModbusBattery.cjs +388 -0
  23. package/dist/cjs/implementations/modbus/EnergyAppModbusBattery.d.cts +59 -0
  24. package/dist/cjs/implementations/modbus/EnergyAppModbusConnectionHealth.cjs +37 -0
  25. package/dist/cjs/implementations/modbus/EnergyAppModbusConnectionHealth.d.cts +15 -0
  26. package/dist/cjs/implementations/modbus/EnergyAppModbusDataTypeConverter.cjs +130 -0
  27. package/dist/cjs/implementations/modbus/EnergyAppModbusDataTypeConverter.d.cts +41 -0
  28. package/dist/cjs/implementations/modbus/EnergyAppModbusFaultTolerantReader.cjs +49 -0
  29. package/dist/cjs/implementations/modbus/EnergyAppModbusFaultTolerantReader.d.cts +10 -0
  30. package/dist/cjs/implementations/modbus/EnergyAppModbusInverter.cjs +348 -0
  31. package/dist/cjs/implementations/modbus/EnergyAppModbusInverter.d.cts +56 -0
  32. package/dist/cjs/implementations/modbus/EnergyAppModbusMeter.cjs +199 -0
  33. package/dist/cjs/implementations/modbus/EnergyAppModbusMeter.d.cts +26 -0
  34. package/dist/cjs/implementations/modbus/EnergyAppModbusRegisterMapper.cjs +98 -0
  35. package/dist/cjs/implementations/modbus/EnergyAppModbusRegisterMapper.d.cts +13 -0
  36. package/dist/cjs/implementations/modbus/interfaces.cjs +29 -0
  37. package/dist/cjs/implementations/modbus/interfaces.d.cts +202 -0
  38. package/dist/cjs/implementations/ocpp/ocpp-common.cjs +337 -0
  39. package/dist/cjs/implementations/ocpp/ocpp-common.d.cts +75 -0
  40. package/dist/cjs/implementations/ocpp/ocpp16.cjs +51 -0
  41. package/dist/cjs/implementations/ocpp/ocpp16.d.cts +137 -0
  42. package/dist/cjs/implementations/ocpp/ocpp201.cjs +84 -0
  43. package/dist/cjs/implementations/ocpp/ocpp201.d.cts +215 -0
  44. package/dist/cjs/index.cjs +117 -0
  45. package/dist/cjs/index.d.cts +56 -0
  46. package/dist/cjs/mockConnectEmsApi.cjs +167 -0
  47. package/dist/cjs/mockConnectEmsApi.d.cts +10 -0
  48. package/dist/cjs/packages/connect-appliance.cjs +2 -0
  49. package/dist/cjs/packages/connect-appliance.d.cts +24 -0
  50. package/dist/cjs/packages/connect-http-api.cjs +2 -0
  51. package/dist/cjs/packages/connect-http-api.d.cts +15 -0
  52. package/dist/cjs/packages/connect-interval.cjs +2 -0
  53. package/dist/cjs/packages/connect-interval.d.cts +15 -0
  54. package/dist/cjs/packages/connect-modbus.cjs +2 -0
  55. package/dist/cjs/packages/connect-modbus.d.cts +60 -0
  56. package/dist/cjs/packages/connect-network-devices.cjs +2 -0
  57. package/dist/cjs/packages/connect-network-devices.d.cts +40 -0
  58. package/dist/cjs/packages/connect-storage.cjs +2 -0
  59. package/dist/cjs/packages/connect-storage.d.cts +14 -0
  60. package/dist/cjs/packages/energy-app-appliance.cjs +2 -0
  61. package/dist/cjs/packages/energy-app-appliance.d.cts +17 -0
  62. package/dist/cjs/packages/energy-app-authentication.cjs +2 -0
  63. package/dist/cjs/packages/energy-app-authentication.d.cts +52 -0
  64. package/dist/cjs/packages/energy-app-charge.cjs +2 -0
  65. package/dist/cjs/packages/energy-app-charge.d.cts +13 -0
  66. package/dist/cjs/packages/energy-app-charging-card.cjs +2 -0
  67. package/dist/cjs/packages/energy-app-charging-card.d.cts +11 -0
  68. package/dist/cjs/packages/energy-app-data-bus.cjs +2 -0
  69. package/dist/cjs/packages/energy-app-data-bus.d.cts +12 -0
  70. package/dist/cjs/packages/energy-app-electricity-prices.cjs +2 -0
  71. package/dist/cjs/packages/energy-app-electricity-prices.d.cts +59 -0
  72. package/dist/cjs/packages/energy-app-interval.cjs +2 -0
  73. package/dist/cjs/packages/energy-app-interval.d.cts +15 -0
  74. package/dist/cjs/packages/energy-app-modbus.cjs +2 -0
  75. package/dist/cjs/packages/energy-app-modbus.d.cts +46 -0
  76. package/dist/cjs/packages/energy-app-network-device.cjs +2 -0
  77. package/dist/cjs/packages/energy-app-network-device.d.cts +25 -0
  78. package/dist/cjs/packages/energy-app-notification.cjs +2 -0
  79. package/dist/cjs/packages/energy-app-notification.d.cts +50 -0
  80. package/dist/cjs/packages/energy-app-ocpp.cjs +16 -0
  81. package/dist/cjs/packages/energy-app-ocpp.d.cts +52 -0
  82. package/dist/cjs/packages/energy-app-settings.cjs +2 -0
  83. package/dist/cjs/packages/energy-app-settings.d.cts +47 -0
  84. package/dist/cjs/packages/energy-app-storage.cjs +2 -0
  85. package/dist/cjs/packages/energy-app-storage.d.cts +14 -0
  86. package/dist/cjs/packages/energy-app-vehicle.cjs +2 -0
  87. package/dist/cjs/packages/energy-app-vehicle.d.cts +11 -0
  88. package/dist/cjs/permission-not-granted.cjs +18 -0
  89. package/dist/cjs/permission-not-granted.d.cts +8 -0
  90. package/dist/cjs/types/connect-appliance-type.enum.cjs +10 -0
  91. package/dist/cjs/types/connect-appliance-type.enum.d.cts +6 -0
  92. package/dist/cjs/types/energy-app-settings.cjs +2 -0
  93. package/dist/cjs/types/energy-app-settings.d.cts +74 -0
  94. package/dist/cjs/types/enyo-appliance.cjs +33 -0
  95. package/dist/cjs/types/enyo-appliance.d.cts +81 -0
  96. package/dist/cjs/types/enyo-authentication.cjs +9 -0
  97. package/dist/cjs/types/enyo-authentication.d.cts +69 -0
  98. package/dist/cjs/types/enyo-battery-appliance.cjs +2 -0
  99. package/dist/cjs/types/enyo-battery-appliance.d.cts +6 -0
  100. package/dist/cjs/types/enyo-charge.cjs +15 -0
  101. package/dist/cjs/types/enyo-charge.d.cts +82 -0
  102. package/dist/cjs/types/enyo-charger-appliance.cjs +41 -0
  103. package/dist/cjs/types/enyo-charger-appliance.d.cts +49 -0
  104. package/dist/cjs/types/enyo-charging-card.cjs +2 -0
  105. package/dist/cjs/types/enyo-charging-card.d.cts +11 -0
  106. package/dist/cjs/types/enyo-data-bus-value.cjs +78 -0
  107. package/dist/cjs/types/enyo-data-bus-value.d.cts +379 -0
  108. package/dist/cjs/types/enyo-electricity-prices.cjs +2 -0
  109. package/dist/cjs/types/enyo-electricity-prices.d.cts +63 -0
  110. package/dist/cjs/types/enyo-energy-tariff.cjs +2 -0
  111. package/dist/cjs/types/enyo-energy-tariff.d.cts +70 -0
  112. package/dist/cjs/types/enyo-heatpump-appliance.cjs +19 -0
  113. package/dist/cjs/types/enyo-heatpump-appliance.d.cts +34 -0
  114. package/dist/cjs/types/enyo-inverter-appliance.cjs +2 -0
  115. package/dist/cjs/types/enyo-inverter-appliance.d.cts +3 -0
  116. package/dist/cjs/types/enyo-meter-appliance.cjs +10 -0
  117. package/dist/cjs/types/enyo-meter-appliance.d.cts +10 -0
  118. package/dist/cjs/types/enyo-network-device.cjs +2 -0
  119. package/dist/cjs/types/enyo-network-device.d.cts +31 -0
  120. package/dist/cjs/types/enyo-notification.cjs +2 -0
  121. package/dist/cjs/types/enyo-notification.d.cts +48 -0
  122. package/dist/cjs/types/enyo-settings.cjs +2 -0
  123. package/dist/cjs/types/enyo-settings.d.cts +74 -0
  124. package/dist/cjs/types/enyo-source.enum.cjs +8 -0
  125. package/dist/cjs/types/enyo-source.enum.d.cts +4 -0
  126. package/dist/cjs/types/enyo-vehicle.cjs +2 -0
  127. package/dist/cjs/types/enyo-vehicle.d.cts +12 -0
  128. package/dist/cjs/types/enyo-websocket-connection.cjs +2 -0
  129. package/dist/cjs/types/enyo-websocket-connection.d.cts +8 -0
  130. package/dist/cjs/types/hems-one-appliance.cjs +33 -0
  131. package/dist/cjs/types/hems-one-appliance.d.cts +81 -0
  132. package/dist/cjs/types/hems-one-authentication.cjs +9 -0
  133. package/dist/cjs/types/hems-one-authentication.d.cts +69 -0
  134. package/dist/cjs/types/hems-one-battery-appliance.cjs +2 -0
  135. package/dist/cjs/types/hems-one-battery-appliance.d.cts +6 -0
  136. package/dist/cjs/types/hems-one-charge.cjs +15 -0
  137. package/dist/cjs/types/hems-one-charge.d.cts +82 -0
  138. package/dist/cjs/types/hems-one-charger-appliance.cjs +41 -0
  139. package/dist/cjs/types/hems-one-charger-appliance.d.cts +49 -0
  140. package/dist/cjs/types/hems-one-charging-card.cjs +2 -0
  141. package/dist/cjs/types/hems-one-charging-card.d.cts +11 -0
  142. package/dist/cjs/types/hems-one-data-bus-command.cjs +9 -0
  143. package/dist/cjs/types/hems-one-data-bus-command.d.cts +34 -0
  144. package/dist/cjs/types/hems-one-data-bus-value.cjs +78 -0
  145. package/dist/cjs/types/hems-one-data-bus-value.d.cts +379 -0
  146. package/dist/cjs/types/hems-one-electricity-prices.cjs +2 -0
  147. package/dist/cjs/types/hems-one-electricity-prices.d.cts +63 -0
  148. package/dist/cjs/types/hems-one-energy-tariff.cjs +2 -0
  149. package/dist/cjs/types/hems-one-energy-tariff.d.cts +70 -0
  150. package/dist/cjs/types/hems-one-heatpump-appliance.cjs +19 -0
  151. package/dist/cjs/types/hems-one-heatpump-appliance.d.cts +34 -0
  152. package/dist/cjs/types/hems-one-inverter-appliance.cjs +2 -0
  153. package/dist/cjs/types/hems-one-inverter-appliance.d.cts +3 -0
  154. package/dist/cjs/types/hems-one-meter-appliance.cjs +10 -0
  155. package/dist/cjs/types/hems-one-meter-appliance.d.cts +10 -0
  156. package/dist/cjs/types/hems-one-network-device.cjs +2 -0
  157. package/dist/cjs/types/hems-one-network-device.d.cts +31 -0
  158. package/dist/cjs/types/hems-one-source.enum.cjs +8 -0
  159. package/dist/cjs/types/hems-one-source.enum.d.cts +4 -0
  160. package/dist/cjs/types/hems-one-vehicle.cjs +2 -0
  161. package/dist/cjs/types/hems-one-vehicle.d.cts +12 -0
  162. package/dist/cjs/types/hems-one-websocket-connection.cjs +2 -0
  163. package/dist/cjs/types/hems-one-websocket-connection.d.cts +8 -0
  164. package/dist/cjs/version.cjs +19 -0
  165. package/dist/cjs/version.d.cts +13 -0
  166. package/dist/connect-ems-api.d.ts +30 -0
  167. package/dist/connect-ems-api.js +1 -0
  168. package/dist/connect-ems-permission.enum.d.ts +3 -0
  169. package/dist/connect-ems-permission.enum.js +4 -0
  170. package/dist/connect-ems-permission.type.d.ts +1 -0
  171. package/dist/connect-ems-permission.type.js +1 -0
  172. package/dist/connect-package-definition.d.ts +57 -0
  173. package/dist/connect-package-definition.js +10 -0
  174. package/dist/energy-app-appliance-type.enum.d.ts +10 -0
  175. package/dist/energy-app-appliance-type.enum.js +11 -0
  176. package/dist/energy-app-package-configuration.d.ts +30 -0
  177. package/dist/energy-app-package-configuration.js +1 -0
  178. package/dist/energy-app-package-definition.d.ts +123 -0
  179. package/dist/energy-app-package-definition.js +26 -0
  180. package/dist/energy-app-permission.type.d.ts +18 -0
  181. package/dist/energy-app-permission.type.js +18 -0
  182. package/dist/enyo-energy-app-sdk.d.ts +67 -0
  183. package/dist/enyo-energy-app-sdk.js +9 -0
  184. package/dist/hems-one-energy-app-sdk.d.ts +67 -0
  185. package/dist/hems-one-energy-app-sdk.js +9 -0
  186. package/dist/implementations/modbus/EnergyAppModbusBattery.d.ts +59 -0
  187. package/dist/implementations/modbus/EnergyAppModbusBattery.js +384 -0
  188. package/dist/implementations/modbus/EnergyAppModbusConnectionHealth.d.ts +15 -0
  189. package/dist/implementations/modbus/EnergyAppModbusConnectionHealth.js +33 -0
  190. package/dist/implementations/modbus/EnergyAppModbusDataTypeConverter.d.ts +41 -0
  191. package/dist/implementations/modbus/EnergyAppModbusDataTypeConverter.js +126 -0
  192. package/dist/implementations/modbus/EnergyAppModbusFaultTolerantReader.d.ts +10 -0
  193. package/dist/implementations/modbus/EnergyAppModbusFaultTolerantReader.js +45 -0
  194. package/dist/implementations/modbus/EnergyAppModbusInverter.d.ts +56 -0
  195. package/dist/implementations/modbus/EnergyAppModbusInverter.js +344 -0
  196. package/dist/implementations/modbus/EnergyAppModbusMeter.d.ts +26 -0
  197. package/dist/implementations/modbus/EnergyAppModbusMeter.js +195 -0
  198. package/dist/implementations/modbus/EnergyAppModbusRegisterMapper.d.ts +13 -0
  199. package/dist/implementations/modbus/EnergyAppModbusRegisterMapper.js +94 -0
  200. package/dist/implementations/modbus/interfaces.d.ts +202 -0
  201. package/dist/implementations/modbus/interfaces.js +23 -0
  202. package/dist/implementations/ocpp/ocpp-common.d.ts +75 -0
  203. package/dist/implementations/ocpp/ocpp-common.js +328 -0
  204. package/dist/implementations/ocpp/ocpp16.d.ts +137 -0
  205. package/dist/implementations/ocpp/ocpp16.js +48 -0
  206. package/dist/implementations/ocpp/ocpp201.d.ts +215 -0
  207. package/dist/implementations/ocpp/ocpp201.js +81 -0
  208. package/dist/index.d.ts +56 -0
  209. package/dist/index.js +99 -0
  210. package/dist/mockConnectEmsApi.d.ts +10 -0
  211. package/dist/mockConnectEmsApi.js +160 -0
  212. package/dist/packages/connect-appliance.d.ts +24 -0
  213. package/dist/packages/connect-appliance.js +1 -0
  214. package/dist/packages/connect-http-api.d.ts +15 -0
  215. package/dist/packages/connect-http-api.js +1 -0
  216. package/dist/packages/connect-interval.d.ts +15 -0
  217. package/dist/packages/connect-interval.js +1 -0
  218. package/dist/packages/connect-modbus.d.ts +60 -0
  219. package/dist/packages/connect-modbus.js +1 -0
  220. package/dist/packages/connect-network-devices.d.ts +40 -0
  221. package/dist/packages/connect-network-devices.js +1 -0
  222. package/dist/packages/connect-storage.d.ts +14 -0
  223. package/dist/packages/connect-storage.js +1 -0
  224. package/dist/packages/energy-app-appliance.d.ts +17 -0
  225. package/dist/packages/energy-app-appliance.js +1 -0
  226. package/dist/packages/energy-app-authentication.d.ts +52 -0
  227. package/dist/packages/energy-app-authentication.js +1 -0
  228. package/dist/packages/energy-app-charge.d.ts +13 -0
  229. package/dist/packages/energy-app-charge.js +1 -0
  230. package/dist/packages/energy-app-charging-card.d.ts +11 -0
  231. package/dist/packages/energy-app-charging-card.js +1 -0
  232. package/dist/packages/energy-app-data-bus.d.ts +12 -0
  233. package/dist/packages/energy-app-data-bus.js +1 -0
  234. package/dist/packages/energy-app-electricity-prices.d.ts +59 -0
  235. package/dist/packages/energy-app-electricity-prices.js +1 -0
  236. package/dist/packages/energy-app-interval.d.ts +15 -0
  237. package/dist/packages/energy-app-interval.js +1 -0
  238. package/dist/packages/energy-app-modbus.d.ts +46 -0
  239. package/dist/packages/energy-app-modbus.js +1 -0
  240. package/dist/packages/energy-app-network-device.d.ts +25 -0
  241. package/dist/packages/energy-app-network-device.js +1 -0
  242. package/dist/packages/energy-app-notification.d.ts +50 -0
  243. package/dist/packages/energy-app-notification.js +1 -0
  244. package/dist/packages/energy-app-ocpp.d.ts +52 -0
  245. package/dist/packages/energy-app-ocpp.js +13 -0
  246. package/dist/packages/energy-app-settings.d.ts +47 -0
  247. package/dist/packages/energy-app-settings.js +1 -0
  248. package/dist/packages/energy-app-storage.d.ts +14 -0
  249. package/dist/packages/energy-app-storage.js +1 -0
  250. package/dist/packages/energy-app-vehicle.d.ts +11 -0
  251. package/dist/packages/energy-app-vehicle.js +1 -0
  252. package/dist/permission-not-granted.d.ts +8 -0
  253. package/dist/permission-not-granted.js +14 -0
  254. package/dist/types/connect-appliance-type.enum.d.ts +6 -0
  255. package/dist/types/connect-appliance-type.enum.js +7 -0
  256. package/dist/types/energy-app-settings.d.ts +74 -0
  257. package/dist/types/energy-app-settings.js +1 -0
  258. package/dist/types/enyo-appliance.d.ts +81 -0
  259. package/dist/types/enyo-appliance.js +30 -0
  260. package/dist/types/enyo-authentication.d.ts +69 -0
  261. package/dist/types/enyo-authentication.js +6 -0
  262. package/dist/types/enyo-battery-appliance.d.ts +6 -0
  263. package/dist/types/enyo-battery-appliance.js +1 -0
  264. package/dist/types/enyo-charge.d.ts +82 -0
  265. package/dist/types/enyo-charge.js +12 -0
  266. package/dist/types/enyo-charger-appliance.d.ts +49 -0
  267. package/dist/types/enyo-charger-appliance.js +38 -0
  268. package/dist/types/enyo-charging-card.d.ts +11 -0
  269. package/dist/types/enyo-charging-card.js +1 -0
  270. package/dist/types/enyo-data-bus-value.d.ts +379 -0
  271. package/dist/types/enyo-data-bus-value.js +75 -0
  272. package/dist/types/enyo-electricity-prices.d.ts +63 -0
  273. package/dist/types/enyo-electricity-prices.js +1 -0
  274. package/dist/types/enyo-energy-tariff.d.ts +70 -0
  275. package/dist/types/enyo-energy-tariff.js +1 -0
  276. package/dist/types/enyo-heatpump-appliance.d.ts +34 -0
  277. package/dist/types/enyo-heatpump-appliance.js +16 -0
  278. package/dist/types/enyo-inverter-appliance.d.ts +3 -0
  279. package/dist/types/enyo-inverter-appliance.js +1 -0
  280. package/dist/types/enyo-meter-appliance.d.ts +10 -0
  281. package/dist/types/enyo-meter-appliance.js +7 -0
  282. package/dist/types/enyo-network-device.d.ts +31 -0
  283. package/dist/types/enyo-network-device.js +1 -0
  284. package/dist/types/enyo-notification.d.ts +48 -0
  285. package/dist/types/enyo-notification.js +1 -0
  286. package/dist/types/enyo-settings.d.ts +74 -0
  287. package/dist/types/enyo-settings.js +1 -0
  288. package/dist/types/enyo-source.enum.d.ts +4 -0
  289. package/dist/types/enyo-source.enum.js +5 -0
  290. package/dist/types/enyo-vehicle.d.ts +12 -0
  291. package/dist/types/enyo-vehicle.js +1 -0
  292. package/dist/types/enyo-websocket-connection.d.ts +8 -0
  293. package/dist/types/enyo-websocket-connection.js +1 -0
  294. package/dist/types/hems-one-appliance.d.ts +81 -0
  295. package/dist/types/hems-one-appliance.js +30 -0
  296. package/dist/types/hems-one-authentication.d.ts +69 -0
  297. package/dist/types/hems-one-authentication.js +6 -0
  298. package/dist/types/hems-one-battery-appliance.d.ts +6 -0
  299. package/dist/types/hems-one-battery-appliance.js +1 -0
  300. package/dist/types/hems-one-charge.d.ts +82 -0
  301. package/dist/types/hems-one-charge.js +12 -0
  302. package/dist/types/hems-one-charger-appliance.d.ts +49 -0
  303. package/dist/types/hems-one-charger-appliance.js +38 -0
  304. package/dist/types/hems-one-charging-card.d.ts +11 -0
  305. package/dist/types/hems-one-charging-card.js +1 -0
  306. package/dist/types/hems-one-data-bus-command.d.ts +34 -0
  307. package/dist/types/hems-one-data-bus-command.js +6 -0
  308. package/dist/types/hems-one-data-bus-value.d.ts +379 -0
  309. package/dist/types/hems-one-data-bus-value.js +75 -0
  310. package/dist/types/hems-one-electricity-prices.d.ts +63 -0
  311. package/dist/types/hems-one-electricity-prices.js +1 -0
  312. package/dist/types/hems-one-energy-tariff.d.ts +70 -0
  313. package/dist/types/hems-one-energy-tariff.js +1 -0
  314. package/dist/types/hems-one-heatpump-appliance.d.ts +34 -0
  315. package/dist/types/hems-one-heatpump-appliance.js +16 -0
  316. package/dist/types/hems-one-inverter-appliance.d.ts +3 -0
  317. package/dist/types/hems-one-inverter-appliance.js +1 -0
  318. package/dist/types/hems-one-meter-appliance.d.ts +10 -0
  319. package/dist/types/hems-one-meter-appliance.js +7 -0
  320. package/dist/types/hems-one-network-device.d.ts +31 -0
  321. package/dist/types/hems-one-network-device.js +1 -0
  322. package/dist/types/hems-one-source.enum.d.ts +4 -0
  323. package/dist/types/hems-one-source.enum.js +5 -0
  324. package/dist/types/hems-one-vehicle.d.ts +12 -0
  325. package/dist/types/hems-one-vehicle.js +1 -0
  326. package/dist/types/hems-one-websocket-connection.d.ts +8 -0
  327. package/dist/types/hems-one-websocket-connection.js +1 -0
  328. package/dist/version.d.ts +13 -0
  329. package/dist/version.js +15 -0
  330. package/package.json +43 -0
@@ -0,0 +1,379 @@
1
+ import { EnyoApplianceStateEnum, EnyoApplianceTypeEnum } from "./enyo-appliance.js";
2
+ import { EnyoSourceEnum } from "./enyo-source.enum.js";
3
+ import { EnergyTariffInfo } from "./enyo-energy-tariff.js";
4
+ export declare enum EnyoBatteryStateEnum {
5
+ Off = "off",
6
+ Empty = "empty",
7
+ Discharging = "discharging",
8
+ Charging = "charging",
9
+ Full = "full",
10
+ Holding = "holding",
11
+ Testing = "testing"
12
+ }
13
+ export declare enum EnyoInverterStateEnum {
14
+ Off = "off",
15
+ Sleeping = "sleeping",
16
+ Starting = "starting",
17
+ Mppt = "mppt",
18
+ Throttled = "throttled",
19
+ ShuttingDown = "shutting-down",
20
+ Fault = "fault",
21
+ Standby = "standby"
22
+ }
23
+ /**
24
+ * Charging meter value context defining when the measurement was taken
25
+ */
26
+ export declare enum EnyoChargingMeterValueContext {
27
+ /** Meter value at the start of a transaction */
28
+ TransactionBegin = "Transaction.Begin",
29
+ /** Meter value at the end of a transaction */
30
+ TransactionEnd = "Transaction.End",
31
+ /** Periodic sample during charging */
32
+ SamplePeriodic = "Sample.Periodic",
33
+ /** Clock-aligned sample */
34
+ SampleClock = "Sample.Clock",
35
+ /** Triggered by external request */
36
+ Trigger = "Trigger",
37
+ /** Sample taken when charging is interrupted */
38
+ InterruptionBegin = "Interruption.Begin",
39
+ /** Sample taken when charging resumes */
40
+ InterruptionEnd = "Interruption.End"
41
+ }
42
+ /**
43
+ * Reason why a charging session was stopped
44
+ */
45
+ export declare enum EnyoChargingStopReason {
46
+ /** Session stopped by remote command */
47
+ Remote = "Remote",
48
+ /** Session stopped due to power loss */
49
+ PowerLoss = "PowerLoss",
50
+ /** Emergency stop was triggered */
51
+ EmergencyStop = "EmergencyStop",
52
+ /** Electric vehicle was disconnected */
53
+ EVDisconnected = "EVDisconnected",
54
+ /** Authorization was revoked */
55
+ DeAuthorized = "DeAuthorized",
56
+ /** Session stopped for other reasons */
57
+ Other = "Other"
58
+ }
59
+ export interface EnyoAggregatedStateApplianceValues {
60
+ gridPowerW?: number;
61
+ gridFeedInWh?: number;
62
+ gridConsumptionWh?: number;
63
+ selfConsumptionW?: number;
64
+ selfConsumptionWh?: number;
65
+ batteryPowerW?: number;
66
+ batterySoC?: number;
67
+ pvPowerW?: number;
68
+ currentA?: number;
69
+ voltageL1?: number;
70
+ voltageL2?: number;
71
+ voltageL3?: number;
72
+ pvProductionWh?: number;
73
+ powerConsumptionHeatingWh?: number;
74
+ powerConsumptionDomesticHotWaterWh?: number;
75
+ heatGenerationHeatingWh?: number;
76
+ heatGenerationDomesticHotWaterWh?: number;
77
+ flexibility?: {
78
+ kWh?: number;
79
+ availableUntilIsoTimestamp?: string;
80
+ };
81
+ outdoorTemperatureC?: number;
82
+ heatpumpFlowTemperatureC?: number;
83
+ domesticHotWater?: {
84
+ index: number;
85
+ targetTemperatureC: number;
86
+ temperatureC: number;
87
+ }[];
88
+ heatingCircuits?: {
89
+ index: number;
90
+ targetTemperatureC: number;
91
+ temperatureC: number;
92
+ }[];
93
+ bufferTank?: {
94
+ temperatureC: number;
95
+ };
96
+ }
97
+ export declare enum EnyoDataBusMessageEnum {
98
+ InverterValuesUpdateV1 = "InverterValuesUpdateV1",
99
+ MeterValuesUpdateV1 = "MeterValuesUpdateV1",
100
+ BatteryValuesUpdateV1 = "BatteryValuesUpdateV1",
101
+ ApplianceFlexibilityAnnouncementV1 = "ApplianceFlexibilityAnnouncementV1",
102
+ HeatpumpValuesUpdateV1 = "HeatpumpValuesUpdateV1",
103
+ ChargingStartedV1 = "ChargingStartedV1",
104
+ ChargingMeterValuesUpdateV1 = "ChargingMeterValuesUpdateV1",
105
+ ChargingStoppedV1 = "ChargingStoppedV1",
106
+ PauseChargingV1 = "PauseChargingV1",
107
+ ResumeChargingV1 = "ResumeChargingV1",
108
+ ChangeChargingPowerV1 = "ChangeChargingPowerV1",
109
+ AggregatedStateUpdateV1 = "AggregatedStateUpdateV1",
110
+ EnergyTariffUpdateV1 = "EnergyTariffUpdateV1"
111
+ }
112
+ export interface EnyoDataBusMessage {
113
+ id: string;
114
+ message: EnyoDataBusMessageEnum;
115
+ type: 'message' | 'answer';
116
+ source: EnyoSourceEnum;
117
+ applianceId?: string;
118
+ clockId?: string;
119
+ timestampIso: string;
120
+ /** If you just forward events that occur, use dynamic as resolution */
121
+ resolution?: '10s' | '30s' | '1m' | '15m' | '1h' | '1d' | 'dynamic';
122
+ data: object;
123
+ }
124
+ export interface EnyoDataBusMessageAnswer extends EnyoDataBusMessage {
125
+ type: 'answer';
126
+ data: {
127
+ status: 'accepted' | 'rejected' | 'not-applicable';
128
+ };
129
+ }
130
+ export interface EnyoDataBusMeterValuesUpdateV1 extends EnyoDataBusMessage {
131
+ type: 'message';
132
+ message: EnyoDataBusMessageEnum.MeterValuesUpdateV1;
133
+ /** ID of the appliance that delivered these values */
134
+ applianceId: string;
135
+ data: {
136
+ /** Power from Grid (in Watt), negative: grid feed in, positive: grid consumption*/
137
+ gridPowerW?: number;
138
+ /** Grid Feed in (in Watt hours) */
139
+ gridFeedInWh: number;
140
+ /** Grid Consumption in (in Watt hours) */
141
+ gridConsumptionWh: number;
142
+ /** current self consumption (in Watt) */
143
+ selfConsumptionW?: number;
144
+ /** Self consumed energy (in Watt hours) */
145
+ selfConsumptionWh?: number;
146
+ };
147
+ }
148
+ export interface EnyoDataBusHeatpumpValuesV1 extends EnyoDataBusMessage {
149
+ type: 'message';
150
+ message: EnyoDataBusMessageEnum.HeatpumpValuesUpdateV1;
151
+ /** ID of the appliance that delivered these values */
152
+ applianceId: string;
153
+ data: {
154
+ values?: {
155
+ /** Power consumption for heating in Wh (meter value)*/
156
+ powerConsumptionHeatingWh?: number;
157
+ /** Power consumption for domestic hot water in Wh (meter value)*/
158
+ powerConsumptionDomesticHotWaterWh?: number;
159
+ /** Power generation for heating in Wh (meter value)*/
160
+ heatGenerationHeatingWh?: number;
161
+ /** Power generation for domestic hot water in Wh (meter value)*/
162
+ heatGenerationDomesticHotWaterWh?: number;
163
+ };
164
+ temperatures?: {
165
+ outdoorTemperatureC?: number;
166
+ /** The current temperature of the domestic hot water tank */
167
+ domesticHotWater?: {
168
+ index: number;
169
+ targetTemperatureC: number;
170
+ temperatureC: number;
171
+ }[];
172
+ /** The current flow temperature of the heatpump */
173
+ heatpumpFlowTemperatureC?: number;
174
+ heatingCircuits?: {
175
+ index: number;
176
+ targetTemperatureC: number;
177
+ temperatureC: number;
178
+ }[];
179
+ bufferTank?: {
180
+ temperatureC: number;
181
+ };
182
+ };
183
+ };
184
+ }
185
+ export interface EnyoDataBusBatteryValuesUpdateV1 extends EnyoDataBusMessage {
186
+ type: 'message';
187
+ message: EnyoDataBusMessageEnum.BatteryValuesUpdateV1;
188
+ /** ID of the appliance that delivered these values */
189
+ applianceId: string;
190
+ data: {
191
+ state?: EnyoBatteryStateEnum;
192
+ /** Current Battery Power (in Watt). Positive = Consumption from the Battery, Negative = Feed in / charging of the battery. */
193
+ batteryPowerW?: number;
194
+ /** Battery State of Charge. Value between 0 and 100 */
195
+ batterySoC: number;
196
+ };
197
+ }
198
+ export interface EnyoDataBusInverterValuesV1String {
199
+ index: number;
200
+ voltage?: number;
201
+ powerW?: number;
202
+ }
203
+ export interface EnyoDataBusInverterValuesV1 extends EnyoDataBusMessage {
204
+ type: 'message';
205
+ message: EnyoDataBusMessageEnum.InverterValuesUpdateV1;
206
+ /** ID of the appliance that delivered these values */
207
+ applianceId: string;
208
+ data: {
209
+ state?: EnyoInverterStateEnum;
210
+ /** Current PV Production (in Watt) */
211
+ pvPowerW: number;
212
+ /** voltage of Phase L1 to N*/
213
+ voltageL1: number;
214
+ /** voltage of Phase L2 to N*/
215
+ voltageL2?: number;
216
+ /** voltage of Phase L3 to N*/
217
+ voltageL3?: number;
218
+ activePowerLimitationW?: number;
219
+ strings?: EnyoDataBusInverterValuesV1String[];
220
+ };
221
+ }
222
+ export interface EnyoDataBusApplianceFlexibilityAnnouncementV1 extends EnyoDataBusMessage {
223
+ type: 'message';
224
+ message: EnyoDataBusMessageEnum.ApplianceFlexibilityAnnouncementV1;
225
+ /** ID of the appliance */
226
+ applianceId: string;
227
+ data: {
228
+ flexibility: {
229
+ kWh: number;
230
+ /** Defines until the kWh flexibility can be shifted. If for Example 10 kWh can be shifted until 2025-10-01T14:00:00 (current time 2025-10-01T10:00:00), the control can shift the 10 kWh in the next 4 hours */
231
+ availableUntilIsoTimestamp: string;
232
+ };
233
+ };
234
+ }
235
+ export interface EnyoDataBusChargingStartedV1 extends EnyoDataBusMessage {
236
+ type: 'message';
237
+ message: EnyoDataBusMessageEnum.ChargingStartedV1;
238
+ /** ID of the appliance (charger) that started the session */
239
+ applianceId: string;
240
+ data: {
241
+ /** Connector ID on the charge point (usually 1) */
242
+ connectorId: number;
243
+ /** OCPP transaction identifier */
244
+ transactionId: string;
245
+ /** used charging card */
246
+ chargingCardId?: string;
247
+ /** vehicle that's charging */
248
+ vehicleId?: string;
249
+ /** Meter reading at session start in Watt hours */
250
+ meterValueWh: number;
251
+ };
252
+ }
253
+ export interface EnyoDataBusChargingMeterValuesV1 extends EnyoDataBusMessage {
254
+ type: 'message';
255
+ message: EnyoDataBusMessageEnum.ChargingMeterValuesUpdateV1;
256
+ /** ID of the appliance (charger) providing the meter values */
257
+ applianceId: string;
258
+ data: {
259
+ /** Connector ID on the charge point */
260
+ connectorId: number;
261
+ /** OCPP transaction identifier */
262
+ transactionId: string;
263
+ /** Current cumulative meter reading in Watt hours */
264
+ meterValueWh: number;
265
+ /** Current charging power in Watts */
266
+ chargingPowerW: number;
267
+ /** Voltage on phase L1 */
268
+ voltageL1: number;
269
+ /** Voltage on phase L2 (optional for single-phase chargers) */
270
+ voltageL2?: number;
271
+ /** Voltage on phase L3 (optional for single/two-phase chargers) */
272
+ voltageL3?: number;
273
+ /** Electric vehicle state of charge in percent (if available) */
274
+ evStateOfChargePercent?: number;
275
+ /** Total energy delivered since session start in Watt hours */
276
+ energyDeliveredWh: number;
277
+ /** Context indicating when this meter value was taken */
278
+ context: EnyoChargingMeterValueContext;
279
+ };
280
+ }
281
+ export interface EnyoDataBusChargingStoppedV1 extends EnyoDataBusMessage {
282
+ type: 'message';
283
+ message: EnyoDataBusMessageEnum.ChargingStoppedV1;
284
+ /** ID of the appliance (charger) that handled the session */
285
+ applianceId: string;
286
+ data: {
287
+ /** Connector ID on the charge point */
288
+ connectorId: number;
289
+ /** OCPP transaction identifier */
290
+ transactionId: string;
291
+ /** Final meter reading at session end in Watt hours */
292
+ meterValueWh: number;
293
+ /** Total energy delivered during the session in Watt hours */
294
+ energyDeliveredWh: number;
295
+ /** Reason why the charging session was stopped */
296
+ stopReason: EnyoChargingStopReason;
297
+ };
298
+ }
299
+ export interface EnyoDataBusAggregatedStateValuesV1 extends EnyoDataBusMessage {
300
+ type: 'message';
301
+ message: EnyoDataBusMessageEnum.AggregatedStateUpdateV1;
302
+ clockId: string;
303
+ data: {
304
+ /** Total grid power from all appliances (in Watt). Negative: grid feed in, positive: grid consumption */
305
+ totalGridPowerW?: number;
306
+ /** Total grid feed in from all appliances (in Watt hours) */
307
+ totalGridFeedInWh?: number;
308
+ /** Total grid consumption from all appliances (in Watt hours) */
309
+ totalGridConsumptionWh?: number;
310
+ /** Total self consumption from all appliances (in Watt) */
311
+ totalSelfConsumptionW?: number;
312
+ /** Total self consumed energy from all appliances (in Watt hours) */
313
+ totalSelfConsumptionWh?: number;
314
+ /** Total battery power from all appliances (in Watt). Positive = consumption, negative = charging */
315
+ totalBatteryPowerW?: number;
316
+ /** Total PV production from all appliances (in Watt) */
317
+ totalPvPowerW?: number;
318
+ /** Total PV production from all appliances (in Watt hours) */
319
+ totalPvProductionWh?: number;
320
+ /** Total power consumption for heating from all appliances (in Watt hours) */
321
+ totalPowerConsumptionHeatingWh?: number;
322
+ /** Total power consumption for domestic hot water from all appliances (in Watt hours) */
323
+ totalPowerConsumptionDomesticHotWaterWh?: number;
324
+ /** Total heat generation for heating from all appliances (in Watt hours) */
325
+ totalHeatGenerationHeatingWh?: number;
326
+ /** Total heat generation for domestic hot water from all appliances (in Watt hours) */
327
+ totalHeatGenerationDomesticHotWaterWh?: number;
328
+ /** Array of all appliances with their individual values and current state */
329
+ appliances: Array<{
330
+ /** ID of the appliance */
331
+ applianceId: string;
332
+ /** Type of the appliance */
333
+ type: EnyoApplianceTypeEnum;
334
+ /** Current connection state of the appliance */
335
+ state: EnyoApplianceStateEnum;
336
+ /** ISO timestamp of the last update from this appliance */
337
+ lastUpdateIso?: string;
338
+ /** the current state values of the appliance */
339
+ values: EnyoAggregatedStateApplianceValues;
340
+ }>;
341
+ };
342
+ }
343
+ export interface EnyoDataBusPauseChargingV1 extends EnyoDataBusMessage {
344
+ type: 'message';
345
+ message: EnyoDataBusMessageEnum.PauseChargingV1;
346
+ data: {
347
+ applianceId: string;
348
+ };
349
+ }
350
+ export interface EnyoDataBusResumeChargingV1 extends EnyoDataBusMessage {
351
+ type: 'message';
352
+ message: EnyoDataBusMessageEnum.ResumeChargingV1;
353
+ data: {
354
+ applianceId: string;
355
+ maxChargingPowerKw: number;
356
+ };
357
+ }
358
+ export interface EnyoDataBusChangeChargingPowerV1 extends EnyoDataBusMessage {
359
+ type: 'message';
360
+ message: EnyoDataBusMessageEnum.ChangeChargingPowerV1;
361
+ data: {
362
+ applianceId: string;
363
+ maxChargingPowerKw: number;
364
+ };
365
+ }
366
+ /**
367
+ * Energy tariff update message for communicating electricity pricing information.
368
+ * Can be sent for specific appliances or system-wide tariff updates.
369
+ */
370
+ export interface EnyoDataBusEnergyTariffUpdateV1 extends EnyoDataBusMessage {
371
+ type: 'message';
372
+ message: EnyoDataBusMessageEnum.EnergyTariffUpdateV1;
373
+ /** Optional ID of the appliance this tariff applies to. If omitted, applies system-wide */
374
+ applianceId?: string;
375
+ data: {
376
+ /** Complete energy tariff information including pricing structure and validity */
377
+ tariffInfo: EnergyTariffInfo;
378
+ };
379
+ }
@@ -0,0 +1,75 @@
1
+ export var EnyoBatteryStateEnum;
2
+ (function (EnyoBatteryStateEnum) {
3
+ EnyoBatteryStateEnum["Off"] = "off";
4
+ EnyoBatteryStateEnum["Empty"] = "empty";
5
+ EnyoBatteryStateEnum["Discharging"] = "discharging";
6
+ EnyoBatteryStateEnum["Charging"] = "charging";
7
+ EnyoBatteryStateEnum["Full"] = "full";
8
+ EnyoBatteryStateEnum["Holding"] = "holding";
9
+ EnyoBatteryStateEnum["Testing"] = "testing";
10
+ })(EnyoBatteryStateEnum || (EnyoBatteryStateEnum = {}));
11
+ export var EnyoInverterStateEnum;
12
+ (function (EnyoInverterStateEnum) {
13
+ EnyoInverterStateEnum["Off"] = "off";
14
+ EnyoInverterStateEnum["Sleeping"] = "sleeping";
15
+ EnyoInverterStateEnum["Starting"] = "starting";
16
+ EnyoInverterStateEnum["Mppt"] = "mppt";
17
+ EnyoInverterStateEnum["Throttled"] = "throttled";
18
+ EnyoInverterStateEnum["ShuttingDown"] = "shutting-down";
19
+ EnyoInverterStateEnum["Fault"] = "fault";
20
+ EnyoInverterStateEnum["Standby"] = "standby";
21
+ })(EnyoInverterStateEnum || (EnyoInverterStateEnum = {}));
22
+ /**
23
+ * Charging meter value context defining when the measurement was taken
24
+ */
25
+ export var EnyoChargingMeterValueContext;
26
+ (function (EnyoChargingMeterValueContext) {
27
+ /** Meter value at the start of a transaction */
28
+ EnyoChargingMeterValueContext["TransactionBegin"] = "Transaction.Begin";
29
+ /** Meter value at the end of a transaction */
30
+ EnyoChargingMeterValueContext["TransactionEnd"] = "Transaction.End";
31
+ /** Periodic sample during charging */
32
+ EnyoChargingMeterValueContext["SamplePeriodic"] = "Sample.Periodic";
33
+ /** Clock-aligned sample */
34
+ EnyoChargingMeterValueContext["SampleClock"] = "Sample.Clock";
35
+ /** Triggered by external request */
36
+ EnyoChargingMeterValueContext["Trigger"] = "Trigger";
37
+ /** Sample taken when charging is interrupted */
38
+ EnyoChargingMeterValueContext["InterruptionBegin"] = "Interruption.Begin";
39
+ /** Sample taken when charging resumes */
40
+ EnyoChargingMeterValueContext["InterruptionEnd"] = "Interruption.End";
41
+ })(EnyoChargingMeterValueContext || (EnyoChargingMeterValueContext = {}));
42
+ /**
43
+ * Reason why a charging session was stopped
44
+ */
45
+ export var EnyoChargingStopReason;
46
+ (function (EnyoChargingStopReason) {
47
+ /** Session stopped by remote command */
48
+ EnyoChargingStopReason["Remote"] = "Remote";
49
+ /** Session stopped due to power loss */
50
+ EnyoChargingStopReason["PowerLoss"] = "PowerLoss";
51
+ /** Emergency stop was triggered */
52
+ EnyoChargingStopReason["EmergencyStop"] = "EmergencyStop";
53
+ /** Electric vehicle was disconnected */
54
+ EnyoChargingStopReason["EVDisconnected"] = "EVDisconnected";
55
+ /** Authorization was revoked */
56
+ EnyoChargingStopReason["DeAuthorized"] = "DeAuthorized";
57
+ /** Session stopped for other reasons */
58
+ EnyoChargingStopReason["Other"] = "Other";
59
+ })(EnyoChargingStopReason || (EnyoChargingStopReason = {}));
60
+ export var EnyoDataBusMessageEnum;
61
+ (function (EnyoDataBusMessageEnum) {
62
+ EnyoDataBusMessageEnum["InverterValuesUpdateV1"] = "InverterValuesUpdateV1";
63
+ EnyoDataBusMessageEnum["MeterValuesUpdateV1"] = "MeterValuesUpdateV1";
64
+ EnyoDataBusMessageEnum["BatteryValuesUpdateV1"] = "BatteryValuesUpdateV1";
65
+ EnyoDataBusMessageEnum["ApplianceFlexibilityAnnouncementV1"] = "ApplianceFlexibilityAnnouncementV1";
66
+ EnyoDataBusMessageEnum["HeatpumpValuesUpdateV1"] = "HeatpumpValuesUpdateV1";
67
+ EnyoDataBusMessageEnum["ChargingStartedV1"] = "ChargingStartedV1";
68
+ EnyoDataBusMessageEnum["ChargingMeterValuesUpdateV1"] = "ChargingMeterValuesUpdateV1";
69
+ EnyoDataBusMessageEnum["ChargingStoppedV1"] = "ChargingStoppedV1";
70
+ EnyoDataBusMessageEnum["PauseChargingV1"] = "PauseChargingV1";
71
+ EnyoDataBusMessageEnum["ResumeChargingV1"] = "ResumeChargingV1";
72
+ EnyoDataBusMessageEnum["ChangeChargingPowerV1"] = "ChangeChargingPowerV1";
73
+ EnyoDataBusMessageEnum["AggregatedStateUpdateV1"] = "AggregatedStateUpdateV1";
74
+ EnyoDataBusMessageEnum["EnergyTariffUpdateV1"] = "EnergyTariffUpdateV1";
75
+ })(EnyoDataBusMessageEnum || (EnyoDataBusMessageEnum = {}));
@@ -0,0 +1,63 @@
1
+ import { EnergyTariffInfo } from "./enyo-energy-tariff.js";
2
+ /**
3
+ * Request parameters for retrieving electricity prices
4
+ */
5
+ export interface ElectricityPriceRequest {
6
+ /** Start time for price data in ISO format */
7
+ fromIso: string;
8
+ /** End time for price data in ISO format */
9
+ untilIso: string;
10
+ /** Optional appliance ID to get appliance-specific pricing */
11
+ applianceId?: string;
12
+ }
13
+ /**
14
+ * Represents a single electricity price entry for a 15-minute interval
15
+ */
16
+ export interface ElectricityPriceEntry {
17
+ /** Start time of this 15-minute interval in ISO format */
18
+ timestampIso: string;
19
+ /** Price per kWh for electricity consumption during this interval */
20
+ consumptionPricePerKwh: number;
21
+ /** Optional price per kWh for grid feed-in during this interval */
22
+ feedInPricePerKwh?: number;
23
+ }
24
+ /**
25
+ * Response containing electricity prices for the requested time range
26
+ */
27
+ export interface ElectricityPriceResponse {
28
+ /** Array of price entries, always in 15-minute intervals */
29
+ priceEntries: ElectricityPriceEntry[];
30
+ /** Original data resolution that was used to generate these 15-minute intervals */
31
+ sourceType: 'constant' | '15min' | '1hr';
32
+ /** Currency code (ISO 4217, e.g., 'EUR', 'USD') */
33
+ currency: string;
34
+ /** Energy provider/supplier name */
35
+ provider: string;
36
+ /** Start time that was requested */
37
+ requestedFromIso: string;
38
+ /** End time that was requested */
39
+ requestedUntilIso: string;
40
+ /** Timestamp when this price data was last updated */
41
+ lastUpdatedIso: string;
42
+ /** Unique identifier of the tariff used for these prices */
43
+ tariffId: string;
44
+ }
45
+ /**
46
+ * Real-time update notification for electricity price changes
47
+ */
48
+ export interface ElectricityPriceUpdate {
49
+ /** Type of update that occurred */
50
+ updateType: 'tariff_changed' | 'prices_updated' | 'new_forecast';
51
+ /** Updated tariff information (if applicable) */
52
+ tariffInfo?: EnergyTariffInfo;
53
+ /** Time range affected by this update */
54
+ affectedFromIso: string;
55
+ /** End of time range affected by this update */
56
+ affectedUntilIso: string;
57
+ /** Timestamp when this update occurred */
58
+ updateTimestampIso: string;
59
+ /** Optional appliance ID if this update is appliance-specific */
60
+ applianceId?: string;
61
+ /** Optional reason for the update */
62
+ updateReason?: string;
63
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,70 @@
1
+ /**
2
+ * Defines the interval duration for time-based pricing
3
+ */
4
+ export type EnergyTariffInterval = '15min' | '1hr';
5
+ /**
6
+ * Represents a single price point in time-based tariffs
7
+ */
8
+ export interface EnergyTariffPricePoint {
9
+ /** Start time of this price period in ISO format */
10
+ timestampIso: string;
11
+ /** Price per kWh for consumption during this period */
12
+ pricePerKwh: number;
13
+ /** Optional price per kWh for grid feed-in during this period */
14
+ feedInPricePerKwh?: number;
15
+ }
16
+ /**
17
+ * Represents constant pricing structure
18
+ */
19
+ export interface EnergyTariffConstantPricing {
20
+ /** Fixed price per kWh for consumption */
21
+ pricePerKwh: number;
22
+ /** Optional fixed price per kWh for grid feed-in */
23
+ feedInPricePerKwh?: number;
24
+ /** Start of validity period in ISO format */
25
+ validFromIso: string;
26
+ /** End of validity period in ISO format (optional for indefinite validity) */
27
+ validUntilIso?: string;
28
+ }
29
+ /**
30
+ * Represents interval-based pricing structure (15min or 1hr intervals)
31
+ */
32
+ export interface EnergyTariffIntervalPricing {
33
+ /** Interval duration (15 minutes or 1 hour) */
34
+ interval: EnergyTariffInterval;
35
+ /** Array of price points for the specified intervals */
36
+ pricePoints: EnergyTariffPricePoint[];
37
+ /** Start date for which these intervals are valid in ISO format */
38
+ validFromIso: string;
39
+ /** End date for which these intervals are valid in ISO format */
40
+ validUntilIso: string;
41
+ }
42
+ /**
43
+ * Union type for different pricing data structures
44
+ */
45
+ export type EnergyTariffData = {
46
+ type: 'constant';
47
+ constantPricing: EnergyTariffConstantPricing;
48
+ } | {
49
+ type: 'interval';
50
+ intervalPricing: EnergyTariffIntervalPricing;
51
+ };
52
+ /**
53
+ * Represents complete energy tariff information
54
+ */
55
+ export interface EnergyTariffInfo {
56
+ /** Unique identifier for this tariff */
57
+ tariffId: string;
58
+ /** Human-readable name of the tariff */
59
+ tariffName: string;
60
+ /** Currency code (ISO 4217, e.g., 'EUR', 'USD') */
61
+ currency: string;
62
+ /** Tariff provider/supplier name */
63
+ provider: string;
64
+ /** Pricing data structure */
65
+ tariffData: EnergyTariffData;
66
+ /** Optional description of the tariff */
67
+ description?: string;
68
+ /** Timestamp when this tariff information was last updated */
69
+ lastUpdatedIso: string;
70
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,34 @@
1
+ export declare enum EnyoHeatpumpApplianceAvailableFeaturesEnum {
2
+ /** If the heatpump is capable of domestic hot water*/
3
+ DomesticHotWater = "DomesticHotWater",
4
+ /** If the heatpump is capable of domestic hot water boost to use more pv energy*/
5
+ DomesticHotWaterBoost = "DomesticHotWaterBoost",
6
+ /** If the heatpump has a heating rod*/
7
+ HeatingRod = "HeatingRod"
8
+ }
9
+ export declare enum EnyoHeatpumpApplianceModeEnum {
10
+ Idle = "Idle",
11
+ Heating = "Heating",
12
+ DomesticHotWater = "DomesticHotWater",
13
+ EmergencyOperation = "EmergencyOperation"
14
+ }
15
+ export interface EnyoHeatpumpApplianceDomesticHotWater {
16
+ index: number;
17
+ tankSizeLiter?: number;
18
+ targetTemperatureC: number;
19
+ hysteresisK?: number;
20
+ }
21
+ export interface EnyoHeatpumpApplianceCompressor {
22
+ index: number;
23
+ }
24
+ export interface EnyoHeatpumpApplianceHeatingCircuit {
25
+ index: number;
26
+ targetRoomTemperatureC?: number;
27
+ }
28
+ export interface EnyoHeatpumpApplianceMetadata {
29
+ availableFeatures: EnyoHeatpumpApplianceAvailableFeaturesEnum[];
30
+ mode?: EnyoHeatpumpApplianceModeEnum;
31
+ domesticHotWater?: EnyoHeatpumpApplianceDomesticHotWater[];
32
+ compressors?: EnyoHeatpumpApplianceCompressor[];
33
+ heatingCircuits?: EnyoHeatpumpApplianceHeatingCircuit[];
34
+ }
@@ -0,0 +1,16 @@
1
+ export var EnyoHeatpumpApplianceAvailableFeaturesEnum;
2
+ (function (EnyoHeatpumpApplianceAvailableFeaturesEnum) {
3
+ /** If the heatpump is capable of domestic hot water*/
4
+ EnyoHeatpumpApplianceAvailableFeaturesEnum["DomesticHotWater"] = "DomesticHotWater";
5
+ /** If the heatpump is capable of domestic hot water boost to use more pv energy*/
6
+ EnyoHeatpumpApplianceAvailableFeaturesEnum["DomesticHotWaterBoost"] = "DomesticHotWaterBoost";
7
+ /** If the heatpump has a heating rod*/
8
+ EnyoHeatpumpApplianceAvailableFeaturesEnum["HeatingRod"] = "HeatingRod";
9
+ })(EnyoHeatpumpApplianceAvailableFeaturesEnum || (EnyoHeatpumpApplianceAvailableFeaturesEnum = {}));
10
+ export var EnyoHeatpumpApplianceModeEnum;
11
+ (function (EnyoHeatpumpApplianceModeEnum) {
12
+ EnyoHeatpumpApplianceModeEnum["Idle"] = "Idle";
13
+ EnyoHeatpumpApplianceModeEnum["Heating"] = "Heating";
14
+ EnyoHeatpumpApplianceModeEnum["DomesticHotWater"] = "DomesticHotWater";
15
+ EnyoHeatpumpApplianceModeEnum["EmergencyOperation"] = "EmergencyOperation";
16
+ })(EnyoHeatpumpApplianceModeEnum || (EnyoHeatpumpApplianceModeEnum = {}));
@@ -0,0 +1,3 @@
1
+ export interface EnyoInverterApplianceMetadata {
2
+ maxPvProductionW?: number;
3
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,10 @@
1
+ export declare enum EnyoMeterApplianceAvailableFeaturesEnum {
2
+ /** If the meter can get the live power consumption in Watt */
3
+ LivePowerConsumption = "LivePowerConsumption",
4
+ /** If the meter can read the current meter values in Wh */
5
+ MeterValues = "MeterValues"
6
+ }
7
+ export interface EnyoMeterAppliance {
8
+ availableFeatures: EnyoMeterApplianceAvailableFeaturesEnum[];
9
+ meterNumber?: string;
10
+ }
@@ -0,0 +1,7 @@
1
+ export var EnyoMeterApplianceAvailableFeaturesEnum;
2
+ (function (EnyoMeterApplianceAvailableFeaturesEnum) {
3
+ /** If the meter can get the live power consumption in Watt */
4
+ EnyoMeterApplianceAvailableFeaturesEnum["LivePowerConsumption"] = "LivePowerConsumption";
5
+ /** If the meter can read the current meter values in Wh */
6
+ EnyoMeterApplianceAvailableFeaturesEnum["MeterValues"] = "MeterValues";
7
+ })(EnyoMeterApplianceAvailableFeaturesEnum || (EnyoMeterApplianceAvailableFeaturesEnum = {}));