@camstack/system 1.2.390 → 1.2.391

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 (503) hide show
  1. package/dist/addon/addon-api-factory.d.ts +30 -30
  2. package/dist/addon-routes/addon-route-registry.d.ts +31 -31
  3. package/dist/addon-runner.js +1 -1
  4. package/dist/addon-runner.mjs +1 -1
  5. package/dist/addon-utils.d.ts +22 -22
  6. package/dist/auth/admin-token-manager.d.ts +37 -67
  7. package/dist/auth/api-key-manager.d.ts +8 -8
  8. package/dist/auth/auth-audit-log.d.ts +29 -49
  9. package/dist/auth/auth-manager.d.ts +127 -126
  10. package/dist/auth/cidr.d.ts +8 -8
  11. package/dist/auth/external-identity-manager.d.ts +46 -34
  12. package/dist/auth/jwt-signing-key.d.ts +14 -14
  13. package/dist/auth/login-session-manager.d.ts +95 -135
  14. package/dist/auth/parse-record.d.ts +13 -13
  15. package/dist/auth/scope-matcher.d.ts +7 -7
  16. package/dist/auth/scoped-token-manager.d.ts +62 -62
  17. package/dist/auth/token-expiry.d.ts +49 -26
  18. package/dist/auth/totp-manager.d.ts +48 -48
  19. package/dist/auth/user-management-internal.d.ts +67 -52
  20. package/dist/auth/user-manager.d.ts +58 -58
  21. package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.d.ts +54 -54
  22. package/dist/builtins/addon-pages-aggregator/dedupe-pages.d.ts +22 -4
  23. package/dist/builtins/addon-pages-aggregator/index.d.ts +1 -1
  24. package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.d.ts +54 -54
  25. package/dist/builtins/addon-widgets-aggregator/index.d.ts +1 -1
  26. package/dist/builtins/alerts/alerts.addon.d.ts +88 -87
  27. package/dist/builtins/alerts/device-label.d.ts +6 -6
  28. package/dist/builtins/alerts/index.d.ts +1 -1
  29. package/dist/builtins/alerts/prune-policy.d.ts +36 -36
  30. package/dist/builtins/autotrack/autotrack-cameras.d.ts +102 -79
  31. package/dist/builtins/autotrack/autotrack-config.d.ts +81 -81
  32. package/dist/builtins/autotrack/autotrack-decision.d.ts +69 -82
  33. package/dist/builtins/autotrack/autotrack-loop.d.ts +81 -61
  34. package/dist/builtins/autotrack/autotrack.addon.d.ts +103 -66
  35. package/dist/builtins/autotrack/frame-error.d.ts +38 -38
  36. package/dist/builtins/autotrack/frame-measurements.d.ts +79 -79
  37. package/dist/builtins/autotrack/index.d.ts +2 -2
  38. package/dist/builtins/autotrack/ptz-mirror.d.ts +46 -17
  39. package/dist/builtins/autotrack/target-selection.d.ts +33 -47
  40. package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.d.ts +270 -269
  41. package/dist/builtins/backup-orchestrator/cron-helpers.d.ts +17 -17
  42. package/dist/builtins/backup-orchestrator/destination-policy.d.ts +99 -82
  43. package/dist/builtins/backup-orchestrator/download-helpers.d.ts +9 -9
  44. package/dist/builtins/backup-orchestrator/encryption-key-store.d.ts +40 -29
  45. package/dist/builtins/backup-orchestrator/index.d.ts +2 -2
  46. package/dist/builtins/backup-orchestrator/manifest-store.d.ts +88 -69
  47. package/dist/builtins/backup-orchestrator/restore-archive.d.ts +14 -14
  48. package/dist/builtins/backup-orchestrator/run-queue.d.ts +86 -86
  49. package/dist/builtins/backup-orchestrator/schedule-store.d.ts +53 -37
  50. package/dist/builtins/backup-orchestrator/staging-paths.d.ts +23 -23
  51. package/dist/builtins/backup-orchestrator/write-targets.d.ts +53 -53
  52. package/dist/builtins/calendars/calendar-color.d.ts +5 -1
  53. package/dist/builtins/calendars/calendar-prefs-store.d.ts +18 -12
  54. package/dist/builtins/calendars/calendars.addon.d.ts +16 -11
  55. package/dist/builtins/calendars/index.d.ts +1 -1
  56. package/dist/builtins/camera-grid/acquire-retry.d.ts +26 -26
  57. package/dist/builtins/camera-grid/addon.d.ts +200 -174
  58. package/dist/builtins/camera-grid/flv-join.d.ts +32 -58
  59. package/dist/builtins/camera-grid/grid-activity-mirror.d.ts +37 -37
  60. package/dist/builtins/camera-grid/grid-activity.d.ts +83 -42
  61. package/dist/builtins/camera-grid/grid-camera-declarations.d.ts +46 -46
  62. package/dist/builtins/camera-grid/grid-camera-device.d.ts +60 -34
  63. package/dist/builtins/camera-grid/grid-canvas-derivation.d.ts +50 -15
  64. package/dist/builtins/camera-grid/grid-canvas-seed.d.ts +96 -46
  65. package/dist/builtins/camera-grid/grid-canvas.d.ts +74 -74
  66. package/dist/builtins/camera-grid/grid-child.d.ts +29 -16
  67. package/dist/builtins/camera-grid/grid-compositor-child.d.ts +2 -2
  68. package/dist/builtins/camera-grid/grid-compositor-invocation.d.ts +39 -11
  69. package/dist/builtins/camera-grid/grid-compositor.d.ts +50 -50
  70. package/dist/builtins/camera-grid/grid-detection-mapping.d.ts +52 -22
  71. package/dist/builtins/camera-grid/grid-device-settings.d.ts +31 -7
  72. package/dist/builtins/camera-grid/grid-filter-graph.d.ts +41 -41
  73. package/dist/builtins/camera-grid/grid-frame-sample.d.ts +45 -19
  74. package/dist/builtins/camera-grid/grid-instances.d.ts +20 -50
  75. package/dist/builtins/camera-grid/grid-last-frame-store.d.ts +51 -51
  76. package/dist/builtins/camera-grid/grid-layout-native-provider.d.ts +30 -4
  77. package/dist/builtins/camera-grid/grid-plan.d.ts +30 -20
  78. package/dist/builtins/camera-grid/grid-profiles.d.ts +85 -45
  79. package/dist/builtins/camera-grid/grid-row-normalization.d.ts +6 -6
  80. package/dist/builtins/camera-grid/grid-sentry-sources.d.ts +57 -57
  81. package/dist/builtins/camera-grid/grid-snapshot.d.ts +41 -41
  82. package/dist/builtins/camera-grid/grid-stream-descriptor.d.ts +49 -21
  83. package/dist/builtins/camera-grid/grid-stream-invocation.d.ts +37 -22
  84. package/dist/builtins/camera-grid/grid-stream-relay.d.ts +26 -26
  85. package/dist/builtins/camera-grid/grid-stream-session.d.ts +123 -93
  86. package/dist/builtins/camera-grid/grid-tile-feed.d.ts +47 -47
  87. package/dist/builtins/camera-grid/grid-tile-plan.d.ts +55 -20
  88. package/dist/builtins/camera-grid/grid-wire-format.d.ts +22 -6
  89. package/dist/builtins/camera-grid/index.d.ts +44 -44
  90. package/dist/builtins/camera-grid/silence-analysis.d.ts +31 -14
  91. package/dist/builtins/composer/claim-gate.d.ts +54 -27
  92. package/dist/builtins/composer/composed-device-set.d.ts +40 -26
  93. package/dist/builtins/composer/composed-device.d.ts +39 -17
  94. package/dist/builtins/composer/composer-apply-waits.d.ts +20 -13
  95. package/dist/builtins/composer/composer-grafts.d.ts +57 -38
  96. package/dist/builtins/composer/composer-live-set.d.ts +15 -15
  97. package/dist/builtins/composer/composer-plan.d.ts +76 -60
  98. package/dist/builtins/composer/composer-runtime-factory.d.ts +21 -14
  99. package/dist/builtins/composer/composer-seeds.d.ts +20 -14
  100. package/dist/builtins/composer/composer-verdict.d.ts +28 -14
  101. package/dist/builtins/composer/composer.addon.d.ts +23 -9
  102. package/dist/builtins/composer/composer.d.ts +145 -100
  103. package/dist/builtins/composer/composition-declarations.d.ts +50 -39
  104. package/dist/builtins/composer/composition-evaluation.d.ts +38 -22
  105. package/dist/builtins/composer/composition-runtime.d.ts +178 -125
  106. package/dist/builtins/composer/composition-target.d.ts +38 -34
  107. package/dist/builtins/composer/confirmed-seed.d.ts +35 -23
  108. package/dist/builtins/composer/deadline-timer.d.ts +13 -13
  109. package/dist/builtins/composer/existing-target.d.ts +90 -73
  110. package/dist/builtins/composer/field-record.d.ts +26 -19
  111. package/dist/builtins/composer/graft-host.d.ts +56 -32
  112. package/dist/builtins/composer/held-claims.d.ts +26 -9
  113. package/dist/builtins/composer/index.d.ts +1 -1
  114. package/dist/builtins/composer/own-field-reads.d.ts +26 -15
  115. package/dist/builtins/composer/owned-fields-target.d.ts +75 -44
  116. package/dist/builtins/composer/slice-assembler.d.ts +19 -3
  117. package/dist/builtins/composer/source-readings.d.ts +67 -61
  118. package/dist/builtins/composer/source-tracker.d.ts +133 -69
  119. package/dist/builtins/console-logging/console-destination.d.ts +15 -8
  120. package/dist/builtins/console-logging/console-logging.addon.d.ts +20 -19
  121. package/dist/builtins/console-logging/index.d.ts +3 -3
  122. package/dist/builtins/core-blocks/block-package.d.ts +37 -37
  123. package/dist/builtins/core-blocks/block-settings-store.d.ts +34 -21
  124. package/dist/builtins/core-blocks/block-supervisor.d.ts +138 -117
  125. package/dist/builtins/core-blocks/block-type-defs.d.ts +21 -21
  126. package/dist/builtins/core-blocks/blocks-integration.d.ts +76 -49
  127. package/dist/builtins/core-blocks/compile-block.d.ts +37 -37
  128. package/dist/builtins/core-blocks/composition-api.d.ts +38 -24
  129. package/dist/builtins/core-blocks/composition-peers.d.ts +26 -4
  130. package/dist/builtins/core-blocks/composition-sources.d.ts +25 -10
  131. package/dist/builtins/core-blocks/core-block-store.d.ts +109 -109
  132. package/dist/builtins/core-blocks/core-blocks.addon.d.ts +72 -72
  133. package/dist/builtins/core-blocks/extract-settings-schema.d.ts +4 -4
  134. package/dist/builtins/core-blocks/index.d.ts +8 -8
  135. package/dist/builtins/device-manager/adoption-job-engine.d.ts +141 -98
  136. package/dist/builtins/device-manager/claimed-status-overlay.d.ts +42 -9
  137. package/dist/builtins/device-manager/contribution-cache.d.ts +56 -56
  138. package/dist/builtins/device-manager/day-night-config-schema.d.ts +26 -12
  139. package/dist/builtins/device-manager/device-aggregation-merge.d.ts +17 -17
  140. package/dist/builtins/device-manager/device-aggregation.d.ts +277 -254
  141. package/dist/builtins/device-manager/device-bindings-store.d.ts +232 -220
  142. package/dist/builtins/device-manager/device-config-contribution.d.ts +29 -29
  143. package/dist/builtins/device-manager/device-config-secrets.d.ts +32 -13
  144. package/dist/builtins/device-manager/device-event-propagator.d.ts +22 -22
  145. package/dist/builtins/device-manager/device-extension-linked-slot.d.ts +17 -17
  146. package/dist/builtins/device-manager/device-form-secrets.d.ts +14 -14
  147. package/dist/builtins/device-manager/device-linked-devices.d.ts +159 -98
  148. package/dist/builtins/device-manager/device-manager.addon.d.ts +223 -197
  149. package/dist/builtins/device-manager/device-meta-actions.d.ts +306 -305
  150. package/dist/builtins/device-manager/device-meta-store.d.ts +100 -90
  151. package/dist/builtins/device-manager/device-meta-types.d.ts +250 -241
  152. package/dist/builtins/device-manager/device-online-fallback.d.ts +30 -30
  153. package/dist/builtins/device-manager/device-projection.d.ts +53 -67
  154. package/dist/builtins/device-manager/device-provider-context.d.ts +109 -94
  155. package/dist/builtins/device-manager/device-queries.d.ts +63 -63
  156. package/dist/builtins/device-manager/device-row-store.d.ts +417 -365
  157. package/dist/builtins/device-manager/device-source-activation.d.ts +91 -49
  158. package/dist/builtins/device-manager/device-state-claim-views.d.ts +76 -61
  159. package/dist/builtins/device-manager/device-state-claims.d.ts +53 -30
  160. package/dist/builtins/device-manager/device-state-mirror.d.ts +256 -264
  161. package/dist/builtins/device-manager/device-sync-resolvers.d.ts +25 -25
  162. package/dist/builtins/device-manager/field-claims-index.d.ts +85 -58
  163. package/dist/builtins/device-manager/field-ownership.d.ts +54 -36
  164. package/dist/builtins/device-manager/fleet-read-census.d.ts +99 -61
  165. package/dist/builtins/device-manager/image-settings-config-schema.d.ts +18 -8
  166. package/dist/builtins/device-manager/index.d.ts +2 -2
  167. package/dist/builtins/device-manager/linked-devices-manual-backfill.d.ts +20 -9
  168. package/dist/builtins/device-manager/location-alignment.d.ts +46 -46
  169. package/dist/builtins/device-manager/migrate-device.d.ts +178 -101
  170. package/dist/builtins/device-manager/migrate-guard.d.ts +66 -34
  171. package/dist/builtins/device-manager/migrate-hardware-state.d.ts +59 -59
  172. package/dist/builtins/device-manager/migrate-reload.d.ts +42 -4
  173. package/dist/builtins/device-manager/migration-refused.d.ts +20 -20
  174. package/dist/builtins/device-manager/mirror-row-writer.d.ts +205 -179
  175. package/dist/builtins/device-manager/recording-onboard-config-schema.d.ts +56 -32
  176. package/dist/builtins/device-manager/removal-fence.d.ts +48 -48
  177. package/dist/builtins/device-manager/runtime-state-persist-gate.d.ts +54 -26
  178. package/dist/builtins/device-manager/secret-config-paths.d.ts +17 -17
  179. package/dist/builtins/device-manager/stale-wrapper-activations.d.ts +52 -25
  180. package/dist/builtins/device-manager/write-lock.d.ts +13 -13
  181. package/dist/builtins/hub-forwarder/hub-forwarder-destination.d.ts +41 -41
  182. package/dist/builtins/hub-forwarder/hub-forwarder.addon.d.ts +13 -12
  183. package/dist/builtins/hub-forwarder/index.d.ts +3 -3
  184. package/dist/builtins/keychain/index.d.ts +1 -1
  185. package/dist/builtins/keychain/key-sources.d.ts +19 -19
  186. package/dist/builtins/keychain/keychain-crypto.d.ts +4 -4
  187. package/dist/builtins/keychain/keychain-reset-trigger.d.ts +13 -13
  188. package/dist/builtins/keychain/keychain-service.d.ts +128 -128
  189. package/dist/builtins/keychain/keychain-store.d.ts +96 -87
  190. package/dist/builtins/keychain/keychain-usage.d.ts +13 -2
  191. package/dist/builtins/keychain/keychain.addon.d.ts +31 -6
  192. package/dist/builtins/keychain/platform-key-source.d.ts +15 -15
  193. package/dist/builtins/keychain/system-held-secrets.d.ts +17 -4
  194. package/dist/builtins/liveness-monitor/index.d.ts +2 -2
  195. package/dist/builtins/liveness-monitor/liveness-checks.d.ts +73 -52
  196. package/dist/builtins/liveness-monitor/liveness-monitor.addon.d.ts +57 -36
  197. package/dist/builtins/local-auth/admin-account-boot.d.ts +14 -14
  198. package/dist/builtins/local-auth/auth-config-reader.d.ts +34 -17
  199. package/dist/builtins/local-auth/auth-schema.d.ts +92 -69
  200. package/dist/builtins/local-auth/index.d.ts +1 -1
  201. package/dist/builtins/local-auth/jwt-signing-key-keeper.d.ts +22 -22
  202. package/dist/builtins/local-auth/local-auth.addon.d.ts +41 -40
  203. package/dist/builtins/local-auth/oauth-grants.d.ts +57 -57
  204. package/dist/builtins/local-auth/oauth-session-manager.d.ts +62 -62
  205. package/dist/builtins/local-network/address-book.d.ts +61 -36
  206. package/dist/builtins/local-network/index.d.ts +2 -2
  207. package/dist/builtins/local-network/ipv6-lan.d.ts +12 -17
  208. package/dist/builtins/local-network/local-hostname.d.ts +10 -10
  209. package/dist/builtins/local-network/local-network.addon.d.ts +259 -258
  210. package/dist/builtins/loki-logging/index.d.ts +4 -4
  211. package/dist/builtins/loki-logging/loki-destination.d.ts +113 -87
  212. package/dist/builtins/loki-logging/loki-logging.addon.d.ts +61 -42
  213. package/dist/builtins/loki-logging/loki-payload.d.ts +82 -39
  214. package/dist/builtins/loki-logging/retire-enabled-flag.d.ts +37 -12
  215. package/dist/builtins/native-metrics/cgroup-memory.d.ts +206 -159
  216. package/dist/builtins/native-metrics/cgroup-pids.d.ts +138 -91
  217. package/dist/builtins/native-metrics/container-memory-series.d.ts +212 -178
  218. package/dist/builtins/native-metrics/gpu-probe.d.ts +9 -9
  219. package/dist/builtins/native-metrics/index.d.ts +2 -2
  220. package/dist/builtins/native-metrics/load-series-config.d.ts +29 -57
  221. package/dist/builtins/native-metrics/load-series-reader.d.ts +52 -26
  222. package/dist/builtins/native-metrics/load-series-store.d.ts +237 -176
  223. package/dist/builtins/native-metrics/native-metrics-provider.d.ts +43 -43
  224. package/dist/builtins/native-metrics/native-metrics.addon.d.ts +230 -230
  225. package/dist/builtins/native-metrics/node-load-ring.d.ts +196 -196
  226. package/dist/builtins/native-metrics/proc-process-table.d.ts +12 -12
  227. package/dist/builtins/native-metrics/process-classification.d.ts +95 -36
  228. package/dist/builtins/native-metrics/thread-cpu-sampler.d.ts +95 -95
  229. package/dist/builtins/platform-probe/coral-accelerators.d.ts +17 -17
  230. package/dist/builtins/platform-probe/index.d.ts +38 -30
  231. package/dist/builtins/platform-probe/inference-config-resolver.d.ts +27 -27
  232. package/dist/builtins/platform-probe/intel-accelerators.d.ts +8 -8
  233. package/dist/builtins/platform-probe/intel-npu.d.ts +30 -30
  234. package/dist/builtins/platform-probe/platform-scorer.d.ts +35 -35
  235. package/dist/builtins/platform-probe/runtime-packages.d.ts +3 -3
  236. package/dist/builtins/remote-access-orchestrator/enabled-providers-reconcile.d.ts +87 -87
  237. package/dist/builtins/remote-access-orchestrator/index.d.ts +1 -1
  238. package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.d.ts +66 -35
  239. package/dist/builtins/shared/device-state-changed.d.ts +9 -9
  240. package/dist/builtins/shared/settle-sources.d.ts +16 -16
  241. package/dist/builtins/snapshot/index.d.ts +2 -2
  242. package/dist/builtins/snapshot/snapshot-cache.d.ts +92 -92
  243. package/dist/builtins/snapshot/snapshot-coalescing.d.ts +108 -108
  244. package/dist/builtins/snapshot/snapshot-courtesy.d.ts +48 -48
  245. package/dist/builtins/snapshot/snapshot-durable-store.d.ts +32 -32
  246. package/dist/builtins/snapshot/snapshot-fatigue.d.ts +34 -34
  247. package/dist/builtins/snapshot/snapshot-grab-pick.d.ts +14 -14
  248. package/dist/builtins/snapshot/snapshot-link-url.d.ts +49 -49
  249. package/dist/builtins/snapshot/snapshot-media-handler.d.ts +97 -97
  250. package/dist/builtins/snapshot/snapshot-resize.d.ts +64 -103
  251. package/dist/builtins/snapshot/snapshot.addon.d.ts +569 -568
  252. package/dist/builtins/sqlite-storage/analyze-stats.d.ts +73 -29
  253. package/dist/builtins/sqlite-storage/config-store.d.ts +6 -6
  254. package/dist/builtins/sqlite-storage/device-store.d.ts +16 -16
  255. package/dist/builtins/sqlite-storage/filesystem-browse-provider.d.ts +23 -23
  256. package/dist/builtins/sqlite-storage/filesystem-storage-provider.d.ts +79 -79
  257. package/dist/builtins/sqlite-storage/filesystem-storage.addon.d.ts +27 -26
  258. package/dist/builtins/sqlite-storage/filter-compiler.d.ts +107 -107
  259. package/dist/builtins/sqlite-storage/index.d.ts +12 -12
  260. package/dist/builtins/sqlite-storage/integration-registry.d.ts +37 -37
  261. package/dist/builtins/sqlite-storage/path-guard.d.ts +5 -5
  262. package/dist/builtins/sqlite-storage/prefix-range.d.ts +44 -44
  263. package/dist/builtins/sqlite-storage/query-bounds.d.ts +100 -106
  264. package/dist/builtins/sqlite-storage/query-profiler.d.ts +217 -217
  265. package/dist/builtins/sqlite-storage/retired-collections.d.ts +124 -55
  266. package/dist/builtins/sqlite-storage/retired-settings-keys.d.ts +239 -189
  267. package/dist/builtins/sqlite-storage/shm-lock-canary.d.ts +41 -41
  268. package/dist/builtins/sqlite-storage/sqlite-pragmas.d.ts +162 -162
  269. package/dist/builtins/sqlite-storage/sqlite-settings-backend.d.ts +458 -458
  270. package/dist/builtins/sqlite-storage/sqlite-settings.addon.d.ts +59 -58
  271. package/dist/builtins/sqlite-storage/sqlite-snapshot-protocol.d.ts +37 -32
  272. package/dist/builtins/sqlite-storage/sqlite-snapshot-worker.d.ts +19 -19
  273. package/dist/builtins/sqlite-storage/sqlite-snapshotter.d.ts +76 -76
  274. package/dist/builtins/sqlite-storage/statement-shape.d.ts +54 -54
  275. package/dist/builtins/sqlite-storage/table-sizes.d.ts +71 -71
  276. package/dist/builtins/sqlite-storage/vector-index-shared.d.ts +63 -54
  277. package/dist/builtins/sqlite-storage/vector-index-vec.d.ts +133 -96
  278. package/dist/builtins/sqlite-storage/wal-checkpoint-policy.d.ts +161 -161
  279. package/dist/builtins/sqlite-storage/wal-checkpointer.d.ts +60 -60
  280. package/dist/builtins/sqlite-storage/wal-maintenance.d.ts +94 -94
  281. package/dist/builtins/storage-orchestrator/access-guards.d.ts +37 -26
  282. package/dist/builtins/storage-orchestrator/data-store-dispatch.d.ts +33 -18
  283. package/dist/builtins/storage-orchestrator/drain-ratchet.d.ts +85 -85
  284. package/dist/builtins/storage-orchestrator/drain-state-store.d.ts +20 -10
  285. package/dist/builtins/storage-orchestrator/hub-settings-forward.d.ts +113 -53
  286. package/dist/builtins/storage-orchestrator/index.d.ts +7 -7
  287. package/dist/builtins/storage-orchestrator/location-occupancy-slice.d.ts +64 -40
  288. package/dist/builtins/storage-orchestrator/location-occupancy.d.ts +14 -14
  289. package/dist/builtins/storage-orchestrator/location-protection.d.ts +13 -13
  290. package/dist/builtins/storage-orchestrator/location-repoint-move.d.ts +44 -44
  291. package/dist/builtins/storage-orchestrator/location-root-collision.d.ts +61 -25
  292. package/dist/builtins/storage-orchestrator/location-secrets.d.ts +99 -58
  293. package/dist/builtins/storage-orchestrator/location-store.d.ts +56 -47
  294. package/dist/builtins/storage-orchestrator/location-volume-capacity.d.ts +37 -37
  295. package/dist/builtins/storage-orchestrator/provider-discovery.d.ts +20 -6
  296. package/dist/builtins/storage-orchestrator/storage-cleanup-coordinator.d.ts +51 -51
  297. package/dist/builtins/storage-orchestrator/storage-migration-coordinator.d.ts +224 -224
  298. package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.d.ts +292 -292
  299. package/dist/builtins/storage-orchestrator/storage-orchestrator.service.d.ts +431 -450
  300. package/dist/builtins/storage-orchestrator/storage-pressure-manager.d.ts +104 -104
  301. package/dist/builtins/system-backup/backup-encryption.d.ts +60 -23
  302. package/dist/builtins/system-backup/system-backup.service.d.ts +240 -240
  303. package/dist/builtins/system-config/cluster-secret-keeper.d.ts +54 -34
  304. package/dist/builtins/system-config/index.d.ts +2 -2
  305. package/dist/builtins/system-config/mesh-actions.d.ts +2 -30
  306. package/dist/builtins/system-config/system-config.addon.d.ts +57 -100
  307. package/dist/builtins/system-config/system-config.addon.js +37 -33
  308. package/dist/builtins/system-config/system-config.addon.mjs +37 -33
  309. package/dist/builtins/winston-logging/index.d.ts +3 -3
  310. package/dist/builtins/winston-logging/winston-destination.d.ts +15 -15
  311. package/dist/builtins/winston-logging/winston-logging.addon.d.ts +14 -13
  312. package/dist/{child-cap-dispatch-nURMuVTX.js → child-cap-dispatch-Bnr8brru.js} +18 -0
  313. package/dist/{child-cap-dispatch-B1gyE35b.mjs → child-cap-dispatch-mHO_6r0G.mjs} +1 -1
  314. package/dist/download/hosted-model-revisions.d.ts +8 -8
  315. package/dist/download/model-download-service.d.ts +32 -32
  316. package/dist/download/model-downloader.d.ts +88 -88
  317. package/dist/events/event-bus.d.ts +6 -6
  318. package/dist/events/system-event-bus.d.ts +11 -11
  319. package/dist/feature/feature-manager.d.ts +6 -6
  320. package/dist/http/asset-compression.d.ts +35 -73
  321. package/dist/http/authenticated-file-server.d.ts +32 -32
  322. package/dist/http/data-plane-registry.d.ts +49 -39
  323. package/dist/http/file-data-plane.d.ts +14 -14
  324. package/dist/http/lan-http-bind.d.ts +24 -13
  325. package/dist/http/reverse-proxy.d.ts +36 -24
  326. package/dist/index.d.ts +137 -137
  327. package/dist/index.js +4 -3
  328. package/dist/index.mjs +2 -4
  329. package/dist/kernel/addon-class-resolver.d.ts +1 -1
  330. package/dist/kernel/addon-engine-manager.d.ts +20 -20
  331. package/dist/kernel/addon-health-monitor.d.ts +151 -151
  332. package/dist/kernel/addon-installer.d.ts +609 -609
  333. package/dist/kernel/addon-loader.d.ts +133 -133
  334. package/dist/kernel/addon-manifest.d.ts +118 -118
  335. package/dist/kernel/addon-residue.d.ts +28 -32
  336. package/dist/kernel/array-buffer-census.d.ts +84 -88
  337. package/dist/kernel/bootstrap-config.d.ts +3 -3
  338. package/dist/kernel/cap-router-builder.d.ts +145 -101
  339. package/dist/kernel/capability-handle.d.ts +41 -41
  340. package/dist/kernel/capability-registry.d.ts +588 -576
  341. package/dist/kernel/config-manager.d.ts +199 -199
  342. package/dist/kernel/config-schema.d.ts +132 -128
  343. package/dist/kernel/custom-action-registry.d.ts +25 -25
  344. package/dist/kernel/deps/addon-deps-manager.d.ts +17 -17
  345. package/dist/kernel/deps/closure-dedupe.d.ts +76 -76
  346. package/dist/kernel/deps/ensure-addon-natives.d.ts +34 -34
  347. package/dist/kernel/deps/ensure-native-prebuilds.d.ts +25 -25
  348. package/dist/kernel/deps/manifest-native-deps.d.ts +38 -38
  349. package/dist/kernel/deps/manifest-python-deps.d.ts +18 -18
  350. package/dist/kernel/deps/manifest-system-deps.d.ts +13 -13
  351. package/dist/kernel/deps/npm-command.d.ts +45 -45
  352. package/dist/kernel/deps/system-package-allowlist.d.ts +9 -9
  353. package/dist/kernel/deps/system-package-broker.d.ts +20 -20
  354. package/dist/kernel/deps/system-package-client.d.ts +3 -3
  355. package/dist/kernel/device-registry.d.ts +27 -27
  356. package/dist/kernel/event-loop-stall-monitor.d.ts +33 -33
  357. package/dist/kernel/event-plane-report.d.ts +174 -174
  358. package/dist/kernel/fs-utils.d.ts +70 -70
  359. package/dist/kernel/gc-census.d.ts +119 -119
  360. package/dist/kernel/heap-spaces.d.ts +87 -87
  361. package/dist/kernel/heap-watch.d.ts +706 -706
  362. package/dist/kernel/host-externals.d.ts +8 -8
  363. package/dist/kernel/hwaccel/hwaccel-resolver.d.ts +27 -27
  364. package/dist/kernel/index.d.ts +115 -113
  365. package/dist/kernel/inference/inference-resolver.d.ts +13 -13
  366. package/dist/kernel/infra-capabilities.d.ts +7 -7
  367. package/dist/kernel/isolated-builtin-phase.d.ts +42 -42
  368. package/dist/kernel/lifecycle/job-journal.d.ts +17 -17
  369. package/dist/kernel/lifecycle/lifecycle-job-engine.d.ts +99 -99
  370. package/dist/kernel/lifecycle/staging-area.d.ts +22 -22
  371. package/dist/kernel/moleculer/addon-context-factory.d.ts +90 -89
  372. package/dist/kernel/moleculer/addon-data-plane-facility.d.ts +12 -12
  373. package/dist/kernel/moleculer/addon-deploy-source.d.ts +11 -11
  374. package/dist/kernel/moleculer/addon-peer-bytes-facility.d.ts +18 -18
  375. package/dist/kernel/moleculer/addon-service-factory.d.ts +41 -41
  376. package/dist/kernel/moleculer/agent-mesh-authenticator.d.ts +60 -33
  377. package/dist/kernel/moleculer/agent-ui-unlock.d.ts +30 -30
  378. package/dist/kernel/moleculer/broker-factory.d.ts +61 -61
  379. package/dist/kernel/moleculer/cap-usage-registry.d.ts +108 -153
  380. package/dist/kernel/moleculer/capabilities-access.d.ts +19 -19
  381. package/dist/kernel/moleculer/child-addon-call-dispatch.d.ts +43 -43
  382. package/dist/kernel/moleculer/child-cap-descriptors.d.ts +26 -26
  383. package/dist/kernel/moleculer/child-cap-dispatch.d.ts +52 -52
  384. package/dist/kernel/moleculer/children-batch-loader.d.ts +86 -34
  385. package/dist/kernel/moleculer/cluster-secret.d.ts +19 -19
  386. package/dist/kernel/moleculer/core-cap-service.d.ts +53 -53
  387. package/dist/kernel/moleculer/crash-supervisor.d.ts +39 -39
  388. package/dist/kernel/moleculer/device-cap-proxy.d.ts +51 -51
  389. package/dist/kernel/moleculer/device-event-ring.d.ts +117 -75
  390. package/dist/kernel/moleculer/event-bus-core.d.ts +171 -159
  391. package/dist/kernel/moleculer/event-bus.d.ts +73 -73
  392. package/dist/kernel/moleculer/hub-log-forwarder.d.ts +30 -30
  393. package/dist/kernel/moleculer/hub-service.d.ts +42 -42
  394. package/dist/kernel/moleculer/init-watchdog.d.ts +49 -49
  395. package/dist/kernel/moleculer/mesh-access-middleware.d.ts +36 -21
  396. package/dist/kernel/moleculer/mesh-auth-mode.d.ts +33 -39
  397. package/dist/kernel/moleculer/mesh-authenticator.d.ts +58 -58
  398. package/dist/kernel/moleculer/mesh-auto-enforce.d.ts +38 -18
  399. package/dist/kernel/moleculer/mesh-join-client.d.ts +67 -45
  400. package/dist/kernel/moleculer/mesh-join-proof.d.ts +8 -8
  401. package/dist/kernel/moleculer/mesh-mtls/constants.d.ts +1 -1
  402. package/dist/kernel/moleculer/mesh-mtls/index.d.ts +10 -10
  403. package/dist/kernel/moleculer/mesh-mtls/mesh-ca-keeper.d.ts +43 -38
  404. package/dist/kernel/moleculer/mesh-mtls/mesh-ca.d.ts +29 -20
  405. package/dist/kernel/moleculer/mesh-mtls/mesh-clear-port.d.ts +32 -32
  406. package/dist/kernel/moleculer/mesh-mtls/mesh-crl.d.ts +11 -11
  407. package/dist/kernel/moleculer/mesh-mtls/mesh-enroll.d.ts +19 -16
  408. package/dist/kernel/moleculer/mesh-mtls/mesh-join-token.d.ts +40 -40
  409. package/dist/kernel/moleculer/mesh-mtls/mesh-tls-enabler.d.ts +5 -1
  410. package/dist/kernel/moleculer/mesh-mtls/tls-tcp-transporter.d.ts +131 -130
  411. package/dist/kernel/moleculer/mesh-queue-report.d.ts +39 -39
  412. package/dist/kernel/moleculer/node-registry.d.ts +120 -120
  413. package/dist/kernel/moleculer/process-context.d.ts +2 -2
  414. package/dist/kernel/moleculer/process-service.d.ts +168 -168
  415. package/dist/kernel/moleculer/provider-registry.d.ts +9 -9
  416. package/dist/kernel/moleculer/readiness-context.d.ts +58 -58
  417. package/dist/kernel/moleculer/readiness-service.d.ts +31 -16
  418. package/dist/kernel/moleculer/register-framework-resolver.d.ts +6 -6
  419. package/dist/kernel/moleculer/register-node-client.d.ts +34 -27
  420. package/dist/kernel/moleculer/remote-logger.d.ts +29 -29
  421. package/dist/kernel/moleculer/resilient-cap-call.d.ts +21 -21
  422. package/dist/kernel/moleculer/runner-native-allocator.d.ts +95 -95
  423. package/dist/kernel/moleculer/runner-process-group.d.ts +57 -57
  424. package/dist/kernel/moleculer/runtime-state-load.d.ts +21 -11
  425. package/dist/kernel/moleculer/settings-read-guard.d.ts +39 -39
  426. package/dist/kernel/moleculer/stream-probe-service.d.ts +25 -6
  427. package/dist/kernel/moleculer/trpc-links.d.ts +203 -203
  428. package/dist/kernel/moleculer/typed-array-serde.d.ts +9 -20
  429. package/dist/kernel/moleculer/worker-device-restore.d.ts +8 -8
  430. package/dist/kernel/outbound-queue-watch.d.ts +74 -74
  431. package/dist/kernel/process-cpu-census.d.ts +55 -55
  432. package/dist/kernel/provider-kind-drift.d.ts +17 -8
  433. package/dist/kernel/restart-coordinator.d.ts +71 -71
  434. package/dist/kernel/settings-door-view.d.ts +36 -25
  435. package/dist/kernel/settings-read-error.d.ts +29 -31
  436. package/dist/kernel/settings-view-types.d.ts +100 -95
  437. package/dist/kernel/socket-plane-report.d.ts +214 -153
  438. package/dist/kernel/status-overlay.d.ts +31 -11
  439. package/dist/kernel/storage-location-registry.d.ts +50 -50
  440. package/dist/kernel/store-settings-view.d.ts +13 -13
  441. package/dist/kernel/system-settings-mirror.d.ts +40 -28
  442. package/dist/kernel/system-settings-policy.d.ts +15 -34
  443. package/dist/kernel/transport/cap-action-census.d.ts +183 -183
  444. package/dist/kernel/transport/cap-action-name.d.ts +84 -84
  445. package/dist/kernel/transport/cap-child-index.d.ts +41 -41
  446. package/dist/kernel/transport/cap-route-resolver.d.ts +237 -212
  447. package/dist/kernel/transport/cap-route.d.ts +139 -139
  448. package/dist/kernel/transport/cap-routing-hints.d.ts +37 -37
  449. package/dist/kernel/transport/child-cap-protocol.d.ts +245 -245
  450. package/dist/kernel/transport/claimed-get-status.d.ts +30 -6
  451. package/dist/kernel/transport/create-local-transport.d.ts +5 -5
  452. package/dist/kernel/transport/frame-codec.d.ts +109 -109
  453. package/dist/kernel/transport/hub-cap-forward.d.ts +81 -59
  454. package/dist/kernel/transport/index.d.ts +36 -36
  455. package/dist/kernel/transport/local-child-client.d.ts +184 -184
  456. package/dist/kernel/transport/local-child-registry.d.ts +592 -592
  457. package/dist/kernel/transport/local-endpoint-path.d.ts +4 -4
  458. package/dist/kernel/transport/local-transport.d.ts +92 -92
  459. package/dist/kernel/transport/parent-unowned-call.d.ts +266 -237
  460. package/dist/kernel/transport/peer-answered-error.d.ts +14 -14
  461. package/dist/kernel/transport/socket-channel.d.ts +110 -110
  462. package/dist/kernel/transport/socket-traffic.d.ts +96 -96
  463. package/dist/kernel/transport/uds-event-bridge.d.ts +77 -50
  464. package/dist/kernel/transport/uds-event-bus.d.ts +75 -26
  465. package/dist/kernel/transport/uds-local-transport.d.ts +14 -14
  466. package/dist/kernel/transport/uds-log-ingest.d.ts +38 -23
  467. package/dist/kernel/transport/uds-logger.d.ts +33 -33
  468. package/dist/kernel/utils/ring-buffer.d.ts +12 -12
  469. package/dist/kernel/workspace-detect.d.ts +7 -7
  470. package/dist/lifecycle/lifecycle-state-machine.d.ts +24 -24
  471. package/dist/logging/formatter.d.ts +52 -25
  472. package/dist/logging/log-manager.d.ts +133 -133
  473. package/dist/logging/log-redactor.d.ts +22 -1
  474. package/dist/logging/log-ring-buffer.d.ts +57 -57
  475. package/dist/logging/logging-gate.d.ts +69 -25
  476. package/dist/logging/logging-gate.singleton.d.ts +12 -1
  477. package/dist/logging/partitioned-log-buffer.d.ts +161 -161
  478. package/dist/logging/scoped-logger.d.ts +14 -14
  479. package/dist/network/network-quality.d.ts +8 -8
  480. package/dist/notification/notification-service.d.ts +37 -37
  481. package/dist/notification/toast-service.d.ts +18 -18
  482. package/dist/pipeline/engine-manager-resolver.d.ts +12 -12
  483. package/dist/pipeline/pipeline-runner.d.ts +6 -6
  484. package/dist/pipeline/pipeline-validator.d.ts +8 -8
  485. package/dist/process/proc-stat.d.ts +51 -51
  486. package/dist/process/resource-monitor.d.ts +19 -19
  487. package/dist/python/python-env-manager.d.ts +10 -10
  488. package/dist/repl/interfaces.d.ts +21 -21
  489. package/dist/repl/repl-engine.d.ts +6 -6
  490. package/dist/storage/fs-storage-backend.d.ts +35 -35
  491. package/dist/storage/storage-location-manager.d.ts +21 -21
  492. package/dist/storage/storage-manager.d.ts +68 -68
  493. package/dist/tls/boot-tls.d.ts +24 -24
  494. package/dist/tls/cert-evaluation.d.ts +25 -25
  495. package/dist/tls/cert-identity.d.ts +39 -39
  496. package/dist/tls/cert-issue.d.ts +37 -17
  497. package/dist/tls/cert-manager.d.ts +86 -84
  498. package/dist/tls/https-listener.d.ts +16 -16
  499. package/dist/tls/index.d.ts +8 -8
  500. package/dist/tls/tls-actions.d.ts +18 -18
  501. package/dist/tls/tls-status.d.ts +15 -15
  502. package/dist/tls/uploaded-cert.d.ts +9 -9
  503. package/package.json +9 -3
