@camstack/types 1.1.34 → 1.1.36

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 (32) hide show
  1. package/dist/addon.d.ts +2 -0
  2. package/dist/addon.js +2 -1
  3. package/dist/addon.mjs +2 -2
  4. package/dist/capabilities/addon-pages-source.cap.d.ts +4 -0
  5. package/dist/capabilities/addon-pages.cap.d.ts +4 -0
  6. package/dist/capabilities/addon-widgets-source.cap.d.ts +2 -0
  7. package/dist/capabilities/addon-widgets.cap.d.ts +2 -0
  8. package/dist/capabilities/index.d.ts +11 -3
  9. package/dist/capabilities/login-method.cap.d.ts +146 -0
  10. package/dist/capabilities/nodes.cap.d.ts +19 -1
  11. package/dist/capabilities/pipeline-executor.cap.d.ts +15 -61
  12. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +31 -69
  13. package/dist/capabilities/server-management.cap.d.ts +194 -0
  14. package/dist/capabilities/viewer-ui.cap.d.ts +24 -0
  15. package/dist/generated/addon-api.d.ts +516 -170
  16. package/dist/generated/capability-router-map.d.ts +13 -4
  17. package/dist/generated/device-proxy.d.ts +1 -1
  18. package/dist/generated/method-access-map.d.ts +1 -1
  19. package/dist/generated/system-proxy.d.ts +4 -2
  20. package/dist/index.d.ts +2 -1
  21. package/dist/index.js +430 -124
  22. package/dist/index.mjs +415 -123
  23. package/dist/interfaces/addon.d.ts +12 -2
  24. package/dist/interfaces/capability.d.ts +3 -0
  25. package/dist/interfaces/config-ui.d.ts +40 -0
  26. package/dist/interfaces/event-bus.d.ts +11 -0
  27. package/dist/interfaces/pipeline-executor-capability.d.ts +2 -8
  28. package/dist/interfaces/pipeline-orchestrator-capability.d.ts +0 -14
  29. package/dist/{sleep-DmP-uxoe.js → sleep-BtS3xMHv.js} +109 -9
  30. package/dist/{sleep-Cc14_yxc.mjs → sleep-DJaTV2D7.mjs} +86 -10
  31. package/dist/types/agent-pipeline-settings.d.ts +8 -0
  32. package/package.json +1 -1
package/dist/addon.d.ts CHANGED
@@ -30,5 +30,7 @@ export { deviceOpsCapability } from './capabilities/device-ops.cap.js';
30
30
  export { createDeviceProxy } from './generated/device-proxy.js';
31
31
  export { BaseAddon, normalizeAddonInitResult } from './addon/base-addon.js';
32
32
  export { adminUiCapability } from './capabilities/admin-ui.cap.js';
33
+ export { viewerUiCapability } from './capabilities/viewer-ui.cap.js';
33
34
  export type { IAdminUiProvider } from './capabilities/admin-ui.cap.js';
35
+ export type { IViewerUiProvider } from './capabilities/viewer-ui.cap.js';
34
36
  export type { ICamstackAddon, AddonDeclaration, AddonInitResult, ProviderRegistration, } from './interfaces/addon.js';
package/dist/addon.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-DmP-uxoe.js");
2
+ const require_sleep = require("./sleep-BtS3xMHv.js");
3
3
  const require_err_msg = require("./err-msg-COpsHMw2.js");
4
4
  exports.BaseAddon = require_sleep.BaseAddon;
5
5
  exports.DATAPLANE_SECRET_HEADER = require_sleep.DATAPLANE_SECRET_HEADER;
@@ -20,3 +20,4 @@ exports.normalizeAddonInitResult = require_sleep.normalizeAddonInitResult;
20
20
  exports.parseJsonUnknown = require_sleep.parseJsonUnknown;
21
21
  exports.scopeKey = require_sleep.scopeKey;
22
22
  exports.sleep = require_sleep.sleep;
23
+ exports.viewerUiCapability = require_sleep.viewerUiCapability;
package/dist/addon.mjs CHANGED
@@ -1,3 +1,3 @@
1
- import { A as ReadinessRegistry, C as asJsonObject, O as parseJsonUnknown, P as scopeKey, T as asString, a as adminUiCapability, b as DeviceType, gt as DisposerChain, ht as EventCategory, i as deviceOpsCapability, j as ReadinessTimeoutError, k as DATAPLANE_SECRET_HEADER, o as createDeviceProxy, ot as BaseAddon, p as expandCapMethods, st as normalizeAddonInitResult, t as sleep, ut as emitReadiness } from "./sleep-Cc14_yxc.mjs";
1
+ import { A as DATAPLANE_SECRET_HEADER, E as asString, F as scopeKey, M as ReadinessTimeoutError, a as viewerUiCapability, bt as DisposerChain, ct as normalizeAddonInitResult, dt as emitReadiness, i as deviceOpsCapability, j as ReadinessRegistry, k as parseJsonUnknown, m as expandCapMethods, o as adminUiCapability, s as createDeviceProxy, st as BaseAddon, t as sleep, w as asJsonObject, x as DeviceType, yt as EventCategory } from "./sleep-DJaTV2D7.mjs";
2
2
  import { t as errMsg } from "./err-msg-IQTHeDzc.mjs";
3
- export { BaseAddon, DATAPLANE_SECRET_HEADER, DeviceType, DisposerChain, EventCategory, ReadinessRegistry, ReadinessTimeoutError, adminUiCapability, asJsonObject, asString, createDeviceProxy, deviceOpsCapability, emitReadiness, errMsg, expandCapMethods, normalizeAddonInitResult, parseJsonUnknown, scopeKey, sleep };
3
+ export { BaseAddon, DATAPLANE_SECRET_HEADER, DeviceType, DisposerChain, EventCategory, ReadinessRegistry, ReadinessTimeoutError, adminUiCapability, asJsonObject, asString, createDeviceProxy, deviceOpsCapability, emitReadiness, errMsg, expandCapMethods, normalizeAddonInitResult, parseJsonUnknown, scopeKey, sleep, viewerUiCapability };
@@ -19,6 +19,8 @@ declare const AddonPageDeclarationSchema: z.ZodObject<{
19
19
  path: z.ZodString;
20
20
  remoteName: z.ZodString;
21
21
  bundle: z.ZodString;
22
+ section: z.ZodOptional<z.ZodString>;
23
+ sectionLabel: z.ZodOptional<z.ZodString>;
22
24
  }, z.core.$strip>;
