@camstack/types 0.1.40 → 0.1.41

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 (296) hide show
  1. package/dist/addon/base-addon.d.ts +12 -0
  2. package/dist/addon/base-addon.d.ts.map +1 -1
  3. package/dist/addon/durable-state.d.ts +33 -0
  4. package/dist/addon/durable-state.d.ts.map +1 -0
  5. package/dist/capabilities/accessories.cap.d.ts +56 -8
  6. package/dist/capabilities/accessories.cap.d.ts.map +1 -1
  7. package/dist/capabilities/advanced-notifier.cap.d.ts +4 -0
  8. package/dist/capabilities/advanced-notifier.cap.d.ts.map +1 -1
  9. package/dist/capabilities/air-quality-sensor.cap.d.ts +56 -0
  10. package/dist/capabilities/air-quality-sensor.cap.d.ts.map +1 -0
  11. package/dist/capabilities/alarm-panel.cap.d.ts +154 -0
  12. package/dist/capabilities/alarm-panel.cap.d.ts.map +1 -0
  13. package/dist/capabilities/ambient-light-sensor.cap.d.ts +39 -0
  14. package/dist/capabilities/ambient-light-sensor.cap.d.ts.map +1 -0
  15. package/dist/capabilities/automation-control.cap.d.ts +65 -0
  16. package/dist/capabilities/automation-control.cap.d.ts.map +1 -0
  17. package/dist/capabilities/battery.cap.d.ts +30 -1
  18. package/dist/capabilities/battery.cap.d.ts.map +1 -1
  19. package/dist/capabilities/binary.cap.d.ts +40 -0
  20. package/dist/capabilities/binary.cap.d.ts.map +1 -0
  21. package/dist/capabilities/brightness.cap.d.ts +3 -2
  22. package/dist/capabilities/brightness.cap.d.ts.map +1 -1
  23. package/dist/capabilities/broker.cap.d.ts +291 -0
  24. package/dist/capabilities/broker.cap.d.ts.map +1 -0
  25. package/dist/capabilities/button.cap.d.ts +27 -0
  26. package/dist/capabilities/button.cap.d.ts.map +1 -0
  27. package/dist/capabilities/camera-credentials.cap.d.ts +1 -0
  28. package/dist/capabilities/camera-credentials.cap.d.ts.map +1 -1
  29. package/dist/capabilities/camera-streams.cap.d.ts +147 -10
  30. package/dist/capabilities/camera-streams.cap.d.ts.map +1 -1
  31. package/dist/capabilities/capability-definition.d.ts +15 -0
  32. package/dist/capabilities/capability-definition.d.ts.map +1 -1
  33. package/dist/capabilities/carbon-monoxide.cap.d.ts +33 -0
  34. package/dist/capabilities/carbon-monoxide.cap.d.ts.map +1 -0
  35. package/dist/capabilities/climate-control.cap.d.ts +183 -0
  36. package/dist/capabilities/climate-control.cap.d.ts.map +1 -0
  37. package/dist/capabilities/color.cap.d.ts +186 -0
  38. package/dist/capabilities/color.cap.d.ts.map +1 -0
  39. package/dist/capabilities/connectivity.cap.d.ts +37 -0
  40. package/dist/capabilities/connectivity.cap.d.ts.map +1 -0
  41. package/dist/capabilities/consumables.cap.d.ts +105 -0
  42. package/dist/capabilities/consumables.cap.d.ts.map +1 -0
  43. package/dist/capabilities/contact.cap.d.ts +41 -0
  44. package/dist/capabilities/contact.cap.d.ts.map +1 -0
  45. package/dist/capabilities/control.cap.d.ts +167 -0
  46. package/dist/capabilities/control.cap.d.ts.map +1 -0
  47. package/dist/capabilities/cover.cap.d.ts +104 -0
  48. package/dist/capabilities/cover.cap.d.ts.map +1 -0
  49. package/dist/capabilities/custom-actions.d.ts +6 -0
  50. package/dist/capabilities/custom-actions.d.ts.map +1 -1
  51. package/dist/capabilities/decoder.cap.d.ts +1 -1
  52. package/dist/capabilities/device-adoption.cap.d.ts +203 -0
  53. package/dist/capabilities/device-adoption.cap.d.ts.map +1 -0
  54. package/dist/capabilities/device-discovery.cap.d.ts +44 -143
  55. package/dist/capabilities/device-discovery.cap.d.ts.map +1 -1
  56. package/dist/capabilities/device-manager.cap.d.ts +469 -0
  57. package/dist/capabilities/device-manager.cap.d.ts.map +1 -1
  58. package/dist/capabilities/device-ops.cap.d.ts +30 -0
  59. package/dist/capabilities/device-ops.cap.d.ts.map +1 -1
  60. package/dist/capabilities/device-provider.cap.d.ts +36 -0
  61. package/dist/capabilities/device-provider.cap.d.ts.map +1 -1
  62. package/dist/capabilities/device-status.cap.d.ts +1 -0
  63. package/dist/capabilities/device-status.cap.d.ts.map +1 -1
  64. package/dist/capabilities/doorbell.cap.d.ts +1 -0
  65. package/dist/capabilities/doorbell.cap.d.ts.map +1 -1
  66. package/dist/capabilities/enum-sensor.cap.d.ts +60 -0
  67. package/dist/capabilities/enum-sensor.cap.d.ts.map +1 -0
  68. package/dist/capabilities/event-emitter.cap.d.ts +79 -0
  69. package/dist/capabilities/event-emitter.cap.d.ts.map +1 -0
  70. package/dist/capabilities/fan-control.cap.d.ts +100 -0
  71. package/dist/capabilities/fan-control.cap.d.ts.map +1 -0
  72. package/dist/capabilities/feature-probe.cap.d.ts +1 -0
  73. package/dist/capabilities/feature-probe.cap.d.ts.map +1 -1
  74. package/dist/capabilities/flood.cap.d.ts +37 -0
  75. package/dist/capabilities/flood.cap.d.ts.map +1 -0
  76. package/dist/capabilities/gas.cap.d.ts +34 -0
  77. package/dist/capabilities/gas.cap.d.ts.map +1 -0
  78. package/dist/capabilities/humidifier.cap.d.ts +82 -0
  79. package/dist/capabilities/humidifier.cap.d.ts.map +1 -0
  80. package/dist/capabilities/humidity-sensor.cap.d.ts +43 -0
  81. package/dist/capabilities/humidity-sensor.cap.d.ts.map +1 -0
  82. package/dist/capabilities/image.cap.d.ts +44 -0
  83. package/dist/capabilities/image.cap.d.ts.map +1 -0
  84. package/dist/capabilities/index.d.ts +93 -12
  85. package/dist/capabilities/index.d.ts.map +1 -1
  86. package/dist/capabilities/integrations.cap.d.ts +12 -0
  87. package/dist/capabilities/integrations.cap.d.ts.map +1 -1
  88. package/dist/capabilities/intercom.cap.d.ts +49 -9
  89. package/dist/capabilities/intercom.cap.d.ts.map +1 -1
  90. package/dist/capabilities/lawn-mower-control.cap.d.ts +83 -0
  91. package/dist/capabilities/lawn-mower-control.cap.d.ts.map +1 -0
  92. package/dist/capabilities/lock-control.cap.d.ts +92 -0
  93. package/dist/capabilities/lock-control.cap.d.ts.map +1 -0
  94. package/dist/capabilities/media-player.cap.d.ts +201 -0
  95. package/dist/capabilities/media-player.cap.d.ts.map +1 -0
  96. package/dist/capabilities/motion-trigger.cap.d.ts +1 -0
  97. package/dist/capabilities/motion-trigger.cap.d.ts.map +1 -1
  98. package/dist/capabilities/motion-zones.cap.d.ts +1 -0
  99. package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
  100. package/dist/capabilities/native-object-detection.cap.d.ts +1 -0
  101. package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
  102. package/dist/capabilities/network-quality.cap.d.ts +5 -0
  103. package/dist/capabilities/network-quality.cap.d.ts.map +1 -1
  104. package/dist/capabilities/notifier.cap.d.ts +173 -0
  105. package/dist/capabilities/notifier.cap.d.ts.map +1 -0
  106. package/dist/capabilities/numeric-sensor.cap.d.ts +52 -0
  107. package/dist/capabilities/numeric-sensor.cap.d.ts.map +1 -0
  108. package/dist/capabilities/osd.cap.d.ts +1 -0
  109. package/dist/capabilities/osd.cap.d.ts.map +1 -1
  110. package/dist/capabilities/pipeline-analytics.cap.d.ts +69 -22
  111. package/dist/capabilities/pipeline-analytics.cap.d.ts.map +1 -1
  112. package/dist/capabilities/pipeline-executor.cap.d.ts +2 -2
  113. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +1 -1
  114. package/dist/capabilities/pipeline-runner.cap.d.ts +2 -2
  115. package/dist/capabilities/platform-probe.cap.d.ts +25 -0
  116. package/dist/capabilities/platform-probe.cap.d.ts.map +1 -1
  117. package/dist/capabilities/power-meter.cap.d.ts +65 -0
  118. package/dist/capabilities/power-meter.cap.d.ts.map +1 -0
  119. package/dist/capabilities/presence.cap.d.ts +79 -0
  120. package/dist/capabilities/presence.cap.d.ts.map +1 -0
  121. package/dist/capabilities/pressure-sensor.cap.d.ts +43 -0
  122. package/dist/capabilities/pressure-sensor.cap.d.ts.map +1 -0
  123. package/dist/capabilities/privacy-mask.cap.d.ts +1 -0
  124. package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -1
  125. package/dist/capabilities/ptz-autotrack.cap.d.ts +1 -0
  126. package/dist/capabilities/ptz-autotrack.cap.d.ts.map +1 -1
  127. package/dist/capabilities/ptz.cap.d.ts +1 -0
  128. package/dist/capabilities/ptz.cap.d.ts.map +1 -1
  129. package/dist/capabilities/reboot.cap.d.ts +1 -0
  130. package/dist/capabilities/reboot.cap.d.ts.map +1 -1
  131. package/dist/capabilities/recording.cap.d.ts +238 -32
  132. package/dist/capabilities/recording.cap.d.ts.map +1 -1
  133. package/dist/capabilities/restreamer.cap.d.ts +2 -2
  134. package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
  135. package/dist/capabilities/schemas/streaming-shared.d.ts +64 -1
  136. package/dist/capabilities/schemas/streaming-shared.d.ts.map +1 -1
  137. package/dist/capabilities/script-runner.cap.d.ts +62 -0
  138. package/dist/capabilities/script-runner.cap.d.ts.map +1 -0
  139. package/dist/capabilities/settings-store.cap.d.ts +25 -0
  140. package/dist/capabilities/settings-store.cap.d.ts.map +1 -1
  141. package/dist/capabilities/smoke.cap.d.ts +38 -0
  142. package/dist/capabilities/smoke.cap.d.ts.map +1 -0
  143. package/dist/capabilities/snapshot-provider.cap.d.ts +1 -1
  144. package/dist/capabilities/snapshot.cap.d.ts +1 -0
  145. package/dist/capabilities/snapshot.cap.d.ts.map +1 -1
  146. package/dist/capabilities/storage-evictable.cap.d.ts +54 -0
  147. package/dist/capabilities/storage-evictable.cap.d.ts.map +1 -0
  148. package/dist/capabilities/storage-provider.cap.d.ts +31 -186
  149. package/dist/capabilities/storage-provider.cap.d.ts.map +1 -1
  150. package/dist/capabilities/storage.cap.d.ts +35 -226
  151. package/dist/capabilities/storage.cap.d.ts.map +1 -1
  152. package/dist/capabilities/stream-broker.cap.d.ts +309 -25
  153. package/dist/capabilities/stream-broker.cap.d.ts.map +1 -1
  154. package/dist/capabilities/stream-catalog.cap.d.ts +3 -0
  155. package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -1
  156. package/dist/capabilities/stream-params.cap.d.ts +27 -26
  157. package/dist/capabilities/stream-params.cap.d.ts.map +1 -1
  158. package/dist/capabilities/switch.cap.d.ts +1 -0
  159. package/dist/capabilities/switch.cap.d.ts.map +1 -1
  160. package/dist/capabilities/tamper.cap.d.ts +33 -0
  161. package/dist/capabilities/tamper.cap.d.ts.map +1 -0
  162. package/dist/capabilities/temperature-sensor.cap.d.ts +51 -0
  163. package/dist/capabilities/temperature-sensor.cap.d.ts.map +1 -0
  164. package/dist/capabilities/update.cap.d.ts +49 -0
  165. package/dist/capabilities/update.cap.d.ts.map +1 -0
  166. package/dist/capabilities/vacuum-control.cap.d.ts +229 -0
  167. package/dist/capabilities/vacuum-control.cap.d.ts.map +1 -0
  168. package/dist/capabilities/valve.cap.d.ts +93 -0
  169. package/dist/capabilities/valve.cap.d.ts.map +1 -0
  170. package/dist/capabilities/vibration.cap.d.ts +33 -0
  171. package/dist/capabilities/vibration.cap.d.ts.map +1 -0
  172. package/dist/capabilities/water-heater.cap.d.ts +78 -0
  173. package/dist/capabilities/water-heater.cap.d.ts.map +1 -0
  174. package/dist/capabilities/weather.cap.d.ts +76 -0
  175. package/dist/capabilities/weather.cap.d.ts.map +1 -0
  176. package/dist/capabilities/webrtc-session.cap.d.ts +95 -1
  177. package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
  178. package/dist/constants.d.ts +0 -2
  179. package/dist/constants.d.ts.map +1 -1
  180. package/dist/device/base-device-provider.d.ts +11 -0
  181. package/dist/device/base-device-provider.d.ts.map +1 -1
  182. package/dist/device/base-device.d.ts +52 -0
  183. package/dist/device/base-device.d.ts.map +1 -1
  184. package/dist/device/device-context.d.ts +29 -0
  185. package/dist/device/device-context.d.ts.map +1 -1
  186. package/dist/device/device-link-transform.d.ts +6 -0
  187. package/dist/device/device-link-transform.d.ts.map +1 -0
  188. package/dist/device/device-management.d.ts +116 -4
  189. package/dist/device/device-management.d.ts.map +1 -1
  190. package/dist/device/device-type.d.ts +214 -3
  191. package/dist/device/device-type.d.ts.map +1 -1
  192. package/dist/device/device.d.ts +25 -0
  193. package/dist/device/device.d.ts.map +1 -1
  194. package/dist/device/index.d.ts +5 -1
  195. package/dist/device/index.d.ts.map +1 -1
  196. package/dist/device/path-util.d.ts +13 -0
  197. package/dist/device/path-util.d.ts.map +1 -0
  198. package/dist/device/schema-fields.d.ts +12 -0
  199. package/dist/device/schema-fields.d.ts.map +1 -0
  200. package/dist/device/source-info.d.ts +87 -0
  201. package/dist/device/source-info.d.ts.map +1 -0
  202. package/dist/device/system-mirror.d.ts +6 -2
  203. package/dist/device/system-mirror.d.ts.map +1 -1
  204. package/dist/encode-profile.d.ts +126 -0
  205. package/dist/encode-profile.d.ts.map +1 -0
  206. package/dist/enums/event-category.d.ts +64 -6
  207. package/dist/enums/event-category.d.ts.map +1 -1
  208. package/dist/generated/addon-api.d.ts +12345 -8129
  209. package/dist/generated/addon-api.d.ts.map +1 -1
  210. package/dist/generated/cap-status-types.d.ts +85 -1
  211. package/dist/generated/cap-status-types.d.ts.map +1 -1
  212. package/dist/generated/capability-router-map.d.ts +133 -7
  213. package/dist/generated/capability-router-map.d.ts.map +1 -1
  214. package/dist/generated/device-local-state.d.ts +117 -0
  215. package/dist/generated/device-local-state.d.ts.map +1 -1
  216. package/dist/generated/device-proxy.d.ts +124 -5
  217. package/dist/generated/device-proxy.d.ts.map +1 -1
  218. package/dist/generated/method-access-map.d.ts +1 -1
  219. package/dist/generated/method-access-map.d.ts.map +1 -1
  220. package/dist/generated/provider-kind-map.d.ts +1 -1
  221. package/dist/generated/provider-kind-map.d.ts.map +1 -1
  222. package/dist/generated/system-proxy.d.ts +9 -7
  223. package/dist/generated/system-proxy.d.ts.map +1 -1
  224. package/dist/{index-DnpdVFKv.js → index-BSA_TBea.js} +4170 -728
  225. package/dist/index-BSA_TBea.js.map +1 -0
  226. package/dist/{index-C2zzIDdX.mjs → index-Bpj3ScIH.mjs} +4563 -1121
  227. package/dist/index-Bpj3ScIH.mjs.map +1 -0
  228. package/dist/index.d.ts +21 -3
  229. package/dist/index.d.ts.map +1 -1
  230. package/dist/index.js +1323 -116
  231. package/dist/index.js.map +1 -1
  232. package/dist/index.mjs +1637 -430
  233. package/dist/index.mjs.map +1 -1
  234. package/dist/interfaces/addon-data-plane.d.ts +76 -0
  235. package/dist/interfaces/addon-data-plane.d.ts.map +1 -0
  236. package/dist/interfaces/addon.d.ts +60 -0
  237. package/dist/interfaces/addon.d.ts.map +1 -1
  238. package/dist/interfaces/advanced-notifier.d.ts +4 -0
  239. package/dist/interfaces/advanced-notifier.d.ts.map +1 -1
  240. package/dist/interfaces/capability.d.ts +42 -1
  241. package/dist/interfaces/capability.d.ts.map +1 -1
  242. package/dist/interfaces/config-ui.d.ts +70 -6
  243. package/dist/interfaces/config-ui.d.ts.map +1 -1
  244. package/dist/interfaces/device-capabilities/camera.d.ts +2 -1
  245. package/dist/interfaces/device-capabilities/camera.d.ts.map +1 -1
  246. package/dist/interfaces/event-bus.d.ts +49 -3
  247. package/dist/interfaces/event-bus.d.ts.map +1 -1
  248. package/dist/interfaces/kernel-abstractions.d.ts +10 -1
  249. package/dist/interfaces/kernel-abstractions.d.ts.map +1 -1
  250. package/dist/interfaces/network-quality.d.ts +8 -0
  251. package/dist/interfaces/network-quality.d.ts.map +1 -1
  252. package/dist/interfaces/pipeline-executor-capability.d.ts +2 -2
  253. package/dist/interfaces/pipeline-orchestrator-capability.d.ts +2 -1
  254. package/dist/interfaces/pipeline-orchestrator-capability.d.ts.map +1 -1
  255. package/dist/interfaces/pipeline-runner-capability.d.ts +7 -0
  256. package/dist/interfaces/pipeline-runner-capability.d.ts.map +1 -1
  257. package/dist/interfaces/recording-config.d.ts +91 -0
  258. package/dist/interfaces/recording-config.d.ts.map +1 -0
  259. package/dist/interfaces/rtp-egress.d.ts +2 -3
  260. package/dist/interfaces/rtp-egress.d.ts.map +1 -1
  261. package/dist/interfaces/storage-location-declaration.d.ts +34 -0
  262. package/dist/interfaces/storage-location-declaration.d.ts.map +1 -0
  263. package/dist/interfaces/storage-location.d.ts +18 -74
  264. package/dist/interfaces/storage-location.d.ts.map +1 -1
  265. package/dist/interfaces/storage.d.ts +15 -4
  266. package/dist/interfaces/storage.d.ts.map +1 -1
  267. package/dist/interfaces/stream-broker.d.ts +18 -3
  268. package/dist/interfaces/stream-broker.d.ts.map +1 -1
  269. package/dist/interfaces/timezones.d.ts +59 -0
  270. package/dist/interfaces/timezones.d.ts.map +1 -0
  271. package/dist/node.d.ts +3 -0
  272. package/dist/node.d.ts.map +1 -1
  273. package/dist/node.js +50 -8
  274. package/dist/node.js.map +1 -1
  275. package/dist/node.mjs +51 -9
  276. package/dist/node.mjs.map +1 -1
  277. package/dist/storage/filesystem-storage-provider.d.ts +2 -1
  278. package/dist/storage/filesystem-storage-provider.d.ts.map +1 -1
  279. package/dist/stream-selection.d.ts +85 -0
  280. package/dist/stream-selection.d.ts.map +1 -0
  281. package/dist/types/detection.d.ts +3 -3
  282. package/dist/types/io.d.ts +1 -1
  283. package/dist/types/io.d.ts.map +1 -1
  284. package/dist/util/location-match.d.ts +15 -0
  285. package/dist/util/location-match.d.ts.map +1 -0
  286. package/dist/utils/canonical-hash.d.ts +20 -0
  287. package/dist/utils/canonical-hash.d.ts.map +1 -0
  288. package/dist/utils/export-reconciler.d.ts +101 -0
  289. package/dist/utils/export-reconciler.d.ts.map +1 -0
  290. package/dist/utils/sleep.d.ts +36 -0
  291. package/dist/utils/sleep.d.ts.map +1 -0
  292. package/package.json +1 -1
  293. package/dist/capabilities/recording-engine.cap.d.ts +0 -477
  294. package/dist/capabilities/recording-engine.cap.d.ts.map +0 -1
  295. package/dist/index-C2zzIDdX.mjs.map +0 -1
  296. package/dist/index-DnpdVFKv.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"switch.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/switch.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;iBAI7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;IAuB3B;;;;OAIG;;;;;;;;;;;;;;;;;CAWoC,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