@@ -1,26 +1,26 @@
1
- import { IEventBus, SystemEvent } from '@camstack/types';
1
+ import type { IEventBus, SystemEvent } from "@camstack/types";
2
2
  export interface DeviceEventPropagatorOptions {
3
- readonly eventBus: IEventBus;
4
- /**
5
- * Resolve the numeric parent id of a device, or `null` when the
6
- * device has no parent (or was deleted). The propagator injects a
7
- * closure over the hub's `DeviceRegistry` so the lookup is in-
8
- * process and O(1) per call.
9
- */
10
- readonly getParentOf: (deviceId: number) => number | null;
11
- /** Structured logger for anti-cycle + anti-loop diagnostics. */
12
- readonly logger: {
13
- warn: (msg: string, meta?: Record<string, unknown>) => void;
14
- debug: (msg: string, meta?: Record<string, unknown>) => void;
15
- };
3
+ readonly eventBus: IEventBus;
4
+ /**
5
+ * Resolve the numeric parent id of a device, or `null` when the
6
+ * device has no parent (or was deleted). The propagator injects a
7
+ * closure over the hub's `DeviceRegistry` so the lookup is in-
8
+ * process and O(1) per call.
9
+ */
10
+ readonly getParentOf: (deviceId: number) => number | null;
11
+ /** Structured logger for anti-cycle + anti-loop diagnostics. */
12
+ readonly logger: {
13
+ warn: (msg: string, meta?: Record<string, unknown>) => void;
14
+ debug: (msg: string, meta?: Record<string, unknown>) => void;
15
+ };
16
16
  }