23
25
  export declare const addonPagesSourceCapability: {
24
26
  readonly name: "addon-pages-source";
@@ -33,6 +35,8 @@ export declare const addonPagesSourceCapability: {
33
35
  path: z.ZodString;
34
36
  remoteName: z.ZodString;
35
37
  bundle: z.ZodString;
38
+ section: z.ZodOptional<z.ZodString>;
39
+ sectionLabel: z.ZodOptional<z.ZodString>;
36
40
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
37
41
  };
38
42
  };
@@ -9,6 +9,8 @@ declare const AddonPageInfoSchema: z.ZodObject<{
9
9
  path: z.ZodString;
10
10
  remoteName: z.ZodString;
11
11
  bundle: z.ZodString;
12
+ section: z.ZodOptional<z.ZodString>;
13
+ sectionLabel: z.ZodOptional<z.ZodString>;
12
14
  }, z.core.$strip>;
13
15
  bundleUrl: z.ZodString;
14
16
  }, z.core.$strip>;
@@ -26,6 +28,8 @@ export declare const addonPagesCapability: {
26
28
  path: z.ZodString;
27
29
  remoteName: z.ZodString;
28
30
  bundle: z.ZodString;
31
+ section: z.ZodOptional<z.ZodString>;
32
+ sectionLabel: z.ZodOptional<z.ZodString>;
29
33
  }, z.core.$strip>;
30
34
  bundleUrl: z.ZodString;
31
35
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
@@ -98,6 +98,7 @@ declare const WidgetMetadataSchema: z.ZodObject<{
98
98
  deviceContext: z.ZodDefault<z.ZodBoolean>;
99
99
  integrationContext: z.ZodDefault<z.ZodBoolean>;
100
100
  }, z.core.$strip>;
