@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.
- package/dist/addon/base-addon.d.ts +14 -2
- package/dist/addon/base-addon.d.ts.map +1 -1
- package/dist/addon/durable-state.d.ts +33 -0
- package/dist/addon/durable-state.d.ts.map +1 -0
- package/dist/capabilities/accessories.cap.d.ts +56 -8
- package/dist/capabilities/accessories.cap.d.ts.map +1 -1
- package/dist/capabilities/addon-settings.cap.d.ts +1 -0
- package/dist/capabilities/addon-settings.cap.d.ts.map +1 -1
- package/dist/capabilities/addons.cap.d.ts +187 -1
- package/dist/capabilities/addons.cap.d.ts.map +1 -1
- package/dist/capabilities/advanced-notifier.cap.d.ts +4 -0
- package/dist/capabilities/advanced-notifier.cap.d.ts.map +1 -1
- package/dist/capabilities/air-quality-sensor.cap.d.ts +56 -0
- package/dist/capabilities/air-quality-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/alarm-panel.cap.d.ts +154 -0
- package/dist/capabilities/alarm-panel.cap.d.ts.map +1 -0
- package/dist/capabilities/alerts.cap.d.ts +5 -5
- package/dist/capabilities/ambient-light-sensor.cap.d.ts +39 -0
- package/dist/capabilities/ambient-light-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/audio-analyzer.cap.d.ts +2 -2
- package/dist/capabilities/automation-control.cap.d.ts +65 -0
- package/dist/capabilities/automation-control.cap.d.ts.map +1 -0
- package/dist/capabilities/battery.cap.d.ts +30 -1
- package/dist/capabilities/battery.cap.d.ts.map +1 -1
- package/dist/capabilities/binary.cap.d.ts +40 -0
- package/dist/capabilities/binary.cap.d.ts.map +1 -0
- package/dist/capabilities/brightness.cap.d.ts +3 -2
- package/dist/capabilities/brightness.cap.d.ts.map +1 -1
- package/dist/capabilities/broker.cap.d.ts +291 -0
- package/dist/capabilities/broker.cap.d.ts.map +1 -0
- package/dist/capabilities/button.cap.d.ts +27 -0
- package/dist/capabilities/button.cap.d.ts.map +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts +1 -0
- package/dist/capabilities/camera-credentials.cap.d.ts.map +1 -1
- package/dist/capabilities/camera-pipeline-config.cap.d.ts +43 -0
- package/dist/capabilities/camera-pipeline-config.cap.d.ts.map +1 -0
- package/dist/capabilities/camera-streams.cap.d.ts +147 -10
- package/dist/capabilities/camera-streams.cap.d.ts.map +1 -1
- package/dist/capabilities/capability-definition.d.ts +15 -0
- package/dist/capabilities/capability-definition.d.ts.map +1 -1
- package/dist/capabilities/carbon-monoxide.cap.d.ts +33 -0
- package/dist/capabilities/carbon-monoxide.cap.d.ts.map +1 -0
- package/dist/capabilities/climate-control.cap.d.ts +183 -0
- package/dist/capabilities/climate-control.cap.d.ts.map +1 -0
- package/dist/capabilities/color.cap.d.ts +186 -0
- package/dist/capabilities/color.cap.d.ts.map +1 -0
- package/dist/capabilities/connectivity.cap.d.ts +37 -0
- package/dist/capabilities/connectivity.cap.d.ts.map +1 -0
- package/dist/capabilities/consumables.cap.d.ts +105 -0
- package/dist/capabilities/consumables.cap.d.ts.map +1 -0
- package/dist/capabilities/contact.cap.d.ts +41 -0
- package/dist/capabilities/contact.cap.d.ts.map +1 -0
- package/dist/capabilities/control.cap.d.ts +167 -0
- package/dist/capabilities/control.cap.d.ts.map +1 -0
- package/dist/capabilities/cover.cap.d.ts +104 -0
- package/dist/capabilities/cover.cap.d.ts.map +1 -0
- package/dist/capabilities/custom-actions.d.ts +6 -0
- package/dist/capabilities/custom-actions.d.ts.map +1 -1
- package/dist/capabilities/decoder.cap.d.ts +1 -1
- package/dist/capabilities/device-adoption.cap.d.ts +203 -0
- package/dist/capabilities/device-adoption.cap.d.ts.map +1 -0
- package/dist/capabilities/device-discovery.cap.d.ts +44 -143
- package/dist/capabilities/device-discovery.cap.d.ts.map +1 -1
- package/dist/capabilities/device-manager.cap.d.ts +469 -0
- package/dist/capabilities/device-manager.cap.d.ts.map +1 -1
- package/dist/capabilities/device-ops.cap.d.ts +30 -0
- package/dist/capabilities/device-ops.cap.d.ts.map +1 -1
- package/dist/capabilities/device-provider.cap.d.ts +36 -0
- package/dist/capabilities/device-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/device-status.cap.d.ts +1 -0
- package/dist/capabilities/device-status.cap.d.ts.map +1 -1
- package/dist/capabilities/doorbell.cap.d.ts +1 -0
- package/dist/capabilities/doorbell.cap.d.ts.map +1 -1
- package/dist/capabilities/enum-sensor.cap.d.ts +60 -0
- package/dist/capabilities/enum-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/event-emitter.cap.d.ts +79 -0
- package/dist/capabilities/event-emitter.cap.d.ts.map +1 -0
- package/dist/capabilities/fan-control.cap.d.ts +100 -0
- package/dist/capabilities/fan-control.cap.d.ts.map +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts +1 -0
- package/dist/capabilities/feature-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/flood.cap.d.ts +37 -0
- package/dist/capabilities/flood.cap.d.ts.map +1 -0
- package/dist/capabilities/gas.cap.d.ts +34 -0
- package/dist/capabilities/gas.cap.d.ts.map +1 -0
- package/dist/capabilities/humidifier.cap.d.ts +82 -0
- package/dist/capabilities/humidifier.cap.d.ts.map +1 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts +43 -0
- package/dist/capabilities/humidity-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/image.cap.d.ts +44 -0
- package/dist/capabilities/image.cap.d.ts.map +1 -0
- package/dist/capabilities/index.d.ts +103 -15
- package/dist/capabilities/index.d.ts.map +1 -1
- package/dist/capabilities/integrations.cap.d.ts +12 -0
- package/dist/capabilities/integrations.cap.d.ts.map +1 -1
- package/dist/capabilities/intercom.cap.d.ts +49 -9
- package/dist/capabilities/intercom.cap.d.ts.map +1 -1
- package/dist/capabilities/lawn-mower-control.cap.d.ts +83 -0
- package/dist/capabilities/lawn-mower-control.cap.d.ts.map +1 -0
- package/dist/capabilities/local-network.cap.d.ts +1 -1
- package/dist/capabilities/lock-control.cap.d.ts +92 -0
- package/dist/capabilities/lock-control.cap.d.ts.map +1 -0
- package/dist/capabilities/mask-shape.d.ts +99 -0
- package/dist/capabilities/mask-shape.d.ts.map +1 -0
- package/dist/capabilities/media-player.cap.d.ts +201 -0
- package/dist/capabilities/media-player.cap.d.ts.map +1 -0
- package/dist/capabilities/mesh-network.cap.d.ts +3 -3
- package/dist/capabilities/motion-trigger.cap.d.ts +1 -0
- package/dist/capabilities/motion-trigger.cap.d.ts.map +1 -1
- package/dist/capabilities/motion-zones.cap.d.ts +95 -13
- package/dist/capabilities/motion-zones.cap.d.ts.map +1 -1
- package/dist/capabilities/mqtt-broker.cap.d.ts +3 -3
- package/dist/capabilities/native-object-detection.cap.d.ts +74 -3
- package/dist/capabilities/native-object-detection.cap.d.ts.map +1 -1
- package/dist/capabilities/network-access.cap.d.ts +7 -7
- package/dist/capabilities/network-quality.cap.d.ts +5 -0
- package/dist/capabilities/network-quality.cap.d.ts.map +1 -1
- package/dist/capabilities/notifier.cap.d.ts +173 -0
- package/dist/capabilities/notifier.cap.d.ts.map +1 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts +52 -0
- package/dist/capabilities/numeric-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/oauth-integration.cap.d.ts +4 -2
- package/dist/capabilities/oauth-integration.cap.d.ts.map +1 -1
- package/dist/capabilities/osd.cap.d.ts +1 -0
- package/dist/capabilities/osd.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-analytics.cap.d.ts +69 -22
- package/dist/capabilities/pipeline-analytics.cap.d.ts.map +1 -1
- package/dist/capabilities/pipeline-executor.cap.d.ts +2 -2
- package/dist/capabilities/pipeline-orchestrator.cap.d.ts +1 -1
- package/dist/capabilities/pipeline-runner.cap.d.ts +4 -2
- package/dist/capabilities/pipeline-runner.cap.d.ts.map +1 -1
- package/dist/capabilities/platform-probe.cap.d.ts +25 -0
- package/dist/capabilities/platform-probe.cap.d.ts.map +1 -1
- package/dist/capabilities/power-meter.cap.d.ts +65 -0
- package/dist/capabilities/power-meter.cap.d.ts.map +1 -0
- package/dist/capabilities/presence.cap.d.ts +79 -0
- package/dist/capabilities/presence.cap.d.ts.map +1 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts +43 -0
- package/dist/capabilities/pressure-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/privacy-mask.cap.d.ts +207 -0
- package/dist/capabilities/privacy-mask.cap.d.ts.map +1 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts +1 -0
- package/dist/capabilities/ptz-autotrack.cap.d.ts.map +1 -1
- package/dist/capabilities/ptz.cap.d.ts +1 -0
- package/dist/capabilities/ptz.cap.d.ts.map +1 -1
- package/dist/capabilities/reboot.cap.d.ts +1 -0
- package/dist/capabilities/reboot.cap.d.ts.map +1 -1
- package/dist/capabilities/recording.cap.d.ts +238 -32
- package/dist/capabilities/recording.cap.d.ts.map +1 -1
- package/dist/capabilities/restreamer.cap.d.ts +2 -2
- package/dist/capabilities/schemas/detection-shared.d.ts +14 -1
- package/dist/capabilities/schemas/detection-shared.d.ts.map +1 -1
- package/dist/capabilities/schemas/orchestrator-metrics.d.ts +2 -2
- package/dist/capabilities/schemas/streaming-shared.d.ts +64 -1
- package/dist/capabilities/schemas/streaming-shared.d.ts.map +1 -1
- package/dist/capabilities/script-runner.cap.d.ts +62 -0
- package/dist/capabilities/script-runner.cap.d.ts.map +1 -0
- package/dist/capabilities/settings-store.cap.d.ts +25 -0
- package/dist/capabilities/settings-store.cap.d.ts.map +1 -1
- package/dist/capabilities/smoke.cap.d.ts +38 -0
- package/dist/capabilities/smoke.cap.d.ts.map +1 -0
- package/dist/capabilities/snapshot-provider.cap.d.ts +1 -1
- package/dist/capabilities/snapshot.cap.d.ts +1 -0
- package/dist/capabilities/snapshot.cap.d.ts.map +1 -1
- package/dist/capabilities/sso-bridge.cap.d.ts +3 -3
- package/dist/capabilities/storage-evictable.cap.d.ts +54 -0
- package/dist/capabilities/storage-evictable.cap.d.ts.map +1 -0
- package/dist/capabilities/storage-provider.cap.d.ts +31 -186
- package/dist/capabilities/storage-provider.cap.d.ts.map +1 -1
- package/dist/capabilities/storage.cap.d.ts +35 -226
- package/dist/capabilities/storage.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-broker.cap.d.ts +309 -25
- package/dist/capabilities/stream-broker.cap.d.ts.map +1 -1
- package/dist/capabilities/stream-catalog.cap.d.ts +85 -0
- package/dist/capabilities/stream-catalog.cap.d.ts.map +1 -0
- package/dist/capabilities/stream-params.cap.d.ts +27 -26
- package/dist/capabilities/stream-params.cap.d.ts.map +1 -1
- package/dist/capabilities/switch.cap.d.ts +1 -0
- package/dist/capabilities/switch.cap.d.ts.map +1 -1
- package/dist/capabilities/tamper.cap.d.ts +33 -0
- package/dist/capabilities/tamper.cap.d.ts.map +1 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts +51 -0
- package/dist/capabilities/temperature-sensor.cap.d.ts.map +1 -0
- package/dist/capabilities/update.cap.d.ts +49 -0
- package/dist/capabilities/update.cap.d.ts.map +1 -0
- package/dist/capabilities/user-management.cap.d.ts +20 -20
- package/dist/capabilities/vacuum-control.cap.d.ts +229 -0
- package/dist/capabilities/vacuum-control.cap.d.ts.map +1 -0
- package/dist/capabilities/valve.cap.d.ts +93 -0
- package/dist/capabilities/valve.cap.d.ts.map +1 -0
- package/dist/capabilities/vibration.cap.d.ts +33 -0
- package/dist/capabilities/vibration.cap.d.ts.map +1 -0
- package/dist/capabilities/water-heater.cap.d.ts +78 -0
- package/dist/capabilities/water-heater.cap.d.ts.map +1 -0
- package/dist/capabilities/weather.cap.d.ts +76 -0
- package/dist/capabilities/weather.cap.d.ts.map +1 -0
- package/dist/capabilities/webrtc-session.cap.d.ts +128 -0
- package/dist/capabilities/webrtc-session.cap.d.ts.map +1 -1
- package/dist/constants.d.ts +0 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/device/base-device-provider.d.ts +11 -0
- package/dist/device/base-device-provider.d.ts.map +1 -1
- package/dist/device/base-device.d.ts +52 -0
- package/dist/device/base-device.d.ts.map +1 -1
- package/dist/device/device-context.d.ts +29 -0
- package/dist/device/device-context.d.ts.map +1 -1
- package/dist/device/device-link-transform.d.ts +6 -0
- package/dist/device/device-link-transform.d.ts.map +1 -0
- package/dist/device/device-management.d.ts +116 -4
- package/dist/device/device-management.d.ts.map +1 -1
- package/dist/device/device-type.d.ts +214 -3
- package/dist/device/device-type.d.ts.map +1 -1
- package/dist/device/device.d.ts +25 -0
- package/dist/device/device.d.ts.map +1 -1
- package/dist/device/index.d.ts +5 -1
- package/dist/device/index.d.ts.map +1 -1
- package/dist/device/path-util.d.ts +13 -0
- package/dist/device/path-util.d.ts.map +1 -0
- package/dist/device/schema-fields.d.ts +12 -0
- package/dist/device/schema-fields.d.ts.map +1 -0
- package/dist/device/source-info.d.ts +87 -0
- package/dist/device/source-info.d.ts.map +1 -0
- package/dist/device/system-mirror.d.ts +6 -2
- package/dist/device/system-mirror.d.ts.map +1 -1
- package/dist/encode-profile.d.ts +126 -0
- package/dist/encode-profile.d.ts.map +1 -0
- package/dist/enums/event-category.d.ts +92 -7
- package/dist/enums/event-category.d.ts.map +1 -1
- package/dist/generated/addon-api.d.ts +12821 -8025
- package/dist/generated/addon-api.d.ts.map +1 -1
- package/dist/generated/cap-status-types.d.ts +87 -1
- package/dist/generated/cap-status-types.d.ts.map +1 -1
- package/dist/generated/capability-router-map.d.ts +142 -7
- package/dist/generated/capability-router-map.d.ts.map +1 -1
- package/dist/generated/device-local-state.d.ts +123 -0
- package/dist/generated/device-local-state.d.ts.map +1 -1
- package/dist/generated/device-proxy.d.ts +132 -5
- package/dist/generated/device-proxy.d.ts.map +1 -1
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/generated/method-access-map.d.ts.map +1 -1
- package/dist/generated/provider-kind-map.d.ts +1 -1
- package/dist/generated/provider-kind-map.d.ts.map +1 -1
- package/dist/generated/system-proxy.d.ts +10 -8
- package/dist/generated/system-proxy.d.ts.map +1 -1
- package/dist/health/wiring-health.d.ts +136 -0
- package/dist/health/wiring-health.d.ts.map +1 -0
- package/dist/{index-CMM1Y9W6.js → index-BSA_TBea.js} +4774 -923
- package/dist/index-BSA_TBea.js.map +1 -0
- package/dist/{index-QRlzao1I.mjs → index-Bpj3ScIH.mjs} +5142 -1291
- package/dist/index-Bpj3ScIH.mjs.map +1 -0
- package/dist/index.d.ts +23 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1498 -119
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1806 -427
- package/dist/index.mjs.map +1 -1
- package/dist/interfaces/addon-data-plane.d.ts +76 -0
- package/dist/interfaces/addon-data-plane.d.ts.map +1 -0
- package/dist/interfaces/addon.d.ts +61 -1
- package/dist/interfaces/addon.d.ts.map +1 -1
- package/dist/interfaces/advanced-notifier.d.ts +4 -0
- package/dist/interfaces/advanced-notifier.d.ts.map +1 -1
- package/dist/interfaces/capability.d.ts +59 -1
- package/dist/interfaces/capability.d.ts.map +1 -1
- package/dist/interfaces/config-ui.d.ts +70 -6
- package/dist/interfaces/config-ui.d.ts.map +1 -1
- package/dist/interfaces/device-capabilities/camera.d.ts +2 -1
- package/dist/interfaces/device-capabilities/camera.d.ts.map +1 -1
- package/dist/interfaces/event-bus.d.ts +105 -4
- package/dist/interfaces/event-bus.d.ts.map +1 -1
- package/dist/interfaces/kernel-abstractions.d.ts +10 -1
- package/dist/interfaces/kernel-abstractions.d.ts.map +1 -1
- package/dist/interfaces/network-quality.d.ts +8 -0
- package/dist/interfaces/network-quality.d.ts.map +1 -1
- package/dist/interfaces/pipeline-executor-capability.d.ts +2 -2
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts +2 -1
- package/dist/interfaces/pipeline-orchestrator-capability.d.ts.map +1 -1
- package/dist/interfaces/pipeline-runner-capability.d.ts +7 -0
- package/dist/interfaces/pipeline-runner-capability.d.ts.map +1 -1
- package/dist/interfaces/recording-config.d.ts +91 -0
- package/dist/interfaces/recording-config.d.ts.map +1 -0
- package/dist/interfaces/rtp-egress.d.ts +2 -3
- package/dist/interfaces/rtp-egress.d.ts.map +1 -1
- package/dist/interfaces/storage-location-declaration.d.ts +34 -0
- package/dist/interfaces/storage-location-declaration.d.ts.map +1 -0
- package/dist/interfaces/storage-location.d.ts +18 -74
- package/dist/interfaces/storage-location.d.ts.map +1 -1
- package/dist/interfaces/storage.d.ts +15 -4
- package/dist/interfaces/storage.d.ts.map +1 -1
- package/dist/interfaces/stream-broker.d.ts +39 -4
- package/dist/interfaces/stream-broker.d.ts.map +1 -1
- package/dist/interfaces/timezones.d.ts +59 -0
- package/dist/interfaces/timezones.d.ts.map +1 -0
- package/dist/node.d.ts +3 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +50 -8
- package/dist/node.js.map +1 -1
- package/dist/node.mjs +51 -9
- package/dist/node.mjs.map +1 -1
- package/dist/readiness/readiness-registry.d.ts.map +1 -1
- package/dist/schemas/auth-records.d.ts +4 -4
- package/dist/storage/filesystem-storage-provider.d.ts +2 -1
- package/dist/storage/filesystem-storage-provider.d.ts.map +1 -1
- package/dist/stream-selection.d.ts +85 -0
- package/dist/stream-selection.d.ts.map +1 -0
- package/dist/types/detection.d.ts +3 -3
- package/dist/types/io.d.ts +13 -1
- package/dist/types/io.d.ts.map +1 -1
- package/dist/util/location-match.d.ts +15 -0
- package/dist/util/location-match.d.ts.map +1 -0
- package/dist/utils/canonical-hash.d.ts +20 -0
- package/dist/utils/canonical-hash.d.ts.map +1 -0
- package/dist/utils/export-reconciler.d.ts +101 -0
- package/dist/utils/export-reconciler.d.ts.map +1 -0
- package/dist/utils/privacy-grid-raster.d.ts +48 -0
- package/dist/utils/privacy-grid-raster.d.ts.map +1 -0
- package/dist/utils/sleep.d.ts +36 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/capabilities/recording-engine.cap.d.ts +0 -477
- package/dist/capabilities/recording-engine.cap.d.ts.map +0 -1
- package/dist/index-CMM1Y9W6.js.map +0 -1
- package/dist/index-QRlzao1I.mjs.map +0 -1
|
@@ -14,6 +14,7 @@ export declare const CamStreamKindSchema: z.ZodEnum<{
|
|
|
14
14
|
"pull-http": "pull-http";
|
|
15
15
|
"pull-rfc4571": "pull-rfc4571";
|
|
16
16
|
"push-annexb": "push-annexb";
|
|
17
|
+
derived: "derived";
|
|
17
18
|
}>;
|
|
18
19
|
export type CamStreamKind = z.infer<typeof CamStreamKindSchema>;
|
|
19
20
|
export declare const CamStreamResolutionSchema: z.ZodObject<{
|
|
@@ -29,6 +30,7 @@ export declare const CameraStreamSchema: z.ZodObject<{
|
|
|
29
30
|
"pull-http": "pull-http";
|
|
30
31
|
"pull-rfc4571": "pull-rfc4571";
|
|
31
32
|
"push-annexb": "push-annexb";
|
|
33
|
+
derived: "derived";
|
|
32
34
|
}>;
|
|
33
35
|
url: z.ZodOptional<z.ZodString>;
|
|
34
36
|
codec: z.ZodOptional<z.ZodString>;
|
|
@@ -76,6 +78,39 @@ export declare const ProfileSlotSchema: z.ZodObject<{
|
|
|
76
78
|
errorMessage: z.ZodOptional<z.ZodString>;
|
|
77
79
|
}, z.core.$strip>;
|
|
78
80
|
export type ProfileSlot = z.infer<typeof ProfileSlotSchema>;
|
|
81
|
+
/** The canonical consumer-facing broker id for a device profile. */
|
|
82
|
+
export declare function makeProfileBrokerId(deviceId: number, profile: CamProfile): string;
|
|
83
|
+
/**
|
|
84
|
+
* The broker id keying a physical SOURCE stream: `${deviceId}/${camStreamId}`.
|
|
85
|
+
* This is the broker's internal source key (`brokerIdFor` in the manager) — a
|
|
86
|
+
* `camStreamId` like `native:main` — as opposed to the public profile alias
|
|
87
|
+
* {@link makeProfileBrokerId}. Used to resolve a source's restream endpoint
|
|
88
|
+
* (e.g. routing a transcode's ffmpeg input through the broker so it rides the
|
|
89
|
+
* single source dial instead of opening a second camera connection).
|
|
90
|
+
*/
|
|
91
|
+
export declare function makeSourceBrokerId(deviceId: number, camStreamId: string): string;
|
|
92
|
+
/**
|
|
93
|
+
* Inverse of {@link makeProfileBrokerId}. Returns `null` when the string is
|
|
94
|
+
* not a canonical `${deviceId}/${profile}` id — e.g. a broker-internal
|
|
95
|
+
* cam-stream id (`5/native:main`), a derived/adaptive ref, or a malformed
|
|
96
|
+
* value. So a caller can safely distinguish "addresses a public profile"
|
|
97
|
+
* from "addresses something broker-internal".
|
|
98
|
+
*/
|
|
99
|
+
export declare function parseProfileBrokerId(brokerId: string): {
|
|
100
|
+
deviceId: number;
|
|
101
|
+
profile: CamProfile;
|
|
102
|
+
} | null;
|
|
103
|
+
/**
|
|
104
|
+
* The profile slots worth consuming/recording: ASSIGNED only
|
|
105
|
+
* (`sourceCamStreamId != null`), DEDUPED by physical source so the same
|
|
106
|
+
* camera encoder is never subscribed/recorded twice, ordered high→mid→low.
|
|
107
|
+
* Optionally scoped to one `deviceId`. Pure; never mutates the input.
|
|
108
|
+
*
|
|
109
|
+
* Recording `main` and `mid` when both point at the same `sourceCamStreamId`
|
|
110
|
+
* would dial the camera's internal stream twice for no benefit — this is the
|
|
111
|
+
* dedup that prevents that.
|
|
112
|
+
*/
|
|
113
|
+
export declare function selectAssignedProfileSlots(slots: readonly ProfileSlot[], deviceId?: number): ProfileSlot[];
|
|
79
114
|
/**
|
|
80
115
|
* Zod schema for StreamSourceEntry — the canonical stream descriptor
|
|
81
116
|
* exposed by ICameraDevice.getStreamSources() and consumed by the broker.
|
|
@@ -114,8 +149,8 @@ export declare const StreamSourceSchema: z.ZodObject<{
|
|
|
114
149
|
}, z.core.$strip>;
|
|
115
150
|
export declare const EncodedPacketSchema: z.ZodObject<{
|
|
116
151
|
type: z.ZodEnum<{
|
|
117
|
-
audio: "audio";
|
|
118
152
|
video: "video";
|
|
153
|
+
audio: "audio";
|
|
119
154
|
}>;
|
|
120
155
|
data: z.ZodCustom<Uint8Array<ArrayBuffer>, Uint8Array<ArrayBuffer>>;
|
|
121
156
|
pts: z.ZodNumber;
|
|
@@ -281,4 +316,32 @@ export declare const BrokerStatsSchema: z.ZodObject<{
|
|
|
281
316
|
supported: z.ZodBoolean;
|
|
282
317
|
}, z.core.$strip>>>;
|
|
283
318
|
}, z.core.$strip>;
|
|
319
|
+
/**
|
|
320
|
+
* Exporter-facing "profile restream" entry. Returned by
|
|
321
|
+
* `cameraStreams.getProfileRtspEntries` — one per ASSIGNED profile slot
|
|
322
|
+
* (high/mid/low). `brokerId` is the PROFILE-keyed broker id
|
|
323
|
+
* (`${deviceId}/${profile}`, e.g. `15/high`); its `url` is a broker
|
|
324
|
+
* RTSP restream that aliases the profile's assigned source broker, so
|
|
325
|
+
* every consumer dialling a profile converges on the same single pull.
|
|
326
|
+
* `codec`/`resolution` describe the assigned SOURCE camStream (for the
|
|
327
|
+
* `auto` resolution-closest pick). Distinct from `RtspRestreamEntry`
|
|
328
|
+
* (raw per-camStream, live-view only).
|
|
329
|
+
*/
|
|
330
|
+
export declare const ProfileRtspEntrySchema: z.ZodObject<{
|
|
331
|
+
profile: z.ZodEnum<{
|
|
332
|
+
high: "high";
|
|
333
|
+
mid: "mid";
|
|
334
|
+
low: "low";
|
|
335
|
+
}>;
|
|
336
|
+
brokerId: z.ZodString;
|
|
337
|
+
url: z.ZodString;
|
|
338
|
+
mutedUrl: z.ZodString;
|
|
339
|
+
enabled: z.ZodBoolean;
|
|
340
|
+
codec: z.ZodOptional<z.ZodString>;
|
|
341
|
+
resolution: z.ZodOptional<z.ZodObject<{
|
|
342
|
+
width: z.ZodNumber;
|
|
343
|
+
height: z.ZodNumber;
|
|
344
|
+
}, z.core.$strip>>;
|
|
345
|
+
}, z.core.$strip>;
|
|
346
|
+
export type ProfileRtspEntry = z.infer<typeof ProfileRtspEntrySchema>;
|
|
284
347
|
//# sourceMappingURL=streaming-shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"streaming-shared.d.ts","sourceRoot":"","sources":["../../../src/capabilities/schemas/streaming-shared.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAWvB,eAAO,MAAM,gBAAgB;;;;EAAiC,CAAA;AAC9D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzD,oDAAoD;AACpD,eAAO,MAAM,iBAAiB,iCAAkC,CAAA;AAiBhE,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"streaming-shared.d.ts","sourceRoot":"","sources":["../../../src/capabilities/schemas/streaming-shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Script-runner cap. Models HA `script.*` entities on
|
|
6
|
+
* `DeviceType.Script`. A Script is a pre-recorded action sequence
|
|
7
|
+
* that can be invoked imperatively — optionally with a variables
|
|
8
|
+
* map when the script declares input fields.
|
|
9
|
+
*
|
|
10
|
+
* Variable-support is signalled by `DeviceFeature.ScriptVariables`
|
|
11
|
+
* so the UI gates a "with parameters" form without a slice fetch.
|
|
12
|
+
*/
|
|
13
|
+
export declare const ScriptRunnerStatusSchema: z.ZodObject<{
|
|
14
|
+
isRunning: z.ZodBoolean;
|
|
15
|
+
lastRunAt: z.ZodNumber;
|
|
16
|
+
lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
|
|
17
|
+
lastError: z.ZodNullable<z.ZodString>;
|
|
18
|
+
lastChangedAt: z.ZodNumber;
|
|
19
|
+
}, z.core.$strip>;
|
|
20
|
+
export type ScriptRunnerStatus = z.infer<typeof ScriptRunnerStatusSchema>;
|
|
21
|
+
export declare const scriptRunnerCapability: {
|
|
22
|
+
readonly name: "script-runner";
|
|
23
|
+
readonly scope: "device";
|
|
24
|
+
readonly deviceNative: true;
|
|
25
|
+
readonly mode: "singleton";
|
|
26
|
+
readonly deviceTypes: readonly [DeviceType.Script];
|
|
27
|
+
readonly methods: {
|
|
28
|
+
readonly run: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
29
|
+
deviceId: z.ZodNumber;
|
|
30
|
+
variables: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
31
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
32
|
+
/** Cancel a running script. Provider rejects when the script
|
|
33
|
+
* isn't currently running. */
|
|
34
|
+
readonly stop: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
35
|
+
deviceId: z.ZodNumber;
|
|
36
|
+
}, z.core.$strip>, z.ZodVoid, "mutation">;
|
|
37
|
+
};
|
|
38
|
+
readonly status: {
|
|
39
|
+
readonly schema: z.ZodObject<{
|
|
40
|
+
isRunning: z.ZodBoolean;
|
|
41
|
+
lastRunAt: z.ZodNumber;
|
|
42
|
+
lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
|
|
43
|
+
lastError: z.ZodNullable<z.ZodString>;
|
|
44
|
+
lastChangedAt: z.ZodNumber;
|
|
45
|
+
}, z.core.$strip>;
|
|
46
|
+
readonly kind: "push";
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Runtime-state slice — mirrored by the kernel. UI script tile reads
|
|
50
|
+
* `isRunning` to render a spinner during execution and surfaces
|
|
51
|
+
* `lastError` / `lastRunSuccess` in the recent-runs panel.
|
|
52
|
+
*/
|
|
53
|
+
readonly runtimeState: z.ZodObject<{
|
|
54
|
+
isRunning: z.ZodBoolean;
|
|
55
|
+
lastRunAt: z.ZodNumber;
|
|
56
|
+
lastRunSuccess: z.ZodNullable<z.ZodBoolean>;
|
|
57
|
+
lastError: z.ZodNullable<z.ZodString>;
|
|
58
|
+
lastChangedAt: z.ZodNumber;
|
|
59
|
+
}, z.core.$strip>;
|
|
60
|
+
};
|
|
61
|
+
export type IScriptRunnerProvider = InferProvider<typeof scriptRunnerCapability>;
|
|
62
|
+
//# sourceMappingURL=script-runner.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"script-runner.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/script-runner.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;GAQG;AAEH,eAAO,MAAM,wBAAwB;;;;;;iBAanC,CAAA;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAEzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;QAkB/B;uCAC+B;;;;;;;;;;;;;;;IAWjC;;;;OAIG;;;;;;;;CAEoC,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -147,6 +147,31 @@ export declare const settingsStoreCapability: {
|
|
|
147
147
|
offset: z.ZodOptional<z.ZodNumber>;
|
|
148
148
|
}, z.core.$strip>>;
|
|
149
149
|
}, z.core.$strip>, z.ZodNumber, import("./capability-definition.js").CapabilityMethodKind>;
|
|
150
|
+
/** Grouped counts per ((field-origin)/bucketSize) bucket, filtered. */
|
|
151
|
+
readonly histogram: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
152
|
+
namespace: z.ZodOptional<z.ZodString>;
|
|
153
|
+
collection: z.ZodString;
|
|
154
|
+
field: z.ZodString;
|
|
155
|
+
bucketSize: z.ZodNumber;
|
|
156
|
+
origin: z.ZodNumber;
|
|
157
|
+
filter: z.ZodOptional<z.ZodObject<{
|
|
158
|
+
where: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
159
|
+
whereIn: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodUnknown>>>;
|
|
160
|
+
whereBetween: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodTuple<[z.ZodUnknown, z.ZodUnknown], null>>>;
|
|
161
|
+
orderBy: z.ZodOptional<z.ZodObject<{
|
|
162
|
+
field: z.ZodString;
|
|
163
|
+
direction: z.ZodEnum<{
|
|
164
|
+
asc: "asc";
|
|
165
|
+
desc: "desc";
|
|
166
|
+
}>;
|
|
167
|
+
}, z.core.$strip>>;
|
|
168
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
169
|
+
offset: z.ZodOptional<z.ZodNumber>;
|
|
170
|
+
}, z.core.$strip>>;
|
|
171
|
+
}, z.core.$strip>, z.ZodReadonly<z.ZodArray<z.ZodObject<{
|
|
172
|
+
bucket: z.ZodNumber;
|
|
173
|
+
count: z.ZodNumber;
|
|
174
|
+
}, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
150
175
|
/** Check if a collection is empty. */
|
|
151
176
|
readonly isEmpty: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
152
177
|
namespace: z.ZodOptional<z.ZodString>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-store.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/settings-store.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;iBAUrB,CAAA;AAEF,8CAA8C;AAC9C,QAAA,MAAM,oBAAoB;;;iBAGxB,CAAA;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;;;;;;;;iBAM1B,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;iBAIzB,CAAA;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB;;;;;QAKhC,mDAAmD;;;;;;QAMnD,mDAAmD;;;;;;;QAOnD,mDAAmD;;;;;;;;;;;;;;;;;;;;;;QAMnD,2BAA2B;;;;;;;;;QAO3B,uCAAuC;;;;;;;QAOvC,iCAAiC;;;;;;QAOjC,0DAA0D;;;;;;;;;;;;;;;;;;;QAM1D,sCAAsC;;;;;QAMtC;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAElF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,2BAA2B,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;AAE/F,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA;AAEjG,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
|
|
1
|
+
{"version":3,"file":"settings-store.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/settings-store.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;GAEG;AACH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;iBAUrB,CAAA;AAEF,8CAA8C;AAC9C,QAAA,MAAM,oBAAoB;;;iBAGxB,CAAA;AAEF;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;;;;;;;;iBAM1B,CAAA;AAEF,QAAA,MAAM,qBAAqB;;;;iBAIzB,CAAA;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,uBAAuB;;;;;QAKhC,mDAAmD;;;;;;QAMnD,mDAAmD;;;;;;;QAOnD,mDAAmD;;;;;;;;;;;;;;;;;;;;;;QAMnD,2BAA2B;;;;;;;;;QAO3B,uCAAuC;;;;;;;QAOvC,iCAAiC;;;;;;QAOjC,0DAA0D;;;;;;;;;;;;;;;;;;;QAM1D,uEAAuE;;;;;;;;;;;;;;;;;;;;;;;;;QAUvE,sCAAsC;;;;;QAMtC;;;;;;;;;;;;;;WAcG;;;;;;;;;;;;;;;;;;;;;;;;CAYkC,CAAA;AAEzC,MAAM,MAAM,sBAAsB,GAAG,aAAa,CAAC,OAAO,uBAAuB,CAAC,CAAA;AAElF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,OAAO,2BAA2B,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAA;AAE/F,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,CAAA;AAEjG,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
import { DeviceType } from '../device/device-type.js';
|
|
4
|
+
/**
|
|
5
|
+
* Smoke alarm sensor — boolean "is smoke currently detected" with
|
|
6
|
+
* timestamp of the last transition. Drives Home Assistant
|
|
7
|
+
* `binary_sensor` entries with `device_class: smoke`.
|
|
8
|
+
*
|
|
9
|
+
* Push-driven: a smoke event is critical, so the slice updates
|
|
10
|
+
* immediately on the upstream signal. Auto-clearing back to false is
|
|
11
|
+
* provider-controlled (some alarms latch until manually reset).
|
|
12
|
+
*/
|
|
13
|
+
export declare const SmokeStatusSchema: z.ZodObject<{
|
|
14
|
+
detected: z.ZodBoolean;
|
|
15
|
+
lastChangedAt: z.ZodNumber;
|
|
16
|
+
}, z.core.$strip>;
|
|
17
|
+
export type SmokeStatus = z.infer<typeof SmokeStatusSchema>;
|
|
18
|
+
export declare const smokeCapability: {
|
|
19
|
+
readonly name: "smoke";
|
|
20
|
+
readonly scope: "device";
|
|
21
|
+
readonly deviceNative: true;
|
|
22
|
+
readonly mode: "singleton";
|
|
23
|
+
readonly deviceTypes: readonly [DeviceType.Sensor];
|
|
24
|
+
readonly methods: {};
|
|
25
|
+
readonly status: {
|
|
26
|
+
readonly schema: z.ZodObject<{
|
|
27
|
+
detected: z.ZodBoolean;
|
|
28
|
+
lastChangedAt: z.ZodNumber;
|
|
29
|
+
}, z.core.$strip>;
|
|
30
|
+
readonly kind: "push";
|
|
31
|
+
};
|
|
32
|
+
readonly runtimeState: z.ZodObject<{
|
|
33
|
+
detected: z.ZodBoolean;
|
|
34
|
+
lastChangedAt: z.ZodNumber;
|
|
35
|
+
}, z.core.$strip>;
|
|
36
|
+
};
|
|
37
|
+
export type ISmokeProvider = InferProvider<typeof smokeCapability>;
|
|
38
|
+
//# sourceMappingURL=smoke.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smoke.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/smoke.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1F,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB;;;iBAI5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;CAYa,CAAA;AAEzC,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,eAAe,CAAC,CAAA"}
|
|
@@ -3,7 +3,7 @@ import { type InferProvider } from './capability-definition.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* snapshot-provider — collection of native snapshot implementations.
|
|
5
5
|
*
|
|
6
|
-
* Device provider addons (ONVIF, Frigate,
|
|
6
|
+
* Device provider addons (ONVIF, Frigate, etc.) register here
|
|
7
7
|
* when they can capture frames through a protocol-native path (e.g.
|
|
8
8
|
* ONVIF GetSnapshotUri, Frigate /api/<cam>/latest.jpg). The `snapshot`
|
|
9
9
|
* singleton orchestrator iterates over the collection, asking each
|
|
@@ -47,6 +47,7 @@ declare const SnapshotStatusSchema: z.ZodObject<{
|
|
|
47
47
|
export declare const snapshotCapability: {
|
|
48
48
|
readonly name: "snapshot";
|
|
49
49
|
readonly scope: "device";
|
|
50
|
+
readonly deviceNative: true;
|
|
50
51
|
readonly mode: "singleton";
|
|
51
52
|
readonly kind: "wrapper";
|
|
52
53
|
readonly defaultActive: true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/snapshot.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,QAAA,MAAM,mBAAmB;;;iBAGvB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB;;;;;iBASxB,CAAA;AAEF,eAAO,MAAM,kBAAkB
|
|
1
|
+
{"version":3,"file":"snapshot.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/snapshot.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAErD;;;;;;GAMG;AACH,QAAA,MAAM,mBAAmB;;;iBAGvB,CAAA;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH;;;;;GAKG;AACH,QAAA,MAAM,oBAAoB;;;;;iBASxB,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwCU,CAAA;AAEzC,MAAM,MAAM,qBAAqB,GAAG,aAAa,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE5E,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAA"}
|
|
@@ -25,8 +25,8 @@ declare const SsoBridgeClaimsSchema: z.ZodObject<{
|
|
|
25
25
|
scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
26
26
|
type: z.ZodLiteral<"category">;
|
|
27
27
|
target: z.ZodEnum<{
|
|
28
|
-
system: "system";
|
|
29
28
|
device: "device";
|
|
29
|
+
system: "system";
|
|
30
30
|
}>;
|
|
31
31
|
access: z.ZodArray<z.ZodEnum<{
|
|
32
32
|
view: "view";
|
|
@@ -81,8 +81,8 @@ export declare const ssoBridgeCapability: {
|
|
|
81
81
|
scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
82
82
|
type: z.ZodLiteral<"category">;
|
|
83
83
|
target: z.ZodEnum<{
|
|
84
|
-
system: "system";
|
|
85
84
|
device: "device";
|
|
85
|
+
system: "system";
|
|
86
86
|
}>;
|
|
87
87
|
access: z.ZodArray<z.ZodEnum<{
|
|
88
88
|
view: "view";
|
|
@@ -136,8 +136,8 @@ export declare const ssoBridgeCapability: {
|
|
|
136
136
|
scopes: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
137
137
|
type: z.ZodLiteral<"category">;
|
|
138
138
|
target: z.ZodEnum<{
|
|
139
|
-
system: "system";
|
|
140
139
|
device: "device";
|
|
140
|
+
system: "system";
|
|
141
141
|
}>;
|
|
142
142
|
access: z.ZodArray<z.ZodEnum<{
|
|
143
143
|
view: "view";
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type InferProvider } from './capability-definition.js';
|
|
3
|
+
/**
|
|
4
|
+
* `storage-evictable` — implemented by any addon that owns evictable data on a
|
|
5
|
+
* storage location (recordings, event clips, thumbnails, …).
|
|
6
|
+
*
|
|
7
|
+
* The core `StoragePressureManager` (in storage-orchestrator) owns the TRIGGER:
|
|
8
|
+
* it monitors free space per location and, on breach of a location's
|
|
9
|
+
* `minFreePercent`, asks each evictable provider to free a share of the deficit.
|
|
10
|
+
* The provider decides WHAT is expendable and does the deletion itself — core
|
|
11
|
+
* never deletes data it doesn't understand. This inverts control so disk-space
|
|
12
|
+
* arbitration is one cross-consumer concern, not re-implemented per addon.
|
|
13
|
+
*
|
|
14
|
+
* `internal: true` — consumed only by the orchestrator's pressure manager, never
|
|
15
|
+
* a public client surface.
|
|
16
|
+
*/
|
|
17
|
+
declare const EvictableUsageSchema: z.ZodObject<{
|
|
18
|
+
bytes: z.ZodNumber;
|
|
19
|
+
}, z.core.$strip>;
|
|
20
|
+
export type EvictableUsage = z.infer<typeof EvictableUsageSchema>;
|
|
21
|
+
declare const EvictResultSchema: z.ZodObject<{
|
|
22
|
+
reclaimedBytes: z.ZodNumber;
|
|
23
|
+
exhausted: z.ZodBoolean;
|
|
24
|
+
}, z.core.$strip>;
|
|
25
|
+
export type EvictResult = z.infer<typeof EvictResultSchema>;
|
|
26
|
+
export declare const storageEvictableCapability: {
|
|
27
|
+
readonly name: "storage-evictable";
|
|
28
|
+
readonly scope: "system";
|
|
29
|
+
readonly mode: "collection";
|
|
30
|
+
readonly internal: true;
|
|
31
|
+
readonly methods: {
|
|
32
|
+
/** Bytes this provider holds on the given location — drives proportional fan-out. */
|
|
33
|
+
readonly getEvictableUsage: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
34
|
+
locationId: z.ZodString;
|
|
35
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
36
|
+
bytes: z.ZodNumber;
|
|
37
|
+
}, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
|
|
38
|
+
/**
|
|
39
|
+
* Free approximately `targetBytes` of this provider's OWN least-valuable
|
|
40
|
+
* data on the location (oldest footage, expired clips, …). Returns what it
|
|
41
|
+
* actually reclaimed + whether it is now exhausted.
|
|
42
|
+
*/
|
|
43
|
+
readonly evict: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
|
|
44
|
+
locationId: z.ZodString;
|
|
45
|
+
targetBytes: z.ZodNumber;
|
|
46
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
47
|
+
reclaimedBytes: z.ZodNumber;
|
|
48
|
+
exhausted: z.ZodBoolean;
|
|
49
|
+
}, z.core.$strip>, "mutation">;
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
export type IStorageEvictableProvider = InferProvider<typeof storageEvictableCapability>;
|
|
53
|
+
export {};
|
|
54
|
+
//# sourceMappingURL=storage-evictable.cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage-evictable.cap.d.ts","sourceRoot":"","sources":["../../src/capabilities/storage-evictable.cap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAElG;;;;;;;;;;;;;GAaG;AAEH,QAAA,MAAM,oBAAoB;;iBAGxB,CAAA;AACF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AAEjE,QAAA,MAAM,iBAAiB;;;iBAKrB,CAAA;AACF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3D,eAAO,MAAM,0BAA0B;;;;;;QAMnC,qFAAqF;;;;;;QAKrF;;;;WAIG;;;;;;;;;CAOkC,CAAA;AAEzC,MAAM,MAAM,yBAAyB,GAAG,aAAa,CAAC,OAAO,0BAA0B,CAAC,CAAA"}
|