17
17
  export declare class DeviceEventPropagator {
18
- private readonly opts;
19
- private unsubscribe;
20
- constructor(opts: DeviceEventPropagatorOptions);
21
- start(): void;
22
- stop(): void;
23
- /** Exposed for tests — lets them inject events without the full bus. */
24
- handle(ev: SystemEvent): void;
25
- private resolveParentChain;
18
+ private readonly opts;
19
+ private unsubscribe;
20
+ constructor(opts: DeviceEventPropagatorOptions);
21
+ start(): void;
22
+ stop(): void;
23
+ /** Exposed for tests — lets them inject events without the full bus. */
24
+ handle(ev: SystemEvent): void;
25
+ private resolveParentChain;
26
26
  }
@@ -1,27 +1,27 @@
1
- import { IDeviceExtensionProvider } from '@camstack/types';
2
- import { ProviderContext } from './device-provider-context.js';
1
+ import { type IDeviceExtensionProvider } from "@camstack/types";
2
+ import type { ProviderContext } from "./device-provider-context.js";
3
3
  /** The routing prefix of this owner's `slotRef`s. */
4
4
  export declare const DEVICE_MANAGER_EXTENSION_SOURCE = "device-manager";
5
5
  /** The store the slot reads and writes, named (D62). */
6
- export declare const LINKED_DEVICES_AUTHORITY = "device-manager:_linkedDeviceIds";
6
+ export declare const LINKED_DEVICES_AUTHORITY: string;
7
7
  /** What `refusedTrackedOptIns` judges: the opt-in written, and what it may name. */
