@camstack/types 1.2.259 → 1.2.261

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 (73) hide show
  1. package/dist/addon/base-addon.d.ts +9 -1
  2. package/dist/addon.js +15 -7
  3. package/dist/addon.mjs +15 -7
  4. package/dist/capabilities/camera-streams.cap.d.ts +5 -5
  5. package/dist/capabilities/capability-definition.d.ts +9 -0
  6. package/dist/capabilities/custom-model-registry.cap.d.ts +18 -12
  7. package/dist/capabilities/decoder.cap.d.ts +12 -12
  8. package/dist/capabilities/device-extension.cap.d.ts +370 -0
  9. package/dist/capabilities/device-manager.cap.d.ts +45 -5
  10. package/dist/capabilities/doorbell.cap.d.ts +41 -0
  11. package/dist/capabilities/embedding-encoder.cap.d.ts +175 -0
  12. package/dist/capabilities/index.d.ts +17 -14
  13. package/dist/capabilities/llm-runtime.cap.d.ts +4 -4
  14. package/dist/capabilities/llm-shared.d.ts +6 -6
  15. package/dist/capabilities/llm.cap.d.ts +6 -6
  16. package/dist/capabilities/load-contribution.cap.d.ts +2 -2
  17. package/dist/capabilities/model-convert.cap.d.ts +9 -6
  18. package/dist/capabilities/model-distributor.cap.d.ts +18 -12
  19. package/dist/capabilities/motion-detection.cap.d.ts +4 -4
  20. package/dist/capabilities/notification-rules.cap.d.ts +603 -31
  21. package/dist/capabilities/osd-manager.cap.d.ts +7 -7
  22. package/dist/capabilities/pipeline-analytics.cap.d.ts +130 -129
  23. package/dist/capabilities/pipeline-executor.cap.d.ts +78 -120
  24. package/dist/capabilities/pipeline-orchestrator.cap.d.ts +78 -65
  25. package/dist/capabilities/pipeline-runner.cap.d.ts +30 -6
  26. package/dist/capabilities/platform-probe.cap.d.ts +4 -13
  27. package/dist/capabilities/recording-export.cap.d.ts +7 -7
  28. package/dist/capabilities/schemas/detection-shared.d.ts +4 -4
  29. package/dist/capabilities/schemas/streaming-shared.d.ts +8 -8
  30. package/dist/capabilities/stream-broker.cap.d.ts +9 -9
  31. package/dist/capabilities/system.cap.d.ts +2 -2
  32. package/dist/capabilities/vacuum-control.cap.d.ts +13 -13
  33. package/dist/capabilities/vector-store.cap.d.ts +14 -0
  34. package/dist/capabilities/videoclips.cap.d.ts +5 -5
  35. package/dist/capabilities/webrtc-session.cap.d.ts +2 -2
  36. package/dist/device-extension/index.d.ts +3 -0
  37. package/dist/device-extension/slot-descriptor.d.ts +62 -0
  38. package/dist/device-extension/slot-provider.d.ts +68 -0
  39. package/dist/generated/addon-api.d.ts +59 -9
  40. package/dist/generated/cap-input-defaults.d.ts +1 -1
  41. package/dist/generated/capability-router-map.d.ts +5 -2
  42. package/dist/generated/collection-array-methods.d.ts +1 -1
  43. package/dist/generated/device-proxy.d.ts +7 -7
  44. package/dist/generated/device-scoped-caps.d.ts +1 -1
  45. package/dist/generated/extension-slots.d.ts +39 -0
  46. package/dist/generated/method-access-map.d.ts +1 -1
  47. package/dist/generated/method-device-selectors.d.ts +1 -1
  48. package/dist/generated/system-proxy.d.ts +4 -2
  49. package/dist/index.d.ts +8 -3
  50. package/dist/index.js +3125 -1792
  51. package/dist/index.mjs +3049 -1788
  52. package/dist/interfaces/addon.d.ts +41 -0
  53. package/dist/interfaces/event-bus.d.ts +11 -1
  54. package/dist/interfaces/pipeline-executor-capability.d.ts +15 -6
  55. package/dist/interfaces/platform.d.ts +2 -2
  56. package/dist/interfaces/stream-broker.d.ts +2 -2
  57. package/dist/node.d.ts +1 -0
  58. package/dist/node.js +73 -7
  59. package/dist/node.mjs +73 -8
  60. package/dist/notification/system-event-summary.d.ts +83 -0
  61. package/dist/notification/template-vars.d.ts +15 -0
  62. package/dist/pipeline/cluster-model-scope.d.ts +59 -3
  63. package/dist/{sleep-DU7mu4wb.mjs → sleep-BXv0ZcRa.mjs} +49 -33
  64. package/dist/{sleep-DtomDrRW.js → sleep-QxyLiUId.js} +54 -32
  65. package/dist/storage/atomic-write.d.ts +25 -0
  66. package/dist/types/clip-model.d.ts +64 -0
  67. package/dist/types/detection.d.ts +9 -0
  68. package/dist/types/models.d.ts +18 -19
  69. package/dist/types/pipeline-step.d.ts +9 -1
  70. package/dist/types/pipeline.d.ts +2 -1
  71. package/dist/utils/background-run-registry.d.ts +69 -0
  72. package/dist/utils/runtime-mapping.d.ts +9 -54
  73. package/package.json +1 -1
