@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":"device-ops.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-ops.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAqClG,eAAO,MAAM,mBAAmB;;;;;QAK5B;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAMH;;;WAGG;;;;;;;QAMH;;;;WAIG;;;;;QAUH;;;;WAIG;;;;QAOH;;;;;;;;;;;;;WAaG;;;;;CAMkC,CAAA;AAEzC,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
1
+ {"version":3,"file":"device-ops.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-ops.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAsClG,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,mBAAmB;;;;;;QAY5B;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAMH;;;WAGG;;;;;;;QAMH;;;;WAIG;;;;;QAUH;;;;;WAKG;;;;;;QAWH;;;;WAIG;;;;QAOH;;;;;;;;;;;;;WAaG;;;;QAMH;;;;;;WAMG;;;;;;;;CAOkC,CAAA;AAEzC,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAC,OAAO,mBAAmB,CAAC,CAAA"}
@@ -22,6 +22,12 @@ declare const DiscoveryCandidateSchema: z.ZodObject<{
22
22
  type: z.ZodEnum<typeof DeviceType>;
23
23
  suggestedName: z.ZodString;
24
24
  prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
25
+ sourceInfo: z.ZodOptional<z.ZodObject<{
26
+ id: z.ZodString;
27
+ system: z.ZodString;
28
+ uniqueId: z.ZodOptional<z.ZodString>;
29
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
30
+ }, z.core.$strip>>;
25
31
  }, z.core.$strip>;