8
8
  export interface TrackedOptInWrite {
9
- readonly tracked: readonly number[];
10
- /** The picks being written. */
11
- readonly picked: readonly number[];
12
- /** Linked by structure: tree children, a picked container's child. */
13
- readonly implied: readonly number[];
14
- /** The opt-in as stored before this write. */
15
- readonly stored: readonly number[];
9
+ readonly tracked: readonly number[];
10
+ /** The picks being written. */
11
+ readonly picked: readonly number[];
12
+ /** Linked by structure: tree children, a picked container's child. */
13
+ readonly implied: readonly number[];
14
+ /** The opt-in as stored before this write. */
15
+ readonly stored: readonly number[];
16
16
  }
17
17
  /**
18
- * Which ids of a written opt-in must be refused: a NEW opt-in for a device the
19
- * camera does not link. An id already stored is never refused — whatever was
20
- * read can be written back unchanged (a stale opt-in is removed by leaving it
21
- * out, never by being unable to save). The written list REPLACES the stored
22
- * one: since D655 the editor shows every stored opt-in, so nothing it sends
23
- * back is written blind.
24
- */
18
+ * Which ids of a written opt-in must be refused: a NEW opt-in for a device the
19
+ * camera does not link. An id already stored is never refused — whatever was
20
+ * read can be written back unchanged (a stale opt-in is removed by leaving it
21
+ * out, never by being unable to save). The written list REPLACES the stored
22
+ * one: since D655 the editor shows every stored opt-in, so nothing it sends
23
+ * back is written blind.
24
+ */
25
25
  export declare function refusedTrackedOptIns(params: TrackedOptInWrite): readonly number[];