@@ -5,7 +5,7 @@
5
5
  * can answer "may a rule actuate this?" without importing the schema barrel
6
6
  * (~144MB RSS per runner, D28).
7
7
  *
8
- * Coverage: 87 device-scoped capabilities.
8
+ * Coverage: 88 device-scoped capabilities.
9
9
  */
10
10
  export declare const DEVICE_SCOPED_CAPS: ReadonlySet<string>;
11
11
  /**
@@ -0,0 +1,39 @@
1
+ /**
2
+ * AUTO-GENERATED by scripts/generate-extension-slots.ts — DO NOT EDIT.
3
+ *
4
+ * Every extension slot declared by a capability (`extensionSlots` in its
5
+ * `*.cap.ts`, D648), folded into one typed table. Imports ONLY the declaring
6
+ * caps' descriptors and value schemas — never the caps barrel — so
7
+ * `device-extension.cap.ts` can import this module without a cycle.
8
+ *
9
+ * Coverage: 2 slot(s).
10
+ */
11
+ import { z } from 'zod';
12
+ import { DeviceType } from '../device/device-type.js';
13
+ import type { ExtensionSlotDescriptor } from '../device-extension/slot-descriptor.js';
14
+ /** Every declared slot id, in table order. */
15
+ export declare const EXTENSION_SLOT_IDS: readonly ["doorbell-source", "linked-devices"];
16
+ export declare const ExtensionSlotIdSchema: z.ZodEnum<{
17
+ "linked-devices": "linked-devices";
18
+ "doorbell-source": "doorbell-source";
19
+ }>;
20
+ export type ExtensionSlotId = z.infer<typeof ExtensionSlotIdSchema>;
21
+ /** One row of the table: the descriptor, who declared it, where it is offered. */
22
+ export interface ExtensionSlotEntry {
23
+ readonly descriptor: ExtensionSlotDescriptor;
24
+ readonly declaringCap: string;
25
+ /** `descriptor.hostDeviceTypes ?? declaringCap.deviceTypes`, resolved here. */
26
+ readonly hostDeviceTypes: readonly DeviceType[];
27
+ }
28
+ export declare const EXTENSION_SLOTS: Readonly<Record<ExtensionSlotId, ExtensionSlotEntry>>;
29
+ /** A slot's editable value, discriminated on `slot`. */
30
+ export declare const ExtensionSlotValueSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
31
+ deviceIds: z.ZodArray<z.ZodNumber>;
32
+ slot: z.ZodLiteral<"doorbell-source">;
33
+ }, z.core.$strip>, z.ZodObject<{
34
+ deviceIds: z.ZodArray<z.ZodNumber>;
35
+ slot: z.ZodLiteral<"linked-devices">;
36
+ }, z.core.$strip>], "slot">;
37
+ export type ExtensionSlotValue = z.infer<typeof ExtensionSlotValueSchema>;
38
+ /** Every device type at least one slot is offered on — `device-extension`'s `deviceTypes`. */
39
+ export declare const EXTENSION_HOST_DEVICE_TYPES: readonly DeviceType[];
@@ -6,7 +6,7 @@
6
6
  * scope+access check inside `protectedProcedure` (see
7
7
  * `server/backend/src/api/trpc/trpc.middleware.ts`).
