@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
@@ -14,6 +14,7 @@ export declare const CamStreamKindSchema: z.ZodEnum<{
14
14
  "pull-http": "pull-http";
15
15
  "pull-rfc4571": "pull-rfc4571";
16
16
  "push-annexb": "push-annexb";
17
+ derived: "derived";
17
18
  }>;
18
19
  export type CamStreamKind = z.infer<typeof CamStreamKindSchema>;
19
20
  export declare const CamStreamResolutionSchema: z.ZodObject<{
@@ -29,6 +30,7 @@ export declare const CameraStreamSchema: z.ZodObject<{
29
30
  "pull-http": "pull-http";
30
31
  "pull-rfc4571": "pull-rfc4571";
31
32
  "push-annexb": "push-annexb";
33
+ derived: "derived";
32
34
  }>;
33
35
  url: z.ZodOptional<z.ZodString>;
34
36
  codec: z.ZodOptional<z.ZodString>;
@@ -76,6 +78,39 @@ export declare const ProfileSlotSchema: z.ZodObject<{
76
78
  errorMessage: z.ZodOptional<z.ZodString>;
77
79
  }, z.core.$strip>;
78
80
  export type ProfileSlot = z.infer<typeof ProfileSlotSchema>;
81
+ /** The canonical consumer-facing broker id for a device profile. */
82
+ export declare function makeProfileBrokerId(deviceId: number, profile: CamProfile): string;
83
+ /**
84
+ * The broker id keying a physical SOURCE stream: `${deviceId}/${camStreamId}`.
85
+ * This is the broker's internal source key (`brokerIdFor` in the manager) — a
86
+ * `camStreamId` like `native:main` — as opposed to the public profile alias
87
+ * {@link makeProfileBrokerId}. Used to resolve a source's restream endpoint
88
+ * (e.g. routing a transcode's ffmpeg input through the broker so it rides the
89
+ * single source dial instead of opening a second camera connection).
90
+ */
91
+ export declare function makeSourceBrokerId(deviceId: number, camStreamId: string): string;
92
+ /**
93
+ * Inverse of {@link makeProfileBrokerId}. Returns `null` when the string is
94
+ * not a canonical `${deviceId}/${profile}` id — e.g. a broker-internal
95
+ * cam-stream id (`5/native:main`), a derived/adaptive ref, or a malformed
96
+ * value. So a caller can safely distinguish "addresses a public profile"
97
+ * from "addresses something broker-internal".
98
+ */
99
+ export declare function parseProfileBrokerId(brokerId: string): {
100
+ deviceId: number;
101
+ profile: CamProfile;
102
+ } | null;
103
+ /**
104
+ * The profile slots worth consuming/recording: ASSIGNED only
105
+ * (`sourceCamStreamId != null`), DEDUPED by physical source so the same
106
+ * camera encoder is never subscribed/recorded twice, ordered high→mid→low.
107
+ * Optionally scoped to one `deviceId`. Pure; never mutates the input.
108
+ *
109
+ * Recording `main` and `mid` when both point at the same `sourceCamStreamId`
110
+ * would dial the camera's internal stream twice for no benefit — this is the
111
+ * dedup that prevents that.
112
+ */
113
+ export declare function selectAssignedProfileSlots(slots: readonly ProfileSlot[], deviceId?: number): ProfileSlot[];
79
114
  /**
80
115
  * Zod schema for StreamSourceEntry — the canonical stream descriptor
81
116
  * exposed by ICameraDevice.getStreamSources() and consumed by the broker.
@@ -114,8 +149,8 @@ export declare const StreamSourceSchema: z.ZodObject<{
114
149
  }, z.core.$strip>;
115
150
  export declare const EncodedPacketSchema: z.ZodObject<{
116
151
  type: z.ZodEnum<{
117
- audio: "audio";
118
152
  video: "video";
153
+ audio: "audio";
119
154
  }>;
120
155
  data: z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>;
121
156
  pts: z.ZodNumber;
@@ -281,4 +316,32 @@ export declare const BrokerStatsSchema: z.ZodObject<{
281
316
  supported: z.ZodBoolean;
282
317
  }, z.core.$strip>>>;
283
318
  }, z.core.$strip>;
319
+ /**
320
+ * Exporter-facing "profile restream" entry. Returned by
321
+ * `cameraStreams.getProfileRtspEntries` — one per ASSIGNED profile slot
322
+ * (high/mid/low). `brokerId` is the PROFILE-keyed broker id
323
+ * (`${deviceId}/${profile}`, e.g. `15/high`); its `url` is a broker
324
+ * RTSP restream that aliases the profile's assigned source broker, so
325
+ * every consumer dialling a profile converges on the same single pull.
326
+ * `codec`/`resolution` describe the assigned SOURCE camStream (for the
327
+ * `auto` resolution-closest pick). Distinct from `RtspRestreamEntry`
328
+ * (raw per-camStream, live-view only).
329
+ */
330
+ export declare const ProfileRtspEntrySchema: z.ZodObject<{
331
+ profile: z.ZodEnum<{
332
+ high: "high";
333
+ mid: "mid";
334
+ low: "low";
335
+ }>;
336
+ brokerId: z.ZodString;
337
+ url: z.ZodString;
338
+ mutedUrl: z.ZodString;
339
+ enabled: z.ZodBoolean;
340
+ codec: z.ZodOptional<z.ZodString>;
341
+ resolution: z.ZodOptional<z.ZodObject<{
342
+ width: z.ZodNumber;
343
+ height: z.ZodNumber;
344
+ }, z.core.$strip>>;
345
+ }, z.core.$strip>;
346
+ export type ProfileRtspEntry = z.infer<typeof ProfileRtspEntrySchema>;
284
347
  //# sourceMappingURL=streaming-shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"streaming-shared.d.ts","sourceRoot":"","sources":["../../../src/capabilities/schemas/streaming-shared.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAWvB,eAAO,MAAM,gBAAgB;;;;EAAiC,CAAA;AAC9D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,iCAAkC,CAAA;AAiBhE,eAAO,MAAM,mBAAmB;;;;;;EAM9B,CAAA;AACF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;iBA2C7B,CAAA;AACF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAS7D,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;iBAY5B,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D;;;GAGG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;iBAUlC,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;iBAM7B,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;iBAO9B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;iBAM7B,CAAA;AAEF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;iBAW5B,CAAA;AAaF;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;;;;;EAA2C,CAAA;AAC/E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAEvE;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAYrC,CAAA;AACF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAA;AAE7E;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;;iBAKtC,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAA;AAE/E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB;;;;;iBAKlC,CAAA;AACF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAE3E;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B;;;iBAI1C,CAAA;AACF,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAEvF,sDAAsD;AACtD,eAAO,MAAM,gCAAgC;;iBAG3C,CAAA;AACF,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAA;AAEzF,eAAO,MAAM,kBAAkB;;;;;;EAAkE,CAAA;AAEjG,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAuC5B,CAAA"}
1
+ {"version":3,"file":"streaming-shared.d.ts","sourceRoot":"","sources":["../../../src/capabilities/schemas/streaming-shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Script-runner cap. Models HA `script.*` entities on
6
+ * `DeviceType.Script`. A Script is a pre-recorded action sequence
7
+ * that can be invoked imperatively — optionally with a variables
8
+ * map when the script declares input fields.
9
+ *
10
+ * Variable-support is signalled by `DeviceFeature.ScriptVariables`
11
+ * so the UI gates a "with parameters" form without a slice fetch.
12
+ */
13
+ export declare const ScriptRunnerStatusSchema: z.ZodObject<{
14
+ isRunning: z.ZodBoolean;
15
+ lastRunAt: z.ZodNumber;
16
+ lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
17
+ lastError: z.ZodNullable<z.ZodString>;
18
+ lastChangedAt: z.ZodNumber;
19
+ }, z.core.$strip>;
20
+ export type ScriptRunnerStatus = z.infer<typeof ScriptRunnerStatusSchema>;
21
+ export declare const scriptRunnerCapability: {
22
+ readonly name: "script-runner";
23
+ readonly scope: "device";
24
+ readonly deviceNative: true;
25
+ readonly mode: "singleton";
26
+ readonly deviceTypes: readonly [DeviceType.Script];
27
+ readonly methods: {
28
+ readonly run: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
29
+ deviceId: z.ZodNumber;
30
+ variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
31
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
32
+ /** Cancel a running script. Provider rejects when the script
33
+ * isn't currently running. */
34
+ readonly stop: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
35
+ deviceId: z.ZodNumber;
36
+ }, z.core.$strip>, z.ZodVoid, "mutation">;
37
+ };
38
+ readonly status: {
39
+ readonly schema: z.ZodObject<{
40
+ isRunning: z.ZodBoolean;
41
+ lastRunAt: z.ZodNumber;
42
+ lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
43
+ lastError: z.ZodNullable<z.ZodString>;
44
+ lastChangedAt: z.ZodNumber;
45
+ }, z.core.$strip>;
46
+ readonly kind: "push";
47
+ };
48
+ /**
49
+ * Runtime-state slice — mirrored by the kernel. UI script tile reads
50
+ * `isRunning` to render a spinner during execution and surfaces
51
+ * `lastError` / `lastRunSuccess` in the recent-runs panel.
52
+ */
53
+ readonly runtimeState: z.ZodObject<{
54
+ isRunning: z.ZodBoolean;
55
+ lastRunAt: z.ZodNumber;
56
+ lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
57
+ lastError: z.ZodNullable<z.ZodString>;
58
+ lastChangedAt: z.ZodNumber;
59
+ }, z.core.$strip>;
60
+ };
61
+ export type IScriptRunnerProvider = InferProvider<typeof scriptRunnerCapability>;
62
+ //# sourceMappingURL=script-runner.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-runner.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/script-runner.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;GAQG;AAEH,eAAO,MAAM,wBAAwB;;;;;;iBAanC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;QAkB/B;uCAC+B;;;;;;;;;;;;;;;IAWjC;;;;OAIG;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -147,6 +147,31 @@ export declare const settingsStoreCapability: {
147
147
  offset: z.ZodOptional<z.ZodNumber>;
148
148
  }, z.core.$strip>>;
149
149
  }, z.core.$strip>, z.ZodNumber, import("./capability-definition.js").CapabilityMethodKind>;