26
26
  /** Build the `device-extension` provider the device manager registers. */
27
27
  export declare function createDeviceManagerExtensionProvider(pctx: ProviderContext): IDeviceExtensionProvider;
@@ -1,25 +1,25 @@
1
- import { ContributionShape } from './device-meta-types.js';
2
- type Sections = ContributionShape['sections'];
1
+ import type { ContributionShape } from "./device-meta-types.js";
2
+ type Sections = ContributionShape["sections"];
3
3
  /**
4
- * The driver's hydrated sections with every keychain-stored secret replaced
5
- * by its view. Returns the input unchanged when the blob holds no marker.
6
- */
4
+ * The driver's hydrated sections with every keychain-stored secret replaced
5
+ * by its view. Returns the input unchanged when the blob holds no marker.
6
+ */
7
7
  export declare function viewStoredSecrets(sections: Sections, stored: Record<string, unknown>, declaredPaths: readonly string[]): Sections;
8
8
  /** A form patch split into what the driver applies and what the door clears. */
9
9
  export interface DriverFormPatch {
10
- readonly driverPatch: Record<string, unknown>;
11
- readonly clearKeys: readonly string[];
10
+ readonly driverPatch: Record<string, unknown>;
11
+ readonly clearKeys: readonly string[];
12
12
  }