26
32
  /**
27
33
  * Flat device summary returned by `createDevice` / `adoptDiscoveredDevice`.
@@ -38,6 +44,12 @@ declare const DeviceSummarySchema: z.ZodObject<{
38
44
  online: z.ZodBoolean;
39
45
  features: z.ZodArray<z.ZodString>;
40
46
  config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
47
+ sourceInfo: z.ZodOptional<z.ZodObject<{
48
+ id: z.ZodString;
49
+ system: z.ZodString;
50
+ uniqueId: z.ZodOptional<z.ZodString>;
51
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
52
+ }, z.core.$strip>>;
41
53
  }, z.core.$strip>;
42
54
  /**
43
55
  * Result of a live field test (e.g. probing an RTSP URL during device
@@ -76,6 +88,12 @@ export declare const deviceProviderCapability: {
76
88
  type: z.ZodEnum<typeof DeviceType>;
77
89
  suggestedName: z.ZodString;
78
90
  prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
91
+ sourceInfo: z.ZodOptional<z.ZodObject<{
92
+ id: z.ZodString;
93
+ system: z.ZodString;
94
+ uniqueId: z.ZodOptional<z.ZodString>;
95
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
96
+ }, z.core.$strip>>;
79
97
  }, z.core.$strip>>, "mutation">;
80
98
  readonly adoptDiscoveredDevice: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
81
99
  candidate: z.ZodObject<{
@@ -83,6 +101,12 @@ export declare const deviceProviderCapability: {
83
101
  type: z.ZodEnum<typeof DeviceType>;
84
102
  suggestedName: z.ZodString;
85
103
  prefilledConfig: z.ZodRecord<z.ZodString, z.ZodUnknown>;
104
+ sourceInfo: z.ZodOptional<z.ZodObject<{
105
+ id: z.ZodString;
106
+ system: z.ZodString;
107
+ uniqueId: z.ZodOptional<z.ZodString>;
108
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
109
+ }, z.core.$strip>>;
86
110
  }, z.core.$strip>;
87
111
  }, z.core.$strip>, z.ZodObject<{
88
112
  id: z.ZodNumber;
@@ -94,6 +118,12 @@ export declare const deviceProviderCapability: {
94
118
  online: z.ZodBoolean;
95
119
  features: z.ZodArray<z.ZodString>;
96
120
  config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
121
+ sourceInfo: z.ZodOptional<z.ZodObject<{
122
+ id: z.ZodString;
123
+ system: z.ZodString;
124
+ uniqueId: z.ZodOptional<z.ZodString>;
125
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
126
+ }, z.core.$strip>>;
97
127
  }, z.core.$strip>, "mutation">;
98
128
  readonly supportsManualCreation: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodBoolean, import("./capability-definition.js").CapabilityMethodKind>;
99
129
  /**
@@ -118,6 +148,12 @@ export declare const deviceProviderCapability: {
118
148
  online: z.ZodBoolean;
119
149
  features: z.ZodArray<z.ZodString>;
120
150
  config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
151
+ sourceInfo: z.ZodOptional<z.ZodObject<{
152
+ id: z.ZodString;
153
+ system: z.ZodString;
154
+ uniqueId: z.ZodOptional<z.ZodString>;
155
+ raw: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
156
+ }, z.core.$strip>>;
121
157
  }, z.core.$strip>, "mutation">;
122
158
  /**
123
159
  * Test a single field in the creation form before the device has
@@ -1 +1 @@
1
- {"version":3,"file":"device-provider.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-provider.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,QAAA,MAAM,oBAAoB;;;;iBAIxB,CAAA;AAEF,QAAA,MAAM,sBAAsB;;;;;iBAK1B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB;;;;;iBAK5B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;iBAUvB,CAAA;AAEF;;;;;GAKG;AACH,QAAA,MAAM,sBAAsB;;;;;;;iBAI1B,CAAA;AAYF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8BjC;;;;;WAKG;;;;;;;;;;;;;;;;;;QAaH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE5E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,GACvB,CAAA"}
1
+ {"version":3,"file":"device-provider.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-provider.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;AAGrD,QAAA,MAAM,oBAAoB;;;;iBAIxB,CAAA;AAEF,QAAA,MAAM,sBAAsB;;;;;iBAK1B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB;;;;;;;;;;;iBAY5B,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;iBAevB,CAAA;AAEF;;;;;GAKG;AACH,QAAA,MAAM,sBAAsB;;;;;;;iBAI1B,CAAA;AAYF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA8BjC;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;QAaH;;;;;;;;;;;WAWG;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAE5E,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,mBAAmB,EACnB,sBAAsB,GACvB,CAAA"}
@@ -23,6 +23,7 @@ export type DeviceStatus = z.infer<typeof DeviceStatusSchema>;
23
23
  export declare const deviceStatusCapability: {
24
24
  readonly name: "device-status";
25
25
  readonly scope: "device";
26
+ readonly deviceNative: true;
26
27
  readonly mode: "singleton";
27
28
  readonly methods: {};
28
29
  readonly events: {
@@ -1 +1 @@
1
- {"version":3,"file":"device-status.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-status.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB;;;iBAY7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB;;;;;;QAM/B;yCACiC;;;;;;;;;;;;;;;;;;;;;;CAWI,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
1
+ {"version":3,"file":"device-status.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/device-status.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,kBAAkB;;;iBAY7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB;;;;;;;QAO/B;yCACiC;;;;;;;;;;;;;;;;;;;;;;CAWI,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -24,6 +24,7 @@ export type DoorbellPressEvent = z.infer<typeof DoorbellPressEventSchema>;
24
24
  export declare const doorbellCapability: {
25
25
  readonly name: "doorbell";
26
26
  readonly scope: "device";
27
+ readonly deviceNative: true;
27
28
  readonly mode: "singleton";
28
29
  readonly deviceTypes: readonly [DeviceType.Button];
29
30
  readonly methods: {};
@@ -1 +1 @@
1
- {"version":3,"file":"doorbell.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/doorbell.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;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,kBAAkB;;;;;;;QAO3B;;;;WAIG;;;;;;;;;;;;;;;IAOL;;;;;OAKG;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
1
+ {"version":3,"file":"doorbell.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/doorbell.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;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,wBAAwB;;;iBAGnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,kBAAkB;;;;;;;;QAQ3B;;;;WAIG;;;;;;;;;;;;;;;IAOL;;;;;OAKG;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Enum-state sensor — a string value picked from a finite option set.
6
+ * Drives HA `sensor` entries with `state_class: enum` (HVAC action
7
+ * states, weather conditions, contact-source channels, mode strings).
8
+ * The option set is stable across observations; it is persisted in the
9
+ * device config blob (via the control slice at adoption) and is NOT
10
+ * stored in `sourceInfo`.
11
+ */
12
+ /** Locale-render shape for an ISO `value` carried by a `DateTimeSensor`-role
13
+ * enum sensor: `date` (date-only), `time` (time-only), `datetime` (both). */
14
+ export declare const EnumSensorDateTimeFormatSchema: z.ZodEnum<{
15
+ date: "date";
16
+ datetime: "datetime";
17
+ time: "time";
18
+ }>;
19
+ export type EnumSensorDateTimeFormat = z.infer<typeof EnumSensorDateTimeFormatSchema>;
20
+ export declare const EnumSensorStatusSchema: z.ZodObject<{
21
+ value: z.ZodString;
22
+ format: z.ZodOptional<z.ZodEnum<{
23
+ date: "date";
24
+ datetime: "datetime";
25
+ time: "time";
26
+ }>>;
27
+ lastFetchedAt: z.ZodNumber;
28
+ }, z.core.$strip>;
29
+ export type EnumSensorStatus = z.infer<typeof EnumSensorStatusSchema>;
30
+ export declare const enumSensorCapability: {
31
+ readonly name: "enum-sensor";
32
+ readonly scope: "device";
33
+ readonly deviceNative: true;
34
+ readonly mode: "singleton";
35
+ readonly deviceTypes: readonly [DeviceType.Sensor];
36
+ readonly methods: {};
37
+ readonly status: {
38
+ readonly schema: z.ZodObject<{
39
+ value: z.ZodString;
40
+ format: z.ZodOptional<z.ZodEnum<{
41
+ date: "date";
42
+ datetime: "datetime";
43
+ time: "time";
44
+ }>>;
45
+ lastFetchedAt: z.ZodNumber;
46
+ }, z.core.$strip>;
47
+ readonly kind: "push";
48
+ };
49
+ readonly runtimeState: z.ZodObject<{
50
+ value: z.ZodString;
51
+ format: z.ZodOptional<z.ZodEnum<{
52
+ date: "date";
53
+ datetime: "datetime";
54
+ time: "time";
55
+ }>>;
56
+ lastFetchedAt: z.ZodNumber;
57
+ }, z.core.$strip>;
58
+ };
59
+ export type IEnumSensorProvider = InferProvider<typeof enumSensorCapability>;
60
+ //# sourceMappingURL=enum-sensor.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enum-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/enum-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;;;;;;;GAOG;AACH;8EAC8E;AAC9E,eAAO,MAAM,8BAA8B;;;;EAAuC,CAAA;AAElF,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAA;AAErF,eAAO,MAAM,sBAAsB;;;;;;;;iBAWjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYQ,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,79 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Generic stateless event emitter. Installed on a `DeviceType.EventEmitter`
6
+ * device. Carries the device's EXACT declared event vocabulary verbatim
7
+ * (NO normalization). Two shapes:
8
+ * - structured source (HA `event.*` entity) → `eventTypes` is the fixed
9
+ * declared vocabulary (e.g. ['press_short','press_long',...]).
10
+ * - generic/legacy source (HA bus events, e.g. zha_event) → `eventTypes`
11
+ * is [] (open) and `lastEvent.data` carries the complex payload.
12
+ * `seq` is monotonic so two identical events still produce distinct slice writes.
13
+ */
14
+ export declare const EventFireSchema: z.ZodObject<{
15
+ deviceId: z.ZodNumber;
16
+ eventType: z.ZodString;
17
+ data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
18
+ timestamp: z.ZodNumber;
19
+ seq: z.ZodNumber;
20
+ }, z.core.$strip>;
21
+ export type EventFire = z.infer<typeof EventFireSchema>;
22
+ export declare const EventEmitterStatusSchema: z.ZodObject<{
23
+ eventTypes: z.ZodArray<z.ZodString>;
24
+ lastEvent: z.ZodNullable<z.ZodObject<{
25
+ deviceId: z.ZodNumber;
26
+ eventType: z.ZodString;
27
+ data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
28
+ timestamp: z.ZodNumber;
29
+ seq: z.ZodNumber;
30
+ }, z.core.$strip>>;
31
+ eventCountSinceStart: z.ZodNumber;
32
+ }, z.core.$strip>;
33
+ export type EventEmitterStatus = z.infer<typeof EventEmitterStatusSchema>;
34
+ export declare const eventEmitterCapability: {
35
+ readonly name: "event-emitter";
36
+ readonly scope: "device";
37
+ readonly deviceNative: true;
38
+ readonly mode: "singleton";
39
+ readonly deviceTypes: readonly [DeviceType.EventEmitter];
40
+ readonly methods: {};
41
+ readonly events: {
42
+ readonly onEvent: {
43
+ readonly data: z.ZodObject<{
44
+ deviceId: z.ZodNumber;
45
+ eventType: z.ZodString;
46
+ data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
47
+ timestamp: z.ZodNumber;
48
+ seq: z.ZodNumber;
49
+ }, z.core.$strip>;
50
+ };
51
+ };
52
+ readonly status: {
53
+ readonly schema: z.ZodObject<{
54
+ eventTypes: z.ZodArray<z.ZodString>;
55
+ lastEvent: z.ZodNullable<z.ZodObject<{
56
+ deviceId: z.ZodNumber;
57
+ eventType: z.ZodString;
58
+ data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
59
+ timestamp: z.ZodNumber;
60
+ seq: z.ZodNumber;
61
+ }, z.core.$strip>>;
62
+ eventCountSinceStart: z.ZodNumber;
63
+ }, z.core.$strip>;
64
+ readonly kind: "push";
65
+ };
66
+ readonly runtimeState: z.ZodObject<{
67
+ eventTypes: z.ZodArray<z.ZodString>;
68
+ lastEvent: z.ZodNullable<z.ZodObject<{
69
+ deviceId: z.ZodNumber;
70
+ eventType: z.ZodString;
71
+ data: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
72
+ timestamp: z.ZodNumber;
73
+ seq: z.ZodNumber;
74
+ }, z.core.$strip>>;
75
+ eventCountSinceStart: z.ZodNumber;
76
+ }, z.core.$strip>;
77
+ };
78
+ export type IEventEmitterProvider = InferProvider<typeof eventEmitterCapability>;
79
+ //# sourceMappingURL=event-emitter.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-emitter.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/event-emitter.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;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe;;;;;;iBAM1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,wBAAwB;;;;;;;;;;iBAInC,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUM,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,100 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Fan-control cap. Models HA `fan.*` entity-specific surfaces:
6
+ * speed percentage, preset modes, ceiling-fan direction, and
7
+ * oscillation. The on/off state lives on the existing `switch` cap
8
+ * (Fan devices register `switch + fan-control`, mirroring the
9
+ * Light pattern of `switch + brightness + color`).
10
+ *
11
+ * `availablePresets` mirrors HA's `preset_modes` attribute so the
12
+ * UI renders a closed-list picker without a separate `getOptions`
13
+ * round-trip. `direction` and `oscillating` are nullable — most
14
+ * fans don't expose them.
15
+ *
16
+ * Sub-surface gating paired with `DeviceFeature` flags:
17
+ * - `FanSpeed` — speed-percentage slider
18
+ * - `FanPreset` — preset selector
19
+ * - `FanDirection` — direction toggle (ceiling fans)
20
+ * - `FanOscillating` — oscillation toggle
21
+ */
22
+ export declare const FanDirectionSchema: z.ZodEnum<{
23
+ reverse: "reverse";
24
+ forward: "forward";
25
+ }>;
26
+ export type FanDirection = z.infer<typeof FanDirectionSchema>;
27
+ export declare const FanControlStatusSchema: z.ZodObject<{
28
+ percentage: z.ZodNullable<z.ZodNumber>;
29
+ percentageStep: z.ZodOptional<z.ZodNumber>;
30
+ preset: z.ZodString;
31
+ availablePresets: z.ZodArray<z.ZodString>;
32
+ direction: z.ZodNullable<z.ZodEnum<{
33
+ reverse: "reverse";
34
+ forward: "forward";
35
+ }>>;
36
+ oscillating: z.ZodNullable<z.ZodBoolean>;
37
+ lastChangedAt: z.ZodNumber;
38
+ }, z.core.$strip>;
39
+ export type FanControlStatus = z.infer<typeof FanControlStatusSchema>;
40
+ export declare const fanControlCapability: {
41
+ readonly name: "fan-control";
42
+ readonly scope: "device";
43
+ readonly deviceNative: true;
44
+ readonly mode: "singleton";
45
+ readonly deviceTypes: readonly [DeviceType.Fan];
46
+ readonly methods: {
47
+ readonly setPercentage: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
48
+ deviceId: z.ZodNumber;
49
+ percentage: z.ZodNumber;
50
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
51
+ readonly setPreset: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
52
+ deviceId: z.ZodNumber;
53
+ preset: z.ZodString;
54
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
55
+ readonly setDirection: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
56
+ deviceId: z.ZodNumber;
57
+ direction: z.ZodEnum<{
58
+ reverse: "reverse";
59
+ forward: "forward";
60
+ }>;
61
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
62
+ readonly setOscillating: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
63
+ deviceId: z.ZodNumber;
64
+ oscillating: z.ZodBoolean;
65
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
66
+ };
67
+ readonly status: {
68
+ readonly schema: z.ZodObject<{
69
+ percentage: z.ZodNullable<z.ZodNumber>;
70
+ percentageStep: z.ZodOptional<z.ZodNumber>;
71
+ preset: z.ZodString;
72
+ availablePresets: z.ZodArray<z.ZodString>;
73
+ direction: z.ZodNullable<z.ZodEnum<{
74
+ reverse: "reverse";
75
+ forward: "forward";
76
+ }>>;
77
+ oscillating: z.ZodNullable<z.ZodBoolean>;
78
+ lastChangedAt: z.ZodNumber;
79
+ }, z.core.$strip>;
80
+ readonly kind: "push";
81
+ };
82
+ /**
83
+ * Runtime-state slice — mirrored by the kernel. UI fan speed
84
+ * sliders read `percentage` for live updates.
85
+ */
86
+ readonly runtimeState: z.ZodObject<{
87
+ percentage: z.ZodNullable<z.ZodNumber>;
88
+ percentageStep: z.ZodOptional<z.ZodNumber>;
89
+ preset: z.ZodString;
90
+ availablePresets: z.ZodArray<z.ZodString>;
91
+ direction: z.ZodNullable<z.ZodEnum<{
92
+ reverse: "reverse";
93
+ forward: "forward";
94
+ }>>;
95
+ oscillating: z.ZodNullable<z.ZodBoolean>;
96
+ lastChangedAt: z.ZodNumber;
97
+ }, z.core.$strip>;
98
+ };
99
+ export type IFanControlProvider = InferProvider<typeof fanControlCapability>;
100
+ //# sourceMappingURL=fan-control.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fan-control.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/fan-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;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,kBAAkB;;;EAAiC,CAAA;AAChE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAoBjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4C/B;;;OAGG;;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -36,6 +36,7 @@ export type FeatureProbeStatus = z.infer<typeof FeatureProbeStatusSchema>;
36
36
  export declare const featureProbeCapability: {
37
37
  readonly name: "feature-probe";
38
38
  readonly scope: "device";
39
+ readonly deviceNative: true;
39
40
  readonly mode: "singleton";
40
41
  readonly methods: {};
41
42
  readonly events: {
@@ -1 +1 @@
1
- {"version":3,"file":"feature-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/feature-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,wBAAwB;;;;;;;iBAgCnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;QAM/B;mEAC2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWtB,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
1
+ {"version":3,"file":"feature-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/feature-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAE1F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,wBAAwB;;;;;;;iBAgCnC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;QAO/B;mEAC2D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAWtB,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Water leak / moisture sensor. Boolean "is liquid currently
6
+ * detected" with the timestamp of the last transition. Drives Home
7
+ * Assistant `binary_sensor` entries with `device_class: moisture`,
8
+ * and any future native flood sensor.
9
+ *
10
+ * Push-driven from the upstream source.
11
+ */
12
+ export declare const FloodStatusSchema: z.ZodObject<{
13
+ flooded: z.ZodBoolean;
14
+ lastChangedAt: z.ZodNumber;
15
+ }, z.core.$strip>;
16
+ export type FloodStatus = z.infer<typeof FloodStatusSchema>;
17
+ export declare const floodCapability: {
18
+ readonly name: "flood";
19
+ readonly scope: "device";
20
+ readonly deviceNative: true;
21
+ readonly mode: "singleton";
22
+ readonly deviceTypes: readonly [DeviceType.Sensor];
23
+ readonly methods: {};
24
+ readonly status: {
25
+ readonly schema: z.ZodObject<{
26
+ flooded: z.ZodBoolean;
27
+ lastChangedAt: z.ZodNumber;
28
+ }, z.core.$strip>;
29
+ readonly kind: "push";
30
+ };
31
+ readonly runtimeState: z.ZodObject<{
32
+ flooded: z.ZodBoolean;
33
+ lastChangedAt: z.ZodNumber;
34
+ }, z.core.$strip>;
35
+ };
36
+ export type IFloodProvider = InferProvider<typeof floodCapability>;
37
+ //# sourceMappingURL=flood.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flood.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/flood.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;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB;;;iBAK5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAYa,CAAA;AAEzC,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,eAAe,CAAC,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Combustible-gas (LPG / methane / hydrogen) alarm sensor. Drives
6
+ * Home Assistant `binary_sensor` entries with `device_class: gas`.
7
+ * Push-driven.
8
+ */
9
+ export declare const GasStatusSchema: z.ZodObject<{
10
+ detected: z.ZodBoolean;
11
+ lastChangedAt: z.ZodNumber;
12
+ }, z.core.$strip>;
13
+ export type GasStatus = z.infer<typeof GasStatusSchema>;
14
+ export declare const gasCapability: {
15
+ readonly name: "gas";
16
+ readonly scope: "device";
17
+ readonly deviceNative: true;
18
+ readonly mode: "singleton";
19
+ readonly deviceTypes: readonly [DeviceType.Sensor];
20
+ readonly methods: {};
21
+ readonly status: {
22
+ readonly schema: z.ZodObject<{
23
+ detected: z.ZodBoolean;
24
+ lastChangedAt: z.ZodNumber;
25
+ }, z.core.$strip>;
26
+ readonly kind: "push";
27
+ };
28
+ readonly runtimeState: z.ZodObject<{
29
+ detected: z.ZodBoolean;
30
+ lastChangedAt: z.ZodNumber;
31
+ }, z.core.$strip>;
32
+ };
33
+ export type IGasProvider = InferProvider<typeof gasCapability>;
34
+ //# sourceMappingURL=gas.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gas.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/gas.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;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;iBAI1B,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;CAYe,CAAA;AAEzC,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC,OAAO,aAAa,CAAC,CAAA"}
@@ -0,0 +1,82 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Humidifier / dehumidifier cap. Models HA `humidifier.*` entities —
6
+ * an on/off actuator with an optional target-humidity setpoint and an
7
+ * optional vendor mode (`auto` / `normal` / `baby` / …).
8
+ *
9
+ * A climate-family sibling: the slice carries the on/off state, the
10
+ * current + target relative humidity (0..100), the active mode and its
11
+ * available set, plus HA's free-form `action` readout
12
+ * (`humidifying` / `drying` / `idle` / `off`). `minHumidity` /
13
+ * `maxHumidity` mirror HA's `min_humidity` / `max_humidity` attributes
14
+ * (null → the UI falls back to a 0..100 range).
15
+ *
16
+ * Providers populate only what the hardware reports — `mode` and the
17
+ * humidity fields stay null when the device has no such surface.
18
+ */
19
+ export declare const HumidifierStatusSchema: z.ZodObject<{
20
+ on: z.ZodBoolean;
21
+ currentHumidity: z.ZodNullable<z.ZodNumber>;
22
+ targetHumidity: z.ZodNullable<z.ZodNumber>;
23
+ mode: z.ZodNullable<z.ZodString>;
24
+ availableModes: z.ZodArray<z.ZodString>;
25
+ action: z.ZodNullable<z.ZodString>;
26
+ minHumidity: z.ZodNullable<z.ZodNumber>;
27
+ maxHumidity: z.ZodNullable<z.ZodNumber>;
28
+ lastChangedAt: z.ZodNumber;
29
+ }, z.core.$strip>;
30
+ export type HumidifierStatus = z.infer<typeof HumidifierStatusSchema>;
31
+ export declare const humidifierCapability: {
32
+ readonly name: "humidifier";
33
+ readonly scope: "device";
34
+ readonly deviceNative: true;
35
+ readonly mode: "singleton";
36
+ readonly deviceTypes: readonly [DeviceType.Humidifier];
37
+ readonly methods: {
38
+ readonly setOn: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
39
+ deviceId: z.ZodNumber;
40
+ on: z.ZodBoolean;
41
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
42
+ readonly setTargetHumidity: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
43
+ deviceId: z.ZodNumber;
44
+ humidity: z.ZodNumber;
45
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
46
+ readonly setMode: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
47
+ deviceId: z.ZodNumber;
48
+ mode: z.ZodString;
49
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
50
+ };
51
+ readonly status: {
52
+ readonly schema: z.ZodObject<{
53
+ on: z.ZodBoolean;
54
+ currentHumidity: z.ZodNullable<z.ZodNumber>;
55
+ targetHumidity: z.ZodNullable<z.ZodNumber>;
56
+ mode: z.ZodNullable<z.ZodString>;
57
+ availableModes: z.ZodArray<z.ZodString>;
58
+ action: z.ZodNullable<z.ZodString>;
59
+ minHumidity: z.ZodNullable<z.ZodNumber>;
60
+ maxHumidity: z.ZodNullable<z.ZodNumber>;
61
+ lastChangedAt: z.ZodNumber;
62
+ }, z.core.$strip>;
63
+ readonly kind: "push";
64
+ };
65
+ /**
66
+ * Runtime-state slice — mirrored by the kernel. UI controls watch the
67
+ * slice for live humidity / mode changes.
68
+ */
69
+ readonly runtimeState: z.ZodObject<{
70
+ on: z.ZodBoolean;
71
+ currentHumidity: z.ZodNullable<z.ZodNumber>;
72
+ targetHumidity: z.ZodNullable<z.ZodNumber>;
73
+ mode: z.ZodNullable<z.ZodString>;
74
+ availableModes: z.ZodArray<z.ZodString>;
75
+ action: z.ZodNullable<z.ZodString>;
76
+ minHumidity: z.ZodNullable<z.ZodNumber>;
77
+ maxHumidity: z.ZodNullable<z.ZodNumber>;
78
+ lastChangedAt: z.ZodNumber;
79
+ }, z.core.$strip>;
80
+ };
81
+ export type IHumidifierProvider = InferProvider<typeof humidifierCapability>;
82
+ //# sourceMappingURL=humidifier.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"humidifier.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/humidifier.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;;;;;;;;;;;;;;GAcG;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;iBAqBjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAoC/B;;;OAGG;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,mBAAmB,GAAG,aAAa,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
@@ -0,0 +1,43 @@
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 humidity reading. Drives Home Assistant `sensor`
6
+ * entries with `device_class: humidity`.
7
+ *
8
+ * Unit normalisation: percent. The canonical display unit (`%`) is a
9
+ * descriptor constant in the UI (ROLE_DESCRIPTOR), not stored in
10
+ * `sourceInfo`.
11
+ */
12
+ export declare const HumiditySensorStatusSchema: z.ZodObject<{
13
+ percent: z.ZodNumber;
14
+ lastFetchedAt: z.ZodNumber;
15
+ unit: z.ZodOptional<z.ZodString>;
16
+ precision: z.ZodOptional<z.ZodNumber>;
17
+ }, z.core.$strip>;
18
+ export type HumiditySensorStatus = z.infer<typeof HumiditySensorStatusSchema>;
19
+ export declare const humiditySensorCapability: {
20
+ readonly name: "humidity-sensor";
21
+ readonly scope: "device";
22
+ readonly deviceNative: true;
23
+ readonly mode: "singleton";
24
+ readonly deviceTypes: readonly [DeviceType.Sensor, DeviceType.Thermostat];
25
+ readonly methods: {};
26
+ readonly status: {
27
+ readonly schema: z.ZodObject<{
28
+ percent: z.ZodNumber;
29
+ lastFetchedAt: z.ZodNumber;
30
+ unit: z.ZodOptional<z.ZodString>;
31
+ precision: z.ZodOptional<z.ZodNumber>;
32
+ }, z.core.$strip>;
33
+ readonly kind: "push";
34
+ };
35
+ readonly runtimeState: z.ZodObject<{
36
+ percent: z.ZodNumber;
37
+ lastFetchedAt: z.ZodNumber;
38
+ unit: z.ZodOptional<z.ZodString>;
39
+ precision: z.ZodOptional<z.ZodNumber>;
40
+ }, z.core.$strip>;
41
+ };
42
+ export type IHumiditySensorProvider = InferProvider<typeof humiditySensorCapability>;
43
+ //# sourceMappingURL=humidity-sensor.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"humidity-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/humidity-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;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B;;;;;iBAcrC,CAAA;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;CAYI,CAAA;AAEzC,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
@@ -0,0 +1,44 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Image display cap. Models HA `image.*` entities — a single still image
6
+ * exposed by an integration (a snapshot, a chart, a generated picture).
7
+ *
8
+ * Read-only: there are no setters. The provider resolves the HA
9
+ * `entity_picture` (a relative, signed-token path) into an ABSOLUTE URL
10
+ * the browser loads directly — the token stays in the query string so no
11
+ * auth header is required. The slice carries that URL plus the upstream
12
+ * last-updated timestamp; the image changes when the entity state (a
13
+ * timestamp) changes.
14
+ */
15
+ export declare const ImageStatusSchema: z.ZodObject<{
16
+ url: z.ZodNullable<z.ZodString>;
17
+ lastUpdated: z.ZodNullable<z.ZodNumber>;
18
+ }, z.core.$strip>;
19
+ export type ImageStatus = z.infer<typeof ImageStatusSchema>;
20
+ export declare const imageCapability: {
21
+ readonly name: "image";
22
+ readonly scope: "device";
23
+ readonly deviceNative: true;
24
+ readonly mode: "singleton";
25
+ readonly deviceTypes: readonly [DeviceType.Image];
26
+ readonly methods: {};
27
+ readonly status: {
28
+ readonly schema: z.ZodObject<{
29
+ url: z.ZodNullable<z.ZodString>;
30
+ lastUpdated: z.ZodNullable<z.ZodNumber>;
31
+ }, z.core.$strip>;
32
+ readonly kind: "push";
33
+ };
34
+ /**
35
+ * Runtime-state slice — mirrored by the kernel. The UI reads `url`
36
+ * directly and renders the still image.
37
+ */
38
+ readonly runtimeState: z.ZodObject<{
39
+ url: z.ZodNullable<z.ZodString>;
40
+ lastUpdated: z.ZodNullable<z.ZodNumber>;
41
+ }, z.core.$strip>;
42
+ };
43
+ export type IImageProvider = InferProvider<typeof imageCapability>;
44
+ //# sourceMappingURL=image.cap.d.ts.map