101
+ preAuth: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
101
102
  defaultSize: z.ZodDefault<z.ZodEnum<{
102
103
  xs: "xs";
103
104
  sm: "sm";
@@ -145,6 +146,7 @@ export declare const addonWidgetsSourceCapability: {
145
146
  deviceContext: z.ZodDefault<z.ZodBoolean>;
146
147
  integrationContext: z.ZodDefault<z.ZodBoolean>;
147
148
  }, z.core.$strip>;
149
+ preAuth: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
148
150
  defaultSize: z.ZodDefault<z.ZodEnum<{
149
151
  xs: "xs";
150
152
  sm: "sm";
@@ -40,6 +40,7 @@ declare const EnrichedWidgetMetadataSchema: z.ZodObject<{
40
40
  deviceContext: z.ZodDefault<z.ZodBoolean>;
41
41
  integrationContext: z.ZodDefault<z.ZodBoolean>;
42
42
  }, z.core.$strip>;
43
+ preAuth: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
43
44
  defaultSize: z.ZodDefault<z.ZodEnum<{
44
45
  xs: "xs";
45
46
  sm: "sm";
@@ -88,6 +89,7 @@ export declare const addonWidgetsCapability: {
88
89
  deviceContext: z.ZodDefault<z.ZodBoolean>;
89
90
  integrationContext: z.ZodDefault<z.ZodBoolean>;
90
91
  }, z.core.$strip>;
92
+ preAuth: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
91
93
  defaultSize: z.ZodDefault<z.ZodEnum<{
92
94
  xs: "xs";
93
95
  sm: "sm";
@@ -24,6 +24,8 @@ export type { IAddonWidgetsSourceProvider, WidgetMetadata } from './addon-widget
24
24
  export { addonWidgetsSourceCapability, WidgetHostEnum, WidgetMetadataSchema, WidgetRemoteSchema, WidgetSizeEnum, } from './addon-widgets-source.cap.js';
25
25
  export type { IAdminUiProvider } from './admin-ui.cap.js';
26
26
  export { adminUiCapability } from './admin-ui.cap.js';
27
+ export type { IViewerUiProvider } from './viewer-ui.cap.js';
28
+ export { viewerUiCapability } from './viewer-ui.cap.js';
27
29
  export type { IAdvancedNotifierProvider } from './advanced-notifier.cap.js';
28
30
  export { advancedNotifierCapability, NotificationHistoryEntrySchema, NotificationRuleSchema, } from './advanced-notifier.cap.js';
29
31
  export type { Alert, AlertSeverity, AlertStatus } from './alerts.cap.js';
@@ -33,6 +35,8 @@ export type { AudioAnalyzerGlobalConfig, AudioBackendChoice, IAudioAnalyzerProvi
33
35
  export { AUDIO_BACKEND_CHOICES, AudioAnalysisResultSchema, AudioAnalysisSettingsSchema, AudioClassificationResultSchema, audioAnalyzerCapability, DEFAULT_AUDIO_ANALYZER_CONFIG, } from './audio-analyzer.cap.js';
34
36
  export { AudioCodecInfoSchema, AudioDecodeSessionConfigSchema, AudioEncodedChunkSchema, AudioEncodeSessionConfigSchema, AudioPcmChunkSchema, audioCodecCapability, type IAudioCodecCapProvider, PcmSampleFormatSchema, } from './audio-codec.cap.js';
35
37
  export { AuthResultSchema, authProviderCapability } from './auth-provider.cap.js';
38
+ export { loginMethodCapability, LoginStageEnum, RedirectLoginMethodSchema, WidgetLoginMethodSchema, LoginMethodContributionSchema, } from './login-method.cap.js';
39
+ export type { ILoginMethodProvider, LoginMethodContribution, RedirectLoginMethod, WidgetLoginMethod, LoginStage, } from './login-method.cap.js';
36
40
  export { ArchiveEntrySchema, ArchiveManifestSchema, BackupDestinationInfoSchema, BackupEntrySchema, backupCapability, type IBackupProvider, LocationStatSchema, } from './backup.cap.js';
37
41
  export { BrokerAddInputSchema, BrokerGetStateInputSchema, type BrokerInfo as UnifiedBrokerInfo, BrokerInfoSchema as UnifiedBrokerInfoSchema, type BrokerProviderInfo, BrokerProviderInfoSchema, BrokerPublishInputSchema, BrokerRegistryStatusSchema, type BrokerStatus as UnifiedBrokerStatus, BrokerStatusEnum, BrokerSubscribeInputSchema, BrokerSubscribeResultSchema, BrokerTestConnectionResultSchema, BrokerUnsubscribeInputSchema, brokerCapability, type IBrokerProvider, } from './broker.cap.js';
38
42
  export { cameraPipelineConfigCapability, type ICameraPipelineConfigProvider, } from './camera-pipeline-config.cap.js';
@@ -72,15 +76,16 @@ export { type Attachment, AttachmentMediaTypeSchema, type AttachmentMediaType, A
72
76
  export { type IOauthIntegrationProvider, type OauthIntegrationDescriptor, OauthIntegrationDescriptorSchema, oauthIntegrationCapability, } from './oauth-integration.cap.js';
73
77
  export { type AudioEvent, AudioEventSchema, type DetectionSource, DetectionSourceSchema, type EventKind, EventKindSchema, type IPipelineAnalyticsProvider, type MediaFile, type MediaFileKind, MediaFileSchema, type MotionEvent, MotionEventSchema, type ObjectEvent, ObjectEventSchema, pipelineAnalyticsCapability, type ScoredObjectEvent, ScoredObjectEventSchema, type Track, TrackedDetectionSchema, TrackSchema, type TrackState, TrackStateSchema, } from './pipeline-analytics.cap.js';
74
78
  export type { PipelineStepInputOutput, PipelineValidationIssue, PipelineValidationResult, } from './pipeline-executor.cap.js';
75
- export { DetectorOutputSchema, ModelSubstitutionSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, pipelineExecutorCapability, } from './pipeline-executor.cap.js';
79
+ export { ModelSubstitutionSchema, PipelineDefaultStepSchema, PipelineEngineChoiceSchema, PipelineRunResultBridge, PipelineStepInputSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, pipelineExecutorCapability, } from './pipeline-executor.cap.js';
76
80
  export type { CameraAssignmentStatus, CameraAudioStatus, CameraBrokerProfile, CameraBrokerStatus, CameraDecoderShm, CameraDecoderStatus, CameraDetectionPhase, CameraDetectionProvisioning, CameraDetectionProvisioningState, CameraDetectionStatus, CameraMotionStatus, CameraRecordingMode, CameraRecordingStatus, CameraSourceStatus, CameraSourceStream, CameraStatus, IngestOwner, } from './pipeline-orchestrator.cap.js';
77
- export { AgentLoadSummarySchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CapabilityBindingsSchema, DecoderAssignmentSchema, GlobalMetricsSchema, IngestOwnerSchema, PipelineAssignmentSchema, pipelineOrchestratorCapability, } from './pipeline-orchestrator.cap.js';
81
+ export { AgentLoadSummarySchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMotionStatusSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CapabilityBindingsSchema, GlobalMetricsSchema, IngestOwnerSchema, PipelineAssignmentSchema, pipelineOrchestratorCapability, } from './pipeline-orchestrator.cap.js';
78
82
  export type { MotionSource, MotionSources, ReportMotionInput, RunnerFrameSource, } from './pipeline-runner.cap.js';
79
83
  export { MotionSourceEnum, MotionSourcesSchema, pipelineRunnerCapability, ReportMotionInputSchema, RunnerCameraConfigSchema, RunnerCameraDeviceUIFields, RunnerFrameSourceSchema, RunnerLocalLoadSchema, RunnerLocalMetricsSchema, } from './pipeline-runner.cap.js';
80
84
  export { AudioChunkInputSchema, AudioClassificationLabelSchema, AudioLevelSchema, BoundingBoxSchema, FrameInputSchema, SpatialDetectionSchema, } from './schemas/detection-shared.js';
81
85
  export { CameraMetricsSchema, CameraMetricsWithDeviceIdSchema, OrchestratorMetricsSchema, } from './schemas/orchestrator-metrics.js';
82
86
  export type { CameraStream, CamProfile, CamStreamKind, DecodedAudioChunkWire, FrameHandleFormat, ProfileRtspEntry, ProfileSlot, ProfileSlotStatus, SubscribeAudioChunksInput, SubscribeAudioChunksResult, SubscribeFramesInput, SubscribeFramesResult, } from './schemas/streaming-shared.js';
83
87
  export { BrokerStatsSchema, BrokerStatusSchema, CAM_PROFILE_ORDER, CameraStreamSchema, CamProfileSchema, CamStreamKindSchema, CamStreamResolutionSchema, DecodedAudioChunkSchema, DecodedFrameSchema, EncodedPacketSchema, FrameHandleFormatSchema, FrameHandleSchema, makeProfileBrokerId, makeSourceBrokerId, ProfileRtspEntrySchema, ProfileSlotSchema, ProfileSlotStatusSchema, parseProfileBrokerId, StreamSourceEntrySchema, StreamSourceSchema, SubscribeAudioChunksInputSchema, SubscribeAudioChunksResultSchema, SubscribeFramesInputSchema, SubscribeFramesResultSchema, selectAssignedProfileSlots, } from './schemas/streaming-shared.js';
88
+ export { type IServerManagementProvider, type ServerBootMode, ServerBootModeSchema, serverManagementCapability, type ServerPackageStatus, ServerPackageStatusSchema, type ServerRollbackInfo, ServerRollbackInfoSchema, type ServerUpdateActionResult, ServerUpdateActionResultSchema, type ServerUpdateCheckResult, ServerUpdateCheckResultSchema, type ServerUpdateState, ServerUpdateStateSchema, } from './server-management.cap.js';
84
89
  export { type CollectionColumn, CollectionColumnSchema, type CollectionIndex, CollectionIndexSchema, type ISettingsStoreProvider, QueryFilterSchema, SettingsRecordSchema, type SettingsStoreClient, settingsStoreCapability, } from './settings-store.cap.js';
85
90
  export type { ISmtpProvider } from './smtp-provider.cap.js';
86
91
  export { SendEmailInputSchema, SendEmailResultSchema, SmtpStatusSchema, smtpProviderCapability, } from './smtp-provider.cap.js';
@@ -194,6 +199,7 @@ import type { addonWidgetsCapability } from './addon-widgets.cap.js';
194
199
  import type { addonWidgetsSourceCapability } from './addon-widgets-source.cap.js';
195
200
  import type { addonsCapability } from './addons.cap.js';
196
201
  import type { adminUiCapability } from './admin-ui.cap.js';
202
+ import type { viewerUiCapability } from './viewer-ui.cap.js';
197
203
  import type { advancedNotifierCapability } from './advanced-notifier.cap.js';
198
204
  import type { airQualitySensorCapability } from './air-quality-sensor.cap.js';
199
205
  import type { alarmPanelCapability } from './alarm-panel.cap.js';
@@ -204,6 +210,7 @@ import type { audioAnalyzerCapability } from './audio-analyzer.cap.js';
204
210
  import type { audioCodecCapability } from './audio-codec.cap.js';
205
211
  import type { audioMetricsCapability } from './audio-metrics.cap.js';
206
212
  import type { authProviderCapability } from './auth-provider.cap.js';
213
+ import type { loginMethodCapability } from './login-method.cap.js';
207
214
  import type { automationControlCapability } from './automation-control.cap.js';
208
215
  import type { backupCapability } from './backup.cap.js';
209
216
  import type { binaryCapability } from './binary.cap.js';
@@ -278,6 +285,7 @@ import type { ptzAutotrackCapability } from './ptz-autotrack.cap.js';
278
285
  import type { rebootCapability } from './reboot.cap.js';
279
286
  import type { recordingCapability } from './recording.cap.js';
280
287
  import type { scriptRunnerCapability } from './script-runner.cap.js';
288
+ import type { serverManagementCapability } from './server-management.cap.js';
281
289
  import type { settingsStoreCapability } from './settings-store.cap.js';
282
290
  import type { smokeCapability } from './smoke.cap.js';
283
291
  import type { smtpProviderCapability } from './smtp-provider.cap.js';
@@ -305,6 +313,6 @@ import type { webrtcSessionCapability } from './webrtc-session.cap.js';
305
313
  import type { zoneAnalyticsCapability } from './zone-analytics.cap.js';
306
314
  import type { zoneRulesCapability } from './zone-rules.cap.js';
307
315
  import type { zonesCapability } from './zones.cap.js';
308
- type AnyCapability = typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof settingsStoreCapability | typeof logDestinationCapability | typeof adminUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof notificationOutputCapability | typeof advancedNotifierCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof consumablesCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof eventsCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof deviceOpsCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof privacyMaskCapability | typeof dayNightCapability | typeof imageSettingsCapability;
316
+ type AnyCapability = typeof addonSettingsCapability | typeof alertsCapability | typeof storageCapability | typeof storageProviderCapability | typeof storageEvictableCapability | typeof filesystemBrowseCapability | typeof backupCapability | typeof settingsStoreCapability | typeof logDestinationCapability | typeof adminUiCapability | typeof viewerUiCapability | typeof ssoBridgeCapability | typeof userPasskeysCapability | typeof smtpProviderCapability | typeof mqttBrokerCapability | typeof brokerCapability | typeof deviceAdoptionCapability | typeof deviceExportCapability | typeof addonPagesCapability | typeof addonPagesSourceCapability | typeof addonWidgetsCapability | typeof addonWidgetsSourceCapability | typeof customModelRegistryCapability | typeof modelDistributorCapability | typeof modelConvertCapability | typeof addonRoutesCapability | typeof streamBrokerCapability | typeof decoderCapability | typeof webrtcSessionCapability | typeof cameraStreamsCapability | typeof motionDetectionCapability | typeof pipelineExecutorCapability | typeof detectionPipelineCapability | typeof cameraPipelineConfigCapability | typeof pipelineRunnerCapability | typeof pipelineOrchestratorCapability | typeof audioAnalyzerCapability | typeof audioAnalysisCapability | typeof audioCodecCapability | typeof embeddingEncoderCapability | typeof deviceProviderCapability | typeof deviceManagerCapability | typeof deviceStateCapability | typeof authProviderCapability | typeof loginMethodCapability | typeof networkAccessCapability | typeof turnProviderCapability | typeof snapshotCapability | typeof notificationOutputCapability | typeof advancedNotifierCapability | typeof pipelineAnalyticsCapability | typeof metricsProviderCapability | typeof ptzCapability | typeof ptzAutotrackCapability | typeof consumablesCapability | typeof rebootCapability | typeof deviceDiscoveryCapability | typeof brightnessCapability | typeof colorCapability | typeof climateControlCapability | typeof coverCapability | typeof valveCapability | typeof humidifierCapability | typeof waterHeaterCapability | typeof weatherCapability | typeof imageCapability | typeof lockControlCapability | typeof vacuumControlCapability | typeof petFeederCapability | typeof lawnMowerControlCapability | typeof fanControlCapability | typeof controlCapability | typeof notifierCapability | typeof mediaPlayerCapability | typeof alarmPanelCapability | typeof presenceCapability | typeof scriptRunnerCapability | typeof automationControlCapability | typeof motionTriggerCapability | typeof eventsCapability | typeof zonesCapability | typeof zoneRulesCapability | typeof zoneAnalyticsCapability | typeof audioMetricsCapability | typeof motionCapability | typeof contactCapability | typeof floodCapability | typeof smokeCapability | typeof carbonMonoxideCapability | typeof gasCapability | typeof tamperCapability | typeof vibrationCapability | typeof connectivityCapability | typeof binaryCapability | typeof temperatureSensorCapability | typeof humiditySensorCapability | typeof ambientLightSensorCapability | typeof pressureSensorCapability | typeof powerMeterCapability | typeof airQualitySensorCapability | typeof numericSensorCapability | typeof enumSensorCapability | typeof recordingCapability | typeof deviceOpsCapability | typeof platformProbeCapability | typeof localNetworkCapability | typeof meshNetworkCapability | typeof userManagementCapability | typeof systemCapability | typeof networkQualityCapability | typeof toastCapability | typeof nodesCapability | typeof serverManagementCapability | typeof integrationsCapability | typeof addonsCapability | typeof oauthIntegrationCapability | typeof streamParamsCapability | typeof streamCatalogCapability | typeof motionZonesCapability | typeof privacyMaskCapability | typeof dayNightCapability | typeof imageSettingsCapability;
309
317
  export type CapabilityName = AnyCapability['name'];
310
318
  export type ITypedReadinessRegistry = IReadinessRegistry<CapabilityName>;
@@ -0,0 +1,146 @@
1
+ import { z } from 'zod';
2
+ import { type InferProvider } from './capability-definition.js';
3
+ /**
4
+ * `login-method` — collection cap through which auth addons contribute
5
+ * their pre-auth login surfaces to the login page. This is the SINGLE,
6
+ * generic mechanism that supersedes the dead `auth.listProviders` reader:
7
+ * every auth addon (OIDC, magic-link, WebAuthn/passkey) registers a
8
+ * `login-method` provider and the PUBLIC `auth.listLoginMethods`
9
+ * procedure aggregates them for the unauthenticated login page.
10
+ *
11
+ * A contribution is a discriminated union on `kind`:
12
+ *
13
+ * - `redirect` — a declarative button. The login page renders a generic
14
+ * button that navigates to `startUrl` (an addon-owned HTTP route).
15
+ * Covers OIDC (`/addon/auth-oidc/<id>/start`) and magic-link with
16
+ * ZERO shell-side JS. A future SSO addon plugs in the same way — the
17
+ * login page needs NO change.
18
+ *
19
+ * - `widget` — a Module-Federation widget the login page mounts (via
20
+ * `loadRemoteBundle`) for an in-page ceremony. Covers the passkey
21
+ * login ceremony, which must run `@simplewebauthn/browser` INSIDE the
22
+ * addon bundle. The referenced widget also declares `preAuth: true` in
23
+ * its `addon-widgets-source` catalog entry. `auth.listLoginMethods`
24
+ * stamps a public `bundleUrl` from `addonId` + `bundle`.
25
+ *
26
+ * Every contribution carries a `stage`:
27
+ * - `primary` — shown on the first credentials screen (OIDC /
28
+ * magic-link buttons; a future usernameless passkey).
29
+ * - `second-factor` — shown AFTER the password leg, gated on the
30
+ * returned `factors` (passkey-as-2FA today).
31
+ *
32
+ * `mount: skip` — the cap is read server-side by the core auth router
33
+ * (`registry.getCollection('login-method')`), never mounted as its own
34
+ * tRPC router.
35
+ */
36
+ /** When a login method renders in the two-phase login flow. */
37
+ export declare const LoginStageEnum: z.ZodEnum<{
38
+ primary: "primary";
39
+ "second-factor": "second-factor";
40
+ }>;
41
+ /**
42
+ * A declarative redirect button — the login page navigates to `startUrl`.
43
+ * OIDC and magic-link contribute this; a future SSO addon does too.
44
+ */
45
+ export declare const RedirectLoginMethodSchema: z.ZodObject<{
46
+ kind: z.ZodLiteral<"redirect">;
47
+ id: z.ZodString;
48
+ label: z.ZodString;
49
+ icon: z.ZodOptional<z.ZodString>;
50
+ startUrl: z.ZodString;
51
+ stage: z.ZodEnum<{
52
+ primary: "primary";
53
+ "second-factor": "second-factor";
54
+ }>;
55
+ }, z.core.$strip>;
56
+ /**
57
+ * A Module-Federation widget the login page mounts for an in-page
58
+ * ceremony. `bundle` + `addonId` let `auth.listLoginMethods` stamp a
59
+ * public `bundleUrl`; `remote` is the MF descriptor `loadRemoteBundle`
60
+ * consumes. No `bundleUrl` here — it is server-stamped on the public
61
+ * output so the addon never encodes the static-route scheme.
62
+ */
63
+ export declare const WidgetLoginMethodSchema: z.ZodObject<{
64
+ kind: z.ZodLiteral<"widget">;
65
+ id: z.ZodString;
66
+ addonId: z.ZodString;
67
+ bundle: z.ZodString;
68
+ remote: z.ZodObject<{
69
+ remoteName: z.ZodString;
70
+ exposedModule: z.ZodString;
71
+ componentKey: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$strip>;
73
+ stage: z.ZodEnum<{
74
+ primary: "primary";
75
+ "second-factor": "second-factor";
76
+ }>;
77
+ }, z.core.$strip>;
78
+ /** One login-method contribution — redirect button OR pre-auth widget. */
79
+ export declare const LoginMethodContributionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
80
+ kind: z.ZodLiteral<"redirect">;
81
+ id: z.ZodString;
82
+ label: z.ZodString;
83
+ icon: z.ZodOptional<z.ZodString>;
84
+ startUrl: z.ZodString;
85
+ stage: z.ZodEnum<{
86
+ primary: "primary";
87
+ "second-factor": "second-factor";
88
+ }>;
89
+ }, z.core.$strip>, z.ZodObject<{
90
+ kind: z.ZodLiteral<"widget">;
91
+ id: z.ZodString;
92
+ addonId: z.ZodString;
93
+ bundle: z.ZodString;
94
+ remote: z.ZodObject<{
95
+ remoteName: z.ZodString;
96
+ exposedModule: z.ZodString;
97
+ componentKey: z.ZodOptional<z.ZodString>;
98
+ }, z.core.$strip>;
99
+ stage: z.ZodEnum<{
100
+ primary: "primary";
101
+ "second-factor": "second-factor";
102
+ }>;
103
+ }, z.core.$strip>], "kind">;
104
+ export declare const loginMethodCapability: {
105
+ readonly name: "login-method";
106
+ readonly scope: "system";
107
+ readonly mode: "collection";
108
+ readonly internal: true;
109
+ readonly methods: {
110
+ readonly getLoginMethods: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodReadonly<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
111
+ kind: z.ZodLiteral<"redirect">;
112
+ id: z.ZodString;
113
+ label: z.ZodString;
114
+ icon: z.ZodOptional<z.ZodString>;
115
+ startUrl: z.ZodString;
116
+ stage: z.ZodEnum<{
117
+ primary: "primary";
118
+ "second-factor": "second-factor";
119
+ }>;
120
+ }, z.core.$strip>, z.ZodObject<{
121
+ kind: z.ZodLiteral<"widget">;
122
+ id: z.ZodString;
123
+ addonId: z.ZodString;
124
+ bundle: z.ZodString;
125
+ remote: z.ZodObject<{
126
+ remoteName: z.ZodString;
127
+ exposedModule: z.ZodString;
128
+ componentKey: z.ZodOptional<z.ZodString>;
129
+ }, z.core.$strip>;
130
+ stage: z.ZodEnum<{
131
+ primary: "primary";
132
+ "second-factor": "second-factor";
133
+ }>;
134
+ }, z.core.$strip>], "kind">>>, import("./capability-definition.js").CapabilityMethodKind>;
135
+ };
136
+ /** BIG PLAN 2: declarative mount hint — read by `@camstack/system` `buildCapRouters`. */
137
+ readonly mount: {
138
+ readonly kind: "skip";
139
+ };
140
+ };
141
+ export type ILoginMethodProvider = InferProvider<typeof loginMethodCapability>;
142
+ /** A single login-method contribution (redirect | widget). */
143
+ export type LoginMethodContribution = z.infer<typeof LoginMethodContributionSchema>;
144
+ export type RedirectLoginMethod = z.infer<typeof RedirectLoginMethodSchema>;
145
+ export type WidgetLoginMethod = z.infer<typeof WidgetLoginMethodSchema>;
146
+ export type LoginStage = z.infer<typeof LoginStageEnum>;
@@ -32,6 +32,16 @@ declare const TopologyProcessSchema: z.ZodObject<{
32
32
  }, z.core.$strip>>>;
33
33
  groupId: z.ZodOptional<z.ZodString>;
34
34
  }, z.core.$strip>;
35
+ /**
36
+ * The node's runtime-updatable ROOT package (`@camstack/server` on the hub,
37
+ * `@camstack/agent` on agents) as reported by its `registerNode` manifest —
38
+ * version visibility for the Server management surface. Nullable: offline
39
+ * rows and pre-phase-2 nodes report none.
40
+ */
41
+ declare const TopologyRootPackageSchema: z.ZodObject<{
42
+ name: z.ZodString;
43
+ version: z.ZodString;
44
+ }, z.core.$strip>;
35
45
  declare const TopologyNodeSchema: z.ZodObject<{
36
46
  id: z.ZodString;
37
47
  name: z.ZodString;
@@ -79,6 +89,10 @@ declare const TopologyNodeSchema: z.ZodObject<{
79
89
  memoryRss: z.ZodNumber;
80
90
  }, z.core.$strip>>>;
81
91
  }, z.core.$strip>>>;
92
+ rootPackage: z.ZodNullable<z.ZodObject<{
93
+ name: z.ZodString;
94
+ version: z.ZodString;
95
+ }, z.core.$strip>>;
82
96
  }, z.core.$strip>;
83
97
  declare const ClusterAddonNodeDeploymentSchema: z.ZodObject<{
84
98
  nodeId: z.ZodString;
@@ -168,6 +182,10 @@ export declare const nodesCapability: {
168
182
  memoryRss: z.ZodNumber;
169
183
  }, z.core.$strip>>>;
170
184
  }, z.core.$strip>>>;
185
+ rootPackage: z.ZodNullable<z.ZodObject<{
186
+ name: z.ZodString;
187
+ version: z.ZodString;
188
+ }, z.core.$strip>>;
171
189
  }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