13
13
  /** Split a device-settings form patch (see the module doc). */
14
14
  export declare function splitDriverFormPatch(patch: Record<string, unknown>): DriverFormPatch;
15
15
  /**
16
- * Apply a device-settings form patch: the driver gets plain values only, then
17
- * an explicit clear removes the stored secret at the keychain door (after the
18
- * driver's own persist, whose `''` the door reads as KEEP).
19
- */
16
+ * Apply a device-settings form patch: the driver gets plain values only, then
17
+ * an explicit clear removes the stored secret at the keychain door (after the
18
+ * driver's own persist, whose `''` the door reads as KEEP).
19
+ */
20
20
  export declare function applyDriverFormPatch(input: {
21
- readonly patch: Record<string, unknown>;
22
- readonly applyToDriver: (driverPatch: Record<string, unknown>) => Promise<void>;
23
- readonly clearSecrets: (keys: readonly string[]) => Promise<void>;
21
+ readonly patch: Record<string, unknown>;
22
+ readonly applyToDriver: (driverPatch: Record<string, unknown>) => Promise<void>;
23
+ readonly clearSecrets: (keys: readonly string[]) => Promise<void>;
24
24
  }): Promise<void>;
25
25
  export {};
@@ -1,140 +1,201 @@
1
- import { IDeviceManagerProvider, LinkedDevicesMode, legacyAutoLinkIds, LinkCandidate } from '@camstack/types';
2
- import { ProviderContext } from './device-provider-context.js';
1
+ /**
2
+ * Linked devices — camera ↔ companion-device association (first-class
3
+ * device-manager concept).
4
+ *
5
+ * ONE cap read surface (`getLinkedDevices`) resolves the linked set:
6
+ * - device-tree CHILDREN are ALWAYS included;
7
+ * - plus the persisted manual list — the operator's picks (D356: nothing
8
+ * links itself; same-location devices are only SUGGESTED by the picker);
9
+ * - the camera itself is excluded; the result is deduped.
10
+ *
11
+ * CONTAINERS (`DeviceType.Container` — "parent container for entity-children
12
+ * adopted from a single HA device entry", never renderable standalone, never
13
+ * capability-bearing by construction, see `device-type.ts`) are never a
14
+ * resolved link, in EITHER mode. A container occupies a UI slot and produces
15
+ * no event — the capability always lives on the container's CHILD instead
16
+ * (`getBindings(containerId)` is empty by construction; the child has the
17
+ * cap). Any candidate that resolves to a container is transparently expanded
18
+ * to that container's own children instead of being dropped — this is what
19
+ * lets an operator link "the door lock" when the lock is modelled as a
20
+ * container-with-children device: the always-included children rule and a
21
+ * persisted manual id both funnel through the same expansion
22
+ * (`expandContainer` below), recursively, so a container reached by either
23
+ * path never appears and its real (capability-bearing) descendants do
24
+ * instead. A manually-picked id that names a container is NOT stripped from
25
+ * the persisted `_linkedDeviceIds` config — that would be a write on what is
26
+ * otherwise a read path — it simply now resolves through the same expansion
27
+ * as everything else (to its children, or to nothing if childless). The
28
+ * `linked-devices` extension slot (`device-extension-linked-slot.ts`) never
29
+ * OFFERS a container as a candidate and refuses one as a new pick — it is
30
+ * never a legitimate pick, not just a filtered-out resolution.
31
+ *
32
+ * AUTO mode's same-location match compares each candidate's OWN `location`
33
+ * field directly — no read-time inheritance. (2026-08-26, operator decision,
34
+ * supersedes the read-time `resolveEffectiveLocation` this file used to
35
+ * carry: a container's location-less child does NOT get resolved a location
36
+ * at read time. Instead `setLocation` — device-meta-actions.ts — CASCADES a
37
+ * container's location to every descendant's own `location` column the
38
+ * instant the operator (re)sets it. Since D352 that write-time coverage is
39
+ * complete: a one-shot boot backfill aligned every pre-cascade container
40
+ * (`location-alignment.ts`), and `registerDevice` stamps the nearest located
41
+ * CONTAINER ancestor's location onto a later-adopted child at registration
42
+ * (container-only — a camera's accessories stay location-less on purpose,
43
+ * reachable structurally, so they never become other cameras' companions). A
44
+ * location-less child of a located container is therefore an ANOMALY (a
45
+ * partially-failed cascade, a hand-edited ledger) — still skipped here, a
46
+ * container is never itself a link (file header), full stop. The skip here
47
+ * stays silent — there is no per-read warning in this file — but it is no
48
+ * longer UNREPORTED: `location-alignment.ts`'s boot-time detection re-lists
49
+ * every device on each boot and logs a WARN naming the ancestor and its
50
+ * misaligned descendants, so the anomaly surfaces on a fixed cadence even
51
+ * though no individual read here announces it.
52
+ *
53
+ * CONFIGURATION is the `linked-devices` extension slot (D648): it reads the
54
+ * reserved keys below with `parseLinkedDevicesConfig` and writes them with
55
+ * `applyLinkedDevicesPatch` — the device config blob, the same pattern as
56
+ * `_profileMap`. The hand-written "Linked devices" settings section that
57
+ * wrote the same keys was retired by D655. The one-shot "rebuild this room"
58
+ * action is a CLIENT concern: the Locations page computes the same-location
59
+ * set with `legacyAutoLinkIds` and writes it through the same slot.
60
+ */
61
+ import type { IDeviceManagerProvider, LinkedDevicesMode } from "@camstack/types";
62
+ import { legacyAutoLinkIds, type LinkCandidate } from "@camstack/types";
3
63
  export { legacyAutoLinkIds, type LinkCandidate };
64
+ import type { ProviderContext } from "./device-provider-context.js";
4
65
  /** Reserved device-config keys (cf. `_profileMap`). */
5
66
  export declare const LINKED_MODE_CONFIG_KEY = "_linkedDevicesMode";
6
67
  export declare const LINKED_IDS_CONFIG_KEY = "_linkedDeviceIds";
7
68
  /** Reserved key: subset of linked devices that materialize synthetic tracked
8
- * events on the camera. Absent ⇒ NONE — producing tracked events is an
9
- * explicit operator OPT-IN (2026-07-22 flip: the old absent⇒ALL default
10
- * auto-materialized sensor snapshots the operator never asked for). */
69
+ * events on the camera. Absent ⇒ NONE — producing tracked events is an
70
+ * explicit operator OPT-IN (2026-07-22 flip: the old absent⇒ALL default
71
+ * auto-materialized sensor snapshots the operator never asked for). */
11
72
  export declare const LINKED_TRACKED_IDS_CONFIG_KEY = "_linkedDeviceTrackedIds";
12
73
  /**
13
- * The three reserved keys, as one set: they stay with a camera's NUMBER on a
14
- * hardware swap, and a settings save that still carries them (a page opened
15
- * before D655 retired the section) is refused by name, never dropped.
16
- */
74
+ * The three reserved keys, as one set: they stay with a camera's NUMBER on a
75
+ * hardware swap, and a settings save that still carries them (a page opened
76
+ * before D655 retired the section) is refused by name, never dropped.
77
+ */
17
78
  export declare const LINKED_DEVICES_RESERVED_KEYS: ReadonlySet<string>;
18
79
  export interface LinkedDevicesConfig {
19
- /** Always `manual` since D356 — kept on the type because the cap output
20
- * still carries it for clients already shipped. */
21
- readonly mode: LinkedDevicesMode;
22
- readonly manualIds: readonly number[];
80
+ /** Always `manual` since D356 — kept on the type because the cap output
81
+ * still carries it for clients already shipped. */
82
+ readonly mode: LinkedDevicesMode;
83
+ readonly manualIds: readonly number[];
23
84
  }
24
85
  /** Parse the two reserved keys out of a device-config blob. Tolerant:
25
- * ids may arrive as numbers or numeric strings (the multiselect field
26
- * stores string option values); anything else is dropped. */
86
+ * ids may arrive as numbers or numeric strings (the multiselect field
87
+ * stores string option values); anything else is dropped. */
27
88
  export declare function parseLinkedDevicesConfig(blob: Record<string, unknown>): LinkedDevicesConfig;
28
89
  /**
29
- * Pure resolution core: children ∪ (auto → same-location | manual → list),
30
- * minus self, deduped, CONTAINERS expanded to their children (see file
31
- * header). Order: children first, then mode additions.
32
- */
90
+ * Pure resolution core: children ∪ (auto → same-location | manual → list),
91
+ * minus self, deduped, CONTAINERS expanded to their children (see file
92
+ * header). Order: children first, then mode additions.
93
+ */
33
94
  export declare function resolveLinkedDeviceIds(params: {
34
- readonly selfId: number;
35
- readonly config: LinkedDevicesConfig;
36
- readonly candidates: readonly LinkCandidate[];
95
+ readonly selfId: number;
96
+ readonly config: LinkedDevicesConfig;
97
+ readonly candidates: readonly LinkCandidate[];
37
98
  }): readonly number[];
38
99
  /**
39
- * Which linked devices materialize synthetic tracked events on the camera.
40
- * Absent / non-array config key ⇒ NONE — the operator must explicitly pick
41
- * producers (opt-in; flipped from the legacy absent⇒ALL default, which
42
- * auto-materialized sensor snapshots for every linked device). Otherwise the
43
- * configured subset intersected with the currently-resolved linked set (a
44
- * picked id no longer linked is dropped). Ids may arrive as numbers or numeric
45
- * strings (the multiselect stores string option values); non-numeric entries
46
- * are ignored.
47
- */
100
+ * Which linked devices materialize synthetic tracked events on the camera.
101
+ * Absent / non-array config key ⇒ NONE — the operator must explicitly pick
102
+ * producers (opt-in; flipped from the legacy absent⇒ALL default, which
103
+ * auto-materialized sensor snapshots for every linked device). Otherwise the
104
+ * configured subset intersected with the currently-resolved linked set (a
105
+ * picked id no longer linked is dropped). Ids may arrive as numbers or numeric
106
+ * strings (the multiselect stores string option values); non-numeric entries
107
+ * are ignored.
108
+ */
48
109
  export declare function resolveTrackedEventDeviceIds(config: Record<string, unknown>, linkedIds: readonly number[]): readonly number[];
49
110
  /**
50
- * The persisted tracked-event opt-in AS STORED — not intersected with the
51
- * linked set, which is the resolver's job. Absent / non-array ⇒ `[]` (NONE,
52
- * the same answer the resolver gives). Ids may be numbers or numeric strings;
53
- * anything else is dropped; deduped, in stored order.
54
- */
111
+ * The persisted tracked-event opt-in AS STORED — not intersected with the
112
+ * linked set, which is the resolver's job. Absent / non-array ⇒ `[]` (NONE,
113
+ * the same answer the resolver gives). Ids may be numbers or numeric strings;
114
+ * anything else is dropped; deduped, in stored order.
115
+ */
55
116
  export declare function parseTrackedOptIn(config: Record<string, unknown>): readonly number[];
