@camstack/types 0.1.39 → 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 (323) hide show
  1. package/dist/addon/base-addon.d.ts +14 -2
  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/addon-settings.cap.d.ts +1 -0
  8. package/dist/capabilities/addon-settings.cap.d.ts.map +1 -1
  9. package/dist/capabilities/addons.cap.d.ts +187 -1
  10. package/dist/capabilities/addons.cap.d.ts.map +1 -1
  11. package/dist/capabilities/advanced-notifier.cap.d.ts +4 -0
  12. package/dist/capabilities/advanced-notifier.cap.d.ts.map +1 -1
  13. package/dist/capabilities/air-quality-sensor.cap.d.ts +56 -0
  14. package/dist/capabilities/air-quality-sensor.cap.d.ts.map +1 -0
  15. package/dist/capabilities/alarm-panel.cap.d.ts +154 -0
  16. package/dist/capabilities/alarm-panel.cap.d.ts.map +1 -0
  17. package/dist/capabilities/alerts.cap.d.ts +5 -5
  18. package/dist/capabilities/ambient-light-sensor.cap.d.ts +39 -0
  19. package/dist/capabilities/ambient-light-sensor.cap.d.ts.map +1 -0
  20. package/dist/capabilities/audio-analyzer.cap.d.ts +2 -2
  21. package/dist/capabilities/automation-control.cap.d.ts +65 -0
  22. package/dist/capabilities/automation-control.cap.d.ts.map +1 -0
  23. package/dist/capabilities/battery.cap.d.ts +30 -1
  24. package/dist/capabilities/battery.cap.d.ts.map +1 -1
  25. package/dist/capabilities/binary.cap.d.ts +40 -0
  26. package/dist/capabilities/binary.cap.d.ts.map +1 -0
  27. package/dist/capabilities/brightness.cap.d.ts +3 -2
  28. package/dist/capabilities/brightness.cap.d.ts.map +1 -1
  29. package/dist/capabilities/broker.cap.d.ts +291 -0
  30. package/dist/capabilities/broker.cap.d.ts.map +1 -0
  31. package/dist/capabilities/button.cap.d.ts +27 -0
  32. package/dist/capabilities/button.cap.d.ts.map +1 -0
  33. package/dist/capabilities/camera-credentials.cap.d.ts +1 -0
  34. package/dist/capabilities/camera-credentials.cap.d.ts.map +1 -1
  35. package/dist/capabilities/camera-pipeline-config.cap.d.ts +43 -0
  36. package/dist/capabilities/camera-pipeline-config.cap.d.ts.map +1 -0
  37. package/dist/capabilities/camera-streams.cap.d.ts +147 -10
  38. package/dist/capabilities/camera-streams.cap.d.ts.map +1 -1
  39. package/dist/capabilities/capability-definition.d.ts +15 -0
  40. package/dist/capabilities/capability-definition.d.ts.map +1 -1
  41. package/dist/capabilities/carbon-monoxide.cap.d.ts +33 -0
  42. package/dist/capabilities/carbon-monoxide.cap.d.ts.map +1 -0
  43. package/dist/capabilities/climate-control.cap.d.ts +183 -0
  44. package/dist/capabilities/climate-control.cap.d.ts.map +1 -0
  45. package/dist/capabilities/color.cap.d.ts +186 -0
  46. package/dist/capabilities/color.cap.d.ts.map +1 -0
  47. package/dist/capabilities/connectivity.cap.d.ts +37 -0
  48. package/dist/capabilities/connectivity.cap.d.ts.map +1 -0
  49. package/dist/capabilities/consumables.cap.d.ts +105 -0
  50. package/dist/capabilities/consumables.cap.d.ts.map +1 -0
  51. package/dist/capabilities/contact.cap.d.ts +41 -0
  52. package/dist/capabilities/contact.cap.d.ts.map +1 -0
  53. package/dist/capabilities/control.cap.d.ts +167 -0
  54. package/dist/capabilities/control.cap.d.ts.map +1 -0
  55. package/dist/capabilities/cover.cap.d.ts +104 -0
  56. package/dist/capabilities/cover.cap.d.ts.map +1 -0
  57. package/dist/capabilities/custom-actions.d.ts +6 -0
  58. package/dist/capabilities/custom-actions.d.ts.map +1 -1
  59. package/dist/capabilities/decoder.cap.d.ts +1 -1
  60. package/dist/capabilities/device-adoption.cap.d.ts +203 -0
  61. package/dist/capabilities/device-adoption.cap.d.ts.map +1 -0
  62. package/dist/capabilities/device-discovery.cap.d.ts +44 -143
  63. package/dist/capabilities/device-discovery.cap.d.ts.map +1 -1
  64. package/dist/capabilities/device-manager.cap.d.ts +469 -0
  65. package/dist/capabilities/device-manager.cap.d.ts.map +1 -1
  66. package/dist/capabilities/device-ops.cap.d.ts +30 -0
  67. package/dist/capabilities/device-ops.cap.d.ts.map +1 -1
  68. package/dist/capabilities/device-provider.cap.d.ts +36 -0
  69. package/dist/capabilities/device-provider.cap.d.ts.map +1 -1
  70. package/dist/capabilities/device-status.cap.d.ts +1 -0
  71. package/dist/capabilities/device-status.cap.d.ts.map +1 -1
  72. package/dist/capabilities/doorbell.cap.d.ts +1 -0
  73. package/dist/capabilities/doorbell.cap.d.ts.map +1 -1
  74. package/dist/capabilities/enum-sensor.cap.d.ts +60 -0
  75. package/dist/capabilities/enum-sensor.cap.d.ts.map +1 -0
  76. package/dist/capabilities/event-emitter.cap.d.ts +79 -0
  77. package/dist/capabilities/event-emitter.cap.d.ts.map +1 -0
  78. package/dist/capabilities/fan-control.cap.d.ts +100 -0
  79. package/dist/capabilities/fan-control.cap.d.ts.map +1 -0
  80. package/dist/capabilities/feature-probe.cap.d.ts +1 -0
  81. package/dist/capabilities/feature-probe.cap.d.ts.map +1 -1
  82. package/dist/capabilities/flood.cap.d.ts +37 -0
  83. package/dist/capabilities/flood.cap.d.ts.map +1 -0
  84. package/dist/capabilities/gas.cap.d.ts +34 -0
  85. package/dist/capabilities/gas.cap.d.ts.map +1 -0
  86. package/dist/capabilities/humidifier.cap.d.ts +82 -0
  87. package/dist/capabilities/humidifier.cap.d.ts.map +1 -0
  88. package/dist/capabilities/humidity-sensor.cap.d.ts +43 -0
  89. package/dist/capabilities/humidity-sensor.cap.d.ts.map +1 -0
  90. package/dist/capabilities/image.cap.d.ts +44 -0
  91. package/dist/capabilities/image.cap.d.ts.map +1 -0
  92. package/dist/capabilities/index.d.ts +103 -15
  93. package/dist/capabilities/index.d.ts.map +1 -1
  94. package/dist/capabilities/integrations.cap.d.ts +12 -0
  95. package/dist/capabilities/integrations.cap.d.ts.map +1 -1
  96. package/dist/capabilities/intercom.cap.d.ts +49 -9
  97. package/dist/capabilities/intercom.cap.d.ts.map +1 -1
  98. package/dist/capabilities/lawn-mower-control.cap.d.ts +83 -0
  99. package/dist/capabilities/lawn-mower-control.cap.d.ts.map +1 -0
  100. package/dist/capabilities/local-network.cap.d.ts +1 -1
  101. package/dist/capabilities/lock-control.cap.d.ts +92 -0
  102. package/dist/capabilities/lock-control.cap.d.ts.map +1 -0
  103. package/dist/capabilities/mask-shape.d.ts +99 -0
  104. package/dist/capabilities/mask-shape.d.ts.map +1 -0
  105. package/dist/capabilities/media-player.cap.d.ts +201 -0
  106. package/dist/capabilities/media-player.cap.d.ts.map +1 -0
  107. package/dist/capabilities/mesh-network.cap.d.ts +3 -3
  108. package/dist/capabilities/motion-trigger.cap.d.ts +1 -0
  109. package/dist/capabilities/motion-trigger.cap.d.ts.map +1 -1
  110. package/dist/capabilities/motion-zones.cap.d.ts +95 -13
  111. package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
  112. package/dist/capabilities/mqtt-broker.cap.d.ts +3 -3
  113. package/dist/capabilities/native-object-detection.cap.d.ts +74 -3
  114. package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
  115. package/dist/capabilities/network-access.cap.d.ts +7 -7
  116. package/dist/capabilities/network-quality.cap.d.ts +5 -0
  117. package/dist/capabilities/network-quality.cap.d.ts.map +1 -1
  118. package/dist/capabilities/notifier.cap.d.ts +173 -0
  119. package/dist/capabilities/notifier.cap.d.ts.map +1 -0
  120. package/dist/capabilities/numeric-sensor.cap.d.ts +52 -0
  121. package/dist/capabilities/numeric-sensor.cap.d.ts.map +1 -0
  122. package/dist/capabilities/oauth-integration.cap.d.ts +4 -2
  123. package/dist/capabilities/oauth-integration.cap.d.ts.map +1 -1
  124. package/dist/capabilities/osd.cap.d.ts +1 -0
  125. package/dist/capabilities/osd.cap.d.ts.map +1 -1
  126. package/dist/capabilities/pipeline-analytics.cap.d.ts +69 -22
  127. package/dist/capabilities/pipeline-analytics.cap.d.ts.map +1 -1
  128. package/dist/capabilities/pipeline-executor.cap.d.ts +2 -2
  129. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +1 -1
  130. package/dist/capabilities/pipeline-runner.cap.d.ts +4 -2
  131. package/dist/capabilities/pipeline-runner.cap.d.ts.map +1 -1
  132. package/dist/capabilities/platform-probe.cap.d.ts +25 -0
  133. package/dist/capabilities/platform-probe.cap.d.ts.map +1 -1
  134. package/dist/capabilities/power-meter.cap.d.ts +65 -0
  135. package/dist/capabilities/power-meter.cap.d.ts.map +1 -0
  136. package/dist/capabilities/presence.cap.d.ts +79 -0
  137. package/dist/capabilities/presence.cap.d.ts.map +1 -0
  138. package/dist/capabilities/pressure-sensor.cap.d.ts +43 -0
  139. package/dist/capabilities/pressure-sensor.cap.d.ts.map +1 -0
  140. package/dist/capabilities/privacy-mask.cap.d.ts +207 -0
  141. package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -0
  142. package/dist/capabilities/ptz-autotrack.cap.d.ts +1 -0
  143. package/dist/capabilities/ptz-autotrack.cap.d.ts.map +1 -1
  144. package/dist/capabilities/ptz.cap.d.ts +1 -0
  145. package/dist/capabilities/ptz.cap.d.ts.map +1 -1
  146. package/dist/capabilities/reboot.cap.d.ts +1 -0
  147. package/dist/capabilities/reboot.cap.d.ts.map +1 -1
  148. package/dist/capabilities/recording.cap.d.ts +238 -32
  149. package/dist/capabilities/recording.cap.d.ts.map +1 -1
  150. package/dist/capabilities/restreamer.cap.d.ts +2 -2
  151. package/dist/capabilities/schemas/detection-shared.d.ts +14 -1
  152. package/dist/capabilities/schemas/detection-shared.d.ts.map +1 -1
  153. package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
  154. package/dist/capabilities/schemas/streaming-shared.d.ts +64 -1
  155. package/dist/capabilities/schemas/streaming-shared.d.ts.map +1 -1
  156. package/dist/capabilities/script-runner.cap.d.ts +62 -0
  157. package/dist/capabilities/script-runner.cap.d.ts.map +1 -0
  158. package/dist/capabilities/settings-store.cap.d.ts +25 -0
  159. package/dist/capabilities/settings-store.cap.d.ts.map +1 -1
  160. package/dist/capabilities/smoke.cap.d.ts +38 -0
  161. package/dist/capabilities/smoke.cap.d.ts.map +1 -0
  162. package/dist/capabilities/snapshot-provider.cap.d.ts +1 -1
  163. package/dist/capabilities/snapshot.cap.d.ts +1 -0
  164. package/dist/capabilities/snapshot.cap.d.ts.map +1 -1
  165. package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
  166. package/dist/capabilities/storage-evictable.cap.d.ts +54 -0
  167. package/dist/capabilities/storage-evictable.cap.d.ts.map +1 -0
  168. package/dist/capabilities/storage-provider.cap.d.ts +31 -186
  169. package/dist/capabilities/storage-provider.cap.d.ts.map +1 -1
  170. package/dist/capabilities/storage.cap.d.ts +35 -226
  171. package/dist/capabilities/storage.cap.d.ts.map +1 -1
  172. package/dist/capabilities/stream-broker.cap.d.ts +309 -25
  173. package/dist/capabilities/stream-broker.cap.d.ts.map +1 -1
  174. package/dist/capabilities/stream-catalog.cap.d.ts +85 -0
  175. package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -0
  176. package/dist/capabilities/stream-params.cap.d.ts +27 -26
  177. package/dist/capabilities/stream-params.cap.d.ts.map +1 -1
  178. package/dist/capabilities/switch.cap.d.ts +1 -0
  179. package/dist/capabilities/switch.cap.d.ts.map +1 -1
  180. package/dist/capabilities/tamper.cap.d.ts +33 -0
  181. package/dist/capabilities/tamper.cap.d.ts.map +1 -0
  182. package/dist/capabilities/temperature-sensor.cap.d.ts +51 -0
  183. package/dist/capabilities/temperature-sensor.cap.d.ts.map +1 -0
  184. package/dist/capabilities/update.cap.d.ts +49 -0
  185. package/dist/capabilities/update.cap.d.ts.map +1 -0
  186. package/dist/capabilities/user-management.cap.d.ts +20 -20
  187. package/dist/capabilities/vacuum-control.cap.d.ts +229 -0
  188. package/dist/capabilities/vacuum-control.cap.d.ts.map +1 -0
  189. package/dist/capabilities/valve.cap.d.ts +93 -0
  190. package/dist/capabilities/valve.cap.d.ts.map +1 -0
  191. package/dist/capabilities/vibration.cap.d.ts +33 -0
  192. package/dist/capabilities/vibration.cap.d.ts.map +1 -0
  193. package/dist/capabilities/water-heater.cap.d.ts +78 -0
  194. package/dist/capabilities/water-heater.cap.d.ts.map +1 -0
  195. package/dist/capabilities/weather.cap.d.ts +76 -0
  196. package/dist/capabilities/weather.cap.d.ts.map +1 -0
  197. package/dist/capabilities/webrtc-session.cap.d.ts +128 -0
  198. package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
  199. package/dist/constants.d.ts +0 -2
  200. package/dist/constants.d.ts.map +1 -1
  201. package/dist/device/base-device-provider.d.ts +11 -0
  202. package/dist/device/base-device-provider.d.ts.map +1 -1
  203. package/dist/device/base-device.d.ts +52 -0
  204. package/dist/device/base-device.d.ts.map +1 -1
  205. package/dist/device/device-context.d.ts +29 -0
  206. package/dist/device/device-context.d.ts.map +1 -1
  207. package/dist/device/device-link-transform.d.ts +6 -0
  208. package/dist/device/device-link-transform.d.ts.map +1 -0
  209. package/dist/device/device-management.d.ts +116 -4
  210. package/dist/device/device-management.d.ts.map +1 -1
  211. package/dist/device/device-type.d.ts +214 -3
  212. package/dist/device/device-type.d.ts.map +1 -1
  213. package/dist/device/device.d.ts +25 -0
  214. package/dist/device/device.d.ts.map +1 -1
  215. package/dist/device/index.d.ts +5 -1
  216. package/dist/device/index.d.ts.map +1 -1
  217. package/dist/device/path-util.d.ts +13 -0
  218. package/dist/device/path-util.d.ts.map +1 -0
  219. package/dist/device/schema-fields.d.ts +12 -0
  220. package/dist/device/schema-fields.d.ts.map +1 -0
  221. package/dist/device/source-info.d.ts +87 -0
  222. package/dist/device/source-info.d.ts.map +1 -0
  223. package/dist/device/system-mirror.d.ts +6 -2
  224. package/dist/device/system-mirror.d.ts.map +1 -1
  225. package/dist/encode-profile.d.ts +126 -0
  226. package/dist/encode-profile.d.ts.map +1 -0
  227. package/dist/enums/event-category.d.ts +92 -7
  228. package/dist/enums/event-category.d.ts.map +1 -1
  229. package/dist/generated/addon-api.d.ts +12821 -8025
  230. package/dist/generated/addon-api.d.ts.map +1 -1
  231. package/dist/generated/cap-status-types.d.ts +87 -1
  232. package/dist/generated/cap-status-types.d.ts.map +1 -1
  233. package/dist/generated/capability-router-map.d.ts +142 -7
  234. package/dist/generated/capability-router-map.d.ts.map +1 -1
  235. package/dist/generated/device-local-state.d.ts +123 -0
  236. package/dist/generated/device-local-state.d.ts.map +1 -1
  237. package/dist/generated/device-proxy.d.ts +132 -5
  238. package/dist/generated/device-proxy.d.ts.map +1 -1
  239. package/dist/generated/method-access-map.d.ts +1 -1
  240. package/dist/generated/method-access-map.d.ts.map +1 -1
  241. package/dist/generated/provider-kind-map.d.ts +1 -1
  242. package/dist/generated/provider-kind-map.d.ts.map +1 -1
  243. package/dist/generated/system-proxy.d.ts +10 -8
  244. package/dist/generated/system-proxy.d.ts.map +1 -1
  245. package/dist/health/wiring-health.d.ts +136 -0
  246. package/dist/health/wiring-health.d.ts.map +1 -0
  247. package/dist/{index-CMM1Y9W6.js → index-BSA_TBea.js} +4774 -923
  248. package/dist/index-BSA_TBea.js.map +1 -0
  249. package/dist/{index-QRlzao1I.mjs → index-Bpj3ScIH.mjs} +5142 -1291
  250. package/dist/index-Bpj3ScIH.mjs.map +1 -0
  251. package/dist/index.d.ts +23 -3
  252. package/dist/index.d.ts.map +1 -1
  253. package/dist/index.js +1498 -119
  254. package/dist/index.js.map +1 -1
  255. package/dist/index.mjs +1806 -427
  256. package/dist/index.mjs.map +1 -1
  257. package/dist/interfaces/addon-data-plane.d.ts +76 -0
  258. package/dist/interfaces/addon-data-plane.d.ts.map +1 -0
  259. package/dist/interfaces/addon.d.ts +61 -1
  260. package/dist/interfaces/addon.d.ts.map +1 -1
  261. package/dist/interfaces/advanced-notifier.d.ts +4 -0
  262. package/dist/interfaces/advanced-notifier.d.ts.map +1 -1
  263. package/dist/interfaces/capability.d.ts +59 -1
  264. package/dist/interfaces/capability.d.ts.map +1 -1
  265. package/dist/interfaces/config-ui.d.ts +70 -6
  266. package/dist/interfaces/config-ui.d.ts.map +1 -1
  267. package/dist/interfaces/device-capabilities/camera.d.ts +2 -1
  268. package/dist/interfaces/device-capabilities/camera.d.ts.map +1 -1
  269. package/dist/interfaces/event-bus.d.ts +105 -4
  270. package/dist/interfaces/event-bus.d.ts.map +1 -1
  271. package/dist/interfaces/kernel-abstractions.d.ts +10 -1
  272. package/dist/interfaces/kernel-abstractions.d.ts.map +1 -1
  273. package/dist/interfaces/network-quality.d.ts +8 -0
  274. package/dist/interfaces/network-quality.d.ts.map +1 -1
  275. package/dist/interfaces/pipeline-executor-capability.d.ts +2 -2
  276. package/dist/interfaces/pipeline-orchestrator-capability.d.ts +2 -1
  277. package/dist/interfaces/pipeline-orchestrator-capability.d.ts.map +1 -1
  278. package/dist/interfaces/pipeline-runner-capability.d.ts +7 -0
  279. package/dist/interfaces/pipeline-runner-capability.d.ts.map +1 -1
  280. package/dist/interfaces/recording-config.d.ts +91 -0
  281. package/dist/interfaces/recording-config.d.ts.map +1 -0
  282. package/dist/interfaces/rtp-egress.d.ts +2 -3
  283. package/dist/interfaces/rtp-egress.d.ts.map +1 -1
  284. package/dist/interfaces/storage-location-declaration.d.ts +34 -0
  285. package/dist/interfaces/storage-location-declaration.d.ts.map +1 -0
  286. package/dist/interfaces/storage-location.d.ts +18 -74
  287. package/dist/interfaces/storage-location.d.ts.map +1 -1
  288. package/dist/interfaces/storage.d.ts +15 -4
  289. package/dist/interfaces/storage.d.ts.map +1 -1
  290. package/dist/interfaces/stream-broker.d.ts +39 -4
  291. package/dist/interfaces/stream-broker.d.ts.map +1 -1
  292. package/dist/interfaces/timezones.d.ts +59 -0
  293. package/dist/interfaces/timezones.d.ts.map +1 -0
  294. package/dist/node.d.ts +3 -0
  295. package/dist/node.d.ts.map +1 -1
  296. package/dist/node.js +50 -8
  297. package/dist/node.js.map +1 -1
  298. package/dist/node.mjs +51 -9
  299. package/dist/node.mjs.map +1 -1
  300. package/dist/readiness/readiness-registry.d.ts.map +1 -1
  301. package/dist/schemas/auth-records.d.ts +4 -4
  302. package/dist/storage/filesystem-storage-provider.d.ts +2 -1
  303. package/dist/storage/filesystem-storage-provider.d.ts.map +1 -1
  304. package/dist/stream-selection.d.ts +85 -0
  305. package/dist/stream-selection.d.ts.map +1 -0
  306. package/dist/types/detection.d.ts +3 -3
  307. package/dist/types/io.d.ts +13 -1
  308. package/dist/types/io.d.ts.map +1 -1
  309. package/dist/util/location-match.d.ts +15 -0
  310. package/dist/util/location-match.d.ts.map +1 -0
  311. package/dist/utils/canonical-hash.d.ts +20 -0
  312. package/dist/utils/canonical-hash.d.ts.map +1 -0
  313. package/dist/utils/export-reconciler.d.ts +101 -0
  314. package/dist/utils/export-reconciler.d.ts.map +1 -0
  315. package/dist/utils/privacy-grid-raster.d.ts +48 -0
  316. package/dist/utils/privacy-grid-raster.d.ts.map +1 -0
  317. package/dist/utils/sleep.d.ts +36 -0
  318. package/dist/utils/sleep.d.ts.map +1 -0
  319. package/package.json +1 -1
  320. package/dist/capabilities/recording-engine.cap.d.ts +0 -477
  321. package/dist/capabilities/recording-engine.cap.d.ts.map +0 -1
  322. package/dist/index-CMM1Y9W6.js.map +0 -1
  323. package/dist/index-QRlzao1I.mjs.map +0 -1