172
190
  readonly deployAddon: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
173
191
  nodeId: z.ZodString;
@@ -266,4 +284,4 @@ export declare const nodesCapability: {
266
284
  };
267
285
  };
268
286
  export type INodesProvider = InferProvider<typeof nodesCapability>;
269
- export { TopologyNodeSchema, TopologyProcessSchema, TopologyServiceSchema, ClusterAddonStatusEntrySchema, ClusterAddonNodeDeploymentSchema, NodeAddonEntrySchema, };
287
+ export { TopologyNodeSchema, TopologyProcessSchema, TopologyRootPackageSchema, TopologyServiceSchema, ClusterAddonStatusEntrySchema, ClusterAddonNodeDeploymentSchema, NodeAddonEntrySchema, };
@@ -332,21 +332,6 @@ declare const PipelineSchemaSchema: z.ZodObject<{
332
332
  }, z.core.$strip>>>;
333
333
  }, z.core.$strip>>>;
334
334
  }, z.core.$strip>;
335
- declare const DetectorOutputSchema: z.ZodObject<{
336
- detections: z.ZodReadonly<z.ZodArray<z.ZodObject<{
337
- class: z.ZodString;
338
- originalClass: z.ZodString;
339
- score: z.ZodNumber;
340
- bbox: z.ZodObject<{
341
- x: z.ZodNumber;
342
- y: z.ZodNumber;
343
- w: z.ZodNumber;
344
- h: z.ZodNumber;
345
- }, z.core.$strip>;
346
- }, z.core.$strip>>>;
347
- inferenceMs: z.ZodNumber;
348
- modelId: z.ZodString;
349
- }, z.core.$strip>;
350
335
  declare const EngineProvisioningSchema: z.ZodObject<{
351
336
  runtimeId: z.ZodNullable<z.ZodEnum<{
352
337
  onnx: "onnx";
@@ -539,25 +524,25 @@ export declare const pipelineExecutorCapability: {
539
524
  success: z.ZodLiteral<true>;
540
525
  }, z.core.$strip>, "mutation">;
541
526
  /**
542
- * Reset ONE node's detection-pipeline to its factory defaults, forcing
543
- * regeneration of the (now hardware-aware) default object-detection
544
- * model. `nodeId` is the ROUTING key — the generated cap-router strips
545
- * it (default `nodeIdMode: 'routing'`, same as `getSelectedEngine` /
546
- * `getDefaultSteps`) and dispatches to that node, so the provider method
547
- * runs ON the target node and receives no `nodeId`.
527
+ * Clear THIS node's executor-side PER-DEVICE settings stores (the
528
+ * per-camera step overrides the object-detection root reads via
529
+ * `applyDeviceOverridesToTree`). `nodeId` is the ROUTING key — the
530
+ * generated cap-router strips it (default `nodeIdMode: 'routing'`) and
531
+ * dispatches to that node, so the provider method runs ON the target
532
+ * node and receives no `nodeId`.
548
533
  *
549
- * Clears the node's persisted global pipeline seed (`pipelineSteps`) +
550
- * legacy engine blob (`pipelineEngine`) and every device's per-camera
551
- * step overrides, then re-seeds the hardware-aware default tree. Returns
552
- * the regenerated object-detection model id (null when the default tree
553
- * has no detector for this node's engine format) so the caller can
554
- * verify the reset without a second round-trip.
534
+ * This is the slimmed executor leg of the orchestrator's
535
+ * `resetNodePipelineDefaults` flow (which owns the real reset: node
536
+ * addonDefaults pins + per-camera orchestrator overrides). The legacy
537
+ * `resetToDefault` which reset a persisted global step-tree seed
538
+ * nothing in the live per-camera path read was removed together with
539
+ * that seed.
555
540
  */
556
- readonly resetToDefault: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
541
+ readonly clearDeviceOverrides: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
557
542
  nodeId: z.ZodString;
558
543
  }, z.core.$strip>, z.ZodObject<{
559
544
  success: z.ZodLiteral<true>;
560
- regeneratedModelId: z.ZodNullable<z.ZodString>;
545
+ clearedDevices: z.ZodNumber;
561
546
  }, z.core.$strip>, "mutation">;
562
547
  readonly getSchema: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodObject<{
563
548
  availableEngines: z.ZodReadonly<z.ZodArray<z.ZodObject<{
@@ -823,37 +808,6 @@ export declare const pipelineExecutorCapability: {
823
808
  }, z.core.$strip>, z.ZodObject<{
824
809
  success: z.ZodLiteral<true>;
825
810
  }, z.core.$strip>, "mutation">;
826
- readonly detect: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
827
- addonId: z.ZodString;
828
- frame: z.ZodObject<{
829
- data: z.ZodCustom<Uint8Array<ArrayBufferLike>, Uint8Array<ArrayBufferLike>>;
830
- format: z.ZodEnum<{
831
- jpeg: "jpeg";
832
- rgb: "rgb";
833
- bgr: "bgr";
834
- yuv420: "yuv420";
835
- gray: "gray";
836
- }>;
837
- width: z.ZodNumber;
838
- height: z.ZodNumber;
839
- timestamp: z.ZodNumber;
840
- }, z.core.$strip>;
841
- config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
842
- }, z.core.$strip>, z.ZodObject<{
843
- detections: z.ZodReadonly<z.ZodArray<z.ZodObject<{
844
- class: z.ZodString;
845
- originalClass: z.ZodString;
846
- score: z.ZodNumber;
847
- bbox: z.ZodObject<{
848
- x: z.ZodNumber;
849
- y: z.ZodNumber;
850
- w: z.ZodNumber;
851
- h: z.ZodNumber;
852
- }, z.core.$strip>;
853
- }, z.core.$strip>>>;
854
- inferenceMs: z.ZodNumber;
855
- modelId: z.ZodString;
856
- }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
857
811
  /**
858
812
  * Stateless single-frame execution. Callers (runner, benchmark) pass
859
813
  * the complete `engine` + `steps` tree; the executor holds no state
@@ -1145,4 +1099,4 @@ export declare const pipelineExecutorCapability: {
1145
1099
  };
1146
1100
  };
1147
1101
  export type IPipelineExecutorProvider = InferProvider<typeof pipelineExecutorCapability>;
1148
- export { PipelineEngineChoiceSchema, PipelineDefaultStepSchema, DetectorOutputSchema, PipelineSchemaSchema, PipelineAddonSchemaSchema, PipelineSlotSchemaSchema, PipelineModelOptionSchema, AvailableEngineSchema, PipelineTemplateSchema, PipelineTemplateStepSchema, EngineDeviceInfoSchema, EngineProvisioningSchema, ModelSubstitutionSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, };
1102
+ export { PipelineEngineChoiceSchema, PipelineDefaultStepSchema, PipelineSchemaSchema, PipelineAddonSchemaSchema, PipelineSlotSchemaSchema, PipelineModelOptionSchema, AvailableEngineSchema, PipelineTemplateSchema, PipelineTemplateStepSchema, EngineDeviceInfoSchema, EngineProvisioningSchema, ModelSubstitutionSchema, PipelineValidationIssueSchema, PipelineValidationResultSchema, };
@@ -111,22 +111,6 @@ declare const PipelineAssignmentSchema: z.ZodObject<{
111
111
  }>;
112
112
  assignedAt: z.ZodNumber;
113
113
  }, z.core.$strip>;
114
- /**
115
- * Decoder placement record. Symmetric to `PipelineAssignmentSchema` but for
116
- * the decoder-node placement domain (`balanceDecoder` decision: manual pin
117
- * → co-located with pipeline → capacity).
118
- */
119
- declare const DecoderAssignmentSchema: z.ZodObject<{
120
- deviceId: z.ZodNumber;
121
- decoderNodeId: z.ZodString;
122
- pinned: z.ZodBoolean;
123
- reason: z.ZodEnum<{
124
- manual: "manual";
125
- capacity: "capacity";
126
- "hardware-affinity": "hardware-affinity";
127
- "co-located": "co-located";
128
- }>;
129
- }, z.core.$strip>;
130
114
  /**
131
115
  * Per-agent load summary surfaced to the load balancer + dashboards.
132
116
  * Aggregated from each runner's `getLocalLoad` cap call.
@@ -619,27 +603,6 @@ export declare const pipelineOrchestratorCapability: {
619
603
  reachableHost: z.ZodOptional<z.ZodString>;
620
604
  configIssue: z.ZodOptional<z.ZodString>;
621
605
  }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
622
- /** Pin a device's decoder to a specific node. */
623
- readonly assignDecoder: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
624
- deviceId: z.ZodNumber;
625
- nodeId: z.ZodString;
626
- }, z.core.$strip>, z.ZodVoid, "mutation">;
627
- /** Clear a device's decoder pin (revert to auto). */
628
- readonly unassignDecoder: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
629
- deviceId: z.ZodNumber;
630
- }, z.core.$strip>, z.ZodVoid, "mutation">;
631
- /** Get every camera's decoder placement. */
632
- readonly getDecoderAssignments: import("./capability-definition.js").CapabilityMethodSchema<z.ZodVoid, z.ZodReadonly<z.ZodArray<z.ZodObject<{
633
- deviceId: z.ZodNumber;
634
- decoderNodeId: z.ZodString;
635
- pinned: z.ZodBoolean;
636
- reason: z.ZodEnum<{
637
- manual: "manual";
638
- capacity: "capacity";
639
- "hardware-affinity": "hardware-affinity";
640
- "co-located": "co-located";
641
- }>;
642
- }, z.core.$strip>>>, import("./capability-definition.js").CapabilityMethodKind>;
643
606
  /** Pin a device's audio analysis to a specific cluster node. */