150
+ /** Grouped counts per ((field-origin)/bucketSize) bucket, filtered. */
151
+ readonly histogram: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
152
+ namespace: z.ZodOptional<z.ZodString>;
153
+ collection: z.ZodString;
154
+ field: z.ZodString;
155
+ bucketSize: z.ZodNumber;
156
+ origin: z.ZodNumber;
157
+ filter: z.ZodOptional<z.ZodObject<{
158
+ where: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
159
+ whereIn: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnknown>>>;
160
+ whereBetween: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodTuple<[z.ZodUnknown, z.ZodUnknown], null>>>;
161
+ orderBy: z.ZodOptional<z.ZodObject<{
162
+ field: z.ZodString;
163
+ direction: z.ZodEnum<{
164
+ asc: "asc";
165
+ desc: "desc";
166
+ }>;
167
+ }, z.core.$strip>>;
168
+ limit: z.ZodOptional<z.ZodNumber>;
169
+ offset: z.ZodOptional<z.ZodNumber>;
170
+ }, z.core.$strip>>;
171
+ }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
172
+ bucket: z.ZodNumber;
173
+ count: z.ZodNumber;
174
+ }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
150
175
  /** Check if a collection is empty. */
151
176
  readonly isEmpty: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
152
177
  namespace: z.ZodOptional<z.ZodString>;
