@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
@@ -5,6 +5,11 @@ declare const RtspRestreamEntrySchema: z.ZodObject<{
5
5
  url: z.ZodString;
6
6
  mutedUrl: z.ZodString;
7
7
  enabled: z.ZodBoolean;
8
+ codec: z.ZodOptional<z.ZodString>;
9
+ resolution: z.ZodOptional<z.ZodObject<{
10
+ width: z.ZodNumber;
11
+ height: z.ZodNumber;
12
+ }, z.core.$strip>>;
8
13
  }, z.core.$strip>;
9
14
  export declare const BrokerRtspClientSchema: z.ZodObject<{
10
15
  sessionId: z.ZodString;
@@ -27,6 +32,105 @@ export declare const BrokerAudioClientSchema: z.ZodObject<{
27
32
  subscribedAt: z.ZodNumber;
28
33
  chunksDelivered: z.ZodNumber;
29
34
  }, z.core.$strip>;
35
+ /**
36
+ * Identifies who is holding an encoded / raw-RTP subscription open on
37
+ * the broker. Populated by the subscribing addon when it attaches —
38
+ * defaults to `{ kind: 'unknown' }` for callers that haven't been
39
+ * migrated. The widget surfaces every field that's set so an operator
40
+ * can answer "who is keeping cam X warm?" without grepping logs.
41
+ */
42
+ export declare const BrokerConsumerKindSchema: z.ZodEnum<{
43
+ unknown: "unknown";
44
+ recording: "recording";
45
+ snapshot: "snapshot";
46
+ pipeline: "pipeline";
47
+ alexa: "alexa";
48
+ homekit: "homekit";
49
+ "webrtc-browser": "webrtc-browser";
50
+ "webrtc-mobile": "webrtc-mobile";
51
+ "webrtc-whep": "webrtc-whep";
52
+ "rtsp-listen": "rtsp-listen";
53
+ "derived-broker": "derived-broker";
54
+ warmup: "warmup";
55
+ }>;
56
+ export type BrokerConsumerKind = z.infer<typeof BrokerConsumerKindSchema>;
57
+ export declare const BrokerConsumerAttributionSchema: z.ZodReadonly<z.ZodObject<{
58
+ kind: z.ZodEnum<{
59
+ unknown: "unknown";
60
+ recording: "recording";
61
+ snapshot: "snapshot";
62
+ pipeline: "pipeline";
63
+ alexa: "alexa";
64
+ homekit: "homekit";
65
+ "webrtc-browser": "webrtc-browser";
66
+ "webrtc-mobile": "webrtc-mobile";
67
+ "webrtc-whep": "webrtc-whep";
68
+ "rtsp-listen": "rtsp-listen";
69
+ "derived-broker": "derived-broker";
70
+ warmup: "warmup";
71
+ }>;
72
+ label: z.ZodOptional<z.ZodString>;
73
+ media: z.ZodOptional<z.ZodEnum<{
74
+ video: "video";
75
+ audio: "audio";
76
+ both: "both";
77
+ }>>;
78
+ targetCodec: z.ZodOptional<z.ZodString>;
79
+ transport: z.ZodOptional<z.ZodEnum<{
80
+ passthrough: "passthrough";
81
+ repacketize: "repacketize";
82
+ transcode: "transcode";
83
+ }>>;
84
+ remoteAddr: z.ZodOptional<z.ZodString>;
85
+ userAgent: z.ZodOptional<z.ZodString>;
86
+ userId: z.ZodOptional<z.ZodString>;
87
+ sessionId: z.ZodOptional<z.ZodString>;
88
+ extra: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
89
+ }, z.core.$strip>>;
90
+ export type BrokerConsumerAttribution = z.infer<typeof BrokerConsumerAttributionSchema>;
91
+ export declare const BrokerEncodedClientSchema: z.ZodObject<{
92
+ id: z.ZodString;
93
+ channel: z.ZodEnum<{
94
+ annexb: "annexb";
95
+ rtp: "rtp";
96
+ }>;
97
+ attribution: z.ZodReadonly<z.ZodObject<{
98
+ kind: z.ZodEnum<{
99
+ unknown: "unknown";
100
+ recording: "recording";
101
+ snapshot: "snapshot";
102
+ pipeline: "pipeline";
103
+ alexa: "alexa";
104
+ homekit: "homekit";
105
+ "webrtc-browser": "webrtc-browser";
106
+ "webrtc-mobile": "webrtc-mobile";
107
+ "webrtc-whep": "webrtc-whep";
108
+ "rtsp-listen": "rtsp-listen";
109
+ "derived-broker": "derived-broker";
110
+ warmup: "warmup";
111
+ }>;
112
+ label: z.ZodOptional<z.ZodString>;
113
+ media: z.ZodOptional<z.ZodEnum<{
114
+ video: "video";
115
+ audio: "audio";
116
+ both: "both";
117
+ }>>;
118
+ targetCodec: z.ZodOptional<z.ZodString>;
119
+ transport: z.ZodOptional<z.ZodEnum<{
120
+ passthrough: "passthrough";
121
+ repacketize: "repacketize";
122
+ transcode: "transcode";
123
+ }>>;
124
+ remoteAddr: z.ZodOptional<z.ZodString>;
125
+ userAgent: z.ZodOptional<z.ZodString>;
126
+ userId: z.ZodOptional<z.ZodString>;
127
+ sessionId: z.ZodOptional<z.ZodString>;
128
+ extra: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
129
+ }, z.core.$strip>>;
130
+ subscribedAt: z.ZodNumber;
131
+ packetsDelivered: z.ZodNumber;
132
+ }, z.core.$strip>;
133
+ export type BrokerEncodedClient = z.infer<typeof BrokerEncodedClientSchema>;
30
134
  export declare const BrokerClientsSchema: z.ZodObject<{
31
135
  rtsp: z.ZodReadonly<z.ZodArray<z.ZodObject<{
32
136
  sessionId: z.ZodString;
@@ -49,6 +153,48 @@ export declare const BrokerClientsSchema: z.ZodObject<{
49
153
  subscribedAt: z.ZodNumber;
50
154
  chunksDelivered: z.ZodNumber;
51
155
  }, z.core.$strip>>>;
156
+ encoded: z.ZodReadonly<z.ZodArray<z.ZodObject<{
157
+ id: z.ZodString;
158
+ channel: z.ZodEnum<{
159
+ annexb: "annexb";
160
+ rtp: "rtp";
161
+ }>;
162
+ attribution: z.ZodReadonly<z.ZodObject<{
163
+ kind: z.ZodEnum<{
164
+ unknown: "unknown";
165
+ recording: "recording";
166
+ snapshot: "snapshot";
167
+ pipeline: "pipeline";
168
+ alexa: "alexa";
169
+ homekit: "homekit";
170
+ "webrtc-browser": "webrtc-browser";
171
+ "webrtc-mobile": "webrtc-mobile";
172
+ "webrtc-whep": "webrtc-whep";
173
+ "rtsp-listen": "rtsp-listen";
174
+ "derived-broker": "derived-broker";
175
+ warmup: "warmup";
176
+ }>;
177
+ label: z.ZodOptional<z.ZodString>;
178
+ media: z.ZodOptional<z.ZodEnum<{
179
+ video: "video";
180
+ audio: "audio";
181
+ both: "both";
182
+ }>>;
183
+ targetCodec: z.ZodOptional<z.ZodString>;
184
+ transport: z.ZodOptional<z.ZodEnum<{
185
+ passthrough: "passthrough";
186
+ repacketize: "repacketize";
187
+ transcode: "transcode";
188
+ }>>;
189
+ remoteAddr: z.ZodOptional<z.ZodString>;
190
+ userAgent: z.ZodOptional<z.ZodString>;
191
+ userId: z.ZodOptional<z.ZodString>;
192
+ sessionId: z.ZodOptional<z.ZodString>;
193
+ extra: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
194
+ }, z.core.$strip>>;
195
+ subscribedAt: z.ZodNumber;
196
+ packetsDelivered: z.ZodNumber;
197
+ }, z.core.$strip>>>;
52
198
  pipeClients: z.ZodNumber;
53
199
  encodedSubscribers: z.ZodNumber;
54
200
  }, z.core.$strip>;
@@ -65,35 +211,44 @@ export declare const PlaceholderReasonSchema: z.ZodEnum<{
65
211
  }>;
66
212
  export type PlaceholderReason = z.infer<typeof PlaceholderReasonSchema>;
67
213
  declare const VideoCodecTargetSchema: z.ZodEnum<{
68
- auto: "auto";
69
- H264: "H264";
70
- H265: "H265";
214
+ h264: "h264";
215
+ h265: "h265";
216
+ copy: "copy";
71
217
  }>;
72
218
  export type VideoCodecTarget = z.infer<typeof VideoCodecTargetSchema>;
73
219
  declare const AudioCodecTargetSchema: z.ZodEnum<{
220
+ copy: "copy";
221
+ opus: "opus";
222
+ aac: "aac";
223
+ pcmu: "pcmu";
74
224
  none: "none";
75
- AAC: "AAC";
76
- Opus: "Opus";
77
- PCMU: "PCMU";
78
225
  }>;
79
226
  export type AudioCodecTarget = z.infer<typeof AudioCodecTargetSchema>;
80
227
  export declare const GetStreamWithCodecInputSchema: z.ZodObject<{
81
228
  deviceId: z.ZodNumber;
82
- videoCodec: z.ZodEnum<{
83
- auto: "auto";
84
- H264: "H264";
85
- H265: "H265";
229
+ video: z.ZodEnum<{
230
+ h264: "h264";
231
+ h265: "h265";
232
+ copy: "copy";
86
233
  }>;
87
- audioCodec: z.ZodOptional<z.ZodEnum<{
234
+ audio: z.ZodOptional<z.ZodEnum<{
235
+ copy: "copy";
236
+ opus: "opus";
237
+ aac: "aac";
238
+ pcmu: "pcmu";
88
239
  none: "none";
89
- AAC: "AAC";
90
- Opus: "Opus";
91
- PCMU: "PCMU";
92
240
  }>>;
93
- maxResolution: z.ZodOptional<z.ZodObject<{
241
+ profile: z.ZodOptional<z.ZodEnum<{
242
+ high: "high";
243
+ mid: "mid";
244
+ low: "low";
245
+ }>>;
246
+ targetResolution: z.ZodOptional<z.ZodObject<{
94
247
  width: z.ZodNumber;
95
248
  height: z.ZodNumber;
96
249
  }, z.core.$strip>>;
250
+ outputArgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
251
+ audioEgress: z.ZodOptional<z.ZodBoolean>;
97
252
  tag: z.ZodOptional<z.ZodString>;
98
253
  }, z.core.$strip>;
99
254
  export type GetStreamWithCodecInput = z.infer<typeof GetStreamWithCodecInputSchema>;
@@ -128,6 +283,7 @@ export declare const streamBrokerCapability: {
128
283
  "pull-http": "pull-http";
129
284
  "pull-rfc4571": "pull-rfc4571";
130
285
  "push-annexb": "push-annexb";
286
+ derived: "derived";
131
287
  }>;
132
288
  url: z.ZodOptional<z.ZodString>;
133
289
  codec: z.ZodOptional<z.ZodString>;
@@ -140,6 +296,54 @@ export declare const streamBrokerCapability: {
140
296
  deviceFeatures: z.ZodOptional<z.ZodArray<z.ZodString>>;
141
297
  autoEligible: z.ZodOptional<z.ZodBoolean>;
142
298
  metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
299
+ sourceCamStreamId: z.ZodOptional<z.ZodString>;
300
+ encodeProfile: z.ZodOptional<z.ZodObject<{
301
+ video: z.ZodObject<{
302
+ codec: z.ZodEnum<{
303
+ h264: "h264";
304
+ h265: "h265";
305
+ copy: "copy";
306
+ }>;
307
+ profile: z.ZodOptional<z.ZodEnum<{
308
+ baseline: "baseline";
309
+ main: "main";
310
+ high: "high";
311
+ }>>;
312
+ width: z.ZodOptional<z.ZodNumber>;
313
+ height: z.ZodOptional<z.ZodNumber>;
314
+ fps: z.ZodOptional<z.ZodNumber>;
315
+ bitrateKbps: z.ZodOptional<z.ZodNumber>;
316
+ gopFrames: z.ZodOptional<z.ZodNumber>;
317
+ bf: z.ZodOptional<z.ZodNumber>;
318
+ preset: z.ZodOptional<z.ZodEnum<{
319
+ ultrafast: "ultrafast";
320
+ superfast: "superfast";
321
+ veryfast: "veryfast";
322
+ faster: "faster";
323
+ fast: "fast";
324
+ medium: "medium";
325
+ }>>;
326
+ tune: z.ZodOptional<z.ZodEnum<{
327
+ zerolatency: "zerolatency";
328
+ film: "film";
329
+ animation: "animation";
330
+ }>>;
331
+ }, z.core.$strip>;
332
+ audio: z.ZodUnion<readonly [z.ZodLiteral<"passthrough">, z.ZodObject<{
333
+ codec: z.ZodEnum<{
334
+ copy: "copy";
335
+ opus: "opus";
336
+ aac: "aac";
337
+ pcmu: "pcmu";
338
+ pcma: "pcma";
339
+ }>;
340
+ bitrateKbps: z.ZodOptional<z.ZodNumber>;
341
+ sampleRateHz: z.ZodOptional<z.ZodNumber>;
342
+ channels: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<1>, z.ZodLiteral<2>]>>;
343
+ }, z.core.$strip>]>;
344
+ inputArgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
345
+ outputArgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
346
+ }, z.core.$strip>>;
143
347
  }, z.core.$strip>, z.ZodObject<{
144
348
  success: z.ZodLiteral<true>;
145
349
  }, z.core.$strip>, "mutation">;
@@ -179,6 +383,7 @@ export declare const streamBrokerCapability: {
179
383
  "pull-http": "pull-http";
180
384
  "pull-rfc4571": "pull-rfc4571";
181
385
  "push-annexb": "push-annexb";
386
+ derived: "derived";
182
387
  }>;
183
388
  url: z.ZodOptional<z.ZodString>;
184
389
  codec: z.ZodOptional<z.ZodString>;
@@ -273,6 +478,48 @@ export declare const streamBrokerCapability: {
273
478
  subscribedAt: z.ZodNumber;
274
479
  chunksDelivered: z.ZodNumber;
275
480
  }, z.core.$strip>>>;
481
+ encoded: z.ZodReadonly<z.ZodArray<z.ZodObject<{
482
+ id: z.ZodString;
483
+ channel: z.ZodEnum<{
484
+ annexb: "annexb";
485
+ rtp: "rtp";
486
+ }>;
487
+ attribution: z.ZodReadonly<z.ZodObject<{
488
+ kind: z.ZodEnum<{
489
+ unknown: "unknown";
490
+ recording: "recording";
491
+ snapshot: "snapshot";
492
+ pipeline: "pipeline";
493
+ alexa: "alexa";
494
+ homekit: "homekit";
495
+ "webrtc-browser": "webrtc-browser";
496
+ "webrtc-mobile": "webrtc-mobile";
497
+ "webrtc-whep": "webrtc-whep";
498
+ "rtsp-listen": "rtsp-listen";
499
+ "derived-broker": "derived-broker";
500
+ warmup: "warmup";
501
+ }>;
502
+ label: z.ZodOptional<z.ZodString>;
503
+ media: z.ZodOptional<z.ZodEnum<{
504
+ video: "video";
505
+ audio: "audio";
506
+ both: "both";
507
+ }>>;
508
+ targetCodec: z.ZodOptional<z.ZodString>;
509
+ transport: z.ZodOptional<z.ZodEnum<{
510
+ passthrough: "passthrough";
511
+ repacketize: "repacketize";
512
+ transcode: "transcode";
513
+ }>>;
514
+ remoteAddr: z.ZodOptional<z.ZodString>;
515
+ userAgent: z.ZodOptional<z.ZodString>;
516
+ userId: z.ZodOptional<z.ZodString>;
517
+ sessionId: z.ZodOptional<z.ZodString>;
518
+ extra: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
519
+ }, z.core.$strip>>;
520
+ subscribedAt: z.ZodNumber;
521
+ packetsDelivered: z.ZodNumber;
522
+ }, z.core.$strip>>>;
276
523
  pipeClients: z.ZodNumber;
277
524
  encodedSubscribers: z.ZodNumber;
278
525
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
@@ -297,6 +544,12 @@ export declare const streamBrokerCapability: {
297
544
  }, z.core.$strip>, z.ZodObject<{
298
545
  success: z.ZodBoolean;
299
546
  }, z.core.$strip>, "mutation">;
547
+ /**
548
+ * LEGACY / observability. Returns a raw per-broker restream URL for a
549
+ * single stream. Prefer {@link getStreamWithCodec} for programmatic
550
+ * CONSUMPTION — it is the single demand-counted entry that rides the
551
+ * broker's one source dial and returns a codec-correct passthrough.
552
+ */
300
553
  readonly getStreamUrl: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
301
554
  streamId: z.ZodString;
302
555
  format: z.ZodEnum<{
@@ -309,26 +562,37 @@ export declare const streamBrokerCapability: {
309
562
  url: z.ZodString;
310
563
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
311
564
  /**
312
- * Shared codec-targeted stream API — see Task #184.
565
+ * Shared codec-targeted stream API — see Task #184. THE single public
566
+ * stream-acquisition surface for programmatic consumers: single-dial
567
+ * (rides the broker's one source pull) and passthrough-correct
568
+ * (`videoCodec:'auto'` → `-c copy`, never a needless re-encode).
313
569
  * Resolution order: source-select → HW transcode → libx264/libx265.
314
570
  */
315
571
  readonly getStreamWithCodec: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
316
572
  deviceId: z.ZodNumber;
317
- videoCodec: z.ZodEnum<{
318
- auto: "auto";
319
- H264: "H264";
320
- H265: "H265";
573
+ video: z.ZodEnum<{
574
+ h264: "h264";
575
+ h265: "h265";
576
+ copy: "copy";
321
577
  }>;
322
- audioCodec: z.ZodOptional<z.ZodEnum<{
578
+ audio: z.ZodOptional<z.ZodEnum<{
579
+ copy: "copy";
580
+ opus: "opus";
581
+ aac: "aac";
582
+ pcmu: "pcmu";
323
583
  none: "none";
324
- AAC: "AAC";
325
- Opus: "Opus";
326
- PCMU: "PCMU";
327
584
  }>>;
328
- maxResolution: z.ZodOptional<z.ZodObject<{
585
+ profile: z.ZodOptional<z.ZodEnum<{
586
+ high: "high";
587
+ mid: "mid";
588
+ low: "low";
589
+ }>>;
590
+ targetResolution: z.ZodOptional<z.ZodObject<{
329
591
  width: z.ZodNumber;
330
592
  height: z.ZodNumber;
331
593
  }, z.core.$strip>>;
594
+ outputArgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
595
+ audioEgress: z.ZodOptional<z.ZodBoolean>;
332
596
  tag: z.ZodOptional<z.ZodString>;
333
597
  }, z.core.$strip>, z.ZodObject<{
334
598
  url: z.ZodString;
@@ -460,6 +724,11 @@ export declare const streamBrokerCapability: {
460
724
  packetCount: z.ZodNumber;
461
725
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
462
726
  readonly getRtspPort: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodNumber, import("./capability-definition.js").CapabilityMethodKind>;
727
+ /**
728
+ * Enumeration surface — backs the admin RTSP-export picker and
729
+ * `pickPreferredRtspEntry`. Lists every per-broker restream entry. NOT a
730
+ * consumption API: programmatic readers use {@link getStreamWithCodec}.
731
+ */
463
732
  readonly getAllRtspEntries: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
464
733
  hostname: z.ZodOptional<z.ZodString>;
465
734
  }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
@@ -467,7 +736,17 @@ export declare const streamBrokerCapability: {
467
736
  url: z.ZodString;
468
737
  mutedUrl: z.ZodString;
469
738
  enabled: z.ZodBoolean;
739
+ codec: z.ZodOptional<z.ZodString>;
740
+ resolution: z.ZodOptional<z.ZodObject<{
741
+ width: z.ZodNumber;
742
+ height: z.ZodNumber;
743
+ }, z.core.$strip>>;
470
744
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
745
+ /**
746
+ * LEGACY / observability. Resolves one broker's restream entry. Prefer
747
+ * {@link getStreamWithCodec} for programmatic CONSUMPTION so the read is
748
+ * demand-counted and rides the single source dial.
749
+ */
471
750
  readonly getRtspEntry: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
472
751
  brokerId: z.ZodString;
473
752
  hostname: z.ZodOptional<z.ZodString>;
@@ -476,6 +755,11 @@ export declare const streamBrokerCapability: {
476
755
  url: z.ZodString;
477
756
  mutedUrl: z.ZodString;
478
757
  enabled: z.ZodBoolean;
758
+ codec: z.ZodOptional<z.ZodString>;
759
+ resolution: z.ZodOptional<z.ZodObject<{
760
+ width: z.ZodNumber;
761
+ height: z.ZodNumber;
762
+ }, z.core.$strip>>;
479
763
  }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
480
764
  readonly regenerateRtspToken: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
481
765
  brokerId: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"stream-broker.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/stream-broker.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA4C,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAUzG,QAAA,MAAM,uBAAuB;;;;;iBAK3B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;iBAQjC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;iBAMpC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;iBAIlC,CAAA;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;iBAM9B,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAC3E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAIvE,QAAA,MAAM,sBAAsB;;;;EAAmC,CAAA;AAC/D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,QAAA,MAAM,sBAAsB;;;;;EAA0C,CAAA;AACtE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAOrE,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;iBAMxC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEnF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;iBAQ1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAqF/B;;;WAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAWH;;;;;;;;;;;;;;;;;WAiBG;;;;;;;;;;;;;;;;;;;;;QAkBH;;;;;;;;;;;;;;;;;;WAkBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEkC,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEhF,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
1
+ {"version":3,"file":"stream-broker.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/stream-broker.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA4C,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAWzG,QAAA,MAAM,uBAAuB;;;;;;;;;;iBAoB3B,CAAA;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;iBAQjC,CAAA;AAEF,eAAO,MAAM,yBAAyB;;;;;;iBAMpC,CAAA;AAEF,eAAO,MAAM,uBAAuB;;;;iBAIlC,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;EAanC,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAoD/B,CAAA;AACb,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAA;AAEvF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBASpC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQ9B,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAC3E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAE/D,eAAO,MAAM,uBAAuB;;;;;;EAMlC,CAAA;AACF,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAIvE,QAAA,MAAM,sBAAsB;;;;EAAmC,CAAA;AAC/D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,QAAA,MAAM,sBAAsB;;;;;;EAAkD,CAAA;AAC9E,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAErE,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;iBAsBxC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAA;AAEnF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;iBAW1B,CAAA;AACF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA2F/B;;;;;WAKG;;;;;;;;;;;;QAKH;;;;;;WAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAWH;;;;;;;;;;;;;;;;;WAiBG;;;;;;;;;;;;;;;;;;;;;QAkBH;;;;;;;;;;;;;;;;;;WAkBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4BH;;;;WAIG;;;;;;;;;;;;;;QAKH;;;;WAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCkC,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA;AAEhF,OAAO,EAAE,uBAAuB,EAAE,CAAA"}
@@ -0,0 +1,85 @@
1
+ import { z } from 'zod';
2
+ import { type InferNativeProvider } from './capability-definition.js';
3
+ import { DeviceType } from '../device/device-type.js';
4
+ /**
5
+ * One publishable camera stream as its OWNING PROVIDER describes it — the same
6
+ * payload the (legacy) push `streamBroker.publishCameraStream` carried, minus
7
+ * `deviceId`.
8
+ *
9
+ * The stream-broker PULLS this catalog per camera (on start, on a configurable
10
+ * reconcile poll, and on device / stream-params events) to (re)build its
11
+ * cam-stream registry, instead of relying on providers to push. Pull is
12
+ * authoritative (RPC); the poll is the backstop for any missed event. This
13
+ * makes the broker self-heal after a restart — it re-derives the full catalog
14
+ * from the providers rather than waiting to be re-fed.
15
+ *
16
+ * `url` is the dial source where the provider can resolve it synchronously
17
+ * (rtsp / rtmp / http). For lazy sources (Reolink rfc4571) it carries the
18
+ * `lazy:rfc4571:` sentinel; the real URL is still materialised at DIAL time via
19
+ * the broker's `onRequestStreamSourceRefresh` round-trip — unchanged by the
20
+ * pull model. `push-annexb` sources carry no URL (the provider pushes frames).
21
+ */
22
+ export declare const CamStreamDescriptorSchema: z.ZodObject<{
23
+ camStreamId: z.ZodString;
24
+ kind: z.ZodEnum<{
25
+ "pull-rtsp": "pull-rtsp";
26
+ "pull-rtmp": "pull-rtmp";
27
+ "pull-http": "pull-http";
28
+ "pull-rfc4571": "pull-rfc4571";
29
+ "push-annexb": "push-annexb";
30
+ derived: "derived";
31
+ }>;
32
+ url: z.ZodOptional<z.ZodString>;
33
+ codec: z.ZodOptional<z.ZodString>;
34
+ resolution: z.ZodOptional<z.ZodObject<{
35
+ width: z.ZodNumber;
36
+ height: z.ZodNumber;
37
+ }, z.core.$strip>>;
38
+ fps: z.ZodOptional<z.ZodNumber>;
39
+ label: z.ZodOptional<z.ZodString>;
40
+ deviceFeatures: z.ZodOptional<z.ZodArray<z.ZodString>>;
41
+ autoEligible: z.ZodOptional<z.ZodBoolean>;
42
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
43
+ }, z.core.$strip>;
44
+ export type CamStreamDescriptor = z.infer<typeof CamStreamDescriptorSchema>;
45
+ /**
46
+ * `stream-catalog` — device-scoped, provider-implemented. The pull counterpart
47
+ * of the removed `publishCameraStream` push: a camera provider returns the full
48
+ * set of stream descriptors it can offer for the device, synchronously, so the
49
+ * broker can reconcile its registry against the authoritative provider state.
50
+ */
51
+ export declare const streamCatalogCapability: {
52
+ readonly name: "stream-catalog";
53
+ readonly scope: "device";
54
+ readonly deviceNative: true;
55
+ readonly mode: "singleton";
56
+ readonly deviceTypes: readonly [DeviceType.Camera];
57
+ readonly methods: {
58
+ readonly getCatalog: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
59
+ deviceId: z.ZodNumber;
60
+ }, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
61
+ camStreamId: z.ZodString;
62
+ kind: z.ZodEnum<{
63
+ "pull-rtsp": "pull-rtsp";
64
+ "pull-rtmp": "pull-rtmp";
65
+ "pull-http": "pull-http";
66
+ "pull-rfc4571": "pull-rfc4571";
67
+ "push-annexb": "push-annexb";
68
+ derived: "derived";
69
+ }>;
70
+ url: z.ZodOptional<z.ZodString>;
71
+ codec: z.ZodOptional<z.ZodString>;
72
+ resolution: z.ZodOptional<z.ZodObject<{
73
+ width: z.ZodNumber;
74
+ height: z.ZodNumber;
75
+ }, z.core.$strip>>;
76
+ fps: z.ZodOptional<z.ZodNumber>;
77
+ label: z.ZodOptional<z.ZodString>;
78
+ deviceFeatures: z.ZodOptional<z.ZodArray<z.ZodString>>;
79
+ autoEligible: z.ZodOptional<z.ZodBoolean>;
80
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
81
+ }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
82
+ };
83
+ };
84
+ export type IStreamCatalogProvider = InferNativeProvider<typeof streamCatalogCapability>;
85
+ //# sourceMappingURL=stream-catalog.cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stream-catalog.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/stream-catalog.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACxG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAGrD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;iBAcpC,CAAA;AACF,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA;AAE3E;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYK,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,OAAO,uBAAuB,CAAC,CAAA"}