@@ -87,7 +87,7 @@ export type Track = z.infer<typeof TrackSchema>;
87
87
  declare const MotionEventSchema: z.ZodObject<{
88
88
  kind: z.ZodLiteral<"motion">;
89
89
  regionCount: z.ZodNumber;
90
- regions: z.ZodReadonly<z.ZodArray<z.ZodObject<{
90
+ regions: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodObject<{
91
91
  bbox: z.ZodObject<{
92
92
  x: z.ZodNumber;
93
93
  y: z.ZodNumber;
@@ -96,9 +96,10 @@ declare const MotionEventSchema: z.ZodObject<{
96
96
  }, z.core.$strip>;
97
97
  pixelCount: z.ZodNumber;
98
98
  intensity: z.ZodNumber;
99
- }, z.core.$strip>>>;
100
- frameWidth: z.ZodNumber;
101
- frameHeight: z.ZodNumber;
99
+ }, z.core.$strip>>>>;
100
+ frameWidth: z.ZodOptional<z.ZodNumber>;
101
+ frameHeight: z.ZodOptional<z.ZodNumber>;
102
+ mediaUrl: z.ZodOptional<z.ZodString>;
102
103
  id: z.ZodString;
103
104
  deviceId: z.ZodNumber;
104
105
  timestamp: z.ZodNumber;
@@ -106,25 +107,26 @@ declare const MotionEventSchema: z.ZodObject<{
106
107
  export type MotionEvent = z.infer<typeof MotionEventSchema>;
107
108
  declare const ObjectEventSchema: z.ZodObject<{
108
109
  kind: z.ZodLiteral<"object">;
109
- trackId: z.ZodString;
110
+ trackId: z.ZodOptional<z.ZodString>;
110
111
  className: z.ZodString;
111
112
  label: z.ZodOptional<z.ZodString>;
112
- confidence: z.ZodNumber;
113
- bbox: z.ZodObject<{
113
+ confidence: z.ZodOptional<z.ZodNumber>;
114
+ bbox: z.ZodOptional<z.ZodObject<{
114
115
  x: z.ZodNumber;
115
116
  y: z.ZodNumber;
116
117
  w: z.ZodNumber;
117
118
  h: z.ZodNumber;
118
- }, z.core.$strip>;
119
- zones: z.ZodReadonly<z.ZodArray<z.ZodString>>;
120
- state: z.ZodEnum<{
119
+ }, z.core.$strip>>;
120
+ zones: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
121
+ state: z.ZodOptional<z.ZodEnum<{
121
122
  moving: "moving";
122
123
  left: "left";
123
124
  idle: "idle";
124
125
  new: "new";
125
126
  entered: "entered";
126
- }>;
127
+ }>>;
127
128
  mediaKey: z.ZodOptional<z.ZodString>;
129
+ mediaUrl: z.ZodOptional<z.ZodString>;
128
130
  id: z.ZodString;
129
131
  deviceId: z.ZodNumber;
130
132
  timestamp: z.ZodNumber;
@@ -139,6 +141,7 @@ declare const AudioEventSchema: z.ZodObject<{
139
141
  originalClass: z.ZodOptional<z.ZodString>;
140
142
  score: z.ZodNumber;
141
143
  }, z.core.$strip>>;
144
+ mediaUrl: z.ZodOptional<z.ZodString>;
142
145
  id: z.ZodString;
143
146
  deviceId: z.ZodNumber;
144
147
  timestamp: z.ZodNumber;
@@ -337,10 +340,14 @@ export declare const pipelineAnalyticsCapability: {
337
340
  since: z.ZodOptional<z.ZodNumber>;
338
341
  until: z.ZodOptional<z.ZodNumber>;
339
342
  limit: z.ZodDefault<z.ZodNumber>;
343
+ projection: z.ZodOptional<z.ZodEnum<{
344
+ full: "full";
345
+ slim: "slim";
346
+ }>>;
340
347
  }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
341
348
  kind: z.ZodLiteral<"motion">;
342
349
  regionCount: z.ZodNumber;
343
- regions: z.ZodReadonly<z.ZodArray<z.ZodObject<{
350
+ regions: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodObject<{
344
351
  bbox: z.ZodObject<{
345
352
  x: z.ZodNumber;
346
353
  y: z.ZodNumber;
@@ -349,9 +356,10 @@ export declare const pipelineAnalyticsCapability: {
349
356
  }, z.core.$strip>;
350
357
  pixelCount: z.ZodNumber;
351
358
  intensity: z.ZodNumber;
352
- }, z.core.$strip>>>;
353
- frameWidth: z.ZodNumber;
354
- frameHeight: z.ZodNumber;
359
+ }, z.core.$strip>>>>;
360
+ frameWidth: z.ZodOptional<z.ZodNumber>;
361
+ frameHeight: z.ZodOptional<z.ZodNumber>;
362
+ mediaUrl: z.ZodOptional<z.ZodString>;
355
363
  id: z.ZodString;
356
364
  deviceId: z.ZodNumber;
357
365
  timestamp: z.ZodNumber;
@@ -361,28 +369,33 @@ export declare const pipelineAnalyticsCapability: {
361
369
  since: z.ZodOptional<z.ZodNumber>;
362
370
  until: z.ZodOptional<z.ZodNumber>;
363
371
  limit: z.ZodDefault<z.ZodNumber>;
372
+ projection: z.ZodOptional<z.ZodEnum<{
373
+ full: "full";
374
+ slim: "slim";
375
+ }>>;
364
376
  classFilter: z.ZodOptional<z.ZodString>;
365
377
  }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
366
378
  kind: z.ZodLiteral<"object">;
367
- trackId: z.ZodString;
379
+ trackId: z.ZodOptional<z.ZodString>;
368
380
  className: z.ZodString;
369
381
  label: z.ZodOptional<z.ZodString>;
370
- confidence: z.ZodNumber;
371
- bbox: z.ZodObject<{
382
+ confidence: z.ZodOptional<z.ZodNumber>;
383
+ bbox: z.ZodOptional<z.ZodObject<{
372
384
  x: z.ZodNumber;
373
385
  y: z.ZodNumber;
374
386
  w: z.ZodNumber;
375
387
  h: z.ZodNumber;
376
- }, z.core.$strip>;
377
- zones: z.ZodReadonly<z.ZodArray<z.ZodString>>;
378
- state: z.ZodEnum<{
388
+ }, z.core.$strip>>;
389
+ zones: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
390
+ state: z.ZodOptional<z.ZodEnum<{
379
391
  moving: "moving";
380
392
  left: "left";
381
393
  idle: "idle";
382
394
  new: "new";
383
395
  entered: "entered";
384
- }>;
396
+ }>>;
385
397
  mediaKey: z.ZodOptional<z.ZodString>;
398
+ mediaUrl: z.ZodOptional<z.ZodString>;
386
399
  id: z.ZodString;
387
400
  deviceId: z.ZodNumber;
388
401
  timestamp: z.ZodNumber;
@@ -392,6 +405,10 @@ export declare const pipelineAnalyticsCapability: {
392
405
  since: z.ZodOptional<z.ZodNumber>;
393
406
  until: z.ZodOptional<z.ZodNumber>;
394
407
  limit: z.ZodDefault<z.ZodNumber>;
408
+ projection: z.ZodOptional<z.ZodEnum<{
409
+ full: "full";
410
+ slim: "slim";
411
+ }>>;
395
412
  }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
396
413
  kind: z.ZodLiteral<"audio">;
397
414
  rms: z.ZodNumber;
@@ -401,10 +418,40 @@ export declare const pipelineAnalyticsCapability: {
401
418
  originalClass: z.ZodOptional<z.ZodString>;
402
419
  score: z.ZodNumber;
403
420
  }, z.core.$strip>>;
421
+ mediaUrl: z.ZodOptional<z.ZodString>;
404
422
  id: z.ZodString;
405
423
  deviceId: z.ZodNumber;
406
424
  timestamp: z.ZodNumber;
407
425
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
426
+ /** Server-side bucketed event counts for the 24-hour timeline.
427
+ * Returns one entry per non-empty bucket; empty buckets are omitted. */
428
+ readonly getEventDensity: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
429
+ deviceId: z.ZodNumber;
430
+ since: z.ZodNumber;
431
+ until: z.ZodNumber;
432
+ bucketMs: z.ZodNumber;
433
+ }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
434
+ bucketStart: z.ZodNumber;
435
+ motion: z.ZodNumber;
436
+ object: z.ZodNumber;
437
+ audio: z.ZodNumber;
438
+ }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
439
+ /**
440
+ * Delete all events (motion + object + audio) for the given device
441
+ * that are older than `cutoffMs` (exclusive), and delete their
442
+ * thumbnails in lockstep. Returns per-kind deleted counts.
443
+ *
444
+ * Called by Phase B3 recorder orchestration to keep event history
445
+ * aligned with available footage.
446
+ */
447
+ readonly pruneEventsBefore: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
448
+ deviceId: z.ZodNumber;
449
+ cutoffMs: z.ZodNumber;
450
+ }, z.core.$strip>, z.ZodObject<{
451
+ motion: z.ZodNumber;
452
+ object: z.ZodNumber;
453
+ audio: z.ZodNumber;
454
+ }, z.core.$strip>, "mutation">;
408
455
  readonly getEventMedia: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
409
456
  eventId: z.ZodString;
410
457
  }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-analytics.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/pipeline-analytics.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;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,QAAA,MAAM,gBAAgB;;;;;;EAAuD,CAAA;AAC7E,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,eAAe;;;;EAAwC,CAAA;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAkBvD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkBf,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAc/C,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;iBAWrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;iBAYrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,QAAA,MAAM,gBAAgB;;;;;;;;;;;;iBAUpB,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAIzD,QAAA,MAAM,eAAe;;;;;;;;;;iBAMnB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AA6BvD,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;iBAO1B,CAAA;AAIF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkBpC;;6CAEqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAyCrC;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAUH,+CAA+C;;;;;;;;QAQ/C,wDAAwD;;;;;;;;;QASxD,kEAAkE;;;;;;;;;;;;;;CAU7B,CAAA;AAEzC,MAAM,MAAM,0BAA0B,GAAG,aAAa,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE1F,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GACvB,CAAA"}
1
+ {"version":3,"file":"pipeline-analytics.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/pipeline-analytics.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;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAIH,QAAA,MAAM,gBAAgB;;;;;;EAAuD,CAAA;AAC7E,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,QAAA,MAAM,eAAe;;;;EAAwC,CAAA;AAC7D,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAkBvD,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAkBf,CAAA;AACF,MAAM,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AAc/C,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;iBAgBrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;iBAmBrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;iBAYpB,CAAA;AACF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAIzD,QAAA,MAAM,eAAe;;;;;;;;;;iBAMnB,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAkCvD,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;iBAO1B,CAAA;AAIF,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkBpC;;6CAEqC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA+BrC;iFACyE;;;;;;;;;;;;QAiBzE;;;;;;;WAOG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkBH;;;;;WAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAUH,+CAA+C;;;;;;;;QAQ/C,wDAAwD;;;;;;;;;QASxD,kEAAkE;;;;;;;;;;;;;;CAU7B,CAAA;AAEzC,MAAM,MAAM,0BAA0B,GAAG,aAAa,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE1F,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,GACvB,CAAA"}
@@ -715,8 +715,8 @@ export declare const pipelineExecutorCapability: {
715
715
  * calls. Single root step + uniform model assumed; trees with crop
716
716
  * children fall back to sequential execution.
717
717
  *
718
- * Used by `scripts/bench-scrypted-style.mts` to mirror Scrypted's
719
- * `detectObjects(media, {batch})` semantics for fair comparison.
718
+ * Used by `scripts/bench-batch-style.mts` for batch benchmarking —
719
+ * N frames in one call to amortise per-call IPC overhead.
720
720
  */
721
721
  readonly runPipelineBatch: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
722
722
  engine: z.ZodOptional<z.ZodObject<{
@@ -308,8 +308,8 @@ export declare const pipelineOrchestratorCapability: {
308
308
  droppedFrames: z.ZodNumber;
309
309
  phase: z.ZodEnum<{
310
310
  idle: "idle";
311
- watching: "watching";
312
311
  active: "active";
312
+ watching: "watching";
313
313
  }>;
314
314
  }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
315
315
  /** Read the capability binding map for one node. Empty record = no overrides (first-registered wins). */
@@ -142,6 +142,7 @@ declare const RunnerCameraConfigSchema: z.ZodObject<{
142
142
  }, z.core.$strip>>>;
143
143
  color: z.ZodDefault<z.ZodString>;
144
144
  }, z.core.$strip>>>>;
145
+ onboardMotionDrivesAnalyzer: z.ZodDefault<z.ZodBoolean>;
145
146
  }, z.core.$strip>;
146
147
  /**
147
148
  * Per-device settings UI fields the runner cap owns. Co-located with
@@ -279,6 +280,7 @@ export declare const pipelineRunnerCapability: {
279
280
  }, z.core.$strip>>>;
280
281
  color: z.ZodDefault<z.ZodString>;
281
282
  }, z.core.$strip>>>>;
283
+ onboardMotionDrivesAnalyzer: z.ZodDefault<z.ZodBoolean>;
282
284
  }, z.core.$strip>, z.ZodObject<{
283
285
  success: z.ZodLiteral<true>;
284
286
  }, z.core.$strip>, "mutation">;
@@ -361,8 +363,8 @@ export declare const pipelineRunnerCapability: {
361
363
  droppedFrames: z.ZodNumber;
362
364
  phase: z.ZodEnum<{
363
365
  idle: "idle";
364
- watching: "watching";
365
366
  active: "active";
367
+ watching: "watching";
366
368
  }>;
367
369
  }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
368
370
  /** All per-camera metrics in one round-trip. */
@@ -379,8 +381,8 @@ export declare const pipelineRunnerCapability: {
379
381
  droppedFrames: z.ZodNumber;
380
382
  phase: z.ZodEnum<{
381
383
  idle: "idle";
382
- watching: "watching";
383
384
  active: "active";
385
+ watching: "watching";
384
386
  }>;
385
387
  deviceId: z.ZodNumber;
386
388
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-runner.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/pipeline-runner.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAKlG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAY7D;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;EAAkC,CAAA;AAC/D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE3D;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB;;;GAA4B,CAAA;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;iBAKlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6D5B,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,WAAW,EA2DnD,CAAA;AAEV;;;;GAIG;AACH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;iBAmBzB,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB;;;;;;iBAM5B,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB;;;;;QAMjC,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAElE,sEAAsE;;;;;;QAEtE;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;QAQH,oEAAoE;;;;;;;;;;;;;;QAEpE,iEAAiE;;;;;;;;QAEjE,8DAA8D;;;;;;;;;;;;;;;;;;;;QAE9D,gDAAgD;;;;;;;;;;;;;;;;;;;QAEhD,4DAA4D;;;CASvB,CAAA;AAEzC,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEpF,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,CAAA"}
1
+ {"version":3,"file":"pipeline-runner.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/pipeline-runner.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAKlG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAY7D;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB;;;EAAkC,CAAA;AAC/D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAE3D;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB;;;GAA4B,CAAA;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;iBAKlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6E5B,CAAA;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,0BAA0B,EAAE,SAAS,WAAW,EAqEnD,CAAA;AAEV;;;;GAIG;AACH,QAAA,MAAM,qBAAqB;;;;;;;;;;;;iBAmBzB,CAAA;AAEF;;;;GAIG;AACH,QAAA,MAAM,wBAAwB;;;;;;iBAM5B,CAAA;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,wBAAwB;;;;;QAMjC,kEAAkE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAElE,sEAAsE;;;;;;QAEtE;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;QAQH,oEAAoE;;;;;;;;;;;;;;QAEpE,iEAAiE;;;;;;;;QAEjE,8DAA8D;;;;;;;;;;;;;;;;;;;;QAE9D,gDAAgD;;;;;;;;;;;;;;;;;;;QAEhD,4DAA4D;;;CASvB,CAAA;AAEzC,MAAM,MAAM,uBAAuB,GAAG,aAAa,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEpF,OAAO,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,CAAA"}
@@ -108,6 +108,19 @@ declare const HardwareEncodersSchema: z.ZodObject<{
108
108
  probedAt: z.ZodNumber;
109
109
  }, z.core.$strip>;
110
110
  export type HardwareEncoders = z.infer<typeof HardwareEncodersSchema>;
111
+ /**
112
+ * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
113
+ * methods the configured ffmpeg binary actually supports (parsed from
114
+ * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
115
+ * egress never spends a spawn on a backend this build cannot offer. Per-stream
116
+ * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
117
+ * software fallback — this only filters out wholly-unsupported backends.
118
+ */
119
+ declare const HardwareDecodeAccelsSchema: z.ZodObject<{
120
+ methods: z.ZodReadonly<z.ZodArray<z.ZodString>>;
121
+ probedAt: z.ZodNumber;
122
+ }, z.core.$strip>;
123
+ export type HardwareDecodeAccels = z.infer<typeof HardwareDecodeAccelsSchema>;
111
124
  export declare const platformProbeCapability: {
112
125
  readonly name: "platform-probe";
113
126
  readonly scope: "system";
@@ -380,6 +393,18 @@ export declare const platformProbeCapability: {
380
393
  }>;
381
394
  probedAt: z.ZodNumber;
382
395
  }, z.core.$strip>, "mutation">;
396
+ /**
397
+ * Decode-side hw-accel probe — the `-hwaccel` methods the configured ffmpeg
398
+ * binary supports (via `ffmpeg -hwaccels`). Cached after first call.
399
+ */
400
+ readonly getHardwareDecodeAccels: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodObject<{
401
+ methods: z.ZodReadonly<z.ZodArray<z.ZodString>>;
402
+ probedAt: z.ZodNumber;
403
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
404
+ readonly refreshHardwareDecodeAccels: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodObject<{
405
+ methods: z.ZodReadonly<z.ZodArray<z.ZodString>>;
406
+ probedAt: z.ZodNumber;
407
+ }, z.core.$strip>, "mutation">;
383
408
  };
384
409
  };
385
410
  export type IPlatformProbeProvider = InferProvider<typeof platformProbeCapability>;
@@ -1 +1 @@
1
- {"version":3,"file":"platform-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/platform-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAgBlG,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;EAa3B,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM9B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK1B,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AA0DrE,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAehC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
1
+ {"version":3,"file":"platform-probe.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/platform-probe.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAgBlG,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;EAa3B,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAM9B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E,QAAA,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK1B,CAAA;AACF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE;;;;;;;GAOG;AACH,QAAA,MAAM,0BAA0B;;;iBAG9B,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AA0D7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAehC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAOH;;;WAGG;;;;;;;;;;CAQkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
@@ -0,0 +1,65 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Multi-metric electrical meter. One slice can carry any combination
6
+ * of instantaneous power (W), cumulative energy (kWh), voltage (V),
7
+ * and current (A) — all fields optional so a single-metric source
8
+ * (HA `sensor` with `device_class: power`) populates only what it
9
+ * has and aggregators (energy dashboards, billing exports) compose
10
+ * across providers without needing one cap per metric.
11
+ *
12
+ * Trade-off acknowledged: a HomeKit export that wants to surface
13
+ * "power" and "energy" as separate services has to crack open the
14
+ * slice and emit two characteristics from one cap. Worth it to avoid
15
+ * exploding the cap catalog with `power-w` / `energy-kwh` /
16
+ * `voltage-v` / `current-a` quartets that always travel together
17
+ * in real-world devices.
18
+ */
19
+ export declare const PowerMeterStatusSchema: z.ZodObject<{
20
+ watts: z.ZodOptional<z.ZodNumber>;
21
+ kwhTotal: z.ZodOptional<z.ZodNumber>;
22
+ volts: z.ZodOptional<z.ZodNumber>;
23
+ amps: z.ZodOptional<z.ZodNumber>;
24
+ va: z.ZodOptional<z.ZodNumber>;
25
+ powerFactor: z.ZodOptional<z.ZodNumber>;
26
+ lastFetchedAt: z.ZodNumber;
27
+ unit: z.ZodOptional<z.ZodString>;
28
+ precision: z.ZodOptional<z.ZodNumber>;
29
+ }, z.core.$strip>;
30
+ export type PowerMeterStatus = z.infer<typeof PowerMeterStatusSchema>;
31
+ export declare const powerMeterCapability: {
32
+ readonly name: "power-meter";
33
+ readonly scope: "device";
34
+ readonly deviceNative: true;
35
+ readonly mode: "singleton";
36
+ readonly deviceTypes: readonly [DeviceType.Sensor];
37
+ readonly methods: {};
38
+ readonly status: {
39
+ readonly schema: z.ZodObject<{
40
+ watts: z.ZodOptional<z.ZodNumber>;
41
+ kwhTotal: z.ZodOptional<z.ZodNumber>;
42
+ volts: z.ZodOptional<z.ZodNumber>;
43
+ amps: z.ZodOptional<z.ZodNumber>;
44
+ va: z.ZodOptional<z.ZodNumber>;
45
+ powerFactor: z.ZodOptional<z.ZodNumber>;
46
+ lastFetchedAt: z.ZodNumber;
47
+ unit: z.ZodOptional<z.ZodString>;
48
+ precision: z.ZodOptional<z.ZodNumber>;
49
+ }, z.core.$strip>;
50
+ readonly kind: "push";
51
+ };
52
+ readonly runtimeState: z.ZodObject<{
53
+ watts: z.ZodOptional<z.ZodNumber>;
54
+ kwhTotal: z.ZodOptional<z.ZodNumber>;
55
+ volts: z.ZodOptional<z.ZodNumber>;
56
+ amps: z.ZodOptional<z.ZodNumber>;
57
+ va: z.ZodOptional<z.ZodNumber>;
58
+ powerFactor: z.ZodOptional<z.ZodNumber>;
59
+ lastFetchedAt: z.ZodNumber;
60
+ unit: z.ZodOptional<z.ZodString>;
61
+ precision: z.ZodOptional<z.ZodNumber>;
62
+ }, z.core.$strip>;
63
+ };
64
+ export type IPowerMeterProvider = InferProvider<typeof powerMeterCapability>;
65
+ //# sourceMappingURL=power-meter.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"power-meter.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/power-meter.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;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;iBA0BjC,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
+ * Presence cap. Models HA `person.*` and `device_tracker.*` entities
6
+ * on `DeviceType.Presence`. Read-only — no setters: presence is
7
+ * derived from upstream signals (mobile-app location, router DHCP
8
+ * lease, Bluetooth beacon, manual zone change) and pushed into the
9
+ * slice.
10
+ *
11
+ * `state` follows HA's canonical values — `home` / `not_home` /
12
+ * `<zone-name>` for any other named zone. The zone name is freeform
13
+ * because users define arbitrary zones (`work`, `gym`, `school`).
14
+ *
15
+ * GPS coordinates are nullable — tracker types without location
16
+ * (Bluetooth scanner, MQTT presence) omit them. The presence of
17
+ * GPS data is signaled by `DeviceFeature.PresenceGps` for fast
18
+ * UI map-pin rendering.
19
+ */
20
+ declare const GpsLocationSchema: z.ZodObject<{
21
+ latitude: z.ZodNumber;
22
+ longitude: z.ZodNumber;
23
+ accuracyMeters: z.ZodNumber;
24
+ }, z.core.$strip>;
25
+ export type GpsLocation = z.infer<typeof GpsLocationSchema>;
26
+ export declare const PresenceStatusSchema: z.ZodObject<{
27
+ state: z.ZodString;
28
+ location: z.ZodNullable<z.ZodString>;
29
+ gps: z.ZodNullable<z.ZodObject<{
30
+ latitude: z.ZodNumber;
31
+ longitude: z.ZodNumber;
32
+ accuracyMeters: z.ZodNumber;
33
+ }, z.core.$strip>>;
34
+ batteryPercent: z.ZodNullable<z.ZodNumber>;
35
+ lastChangedAt: z.ZodNumber;
36
+ }, z.core.$strip>;
37
+ export type PresenceStatus = z.infer<typeof PresenceStatusSchema>;
38
+ export declare const presenceCapability: {
39
+ readonly name: "presence";
40
+ readonly scope: "device";
41
+ readonly deviceNative: true;
42
+ readonly mode: "singleton";
43
+ readonly deviceTypes: readonly [DeviceType.Presence];
44
+ readonly methods: {};
45
+ readonly status: {
46
+ readonly schema: z.ZodObject<{
47
+ state: z.ZodString;
48
+ location: z.ZodNullable<z.ZodString>;
49
+ gps: z.ZodNullable<z.ZodObject<{
50
+ latitude: z.ZodNumber;
51
+ longitude: z.ZodNumber;
52
+ accuracyMeters: z.ZodNumber;
53
+ }, z.core.$strip>>;
54
+ batteryPercent: z.ZodNullable<z.ZodNumber>;
55
+ lastChangedAt: z.ZodNumber;
56
+ }, z.core.$strip>;
57
+ readonly kind: "push";
58
+ };
59
+ /**
60
+ * Runtime-state slice — mirrored by the kernel. UI presence card
61
+ * reads `state` + `location` for the text label; iff `gps !== null`
62
+ * the map pin is rendered (use `DeviceFeature.PresenceGps` for the
63
+ * pre-fetch fast-path check).
64
+ */
65
+ readonly runtimeState: z.ZodObject<{
66
+ state: z.ZodString;
67
+ location: z.ZodNullable<z.ZodString>;
68
+ gps: z.ZodNullable<z.ZodObject<{
69
+ latitude: z.ZodNumber;
70
+ longitude: z.ZodNumber;
71
+ accuracyMeters: z.ZodNumber;
72
+ }, z.core.$strip>>;
73
+ batteryPercent: z.ZodNullable<z.ZodNumber>;
74
+ lastChangedAt: z.ZodNumber;
75
+ }, z.core.$strip>;
76
+ };
77
+ export type IPresenceProvider = InferProvider<typeof presenceCapability>;
78
+ export {};
79
+ //# sourceMappingURL=presence.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presence.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/presence.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;AAEH,QAAA,MAAM,iBAAiB;;;;iBAOrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,oBAAoB;;;;;;;;;;iBAa/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;IAW7B;;;;;OAKG;;;;;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,iBAAiB,GAAG,aAAa,CAAC,OAAO,kBAAkB,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
+ * Atmospheric pressure reading in hectopascals. Drives Home Assistant
6
+ * `sensor` entries with `device_class: pressure`.
7
+ *
8
+ * Unit normalisation: hPa. The canonical display unit (`hPa`) is a
9
+ * descriptor constant in the UI (ROLE_DESCRIPTOR), not stored in
10
+ * `sourceInfo`.
11
+ */
12
+ export declare const PressureSensorStatusSchema: z.ZodObject<{
13
+ hpa: 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 PressureSensorStatus = z.infer<typeof PressureSensorStatusSchema>;
19
+ export declare const pressureSensorCapability: {
20
+ readonly name: "pressure-sensor";
21
+ readonly scope: "device";
22
+ readonly deviceNative: true;
23
+ readonly mode: "singleton";
24
+ readonly deviceTypes: readonly [DeviceType.Sensor];
25
+ readonly methods: {};
26
+ readonly status: {
27
+ readonly schema: z.ZodObject<{
28
+ hpa: 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
+ hpa: 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 IPressureSensorProvider = InferProvider<typeof pressureSensorCapability>;
43
+ //# sourceMappingURL=pressure-sensor.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pressure-sensor.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/pressure-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"}