@@ -1 +1 @@
1
- {"version":3,"file":"settings-store.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/settings-store.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;iBAUrB,CAAA;AAEF,8CAA8C;AAC9C,QAAA,MAAM,oBAAoB;;;iBAGxB,CAAA;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;;;;;;;;iBAM1B,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;iBAIzB,CAAA;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB;;;;;QAKhC,mDAAmD;;;;;;QAMnD,mDAAmD;;;;;;;QAOnD,mDAAmD;;;;;;;;;;;;;;;;;;;;;;QAMnD,2BAA2B;;;;;;;;;QAO3B,uCAAuC;;;;;;;QAOvC,iCAAiC;;;;;;QAOjC,0DAA0D;;;;;;;;;;;;;;;;;;;QAM1D,sCAAsC;;;;;QAMtC;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAElF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,2BAA2B,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;AAE/F,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA;AAEjG,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
1
+ {"version":3,"file":"settings-store.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/settings-store.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;iBAUrB,CAAA;AAEF,8CAA8C;AAC9C,QAAA,MAAM,oBAAoB;;;iBAGxB,CAAA;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;;;;;;;;iBAM1B,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;iBAIzB,CAAA;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB;;;;;QAKhC,mDAAmD;;;;;;QAMnD,mDAAmD;;;;;;;QAOnD,mDAAmD;;;;;;;;;;;;;;;;;;;;;;QAMnD,2BAA2B;;;;;;;;;QAO3B,uCAAuC;;;;;;;QAOvC,iCAAiC;;;;;;QAOjC,0DAA0D;;;;;;;;;;;;;;;;;;;QAM1D,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;QAUvE,sCAAsC;;;;;QAMtC;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAElF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,2BAA2B,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;AAE/F,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA;AAEjG,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * Smoke alarm sensor — boolean "is smoke currently detected" with
6
+ * timestamp of the last transition. Drives Home Assistant
7
+ * `binary_sensor` entries with `device_class: smoke`.
8
+ *
9
+ * Push-driven: a smoke event is critical, so the slice updates
10
+ * immediately on the upstream signal. Auto-clearing back to false is
11
+ * provider-controlled (some alarms latch until manually reset).
12
+ */
13
+ export declare const SmokeStatusSchema: z.ZodObject<{
14
+ detected: z.ZodBoolean;
15
+ lastChangedAt: z.ZodNumber;
16
+ }, z.core.$strip>;
17
+ export type SmokeStatus = z.infer<typeof SmokeStatusSchema>;
18
+ export declare const smokeCapability: {
19
+ readonly name: "smoke";
20
+ readonly scope: "device";
21
+ readonly deviceNative: true;
22
+ readonly mode: "singleton";
23
+ readonly deviceTypes: readonly [DeviceType.Sensor];
24
+ readonly methods: {};
25
+ readonly status: {
26
+ readonly schema: z.ZodObject<{
27
+ detected: z.ZodBoolean;
28
+ lastChangedAt: z.ZodNumber;
29
+ }, z.core.$strip>;
30
+ readonly kind: "push";
31
+ };
32
+ readonly runtimeState: z.ZodObject<{
33
+ detected: z.ZodBoolean;
34
+ lastChangedAt: z.ZodNumber;
35
+ }, z.core.$strip>;
36
+ };
37
+ export type ISmokeProvider = InferProvider<typeof smokeCapability>;
38
+ //# sourceMappingURL=smoke.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smoke.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/smoke.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;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB;;;iBAI5B,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"}
@@ -3,7 +3,7 @@ import { type InferProvider } from './capability-definition.js';
3
3
  /**
4
4
  * snapshot-provider — collection of native snapshot implementations.
5
5
  *
6
- * Device provider addons (ONVIF, Frigate, Scrypted, etc.) register here
6
+ * Device provider addons (ONVIF, Frigate, etc.) register here
7
7
  * when they can capture frames through a protocol-native path (e.g.
8
8
  * ONVIF GetSnapshotUri, Frigate /api/<cam>/latest.jpg). The `snapshot`
9
9
  * singleton orchestrator iterates over the collection, asking each
@@ -47,6 +47,7 @@ declare const SnapshotStatusSchema: z.ZodObject<{
47
47
  export declare const snapshotCapability: {
48
48
  readonly name: "snapshot";
49
49
  readonly scope: "device";
50
+ readonly deviceNative: true;
50
51
  readonly mode: "singleton";
51
52
  readonly kind: "wrapper";
52
53
  readonly defaultActive: true;
@@ -1 +1 @@
1
- {"version":3,"file":"snapshot.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/snapshot.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,QAAA,MAAM,mBAAmB;;;iBAGvB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB;;;;;iBASxB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCU,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE5E,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAA"}
1
+ {"version":3,"file":"snapshot.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/snapshot.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,QAAA,MAAM,mBAAmB;;;iBAGvB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB;;;;;iBASxB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCU,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE5E,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAA"}
@@ -25,8 +25,8 @@ declare const SsoBridgeClaimsSchema: z.ZodObject<{
25
25
  scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
26
26
  type: z.ZodLiteral<"category">;
27
27
  target: z.ZodEnum<{
28
- system: "system";
29
28
  device: "device";
29
+ system: "system";
30
30
  }>;
31
31
  access: z.ZodArray<z.ZodEnum<{
32
32
  view: "view";
@@ -81,8 +81,8 @@ export declare const ssoBridgeCapability: {
81
81
  scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
82
82
  type: z.ZodLiteral<"category">;
83
83
  target: z.ZodEnum<{
84
- system: "system";
85
84
  device: "device";
85
+ system: "system";
86
86
  }>;
87
87
  access: z.ZodArray<z.ZodEnum<{
88
88
  view: "view";
@@ -136,8 +136,8 @@ export declare const ssoBridgeCapability: {
136
136
  scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
137
137
  type: z.ZodLiteral<"category">;
138
138
  target: z.ZodEnum<{
139
- system: "system";
140
139
  device: "device";
140
+ system: "system";
141
141
  }>;
142
142
  access: z.ZodArray<z.ZodEnum<{
143
143
  view: "view";
@@ -0,0 +1,54 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ /**
4
+ * `storage-evictable` — implemented by any addon that owns evictable data on a
5
+ * storage location (recordings, event clips, thumbnails, …).
6
+ *
7
+ * The core `StoragePressureManager` (in storage-orchestrator) owns the TRIGGER:
8
+ * it monitors free space per location and, on breach of a location's
9
+ * `minFreePercent`, asks each evictable provider to free a share of the deficit.
10
+ * The provider decides WHAT is expendable and does the deletion itself — core
11
+ * never deletes data it doesn't understand. This inverts control so disk-space
12
+ * arbitration is one cross-consumer concern, not re-implemented per addon.
13
+ *
14
+ * `internal: true` — consumed only by the orchestrator's pressure manager, never
15
+ * a public client surface.
16
+ */
17
+ declare const EvictableUsageSchema: z.ZodObject<{
18
+ bytes: z.ZodNumber;
19
+ }, z.core.$strip>;
20
+ export type EvictableUsage = z.infer<typeof EvictableUsageSchema>;
21
+ declare const EvictResultSchema: z.ZodObject<{
22
+ reclaimedBytes: z.ZodNumber;
23
+ exhausted: z.ZodBoolean;
24
+ }, z.core.$strip>;
25
+ export type EvictResult = z.infer<typeof EvictResultSchema>;
26
+ export declare const storageEvictableCapability: {
27
+ readonly name: "storage-evictable";
28
+ readonly scope: "system";
29
+ readonly mode: "collection";
30
+ readonly internal: true;
31
+ readonly methods: {
32
+ /** Bytes this provider holds on the given location — drives proportional fan-out. */
33
+ readonly getEvictableUsage: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
34
+ locationId: z.ZodString;
35
+ }, z.core.$strip>, z.ZodObject<{
36
+ bytes: z.ZodNumber;
37
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
38
+ /**
39
+ * Free approximately `targetBytes` of this provider's OWN least-valuable
40
+ * data on the location (oldest footage, expired clips, …). Returns what it
41
+ * actually reclaimed + whether it is now exhausted.
42
+ */
43
+ readonly evict: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
44
+ locationId: z.ZodString;
45
+ targetBytes: z.ZodNumber;
46
+ }, z.core.$strip>, z.ZodObject<{
47
+ reclaimedBytes: z.ZodNumber;
48
+ exhausted: z.ZodBoolean;
49
+ }, z.core.$strip>, "mutation">;
50
+ };
51
+ };
52
+ export type IStorageEvictableProvider = InferProvider<typeof storageEvictableCapability>;
53
+ export {};
54
+ //# sourceMappingURL=storage-evictable.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"storage-evictable.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/storage-evictable.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;;;;;;;;;;;;GAaG;AAEH,QAAA,MAAM,oBAAoB;;iBAGxB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,QAAA,MAAM,iBAAiB;;;iBAKrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,0BAA0B;;;;;;QAMnC,qFAAqF;;;;;;QAKrF;;;;WAIG;;;;;;;;;CAOkC,CAAA;AAEzC,MAAM,MAAM,yBAAyB,GAAG,aAAa,CAAC,OAAO,0BAA0B,CAAC,CAAA"}