56
117
  /**
57
- * The fleet listing every function here needs, and the ONLY projection any of
58
- * them may ask for.
59
- *
60
- * Linked-device policy reads five fields off a candidate — `id`,
61
- * `parentDeviceId`, `location`, `name`, `features` — and `slim` carries all
62
- * five. What `slim` drops is `config`, and `config` is not a column: `listAll`
63
- * materialises it with ONE `readDeviceStore` per device, sequentially, on
64
- * device-manager's event loop. This module asked for the full projection three
65
- * times, so every linked-devices read swept the whole fleet's settings rows to
66
- * use none of them.
67
- *
68
- * Measured on the live hub 2026-08-25: `query addon-device-settings` ran
69
- * 36 814 times a minute against a 967-device fleet — ~38 full-fleet sweeps a
70
- * minute, ~31 of them the `pipeline-analytics` reverse index rebuilding itself
71
- * one camera at a time through `getLinkedDevices`. The per-camera `config`
72
- * this query DOES need is the separate `readDeviceStore(deviceId)` below, and
73
- * it is one row, not the fleet.
74
- */
118
+ * The fleet listing every function here needs, and the ONLY projection any of
119
+ * them may ask for.
120
+ *
121
+ * Linked-device policy reads five fields off a candidate — `id`,
122
+ * `parentDeviceId`, `location`, `name`, `features` — and `slim` carries all
123
+ * five. What `slim` drops is `config`, and `config` is not a column: `listAll`
124
+ * materialises it with ONE `readDeviceStore` per device, sequentially, on
125
+ * device-manager's event loop. This module asked for the full projection three
126
+ * times, so every linked-devices read swept the whole fleet's settings rows to
127
+ * use none of them.
128
+ *
129
+ * Measured on the live hub 2026-08-25: `query addon-device-settings` ran
130
+ * 36 814 times a minute against a 967-device fleet — ~38 full-fleet sweeps a
131
+ * minute, ~31 of them the `pipeline-analytics` reverse index rebuilding itself
132
+ * one camera at a time through `getLinkedDevices`. The per-camera `config`
133
+ * this query DOES need is the separate `readDeviceStore(deviceId)` below, and
134
+ * it is one row, not the fleet.
135
+ */
75
136
  export declare const LINK_CANDIDATE_PROJECTION: {
76
- readonly projection: "slim";
137
+ readonly projection: "slim";
77
138
  };