644
607
  readonly assignAudio: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
645
608
  deviceId: z.ZodNumber;
@@ -673,33 +636,6 @@ export declare const pipelineOrchestratorCapability: {
673
636
  pinned: z.ZodBoolean;
674
637
  assignedAt: z.ZodNumber;
675
638
  }, z.core.$strip>>, import("./capability-definition.js").CapabilityMethodKind>;
676
- /**
677
- * Get one camera's decoder placement (computed if not yet pinned).
678
- *
679
- * ADVISORY today: reports the orchestrator's decoder preference only.
680
- * Actual decode placement is broker-owned (local-node pin + frame-plane
681
- * co-location guard). Reserved to become the binding source/decoder-owner
682
- * control in the stream-LB epic (Phase 2).
683
- *
684
- * `pipelineNodeId` is the node already chosen to run inference for
685
- * this camera. When provided, the balancer prefers co-location with
686
- * it; omitted → falls back to the last known assignment in the
687
- * `assignments` map and finally to 'hub'.
688
- */
689
- readonly getDecoderAssignment: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
690
- deviceId: z.ZodNumber;
691
- pipelineNodeId: z.ZodOptional<z.ZodString>;
692
- }, z.core.$strip>, z.ZodObject<{
693
- deviceId: z.ZodNumber;
694
- decoderNodeId: z.ZodString;
695
- pinned: z.ZodBoolean;
696
- reason: z.ZodEnum<{
697
- manual: "manual";
698
- capacity: "capacity";
699
- "hardware-affinity": "hardware-affinity";
700
- "co-located": "co-located";
701
- }>;
702
- }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
703
639
  /** Read one agent's settings. Null when not yet seeded. */