1
+ {"version":3,"file":"switch.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/switch.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;iBAI7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAwB3B;;;;OAIG;;;;;;;;;;;;;;;;;CAWoC,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Tamper / case-open detection sensor. Drives Home Assistant
6
+ * `binary_sensor` entries with `device_class: tamper`. Push-driven.
7
+ */
8
+ export declare const TamperStatusSchema: z.ZodObject<{
9
+ tampered: z.ZodBoolean;
10
+ lastChangedAt: z.ZodNumber;
11
+ }, z.core.$strip>;
12
+ export type TamperStatus = z.infer<typeof TamperStatusSchema>;
13
+ export declare const tamperCapability: {
14
+ readonly name: "tamper";
15
+ readonly scope: "device";
16
+ readonly deviceNative: true;
17
+ readonly mode: "singleton";
18
+ readonly deviceTypes: readonly [DeviceType.Sensor];
19
+ readonly methods: {};
20
+ readonly status: {
21
+ readonly schema: z.ZodObject<{
22
+ tampered: z.ZodBoolean;
23
+ lastChangedAt: z.ZodNumber;
24
+ }, z.core.$strip>;
25
+ readonly kind: "push";
26
+ };
27
+ readonly runtimeState: z.ZodObject<{
28
+ tampered: z.ZodBoolean;
29
+ lastChangedAt: z.ZodNumber;
30
+ }, z.core.$strip>;
31
+ };
32
+ export type ITamperProvider = InferProvider<typeof tamperCapability>;
33
+ //# sourceMappingURL=tamper.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tamper.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/tamper.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;iBAM7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;CAYY,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Single-metric temperature reading. Drives Home Assistant `sensor`
6
+ * entries with `device_class: temperature` and any future native
7
+ * thermometer.
8
+ *
9
+ * Unit normalisation: providers convert to Celsius before storing.
10
+ * The slice value is always Celsius so cross-cap aggregators
11
+ * (climate-control's `currentTemp`, energy analytics) can compose
12
+ * without per-source unit fixups. The canonical display unit (`°C`) is
13
+ * a descriptor constant in the UI (ROLE_DESCRIPTOR), not stored in
14
+ * `sourceInfo`.
15
+ *
16
+ * Status `lastFetchedAt` lets staleness-aware consumers detect a
17
+ * frozen feed (provider hung) distinct from a "temperature hasn't
18
+ * changed" steady state.
19
+ */
20
+ export declare const TemperatureSensorStatusSchema: z.ZodObject<{
21
+ celsius: z.ZodNumber;
22
+ lastFetchedAt: z.ZodNumber;
23
+ unit: z.ZodOptional<z.ZodString>;
24
+ precision: z.ZodOptional<z.ZodNumber>;
25
+ }, z.core.$strip>;
26
+ export type TemperatureSensorStatus = z.infer<typeof TemperatureSensorStatusSchema>;
27
+ export declare const temperatureSensorCapability: {
28
+ readonly name: "temperature-sensor";
29
+ readonly scope: "device";
30
+ readonly deviceNative: true;
31
+ readonly mode: "singleton";
32
+ readonly deviceTypes: readonly [DeviceType.Sensor, DeviceType.Thermostat];
33
+ readonly methods: {};
34
+ readonly status: {
35
+ readonly schema: z.ZodObject<{
36
+ celsius: z.ZodNumber;
37
+ lastFetchedAt: z.ZodNumber;
38
+ unit: z.ZodOptional<z.ZodString>;
39
+ precision: z.ZodOptional<z.ZodNumber>;
40
+ }, z.core.$strip>;
41
+ readonly kind: "push";
42
+ };
43
+ readonly runtimeState: z.ZodObject<{
44
+ celsius: z.ZodNumber;
45
+ lastFetchedAt: z.ZodNumber;
46
+ unit: z.ZodOptional<z.ZodString>;
47
+ precision: z.ZodOptional<z.ZodNumber>;
48
+ }, z.core.$strip>;
49
+ };
50
+ export type ITemperatureSensorProvider = InferProvider<typeof temperatureSensorCapability>;
51
+ //# sourceMappingURL=temperature-sensor.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"temperature-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/temperature-sensor.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,6BAA6B;;;;;iBAexC,CAAA;AAEF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEnF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;CAYC,CAAA;AAEzC,MAAM,MAAM,0BAA0B,GAAG,aAAa,CAAC,OAAO,2BAA2B,CAAC,CAAA"}
@@ -0,0 +1,49 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Firmware/software update entity. Installed on a `DeviceType.Update` device.
6
+ * Surfaces current vs available version, whether an update is available, the
7
+ * update state, and an install action. Read-mostly and POLL-driven: backends
8
+ * such as the Homematic CCU do not broadcast firmware-descriptor changes, so
9
+ * the client re-queries `getStatus` (which reads the live descriptor) rather
10
+ * than relying on push delivery. `installUpdate` triggers the install
11
+ * (best-effort — providers throw if the backend rejects it).
12
+ */
13
+ export declare const UpdateStatusSchema: z.ZodObject<{
14
+ currentVersion: z.ZodNullable<z.ZodString>;
15
+ availableVersion: z.ZodNullable<z.ZodString>;
16
+ updatable: z.ZodBoolean;
17
+ state: z.ZodNullable<z.ZodString>;
18
+ inProgress: z.ZodBoolean;
19
+ }, z.core.$strip>;
20
+ export type UpdateStatus = z.infer<typeof UpdateStatusSchema>;
21
+ export declare const updateCapability: {
22
+ readonly name: "update";
23
+ readonly scope: "device";
24
+ readonly deviceNative: true;
25
+ readonly mode: "singleton";
26
+ readonly deviceTypes: readonly [DeviceType.Update];
27
+ readonly methods: {
28
+ readonly installUpdate: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodVoid, "mutation">;
29
+ };
30
+ readonly status: {
31
+ readonly schema: z.ZodObject<{
32
+ currentVersion: z.ZodNullable<z.ZodString>;
33
+ availableVersion: z.ZodNullable<z.ZodString>;
34
+ updatable: z.ZodBoolean;
35
+ state: z.ZodNullable<z.ZodString>;
36
+ inProgress: z.ZodBoolean;
37
+ }, z.core.$strip>;
38
+ readonly kind: "poll";
39
+ };
40
+ readonly runtimeState: z.ZodObject<{
41
+ currentVersion: z.ZodNullable<z.ZodString>;
42
+ availableVersion: z.ZodNullable<z.ZodString>;
43
+ updatable: z.ZodBoolean;
44
+ state: z.ZodNullable<z.ZodString>;
45
+ inProgress: z.ZodBoolean;
46
+ }, z.core.$strip>;
47
+ };
48
+ export type IUpdateProvider = InferProvider<typeof updateCapability>;
49
+ //# sourceMappingURL=update.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/update.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;GAQG;AACH,eAAO,MAAM,kBAAkB;;;;;;iBAY7B,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;CAWY,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
@@ -0,0 +1,229 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Robot-vacuum cap. Models HA `vacuum.*` entities — anything with a
6
+ * cleaning lifecycle plus a return-to-base / locate surface and an
7
+ * optional fan-speed selector.
8
+ *
9
+ * State follows HA's canonical vacuum lifecycle: `idle` / `cleaning` /
10
+ * `paused` / `returning` / `docked` / `error`. `batteryLevel`
11
+ * (0..100) is nullable — some vacuums don't report a battery
12
+ * percentage. `fanSpeed` is the current speed token (provider-verbatim,
13
+ * e.g. `'standard'` / `'turbo'`) and `availableFanSpeeds` lists the
14
+ * tokens the hardware accepts so the UI renders only supported choices.
15
+ *
16
+ * The `setFanSpeed` method takes the bare `speed` token — the provider
17
+ * validates it against the vacuum's own list. `locate` triggers the
18
+ * find-me chirp; `returnToBase` sends it home.
19
+ *
20
+ * Consumable / waste tanks: `cleanWater` / `dirtyWater` / `detergent` /
21
+ * `dustBin` each carry a nullable `{ level (0..100 %), status ('ok' |
22
+ * 'low' | 'full') }` reading. Native providers (e.g. Dreame, Roborock)
23
+ * SHOULD populate whichever tanks the hardware has — leave a field `null`
24
+ * only when the device has no such tank at all, and use a `TankStatus`
25
+ * with both inner fields `null` when the tank exists but its level is
26
+ * currently unknown. HA `vacuum.*` entities expose no per-tank telemetry,
27
+ * so the HA provider leaves all four `null`.
28
+ */
29
+ export declare const VacuumStateSchema: z.ZodEnum<{
30
+ error: "error";
31
+ idle: "idle";
32
+ paused: "paused";
33
+ docked: "docked";
34
+ cleaning: "cleaning";
35
+ returning: "returning";
36
+ }>;
37
+ export type VacuumState = z.infer<typeof VacuumStateSchema>;
38
+ /**
39
+ * One consumable / waste tank on a robot vacuum (clean-water, dirty-water,
40
+ * detergent or dust-bin). A tank can report a numeric fill `level` (0..100),
41
+ * a discrete `status` (binary-style hardware), or both. Both `null` means the
42
+ * level is currently unknown; the OWNING field being `null` means the
43
+ * hardware has no such tank at all.
44
+ */
45
+ export declare const TankStatusSchema: z.ZodObject<{
46
+ level: z.ZodNullable<z.ZodNumber>;
47
+ status: z.ZodNullable<z.ZodEnum<{
48
+ ok: "ok";
49
+ full: "full";
50
+ low: "low";
51
+ }>>;
52
+ }, z.core.$strip>;
53
+ export type TankStatus = z.infer<typeof TankStatusSchema>;
54
+ export declare const VacuumControlStatusSchema: z.ZodObject<{
55
+ state: z.ZodEnum<{
56
+ error: "error";
57
+ idle: "idle";
58
+ paused: "paused";
59
+ docked: "docked";
60
+ cleaning: "cleaning";
61
+ returning: "returning";
62
+ }>;
63
+ batteryLevel: z.ZodNullable<z.ZodNumber>;
64
+ fanSpeed: z.ZodNullable<z.ZodString>;
65
+ availableFanSpeeds: z.ZodArray<z.ZodString>;
66
+ cleanWater: z.ZodNullable<z.ZodObject<{
67
+ level: z.ZodNullable<z.ZodNumber>;
68
+ status: z.ZodNullable<z.ZodEnum<{
69
+ ok: "ok";
70
+ full: "full";
71
+ low: "low";
72
+ }>>;
73
+ }, z.core.$strip>>;
74
+ dirtyWater: z.ZodNullable<z.ZodObject<{
75
+ level: z.ZodNullable<z.ZodNumber>;
76
+ status: z.ZodNullable<z.ZodEnum<{
77
+ ok: "ok";
78
+ full: "full";
79
+ low: "low";
80
+ }>>;
81
+ }, z.core.$strip>>;
82
+ detergent: z.ZodNullable<z.ZodObject<{
83
+ level: z.ZodNullable<z.ZodNumber>;
84
+ status: z.ZodNullable<z.ZodEnum<{
85
+ ok: "ok";
86
+ full: "full";
87
+ low: "low";
88
+ }>>;
89
+ }, z.core.$strip>>;
90
+ dustBin: z.ZodNullable<z.ZodObject<{
91
+ level: z.ZodNullable<z.ZodNumber>;
92
+ status: z.ZodNullable<z.ZodEnum<{
93
+ ok: "ok";
94
+ full: "full";
95
+ low: "low";
96
+ }>>;
97
+ }, z.core.$strip>>;
98
+ lastChangedAt: z.ZodNumber;
99
+ }, z.core.$strip>;
100
+ export type VacuumControlStatus = z.infer<typeof VacuumControlStatusSchema>;
101
+ export declare const vacuumControlCapability: {
102
+ readonly name: "vacuum-control";
103
+ readonly scope: "device";
104
+ readonly deviceNative: true;
105
+ readonly mode: "singleton";
106
+ readonly deviceTypes: readonly [DeviceType.Vacuum];
107
+ readonly methods: {
108
+ readonly start: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
109
+ deviceId: z.ZodNumber;
110
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
111
+ readonly pause: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
112
+ deviceId: z.ZodNumber;
113
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
114
+ readonly stop: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
115
+ deviceId: z.ZodNumber;
116
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
117
+ readonly returnToBase: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
118
+ deviceId: z.ZodNumber;
119
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
120
+ readonly locate: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
121
+ deviceId: z.ZodNumber;
122
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
123
+ readonly setFanSpeed: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
124
+ deviceId: z.ZodNumber;
125
+ speed: z.ZodString;
126
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
127
+ };
128
+ readonly status: {
129
+ readonly schema: z.ZodObject<{
130
+ state: z.ZodEnum<{
131
+ error: "error";
132
+ idle: "idle";
133
+ paused: "paused";
134
+ docked: "docked";
135
+ cleaning: "cleaning";
136
+ returning: "returning";
137
+ }>;
138
+ batteryLevel: z.ZodNullable<z.ZodNumber>;
139
+ fanSpeed: z.ZodNullable<z.ZodString>;
140
+ availableFanSpeeds: z.ZodArray<z.ZodString>;
141
+ cleanWater: z.ZodNullable<z.ZodObject<{
142
+ level: z.ZodNullable<z.ZodNumber>;
143
+ status: z.ZodNullable<z.ZodEnum<{
144
+ ok: "ok";
145
+ full: "full";
146
+ low: "low";
147
+ }>>;
148
+ }, z.core.$strip>>;
149
+ dirtyWater: z.ZodNullable<z.ZodObject<{
150
+ level: z.ZodNullable<z.ZodNumber>;
151
+ status: z.ZodNullable<z.ZodEnum<{
152
+ ok: "ok";
153
+ full: "full";
154
+ low: "low";
155
+ }>>;
156
+ }, z.core.$strip>>;
157
+ detergent: z.ZodNullable<z.ZodObject<{
158
+ level: z.ZodNullable<z.ZodNumber>;
159
+ status: z.ZodNullable<z.ZodEnum<{
160
+ ok: "ok";
161
+ full: "full";
162
+ low: "low";
163
+ }>>;
164
+ }, z.core.$strip>>;
165
+ dustBin: z.ZodNullable<z.ZodObject<{
166
+ level: z.ZodNullable<z.ZodNumber>;
167
+ status: z.ZodNullable<z.ZodEnum<{
168
+ ok: "ok";
169
+ full: "full";
170
+ low: "low";
171
+ }>>;
172
+ }, z.core.$strip>>;
173
+ lastChangedAt: z.ZodNumber;
174
+ }, z.core.$strip>;
175
+ readonly kind: "push";
176
+ };
177
+ /**
178
+ * Runtime-state slice — mirrored by the kernel. UI controls watch the
179
+ * slice for live state + battery + fan-speed changes.
180
+ */
181
+ readonly runtimeState: z.ZodObject<{
182
+ state: z.ZodEnum<{
183
+ error: "error";
184
+ idle: "idle";
185
+ paused: "paused";
186
+ docked: "docked";
187
+ cleaning: "cleaning";
188
+ returning: "returning";
189
+ }>;
190
+ batteryLevel: z.ZodNullable<z.ZodNumber>;
191
+ fanSpeed: z.ZodNullable<z.ZodString>;
192
+ availableFanSpeeds: z.ZodArray<z.ZodString>;
193
+ cleanWater: z.ZodNullable<z.ZodObject<{
194
+ level: z.ZodNullable<z.ZodNumber>;
195
+ status: z.ZodNullable<z.ZodEnum<{
196
+ ok: "ok";
197
+ full: "full";
198
+ low: "low";
199
+ }>>;
200
+ }, z.core.$strip>>;
201
+ dirtyWater: z.ZodNullable<z.ZodObject<{
202
+ level: z.ZodNullable<z.ZodNumber>;
203
+ status: z.ZodNullable<z.ZodEnum<{
204
+ ok: "ok";
205
+ full: "full";
206
+ low: "low";
207
+ }>>;
208
+ }, z.core.$strip>>;
209
+ detergent: z.ZodNullable<z.ZodObject<{
210
+ level: z.ZodNullable<z.ZodNumber>;
211
+ status: z.ZodNullable<z.ZodEnum<{
212
+ ok: "ok";
213
+ full: "full";
214
+ low: "low";
215
+ }>>;
216
+ }, z.core.$strip>>;
217
+ dustBin: z.ZodNullable<z.ZodObject<{
218
+ level: z.ZodNullable<z.ZodNumber>;
219
+ status: z.ZodNullable<z.ZodEnum<{
220
+ ok: "ok";
221
+ full: "full";
222
+ low: "low";
223
+ }>>;
224
+ }, z.core.$strip>>;
225
+ lastChangedAt: z.ZodNumber;
226
+ }, z.core.$strip>;
227
+ };
228
+ export type IVacuumControlProvider = InferProvider<typeof vacuumControlCapability>;
229
+ //# sourceMappingURL=vacuum-control.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vacuum-control.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/vacuum-control.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,eAAO,MAAM,iBAAiB;;;;;;;EAO5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB;;;;;;;iBAK3B,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqBpC,CAAA;AAEF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6ClC;;;OAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
@@ -0,0 +1,93 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Pipe / water / gas valve cap. Models HA `valve.*` entities — anything
6
+ * that moves between an open and a closed state with optional
7
+ * intermediate positioning.
8
+ *
9
+ * State follows HA's canonical lifecycle: `open` / `opening` /
10
+ * `closing` / `closed` / `stopped`. `position` (0 closed, 100 open) is
11
+ * nullable — some valves only support full open/close, while others
12
+ * report and accept an intermediate position. Providers populate only
13
+ * what the hardware reports.
14
+ *
15
+ * Unlike `cover`, valves have no tilt surface — the cap is the strict
16
+ * open/close + optional position subset of the cover lifecycle.
17
+ *
18
+ * Sub-surface gating paired with a `DeviceFeature` flag:
19
+ * - `ValvePositionable` — intermediate `position` slider / drag
20
+ */
21
+ export declare const ValveStateSchema: z.ZodEnum<{
22
+ open: "open";
23
+ stopped: "stopped";
24
+ opening: "opening";
25
+ closing: "closing";
26
+ closed: "closed";
27
+ }>;
28
+ export type ValveState = z.infer<typeof ValveStateSchema>;
29
+ export declare const ValveStatusSchema: z.ZodObject<{
30
+ state: z.ZodEnum<{
31
+ open: "open";
32
+ stopped: "stopped";
33
+ opening: "opening";
34
+ closing: "closing";
35
+ closed: "closed";
36
+ }>;
37
+ position: z.ZodNullable<z.ZodNumber>;
38
+ lastChangedAt: z.ZodNumber;
39
+ }, z.core.$strip>;
40
+ export type ValveStatus = z.infer<typeof ValveStatusSchema>;
41
+ export declare const valveCapability: {
42
+ readonly name: "valve";
43
+ readonly scope: "device";
44
+ readonly deviceNative: true;
45
+ readonly mode: "singleton";
46
+ readonly deviceTypes: readonly [DeviceType.Valve];
47
+ readonly methods: {
48
+ readonly open: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
49
+ deviceId: z.ZodNumber;
50
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
51
+ readonly close: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
52
+ deviceId: z.ZodNumber;
53
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
54
+ readonly stop: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
55
+ deviceId: z.ZodNumber;
56
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
57
+ readonly setPosition: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
58
+ deviceId: z.ZodNumber;
59
+ position: z.ZodNumber;
60
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
61
+ };
62
+ readonly status: {
63
+ readonly schema: z.ZodObject<{
64
+ state: z.ZodEnum<{
65
+ open: "open";
66
+ stopped: "stopped";
67
+ opening: "opening";
68
+ closing: "closing";
69
+ closed: "closed";
70
+ }>;
71
+ position: z.ZodNullable<z.ZodNumber>;
72
+ lastChangedAt: z.ZodNumber;
73
+ }, z.core.$strip>;
74
+ readonly kind: "push";
75
+ };
76
+ /**
77
+ * Runtime-state slice — mirrored by the kernel. UI controls watch the
78
+ * slice for live position changes during a move.
79
+ */
80
+ readonly runtimeState: z.ZodObject<{
81
+ state: z.ZodEnum<{
82
+ open: "open";
83
+ stopped: "stopped";
84
+ opening: "opening";
85
+ closing: "closing";
86
+ closed: "closed";
87
+ }>;
88
+ position: z.ZodNullable<z.ZodNumber>;
89
+ lastChangedAt: z.ZodNumber;
90
+ }, z.core.$strip>;
91
+ };
92
+ export type IValveProvider = InferProvider<typeof valveCapability>;
93
+ //# sourceMappingURL=valve.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valve.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/valve.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;;;;GAgBG;AAEH,eAAO,MAAM,gBAAgB;;;;;;EAM3B,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,eAAO,MAAM,iBAAiB;;;;;;;;;;iBAQ5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmC1B;;;OAGG;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,eAAe,CAAC,CAAA"}
@@ -0,0 +1,33 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Vibration / shake / impact sensor. Drives Home Assistant
6
+ * `binary_sensor` entries with `device_class: vibration`. Push-driven.
7
+ */
8
+ export declare const VibrationStatusSchema: z.ZodObject<{
9
+ detected: z.ZodBoolean;
10
+ lastChangedAt: z.ZodNumber;
11
+ }, z.core.$strip>;
12
+ export type VibrationStatus = z.infer<typeof VibrationStatusSchema>;
13
+ export declare const vibrationCapability: {
14
+ readonly name: "vibration";
15
+ readonly scope: "device";
16
+ readonly deviceNative: true;
17
+ readonly mode: "singleton";
18
+ readonly deviceTypes: readonly [DeviceType.Sensor];
19
+ readonly methods: {};
20
+ readonly status: {
21
+ readonly schema: z.ZodObject<{
22
+ detected: z.ZodBoolean;
23
+ lastChangedAt: z.ZodNumber;
24
+ }, z.core.$strip>;
25
+ readonly kind: "push";
26
+ };
27
+ readonly runtimeState: z.ZodObject<{
28
+ detected: z.ZodBoolean;
29
+ lastChangedAt: z.ZodNumber;
30
+ }, z.core.$strip>;
31
+ };
32
+ export type IVibrationProvider = InferProvider<typeof vibrationCapability>;
33
+ //# sourceMappingURL=vibration.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vibration.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/vibration.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;iBAIhC,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEnE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;CAYS,CAAA;AAEzC,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
@@ -0,0 +1,78 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Water heater / boiler cap. Models HA `water_heater.*` entities — a
6
+ * climate-family actuator with a target temperature, an operation-mode
7
+ * selector (`eco` / `electric` / `gas` / `heat_pump` / `high_demand` /
8
+ * `performance` / `off`), and an optional away-mode toggle.
9
+ *
10
+ * The slice carries the current + target temperature, the active
11
+ * operation mode (HA's `state`) and its available set (HA's
12
+ * `operation_list`), the away flag (HA `away_mode` 'on'/'off' → bool,
13
+ * null when unsupported), plus the `min_temp` / `max_temp` bounds.
14
+ *
15
+ * Providers populate only what the hardware reports — temperature and
16
+ * away fields stay null when the device has no such surface.
17
+ */
18
+ export declare const WaterHeaterStatusSchema: z.ZodObject<{
19
+ currentTemp: z.ZodNullable<z.ZodNumber>;
20
+ targetTemp: z.ZodNullable<z.ZodNumber>;
21
+ operationMode: z.ZodNullable<z.ZodString>;
22
+ availableModes: z.ZodArray<z.ZodString>;
23
+ away: z.ZodNullable<z.ZodBoolean>;
24
+ minTemp: z.ZodNullable<z.ZodNumber>;
25
+ maxTemp: z.ZodNullable<z.ZodNumber>;
26
+ lastChangedAt: z.ZodNumber;
27
+ }, z.core.$strip>;
28
+ export type WaterHeaterStatus = z.infer<typeof WaterHeaterStatusSchema>;
29
+ export declare const waterHeaterCapability: {
30
+ readonly name: "water-heater";
31
+ readonly scope: "device";
32
+ readonly deviceNative: true;
33
+ readonly mode: "singleton";
34
+ readonly deviceTypes: readonly [DeviceType.WaterHeater];
35
+ readonly methods: {
36
+ readonly setTargetTemp: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
37
+ deviceId: z.ZodNumber;
38
+ temp: z.ZodNumber;
39
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
40
+ readonly setOperationMode: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
41
+ deviceId: z.ZodNumber;
42
+ mode: z.ZodString;
43
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
44
+ readonly setAway: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
45
+ deviceId: z.ZodNumber;
46
+ on: z.ZodBoolean;
47
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
48
+ };
49
+ readonly status: {
50
+ readonly schema: z.ZodObject<{
51
+ currentTemp: z.ZodNullable<z.ZodNumber>;
52
+ targetTemp: z.ZodNullable<z.ZodNumber>;
53
+ operationMode: z.ZodNullable<z.ZodString>;
54
+ availableModes: z.ZodArray<z.ZodString>;
55
+ away: z.ZodNullable<z.ZodBoolean>;
56
+ minTemp: z.ZodNullable<z.ZodNumber>;
57
+ maxTemp: z.ZodNullable<z.ZodNumber>;
58
+ lastChangedAt: z.ZodNumber;
59
+ }, z.core.$strip>;
60
+ readonly kind: "push";
61
+ };
62
+ /**
63
+ * Runtime-state slice — mirrored by the kernel. UI controls watch the
64
+ * slice for live temperature / mode / away changes.
65
+ */
66
+ readonly runtimeState: z.ZodObject<{
67
+ currentTemp: z.ZodNullable<z.ZodNumber>;
68
+ targetTemp: z.ZodNullable<z.ZodNumber>;
69
+ operationMode: z.ZodNullable<z.ZodString>;
70
+ availableModes: z.ZodArray<z.ZodString>;
71
+ away: z.ZodNullable<z.ZodBoolean>;
72
+ minTemp: z.ZodNullable<z.ZodNumber>;
73
+ maxTemp: z.ZodNullable<z.ZodNumber>;
74
+ lastChangedAt: z.ZodNumber;
75
+ }, z.core.$strip>;
76
+ };
77
+ export type IWaterHeaterProvider = InferProvider<typeof waterHeaterCapability>;
78
+ //# sourceMappingURL=water-heater.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"water-heater.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/water-heater.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,uBAAuB;;;;;;;;;iBAoBlC,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoChC;;;OAGG;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC,OAAO,qBAAqB,CAAC,CAAA"}