8
8
  *
9
- * Coverage: 1178 method paths across 160 capabilities.
9
+ * Coverage: 1184 method paths across 161 capabilities.
10
10
  */
11
11
  import type { CapabilityMethodAccess } from '../capabilities/capability-definition.js';
12
12
  export interface MethodAccessRecord {
@@ -6,7 +6,7 @@
6
6
  * system-scope cap that takes a deviceId was previously never device-filtered
7
7
  * — see the generator header).
8
8
  *
9
- * Coverage: 396 methods carry a device reference, of which
9
+ * Coverage: 399 methods carry a device reference, of which
10
10
  * 138 are on SYSTEM-scope caps.
11
11
  *
12
12
  * Top-level fields, number arrays, and one-level arrays of objects carrying
@@ -28,6 +28,7 @@ import type { networkAccessCapability } from '../capabilities/network-access.cap
28
28
  import type { networkQualityCapability } from '../capabilities/network-quality.cap.js';
29
29
  import type { nodesCapability } from '../capabilities/nodes.cap.js';
30
30
  import type { notificationOutputCapability } from '../capabilities/notification-output.cap.js';
31
+ import type { notificationRulesCapability } from '../capabilities/notification-rules.cap.js';
31
32
  import type { osdManagerCapability } from '../capabilities/osd-manager.cap.js';
32
33
  import type { pipelineExecutorCapability } from '../capabilities/pipeline-executor.cap.js';
33
34
  import type { pipelineOrchestratorCapability } from '../capabilities/pipeline-orchestrator.cap.js';