704
640
  readonly getAgentSettings: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
705
641
  agentNodeId: z.ZodString;
@@ -797,14 +733,15 @@ export declare const pipelineOrchestratorCapability: {
797
733
  * `enabledDecoderNodes`, `enabledAudioNodes`, `remoteSourcingNodes`).
798
734
  * Each flag is optional in the patch: omit a flag to leave it unchanged,
799
735
  * pass `null` to reset it to the node default (`hub` → capable, every
800
- * other node → not). Detection/decode/audio eligibility is derived from
801
- * these flags across the cluster; changing them re-derives the enabled
802
- * sets and reconciles dispatch immediately.
736
+ * other node → not). Detection/audio eligibility is derived from these
737
+ * flags across the cluster; changing them re-derives the enabled sets
738
+ * and reconciles dispatch immediately. There is NO separate decode flag:
739
+ * decode is always co-located with its frame consumer, so decode
740
+ * eligibility IS detect eligibility.
803
741
  */
804
742
  readonly setAgentCapabilities: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
805
743
  agentNodeId: z.ZodString;
806
744
  detect: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
807
- decode: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
808
745
  audio: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
809
746
  ingest: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
810
747
  }, z.core.$strip>, z.ZodObject<{
@@ -825,6 +762,31 @@ export declare const pipelineOrchestratorCapability: {
825
762
  }, z.core.$strip>, z.ZodObject<{
826
763
  success: z.ZodLiteral<true>;
827
764
  }, z.core.$strip>, "mutation">;
765
+ /**
766
+ * Reset one node's pipeline to its hardware-aware defaults — the HONEST
767
+ * reset (replaces the executor's legacy `resetToDefault`, which cleared a
768
+ * dead persisted step-tree seed nothing in the live path read):
769
+ * (a) strips every `modelId` pin from that node's
770
+ * `agentSettings.addonDefaults` (cells revert to Auto — the node
771
+ * resolves its own hardware-aware format default at runtime);
772
+ * (b) clears per-camera step overrides scoped to that node
773
+ * (`stepOverridesByAgent[node]` + the wholesale
774
+ * `pipelineByAgent[node]` escape hatch);
775
+ * (c) clears the executor-side per-device settings stores on that node
776
+ * (`pipelineExecutor.clearDeviceOverrides`);
777
+ * (d) hot-reloads every camera assigned to the node.
778
+ *
779
+ * Returns the EFFECTIVE post-reset object-detection model for the node
780
+ * (the executor's pure hardware-aware default) so the UI can report what
781
+ * will actually run — not a value that never reaches the live path.
782
+ */
783
+ readonly resetNodePipelineDefaults: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
784
+ agentNodeId: z.ZodString;
785
+ }, z.core.$strip>, z.ZodObject<{
786
+ success: z.ZodLiteral<true>;
787
+ effectiveModelId: z.ZodNullable<z.ZodString>;
788
+ clearedCameraOverrides: z.ZodNumber;
789
+ }, z.core.$strip>, "mutation">;
828
790
  /** Read one camera's settings. Null when never touched (inherits agent defaults fully). */