78
139
  /** The single resolved answer, before it is tagged with its camera. */
79
- export type ResolvedLinkedDevices = Awaited<ReturnType<IDeviceManagerProvider['getLinkedDevices']>>;
140
+ export type ResolvedLinkedDevices = Awaited<ReturnType<IDeviceManagerProvider["getLinkedDevices"]>>;
80
141
  /** Cap implementation of `getLinkedDevices`. */
81
- export declare function getLinkedDevices(pctx: ProviderContext, input: Parameters<IDeviceManagerProvider['getLinkedDevices']>[0]): ReturnType<IDeviceManagerProvider['getLinkedDevices']>;
142
+ export declare function getLinkedDevices(pctx: ProviderContext, input: Parameters<IDeviceManagerProvider["getLinkedDevices"]>[0]): ReturnType<IDeviceManagerProvider["getLinkedDevices"]>;
82
143
  /**
83
- * Cap implementation of `getLinkedDevicesBatch` — ONE fleet listing for the
84
- * whole set.
85
- *
86
- * That listing is the query's cost (see `resolveFor`), and asking per camera
87
- * does not amortise it: on the live hub 2026-08-25, 30 concurrent
88
- * `getLinkedDevices` took 4110 ms wall — a queue of thirty full-fleet sweeps
89
- * on device-manager's event loop — to produce 7260 bytes.
90
- *
91
- * Ids are deduped and the answer is one row per REQUESTED id, in the order
92
- * asked: a camera whose settings read fails still gets a row (resolved against
93
- * an empty config, i.e. children-only) rather than dropping out of the array.
94
- */
95
- export declare function getLinkedDevicesBatch(pctx: ProviderContext, input: Parameters<IDeviceManagerProvider['getLinkedDevicesBatch']>[0]): ReturnType<IDeviceManagerProvider['getLinkedDevicesBatch']>;
144
+ * Cap implementation of `getLinkedDevicesBatch` — ONE fleet listing for the
145
+ * whole set.
146
+ *
147
+ * That listing is the query's cost (see `resolveFor`), and asking per camera
148
+ * does not amortise it: on the live hub 2026-08-25, 30 concurrent
149
+ * `getLinkedDevices` took 4110 ms wall — a queue of thirty full-fleet sweeps
150
+ * on device-manager's event loop — to produce 7260 bytes.
151
+ *
152
+ * Ids are deduped and the answer is one row per REQUESTED id, in the order
153
+ * asked: a camera whose settings read fails still gets a row (resolved against
154
+ * an empty config, i.e. children-only) rather than dropping out of the array.
155
+ */
156
+ export declare function getLinkedDevicesBatch(pctx: ProviderContext, input: Parameters<IDeviceManagerProvider["getLinkedDevicesBatch"]>[0]): ReturnType<IDeviceManagerProvider["getLinkedDevicesBatch"]>;
96
157
  /** The two device-store calls the linked-devices write needs — nothing else. */
97
158
  export interface LinkedDevicesStoreAccess {
98
- readonly settings: Pick<ProviderContext['settings'], 'readDeviceStore' | 'writeDeviceStore'>;
159
+ readonly settings: Pick<ProviderContext["settings"], "readDeviceStore" | "writeDeviceStore">;
99
160
  }
100
161
  /**
101
- * THE write path for the linked-devices keys — the `linked-devices` slot's
102
- * `set` lands here (D648). Normalizes the pick list and the tracked-event
103
- * opt-in; an EXPLICIT empty opt-in is stored as `[]`, never deleted, because
104
- * an absent key and an empty one are read alike today but only `[]` says the
105
- * operator chose "none".
106
- */
162
+ * THE write path for the linked-devices keys — the `linked-devices` slot's
163
+ * `set` lands here (D648). Normalizes the pick list and the tracked-event
164
+ * opt-in; an EXPLICIT empty opt-in is stored as `[]`, never deleted, because
165
+ * an absent key and an empty one are read alike today but only `[]` says the
166
+ * operator chose "none".
167
+ */
107
168
  export declare function applyLinkedDevicesPatch(pctx: LinkedDevicesStoreAccess, deviceId: number, patch: Record<string, unknown>): Promise<{
108
- success: true;
169
+ success: true;
109
170
  }>;
110
171
  /** The one field a pick is judged by. */
111
172
  export interface LinkedPickDevice {
112
- readonly type: string;
173
+ readonly type: string;
113
174
  }
114
175
  /** What `refusedLinkedPicks` judges: the write, and what it is judged against. */
115
176
  export interface LinkedPicksInput {
116
- readonly selfId: number;
117
- readonly picked: readonly number[];
118
- readonly persisted: readonly number[];
119
- readonly fleet: ReadonlyMap<number, LinkedPickDevice>;
177
+ readonly selfId: number;
178
+ readonly picked: readonly number[];
179
+ readonly persisted: readonly number[];
180
+ readonly fleet: ReadonlyMap<number, LinkedPickDevice>;
120
181
  }
121
182
  /** One refused pick, named — the refusal message is built from these. */
122
183
  export interface LinkedPickRefusal {
123
- readonly deviceId: number;
124
- readonly reason: 'self' | 'container' | 'unknown';
184
+ readonly deviceId: number;
185
+ readonly reason: "self" | "container" | "unknown";
125
186
  }
126
187
  /**
127
- * Which NEW picks a linked-devices write must refuse: the camera itself, a
128
- * container (never a pick — its children are, D356 and the file header), and
129
- * an id no device has.
130
- *
131
- * Only ids that are not ALREADY persisted are judged. A list written before
132
- * this rule existed may hold a container or a device that has since been
133
- * deleted; the editor shows those as unavailable / missing, and keeping them
134
- * is not a new link. Removing them is the operator's call, never this
135
- * function's (a missing source is shown, never silently dropped).
136
- *
137
- * Since D655 every write of the list goes through the slot, the Locations
138
- * page's room rebuild included, so this is the only gate a pick passes.
139
- */
188
+ * Which NEW picks a linked-devices write must refuse: the camera itself, a
189
+ * container (never a pick — its children are, D356 and the file header), and
190
+ * an id no device has.
191
+ *
192
+ * Only ids that are not ALREADY persisted are judged. A list written before
193
+ * this rule existed may hold a container or a device that has since been
194
+ * deleted; the editor shows those as unavailable / missing, and keeping them
195
+ * is not a new link. Removing them is the operator's call, never this
196
+ * function's (a missing source is shown, never silently dropped).
197
+ *
198
+ * Since D655 every write of the list goes through the slot, the Locations
199
+ * page's room rebuild included, so this is the only gate a pick passes.
200
+ */
140
201
  export declare function refusedLinkedPicks(params: LinkedPicksInput): readonly LinkedPickRefusal[];