@@ -69,7 +70,7 @@ export interface SystemProxy {
69
70
  readonly deviceAdoption: Pick<InferProvider<typeof deviceAdoptionCapability>, 'listCandidateFilters' | 'listCandidates' | 'getCandidate' | 'refresh' | 'adopt' | 'release' | 'resync'>;
70
71
  readonly deviceExport: Pick<InferProvider<typeof deviceExportCapability>, 'getStatus' | 'listSupportedDeviceKinds' | 'listExposedDevices' | 'exposeDevice' | 'unexposeDevice'>;
71
72
  readonly deviceManager: Pick<InferProvider<typeof deviceManagerCapability>, 'allocateDeviceId' | 'migrateDevice' | 'registerDevice' | 'removeDevice' | 'persistConfig' | 'getRoleDisplayDefaults' | 'setRoleDisplayDefaults' | 'listLocations' | 'addLocation' | 'removeLocation' | 'renameLocation' | 'listLocationIcons' | 'setLocationIcon' | 'listLocationDescriptions' | 'setLocationDescription' | 'listSiteZones' | 'setSiteZone' | 'removeSiteZone' | 'renameSiteZone' | 'setLocationZone' | 'listPersistedByAddon' | 'listAll' | 'getChildren' | 'getChildrenBatch' | 'getLinkedDevicesBatch' | 'removeByIntegration' | 'getBindingsBatch' | 'getAllBindings' | 'listDeviceIdsByCaps' | 'listWrappersForCap' | 'listBindableCapsForDeviceType' | 'discoverDevices' | 'adoptDevice' | 'getCreationSchema' | 'createDevice' | 'testCreationField' | 'adoptionListCandidateFilters' | 'adoptionListCandidates' | 'adoptionRefresh' | 'adoptionAdopt' | 'adoptionRelease' | 'adoptionStartJob' | 'adoptionListJobs' | 'adoptionCancelJob' | 'adoptionResync' | 'discoveryProviders' | 'discoverAllProviders' | 'discoverProvider' | 'providerCreationType' | 'providerDiscoveryParamsSchema' | 'getDeviceStatusAggregateBatch'>;
72
- readonly deviceProvider: Pick<InferProvider<typeof deviceProviderCapability>, 'start' | 'stop' | 'getStatus' | 'getDevices' | 'supportsDiscovery' | 'discoverDevices' | 'getDiscoveryParamsSchema' | 'getManualCreationType' | 'adoptDiscoveredDevice' | 'supportsManualCreation' | 'getChildCreationSchema' | 'createDevice' | 'testCreationField'>;
73
+ readonly deviceProvider: Pick<InferProvider<typeof deviceProviderCapability>, 'start' | 'stop' | 'getStatus' | 'getDevices' | 'reloadDevice' | 'supportsDiscovery' | 'discoverDevices' | 'getDiscoveryParamsSchema' | 'getManualCreationType' | 'adoptDiscoveredDevice' | 'supportsManualCreation' | 'getChildCreationSchema' | 'createDevice' | 'testCreationField'>;
73
74
  readonly deviceState: Pick<InferProvider<typeof deviceStateCapability>, 'getAllSnapshots'>;
74
75
  readonly faceGallery: Pick<InferProvider<typeof faceGalleryCapability>, 'listIdentities' | 'createIdentity' | 'renameIdentity' | 'deleteIdentity' | 'listIdentitySamples' | 'auditIdentitySamples' | 'removeSample' | 'getFaceMedia' | 'assignFace' | 'unassignFace' | 'deleteFace' | 'assignFaces' | 'unassignFaces' | 'suggestFaceClusters'>;
75
76
  readonly integrations: Pick<InferProvider<typeof integrationsCapability>, 'list' | 'get' | 'getByAddonId' | 'create' | 'update' | 'delete' | 'getSettings' | 'setSettings' | 'getAvailableTypes' | 'testConnection'>;
@@ -82,9 +83,10 @@ export interface SystemProxy {
82
83
  readonly networkQuality: Pick<InferProvider<typeof networkQualityCapability>, 'getAllStats'>;
83
84
  readonly nodes: Pick<InferProvider<typeof nodesCapability>, 'topology' | 'directory' | 'deployAddon' | 'undeployAddon' | 'restartAddon' | 'restartProcess' | 'restartNode' | 'shutdownNode' | 'renameNode' | 'clusterAddonStatus' | 'getCapUsageGraph' | 'getNodeAddons' | 'setProcessLogLevel' | 'executeQuery'>;
84
85
  readonly notificationOutput: Pick<InferProvider<typeof notificationOutputCapability>, 'listTargetKinds' | 'listTargets' | 'discoverTargets' | 'send' | 'testTarget' | 'upsertTarget' | 'deleteTarget' | 'setTargetEnabled'>;
86
+ readonly notificationRules: Pick<InferProvider<typeof notificationRulesCapability>, 'listRules' | 'getRule' | 'createRule' | 'updateRule' | 'deleteRule' | 'setRuleEnabled' | 'getClipRetentionAsks' | 'listDeviceMutes' | 'testRule' | 'previewStateSummary' | 'getConditionCatalog' | 'getTemplateCatalog' | 'previewTemplate' | 'getHistory' | 'getRuleLastRuns' | 'resolveArtifactUrl' | 'listSnoozes' | 'createSnooze' | 'cancelSnooze' | 'getAlarmConfig' | 'setAlarmConfig'>;
85
87
  readonly osdManager: Pick<InferProvider<typeof osdManagerCapability>, 'getConditionSupport' | 'copyDeviceConfiguration'>;
86
88
  readonly pipelineExecutor: Pick<InferProvider<typeof pipelineExecutorCapability>, 'getAvailableEngines' | 'getSelectedEngine' | 'getDefaultSteps' | 'getEngineProvisioning' | 'getVideoPipelineSteps' | 'setVideoPipelineSteps' | 'clearDeviceOverrides' | 'getInferenceDeviceHealth' | 'rearmInferenceDevice' | 'getSchema' | 'getGlobalSteps' | 'getGlobalPipelineConfig' | 'getOrchestratorConfigSchema' | 'validatePipeline' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate' | 'getCapabilities' | 'getAddonModels' | 'downloadModel' | 'deleteModel' | 'cacheFrameInPool' | 'inferCached' | 'uncacheFrame' | 'getEffectiveTuning' | 'listLoadedEngines' | 'spinEngine' | 'killEngine' | 'listReferenceImages' | 'getReferenceImage' | 'getReferenceAudioFiles' | 'getReferenceAudio' | 'getAudioCapabilities' | 'runAudioTest' | 'getDetectionConfigSchema'>;
87
- readonly pipelineOrchestrator: Pick<InferProvider<typeof pipelineOrchestratorCapability>, 'pauseForStorageMigration' | 'resumeForStorageMigration' | 'rebalance' | 'getPipelineAssignments' | 'getAgentLoad' | 'getGlobalMetrics' | 'getCapabilityBindings' | 'setCapabilityBinding' | 'getIngestOwner' | 'getAudioNodeLoad' | 'getAgentSettings' | 'listAgentSettings' | 'removeAgentSettings' | 'setAgentMaxCameras' | 'setAgentDetectWeight' | 'setAgentCapabilities' | 'setAgentDecodeLimits' | 'setAgentReachableHost' | 'setAgentInferenceDevices' | 'getNodeInferenceDevices' | 'resetNodePipelineDefaults' | 'getCameraStatuses' | 'reconcileFromDisk' | 'getReconcileFromDiskStatus' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate'>;
89
+ readonly pipelineOrchestrator: Pick<InferProvider<typeof pipelineOrchestratorCapability>, 'pauseForStorageMigration' | 'resumeForStorageMigration' | 'rebalance' | 'getPipelineAssignments' | 'getAgentLoad' | 'getClusterModelChoice' | 'getGlobalMetrics' | 'getCapabilityBindings' | 'setCapabilityBinding' | 'getIngestOwner' | 'getAudioNodeLoad' | 'getAudioAssignments' | 'getAgentSettings' | 'listAgentSettings' | 'removeAgentSettings' | 'setAgentMaxCameras' | 'setAgentDetectWeight' | 'setAgentCapabilities' | 'setAgentDecodeLimits' | 'setAgentReachableHost' | 'setAgentInferenceDevices' | 'getNodeInferenceDevices' | 'resetNodePipelineDefaults' | 'getCameraStatuses' | 'reconcileFromDisk' | 'getReconcileFromDiskStatus' | 'listTemplates' | 'saveTemplate' | 'updateTemplate' | 'deleteTemplate'>;
88
90
  readonly pipelineRunner: Pick<InferProvider<typeof pipelineRunnerCapability>, 'attachCamera' | 'reportMotion' | 'getLocalLoad' | 'getLocalMetrics' | 'getAllCameraMetrics' | 'getLocalCameras' | 'getNativeCrop' | 'runStatelessStep'>;
89
91
  readonly plateGallery: Pick<InferProvider<typeof plateGalleryCapability>, 'getPlateMedia' | 'searchPlates' | 'suggestPlateClusters' | 'correctPlateText' | 'deletePlate' | 'listVehicles' | 'createVehicle' | 'renameVehicle' | 'deleteVehicle' | 'listVehicleSamples' | 'removeVehicleSample' | 'assignPlate' | 'unassignPlate' | 'assignPlates' | 'unassignPlates'>;
90
92
  readonly recordingArchive: Pick<InferProvider<typeof recordingArchiveCapability>, 'getAvailabilityBatch' | 'getDaysWithRecordingsBatch' | 'getStorageUsage' | 'listOpsLog' | 'pauseForStorageMigration' | 'resumeForStorageMigration' | 'refreshStorageLocationsForMigration' | 'startStorageMigrationMove' | 'getStorageMigrationMoveStatus' | 'cancelStorageMigrationMove' | 'relocateFootage' | 'listRelocateJobs' | 'getRelocateResidue' | 'reconcileLedgerAgainstDisk' | 'cancelRelocateJob' | 'planStorageRebalance' | 'startStorageRebalance' | 'getPlacement' | 'setDevicePlacement'>;
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export type { EventOwnerType, MediaOwnerKey, MediaOwnerKeyInput, MediaOwnerType,
3
3
  export { EVENT_OWNER_TYPES, EventOwnerTypeSchema, MEDIA_OWNER_TYPES, MEDIA_PRESENCE_OWNER_KINDS, MediaPresenceOwnerKindSchema, formatMediaOwnerKey, isEventOwnerType, isMediaOwnerType, parseMediaOwnerKey, } from './media/media-owner-key.js';
4
4
  export type { CapabilitiesAccess } from './addon/base-addon.js';
5
5
  export { BaseAddon, normalizeAddonInitResult } from './addon/base-addon.js';
6
+ export { normalizeNodeId } from './addon/per-node-store.js';
6
7
  export type { AddonRouteInvokeRequest, AddonRouteReplyEnvelope, } from './addon/build-addon-route-provider.js';
7
8
  export { buildAddonRouteProvider } from './addon/build-addon-route-provider.js';
8
9
  export type { DurableState, DurableStateDeps } from './addon/durable-state.js';
@@ -131,6 +132,7 @@ export * from './types/labels.js';
131
132
  export * from './types/live-state.js';
132
133
  export * from './types/model-variant-groups.js';
133
134
  export * from './types/models.js';
135
+ export * from './types/clip-model.js';
134
136
  export * from './types/pipeline.js';
135
137
  export type { AvailableEngine, PipelineAddonSchema, PipelineDefaultStep, PipelineModelOption, PipelineSchema, PipelineSlotSchema, PipelineTemplate, PipelineTemplateStep, TemplateValidationResult, } from './types/pipeline-schema.js';
136
138
  export * from './types/pipeline-step.js';
@@ -140,6 +142,7 @@ export type { AutomationAction, AutomationCondition, AutomationConditionAll, Aut
140
142
  export { AutomationActionSchema, AutomationConditionOperatorSchema, AutomationConditionSchema, AutomationRecipeSchema, AutomationTriggerSchema, conditionDepth, countConditionLeaves, generateAutomationBlock, MAX_CONDITION_DEPTH, MAX_CONDITION_LEAVES, validateRecipeBounds, } from './automation/index.js';
141
143
  export * from './cap-call-context.js';
142
144
  export * from './capabilities/index.js';
145
+ export * from './device-extension/index.js';
143
146
  export { APPLE_SA_TO_MACRO, AUDIO_MACRO_LABELS, getAudioMacroClassIds, mapAudioLabelToMacro, YAMNET_TO_MACRO, } from './catalogs/audio-classmap.js';
144
147
  export { COCO_80_LABELS, COCO_TO_MACRO, DETECTION_MACRO_CLASSES, isDetectionMacroClass, MACRO_LABELS, } from './catalogs/coco-classmap.js';
145
148
  export { DEVICE_STATE_READERS, readDeviceStateFrom, stateVocabularyFor, } from './catalogs/device-state-vocabulary.js';
@@ -230,13 +233,14 @@ export { conditionExclusionReason, conditionVisibleForKind, defaultDeliveryForSe
230
233
  export { isScheduleActive } from './notification/schedule.js';
231
234
  export { NC_ALARM_OPENING_EVENT_KINDS, NC_SENSOR_TRANSITION_NEVER_FIRES_WARNING, type NcAlarmMembershipSubject, type NcAlarmOpeningEventKind, ruleBelongsToAlarm, sensorTransitionNeverFires, } from './notification/alarm-membership.js';
232
235
  export { NC_SENSOR_RAISED_FIELD_BY_KIND, NC_SENSOR_TRANSITION_KINDS, NC_SENSOR_TRANSITION_UNSUPPORTED_REASON, sensorRaisedOf, sensorTransitionOffered, } from './notification/sensor-raised.js';
233
- export { NC_TEMPLATE_HELD_BACK_SYSTEM_EVENT_KINDS, NC_TEMPLATE_VARS, isKnownTemplateVar, servedTemplateVars, templateVarKindApplies, templateVarSystemEventApplies, templateVarsFor, } from './notification/template-vars.js';
236
+ export { NC_TEMPLATE_HELD_BACK_SYSTEM_EVENT_KINDS, NC_TEMPLATE_VARS, isHeldBackTemplateVar, isKnownTemplateVar, servedTemplateVars, templateVarDeliveryApplies, templateVarKindApplies, templateVarSystemEventApplies, templateVarsFor, } from './notification/template-vars.js';
234
237
  export { NC_SYSTEM_EVENT_FILTER_KEYS, type NcSystemEventFilterKey, systemEventFilterApplies, systemEventFilterAppliesToAnyKind, } from './notification/system-event-filters.js';
235
238
  export { describeSystemEventFamilyProblem, isSystemEventFamily, NC_SYSTEM_EVENT_CONDITION_FILTER_KEYS, NC_SYSTEM_EVENT_FAMILIES, NC_SYSTEM_EVENT_FAMILY, NC_SYSTEM_EVENT_FAMILY_FILTERS, NC_SYSTEM_EVENT_KIND_GROUP_SPECS, type NcSystemEventConditionFilterKey, type NcSystemEventFamily, type NcSystemEventFamilyProblem, type NcSystemEventFamilyVerdict, type NcSystemEventKindGroupSpec, systemEventFamilyOf, systemEventFamilyProblems, systemEventKindNamesOf, systemEventKindsOfFamily, } from './notification/system-event-families.js';
239
+ export { describeSystemEventDeliveryProblem, isSystemEventSummaryRule, NC_SYSTEM_EVENT_SUMMARY_FAMILIES, type NcSummarySendTime, type NcSystemEventDeliveryProblem, type NcSystemEventDeliverySubject, scheduleForSendTimes, sendTimesOfSchedule, systemEventDeliveryProblems, systemEventSummaryScheduleOf, templateCarriesSummary, } from './notification/system-event-summary.js';
236
240
  export { NC_SERVER_PACKAGE_NAME, NC_UPDATE_EVENT_PACKAGE_NAMES, type NcInstalledPackageLike, type NcScopePickerItem, nodePickerItems, packagePickerItems, } from './notification/scope-picker-items.js';
237
241
  export type { TimelapseCadencePair, TimelapsePreviewMode, TimelapseRule, TimelapseRuleInput, TimelapseRulePatch, TimelapseTemplate, } from './notification/timelapse-rule.js';
238
242
  export { assertTimelapseCadences, DEFAULT_TIMELAPSE_PREVIEW_TEXT, readTimelapseGeneratedAt, TIMELAPSE_DENSE_FLOOR_SEC, TimelapseRuleInputSchema, TimelapseRulePatchSchema, TimelapseRuleSchema, TimelapseTemplateSchema, } from './notification/timelapse-rule.js';
239
- export { CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, type ClusterModelScopedStep, type ClusterStepModels, type ClusterStepSettingField, type ClusterStepSettings, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, DEFAULT_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, type HydratedClusterSection, type HydratedClusterView, isClusterScopedStep, overlayClusterStepSettings, pickClusterStepModels, pickClusterStepSettings, readClusterStepModels, readClusterStepSettings, resolveClusterStepModelId, type StepModelScope, } from './pipeline/cluster-model-scope.js';
243
+ export { CLUSTER_MODEL_SCOPED_STEPS, CLUSTER_MODEL_SECTION_ID, CLUSTER_STEP_SETTING_FIELDS, type ClusterModelScopedStep, type ClusterStepModels, type ClusterStepSettingField, type ClusterStepSettings, clusterModelSettingKey, clusterStepSettingFieldsFor, clusterStepSettingKey, DEFAULT_CLUSTER_STEP_MODELS, DEFAULT_CLUSTER_STEP_SETTINGS, DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, type HydratedClusterSection, type HydratedClusterView, interpretStoredClusterModel, type InvalidClusterStepModelEntry, invalidClusterStepModelEntries, isClusterScopedStep, overlayClusterStepSettings, pickClusterStepModels, pickClusterStepSettings, pickInvalidClusterStepModels, readClusterStepModels, readClusterStepSettings, resolveClusterStepModelId, type StepModelScope, type StoredClusterModelInterpretation, } from './pipeline/cluster-model-scope.js';
240
244
  export { DEFAULT_DETAIL_CROP_CONVENTION, DETAIL_CROP_PADDING_FIELD, DETAIL_CROP_PADDING_KEY, DETAIL_CROP_SECTION_ID, DETAIL_CROP_SQUARE_KEY, type DetailCropConvention, DetailCropConventionSchema, type DetailCropRect, deriveDetailCropRect, FULL_IMAGE_BBOX, type HydratedSettingsSection, type HydratedSettingsView, pickDetailCropConvention, readDetailCropConvention, } from './pipeline/detail-crop.js';
241
245
  export { DEFAULT_NATIVE_LEASE_SETTINGS, NATIVE_LEASE_ACTIVITY_FIELD, NATIVE_LEASE_ACTIVITY_KEY, NATIVE_LEASE_ADMISSION_FIELD, NATIVE_LEASE_ADMISSION_KEY, NATIVE_LEASE_BUDGET_FIELD, NATIVE_LEASE_BUDGET_KEY, NATIVE_LEASE_HOLD_FIELD, NATIVE_LEASE_HOLD_KEY, NATIVE_LEASE_SCENE_BUDGET_FIELD, NATIVE_LEASE_SCENE_BUDGET_KEY, NATIVE_LEASE_SECTION_ID, NATIVE_LEASE_TILE_BUDGET_FIELD, NATIVE_LEASE_TILE_BUDGET_KEY, type NativeLeaseAdmission, NativeLeaseAdmissionSchema, type NativeLeaseKnob, type NativeLeaseNumberKnob, type NativeLeaseSettings, type NativeLeaseSettingsOverride, NativeLeaseSettingsSchema, pickNativeLeaseOverride, readNativeLeaseOverride, } from './pipeline/native-lease.js';
242
246
  export { ACCESS_ROLES, type AccessRoleAssignment, type AccessRoleId, type AccessRoleSpec, buildRoleScopes, detectAccessRole, roleSpec, } from './schemas/access-roles.js';
@@ -248,6 +252,7 @@ export * from './units/index.js';
248
252
  export { BOOT_RECOVERY_BACKOFF_MS } from './util/boot-recovery-backoff.js';
249
253
  export { bestLocationMatch, locationSimilarity } from './util/location-match.js';
250
254
  export { bareAddonId, isSameAddonId } from './utils/addon-id.js';
255
+ export { BackgroundRunRegistry, type BackgroundRunContext, type BackgroundRunRegistryOptions, type BackgroundRunState, type BackgroundRunStatus, } from './utils/background-run-registry.js';
251
256
  export { cosineSimilarity } from './utils/cosine-similarity.js';
252
257
  export { ElementConfigStore } from './utils/element-config-store.js';
253
258
  export { errMsg } from './utils/err-msg.js';
@@ -260,7 +265,7 @@ export { RingBuffer } from './utils/ring-buffer.js';
260
265
  export type { InferenceStepResult } from './utils/run-inference-step.js';
261
266
  export { runInferenceStep } from './utils/run-inference-step.js';
262
267
  export type { PipelineRuntime } from './utils/runtime-mapping.js';
263
- export { BACKEND_TO_FORMAT, DEVICE_BACKEND_TO_FORMAT, deviceBackendToFormat, formatForBackend, formatForRuntime, PYTHON_SCRIPT, pythonScriptForBackend, RUNTIME_TO_FORMAT, requiresPython, resolveAddonRuntime, resolveDetectionRuntime, resolveModelFormat, } from './utils/runtime-mapping.js';
268
+ export { DEVICE_BACKEND_TO_FORMAT, deviceBackendToFormat, formatForRuntime, PYTHON_SCRIPT, pythonScriptForBackend, RUNTIME_TO_FORMAT, requiresPython, } from './utils/runtime-mapping.js';
264
269
  export { sleep, sleepCancellable } from './utils/sleep.js';
265
270
  export { decodeVectorBase64, encodeVectorBase64, vectorDimFromBase64, } from './utils/vector-codec.js';
266
271
  export { evaluateZoneRules, type ZoneRuleEvalResult } from './utils/zone-rule-eval.js';