829
791
  readonly getCameraSettings: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
830
792
  deviceId: z.ZodNumber;
@@ -1400,4 +1362,4 @@ export type CameraAudioStatus = z.infer<typeof CameraAudioStatusSchema>;
1400
1362
  export type CameraRecordingStatus = z.infer<typeof CameraRecordingStatusSchema>;
1401
1363
  export type CameraRecordingMode = z.infer<typeof CameraRecordingModeSchema>;
1402
1364
  export type IngestOwner = z.infer<typeof IngestOwnerSchema>;
1403
- export { AgentLoadSummarySchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMotionStatusSchema, CameraPipelineConfigSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CameraStepOverridePatchSchema, CapabilityBindingsSchema, DecoderAssignmentSchema, GlobalMetricsSchema, IngestOwnerSchema, PipelineAssignmentSchema, PipelineTemplateSchema as OrchestratorPipelineTemplateSchema, };
1365
+ export { AgentLoadSummarySchema, CameraAssignmentStatusSchema, CameraAudioStatusSchema, CameraBrokerProfileSchema, CameraBrokerStatusSchema, CameraDecoderShmSchema, CameraDecoderStatusSchema, CameraDetectionPhaseSchema, CameraDetectionProvisioningSchema, CameraDetectionProvisioningStateSchema, CameraDetectionStatusSchema, CameraMotionStatusSchema, CameraPipelineConfigSchema, CameraRecordingModeSchema, CameraRecordingStatusSchema, CameraSourceStatusSchema, CameraSourceStreamSchema, CameraStatusSchema, CameraStepOverridePatchSchema, CapabilityBindingsSchema, GlobalMetricsSchema, IngestOwnerSchema, PipelineAssignmentSchema, PipelineTemplateSchema as OrchestratorPipelineTemplateSchema, };