@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
@@ -252,6 +252,40 @@ export declare const NcScheduleSchema: z.ZodObject<{
252
252
  invert: z.ZodOptional<z.ZodBoolean>;
253
253
  }, z.core.$strip>;
254
254
  export type NcSchedule = z.infer<typeof NcScheduleSchema>;
255
+ /**
256
+ * How a system-event rule of the `device-events` or `system` family speaks
257
+ * (D647): at once, per event (`instant`, the only behaviour before D647), or
258
+ * as a STATE SUMMARY at the end of each window of `schedule`.
259
+ */
260
+ export declare const NcSystemEventDeliveryModeSchema: z.ZodEnum<{
261
+ summary: "summary";
262
+ instant: "instant";
263
+ }>;
264
+ export type NcSystemEventDeliveryMode = z.infer<typeof NcSystemEventDeliveryModeSchema>;
265
+ /**
266
+ * `summary`: the rule sends NOTHING per event. When a window of `schedule`
267
+ * CLOSES, it sends one notification with the current state of its kinds
268
+ * (low batteries, consumables to replace, devices offline, updates
269
+ * available, ...), after its own filters. Nothing to report sends nothing.
270
+ * The schedule is the ordinary `NcSchedule` (weekly windows, IANA timezone,
271
+ * midnight crossing); the send time is each window's END. Refused on the
272
+ * `alarm` family, which stays instant (`systemEventDeliveryProblems`).
273
+ */
274
+ export declare const NcSystemEventDeliverySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
275
+ mode: z.ZodLiteral<"instant">;
276
+ }, z.core.$strip>, z.ZodObject<{
277
+ mode: z.ZodLiteral<"summary">;
278
+ schedule: z.ZodObject<{
279
+ windows: z.ZodArray<z.ZodObject<{
280
+ days: z.ZodArray<z.ZodNumber>;
281
+ startMinute: z.ZodNumber;
282
+ endMinute: z.ZodNumber;
283
+ }, z.core.$strip>>;
284
+ timezone: z.ZodOptional<z.ZodString>;
285
+ invert: z.ZodOptional<z.ZodBoolean>;
286
+ }, z.core.$strip>;
287
+ }, z.core.$strip>], "mode">;
288
+ export type NcSystemEventDelivery = z.infer<typeof NcSystemEventDeliverySchema>;
255
289
  /** Fuzzy plate matcher — OCR noise makes exact match useless (spec row 12/13). */
256
290
  export declare const NcPlateMatcherSchema: z.ZodObject<{
257
291
  values: z.ZodArray<z.ZodString>;
@@ -387,8 +421,8 @@ export type NcCrossing = z.infer<typeof NcCrossingSchema>;
387
421
  * that means the same as absence is a second way to write one rule.
388
422
  */
389
423
  export declare const NcSensorTransitionSchema: z.ZodEnum<{
390
- raised: "raised";
391
424
  cleared: "cleared";
425
+ raised: "raised";
392
426
  }>;
393
427
  export type NcSensorTransition = z.infer<typeof NcSensorTransitionSchema>;
394
428
  /** Admin-zone membership condition (zone IDs as stamped by the ZoneEngine). */
@@ -669,8 +703,8 @@ export declare const NcConditionsSchema: z.ZodObject<{
669
703
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
670
704
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
671
705
  sensorTransition: z.ZodOptional<z.ZodEnum<{
672
- raised: "raised";
673
706
  cleared: "cleared";
707
+ raised: "raised";
674
708
  }>>;
675
709
  packagePhase: z.ZodOptional<z.ZodEnum<{
676
710
  both: "both";
@@ -806,6 +840,24 @@ export declare const NcLinkedCameraModeSchema: z.ZodEnum<{
806
840
  each: "each";
807
841
  }>;
808
842
  export type NcLinkedCameraMode = z.infer<typeof NcLinkedCameraModeSchema>;
843
+ /**
844
+ * The clip window a rule gets when it stores no `clipPreRollSec` /
845
+ * `clipPostRollSec` (D654): 4 s before the moment, 6 s after.
846
+ *
847
+ * THE one owner. The Notification Center resolves an absent roll to these at
848
+ * dispatch and sizes the broker's clip ring from them (`clip-retention-ask`).
849
+ * The admin editor does not author the roll; the viewer editor still keeps its
850
+ * own 3 / 7 until it imports these (viewer follow-up). A second copy is how the
851
+ * viewer came to display 3 / 7 — copied from a stale comment on the schema
852
+ * below — while the hub cut 4 / 6, and to prune a typed 3 back to "absent",
853
+ * which the hub then read as 4.
854
+ *
855
+ * A product decision of the notification, not the broker's history window
856
+ * (D381/D382): the clip is cut from the broker's per-camera clip ring, which
857
+ * the rules size, not from a pre-roll dial.
858
+ */
859
+ export declare const NC_CLIP_PRE_ROLL_DEFAULT_SEC = 4;
860
+ export declare const NC_CLIP_POST_ROLL_DEFAULT_SEC = 6;
809
861
  export declare const NcMediaPolicySchema: z.ZodObject<{
810
862
  attach: z.ZodDefault<z.ZodEnum<{
811
863
  none: "none";
@@ -994,8 +1046,8 @@ export declare const NcRuleInputSchema: z.ZodObject<{
994
1046
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
995
1047
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
996
1048
  sensorTransition: z.ZodOptional<z.ZodEnum<{
997
- raised: "raised";
998
1049
  cleared: "cleared";
1050
+ raised: "raised";
999
1051
  }>>;
1000
1052
  packagePhase: z.ZodOptional<z.ZodEnum<{
1001
1053
  both: "both";
@@ -1087,6 +1139,20 @@ export declare const NcRuleInputSchema: z.ZodObject<{
1087
1139
  timezone: z.ZodOptional<z.ZodString>;
1088
1140
  invert: z.ZodOptional<z.ZodBoolean>;
1089
1141
  }, z.core.$strip>>;
1142
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1143
+ mode: z.ZodLiteral<"instant">;
1144
+ }, z.core.$strip>, z.ZodObject<{
1145
+ mode: z.ZodLiteral<"summary">;
1146
+ schedule: z.ZodObject<{
1147
+ windows: z.ZodArray<z.ZodObject<{
1148
+ days: z.ZodArray<z.ZodNumber>;
1149
+ startMinute: z.ZodNumber;
1150
+ endMinute: z.ZodNumber;
1151
+ }, z.core.$strip>>;
1152
+ timezone: z.ZodOptional<z.ZodString>;
1153
+ invert: z.ZodOptional<z.ZodBoolean>;
1154
+ }, z.core.$strip>;
1155
+ }, z.core.$strip>], "mode">>;
1090
1156
  targets: z.ZodArray<z.ZodObject<{
1091
1157
  targetId: z.ZodString;
1092
1158
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1234,6 +1300,20 @@ export declare const NcRulePatchSchema: z.ZodObject<{
1234
1300
  timezone: z.ZodOptional<z.ZodString>;
1235
1301
  invert: z.ZodOptional<z.ZodBoolean>;
1236
1302
  }, z.core.$strip>>>;
1303
+ systemEventDelivery: z.ZodOptional<z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1304
+ mode: z.ZodLiteral<"instant">;
1305
+ }, z.core.$strip>, z.ZodObject<{
1306
+ mode: z.ZodLiteral<"summary">;
1307
+ schedule: z.ZodObject<{
1308
+ windows: z.ZodArray<z.ZodObject<{
1309
+ days: z.ZodArray<z.ZodNumber>;
1310
+ startMinute: z.ZodNumber;
1311
+ endMinute: z.ZodNumber;
1312
+ }, z.core.$strip>>;
1313
+ timezone: z.ZodOptional<z.ZodString>;
1314
+ invert: z.ZodOptional<z.ZodBoolean>;
1315
+ }, z.core.$strip>;
1316
+ }, z.core.$strip>], "mode">>>;
1237
1317
  targets: z.ZodOptional<z.ZodArray<z.ZodObject<{
1238
1318
  targetId: z.ZodString;
1239
1319
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1366,8 +1446,8 @@ export declare const NcRulePatchSchema: z.ZodObject<{
1366
1446
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
1367
1447
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
1368
1448
  sensorTransition: z.ZodOptional<z.ZodEnum<{
1369
- raised: "raised";
1370
1449
  cleared: "cleared";
1450
+ raised: "raised";
1371
1451
  }>>;
1372
1452
  packagePhase: z.ZodOptional<z.ZodEnum<{
1373
1453
  both: "both";
@@ -1535,6 +1615,20 @@ export declare const NcRuleUpdateInputSchema: z.ZodObject<{
1535
1615
  timezone: z.ZodOptional<z.ZodString>;
1536
1616
  invert: z.ZodOptional<z.ZodBoolean>;
1537
1617
  }, z.core.$strip>>>;
1618
+ systemEventDelivery: z.ZodOptional<z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
1619
+ mode: z.ZodLiteral<"instant">;
1620
+ }, z.core.$strip>, z.ZodObject<{
1621
+ mode: z.ZodLiteral<"summary">;
1622
+ schedule: z.ZodObject<{
1623
+ windows: z.ZodArray<z.ZodObject<{
1624
+ days: z.ZodArray<z.ZodNumber>;
1625
+ startMinute: z.ZodNumber;
1626
+ endMinute: z.ZodNumber;
1627
+ }, z.core.$strip>>;
1628
+ timezone: z.ZodOptional<z.ZodString>;
1629
+ invert: z.ZodOptional<z.ZodBoolean>;
1630
+ }, z.core.$strip>;
1631
+ }, z.core.$strip>], "mode">>>;
1538
1632
  targets: z.ZodOptional<z.ZodArray<z.ZodObject<{
1539
1633
  targetId: z.ZodString;
1540
1634
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -1667,8 +1761,8 @@ export declare const NcRuleUpdateInputSchema: z.ZodObject<{
1667
1761
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
1668
1762
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
1669
1763
  sensorTransition: z.ZodOptional<z.ZodEnum<{
1670
- raised: "raised";
1671
1764
  cleared: "cleared";
1765
+ raised: "raised";
1672
1766
  }>>;
1673
1767
  packagePhase: z.ZodOptional<z.ZodEnum<{
1674
1768
  both: "both";
@@ -1868,8 +1962,8 @@ export declare const NcRuleSchema: z.ZodObject<{
1868
1962
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
1869
1963
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
1870
1964
  sensorTransition: z.ZodOptional<z.ZodEnum<{
1871
- raised: "raised";
1872
1965
  cleared: "cleared";
1966
+ raised: "raised";
1873
1967
  }>>;
1874
1968
  packagePhase: z.ZodOptional<z.ZodEnum<{
1875
1969
  both: "both";
@@ -1961,6 +2055,20 @@ export declare const NcRuleSchema: z.ZodObject<{
1961
2055
  timezone: z.ZodOptional<z.ZodString>;
1962
2056
  invert: z.ZodOptional<z.ZodBoolean>;
1963
2057
  }, z.core.$strip>>;
2058
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
2059
+ mode: z.ZodLiteral<"instant">;
2060
+ }, z.core.$strip>, z.ZodObject<{
2061
+ mode: z.ZodLiteral<"summary">;
2062
+ schedule: z.ZodObject<{
2063
+ windows: z.ZodArray<z.ZodObject<{
2064
+ days: z.ZodArray<z.ZodNumber>;
2065
+ startMinute: z.ZodNumber;
2066
+ endMinute: z.ZodNumber;
2067
+ }, z.core.$strip>>;
2068
+ timezone: z.ZodOptional<z.ZodString>;
2069
+ invert: z.ZodOptional<z.ZodBoolean>;
2070
+ }, z.core.$strip>;
2071
+ }, z.core.$strip>], "mode">>;
1964
2072
  targets: z.ZodArray<z.ZodObject<{
1965
2073
  targetId: z.ZodString;
1966
2074
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -2086,6 +2194,41 @@ export declare const NcRuleSchema: z.ZodObject<{
2086
2194
  disabledTargetIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
2087
2195
  }, z.core.$strip>;
2088
2196
  export type NcRule = z.infer<typeof NcRuleSchema>;
2197
+ /** One section of a previewed state summary. `unavailable` = its state could not be read. */
2198
+ export declare const NcStateSummaryPreviewSectionSchema: z.ZodObject<{
2199
+ id: z.ZodString;
2200
+ status: z.ZodEnum<{
2201
+ read: "read";
2202
+ unavailable: "unavailable";
2203
+ }>;
2204
+ items: z.ZodNumber;
2205
+ reason: z.ZodOptional<z.ZodString>;
2206
+ }, z.core.$strip>;
2207
+ export type NcStateSummaryPreviewSection = z.infer<typeof NcStateSummaryPreviewSectionSchema>;
2208
+ /**
2209
+ * The summary a rule would send now. `empty` = nothing to report and every
2210
+ * section read: such a summary is NOT sent. `dropped` counts the open states
2211
+ * the rule's own filters (or a camera mute) left out, by reason.
2212
+ * `excludedGroups` names the kind groups selected that have no state to report
2213
+ * (backups & exports).
2214
+ */
2215
+ export declare const NcStateSummaryPreviewSchema: z.ZodObject<{
2216
+ empty: z.ZodBoolean;
2217
+ count: z.ZodNumber;
2218
+ text: z.ZodString;
2219
+ sections: z.ZodArray<z.ZodObject<{
2220
+ id: z.ZodString;
2221
+ status: z.ZodEnum<{
2222
+ read: "read";
2223
+ unavailable: "unavailable";
2224
+ }>;
2225
+ items: z.ZodNumber;
2226
+ reason: z.ZodOptional<z.ZodString>;
2227
+ }, z.core.$strip>>;
2228
+ dropped: z.ZodRecord<z.ZodString, z.ZodNumber>;
2229
+ excludedGroups: z.ZodArray<z.ZodString>;
2230
+ }, z.core.$strip>;
2231
+ export type NcStateSummaryPreview = z.infer<typeof NcStateSummaryPreviewSchema>;
2089
2232
  export declare const NcTestResultSchema: z.ZodObject<{
2090
2233
  recordId: z.ZodString;
2091
2234
  recordKind: z.ZodEnum<{
@@ -2108,8 +2251,8 @@ export type NcTestResult = z.infer<typeof NcTestResultSchema>;
2108
2251
  * (a stored system rule whose kinds span families, D637) and never authored. */
2109
2252
  export declare const NcRuleKindSchema: z.ZodEnum<{
2110
2253
  sensor: "sensor";
2111
- system: "system";
2112
2254
  detection: "detection";
2255
+ system: "system";
2113
2256
  occupancy: "occupancy";
2114
2257
  sound: "sound";
2115
2258
  alarm: "alarm";
@@ -2127,8 +2270,8 @@ export declare const NcRuleKindSchema: z.ZodEnum<{
2127
2270
  */
2128
2271
  export declare const NcTemplateVarKindSchema: z.ZodEnum<{
2129
2272
  sensor: "sensor";
2130
- system: "system";
2131
2273
  detection: "detection";
2274
+ system: "system";
2132
2275
  occupancy: "occupancy";
2133
2276
  sound: "sound";
2134
2277
  }>;
@@ -2151,8 +2294,8 @@ export declare const NcTemplateFieldSchema: z.ZodEnum<{
2151
2294
  export type NcTemplateField = z.infer<typeof NcTemplateFieldSchema>;
2152
2295
  export declare const NcTemplateVarGroupSchema: z.ZodEnum<{
2153
2296
  sensor: "sensor";
2154
- system: "system";
2155
2297
  subject: "subject";
2298
+ system: "system";
2156
2299
  occupancy: "occupancy";
2157
2300
  ai: "ai";
2158
2301
  time: "time";
@@ -2177,8 +2320,8 @@ export declare const NcTemplateVarDescriptorSchema: z.ZodObject<{
2177
2320
  example: z.ZodString;
2178
2321
  group: z.ZodEnum<{
2179
2322
  sensor: "sensor";
2180
- system: "system";
2181
2323
  subject: "subject";
2324
+ system: "system";
2182
2325
  occupancy: "occupancy";
2183
2326
  ai: "ai";
2184
2327
  time: "time";
@@ -2200,8 +2343,8 @@ export declare const NcTemplateVarDescriptorSchema: z.ZodObject<{
2200
2343
  }>>>;
2201
2344
  kinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2202
2345
  sensor: "sensor";
2203
- system: "system";
2204
2346
  detection: "detection";
2347
+ system: "system";
2205
2348
  occupancy: "occupancy";
2206
2349
  sound: "sound";
2207
2350
  }>>>;
@@ -2252,6 +2395,10 @@ export declare const NcTemplateVarDescriptorSchema: z.ZodObject<{
2252
2395
  "camera-disabled": "camera-disabled";
2253
2396
  "camera-enabled": "camera-enabled";
2254
2397
  }>>>;
2398
+ systemEventDeliveries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
2399
+ summary: "summary";
2400
+ instant: "instant";
2401
+ }>>>;
2255
2402
  dynamic: z.ZodOptional<z.ZodObject<{
2256
2403
  prefix: z.ZodLiteral<"count_">;
2257
2404
  from: z.ZodLiteral<"classes">;
@@ -2273,8 +2420,8 @@ export declare const NcTemplateVarContextSchema: z.ZodObject<{
2273
2420
  }>;
2274
2421
  kind: z.ZodOptional<z.ZodEnum<{
2275
2422
  sensor: "sensor";
2276
- system: "system";
2277
2423
  detection: "detection";
2424
+ system: "system";
2278
2425
  occupancy: "occupancy";
2279
2426
  sound: "sound";
2280
2427
  alarm: "alarm";
@@ -2328,6 +2475,10 @@ export declare const NcTemplateVarContextSchema: z.ZodObject<{
2328
2475
  "camera-disabled": "camera-disabled";
2329
2476
  "camera-enabled": "camera-enabled";
2330
2477
  }>>>;
2478
+ systemEventDelivery: z.ZodOptional<z.ZodEnum<{
2479
+ summary: "summary";
2480
+ instant: "instant";
2481
+ }>>;
2331
2482
  }, z.core.$strip>;
2332
2483
  export type NcTemplateVarContext = z.infer<typeof NcTemplateVarContextSchema>;
2333
2484
  /** Input to `previewTemplate` — the editor's own context, plus the draft text. */
@@ -2346,8 +2497,8 @@ export declare const NcTemplatePreviewInputSchema: z.ZodObject<{
2346
2497
  }>;
2347
2498
  kind: z.ZodOptional<z.ZodEnum<{
2348
2499
  sensor: "sensor";
2349
- system: "system";
2350
2500
  detection: "detection";
2501
+ system: "system";
2351
2502
  occupancy: "occupancy";
2352
2503
  sound: "sound";
2353
2504
  alarm: "alarm";
@@ -2401,6 +2552,10 @@ export declare const NcTemplatePreviewInputSchema: z.ZodObject<{
2401
2552
  "camera-disabled": "camera-disabled";
2402
2553
  "camera-enabled": "camera-enabled";
2403
2554
  }>>>;
2555
+ systemEventDelivery: z.ZodOptional<z.ZodEnum<{
2556
+ summary: "summary";
2557
+ instant: "instant";
2558
+ }>>;
2404
2559
  }, z.core.$strip>;
2405
2560
  template: z.ZodObject<{
2406
2561
  title: z.ZodOptional<z.ZodString>;
@@ -2421,9 +2576,9 @@ export declare const NcConditionDescriptorSchema: z.ZodObject<{
2421
2576
  audio: "audio";
2422
2577
  class: "class";
2423
2578
  label: "label";
2579
+ zones: "zones";
2424
2580
  device: "device";
2425
2581
  system: "system";
2426
- zones: "zones";
2427
2582
  occupancy: "occupancy";
2428
2583
  scope: "scope";
2429
2584
  schedule: "schedule";
@@ -2735,8 +2890,8 @@ export type NcRuleLastRuns = z.infer<typeof NcRuleLastRunsSchema>;
2735
2890
  * summarising the same silence.
2736
2891
  */
2737
2892
  export declare const NcSnoozeScopeSchema: z.ZodEnum<{
2738
- all: "all";
2739
2893
  device: "device";
2894
+ all: "all";
2740
2895
  rule: "rule";
2741
2896
  }>;
2742
2897
  export type NcSnoozeScope = z.infer<typeof NcSnoozeScopeSchema>;
@@ -2747,8 +2902,8 @@ export type NcSnoozeScope = z.infer<typeof NcSnoozeScopeSchema>;
2747
2902
  */
2748
2903
  export declare const NcSnoozeInputSchema: z.ZodObject<{
2749
2904
  scope: z.ZodEnum<{
2750
- all: "all";
2751
2905
  device: "device";
2906
+ all: "all";
2752
2907
  rule: "rule";
2753
2908
  }>;
2754
2909
  ruleId: z.ZodOptional<z.ZodString>;
@@ -2764,8 +2919,8 @@ export declare const NcSnoozeSchema: z.ZodObject<{
2764
2919
  id: z.ZodString;
2765
2920
  userId: z.ZodString;
2766
2921
  scope: z.ZodEnum<{
2767
- all: "all";
2768
2922
  device: "device";
2923
+ all: "all";
2769
2924
  rule: "rule";
2770
2925
  }>;
2771
2926
  ruleId: z.ZodOptional<z.ZodString>;
@@ -3234,8 +3389,8 @@ export declare const notificationRulesCapability: {
3234
3389
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
3235
3390
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3236
3391
  sensorTransition: z.ZodOptional<z.ZodEnum<{
3237
- raised: "raised";
3238
3392
  cleared: "cleared";
3393
+ raised: "raised";
3239
3394
  }>>;
3240
3395
  packagePhase: z.ZodOptional<z.ZodEnum<{
3241
3396
  both: "both";
@@ -3327,6 +3482,20 @@ export declare const notificationRulesCapability: {
3327
3482
  timezone: z.ZodOptional<z.ZodString>;
3328
3483
  invert: z.ZodOptional<z.ZodBoolean>;
3329
3484
  }, z.core.$strip>>;
3485
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
3486
+ mode: z.ZodLiteral<"instant">;
3487
+ }, z.core.$strip>, z.ZodObject<{
3488
+ mode: z.ZodLiteral<"summary">;
3489
+ schedule: z.ZodObject<{
3490
+ windows: z.ZodArray<z.ZodObject<{
3491
+ days: z.ZodArray<z.ZodNumber>;
3492
+ startMinute: z.ZodNumber;
3493
+ endMinute: z.ZodNumber;
3494
+ }, z.core.$strip>>;
3495
+ timezone: z.ZodOptional<z.ZodString>;
3496
+ invert: z.ZodOptional<z.ZodBoolean>;
3497
+ }, z.core.$strip>;
3498
+ }, z.core.$strip>], "mode">>;
3330
3499
  targets: z.ZodArray<z.ZodObject<{
3331
3500
  targetId: z.ZodString;
3332
3501
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -3517,8 +3686,8 @@ export declare const notificationRulesCapability: {
3517
3686
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
3518
3687
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3519
3688
  sensorTransition: z.ZodOptional<z.ZodEnum<{
3520
- raised: "raised";
3521
3689
  cleared: "cleared";
3690
+ raised: "raised";
3522
3691
  }>>;
3523
3692
  packagePhase: z.ZodOptional<z.ZodEnum<{
3524
3693
  both: "both";
@@ -3610,6 +3779,20 @@ export declare const notificationRulesCapability: {
3610
3779
  timezone: z.ZodOptional<z.ZodString>;
3611
3780
  invert: z.ZodOptional<z.ZodBoolean>;
3612
3781
  }, z.core.$strip>>;
3782
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
3783
+ mode: z.ZodLiteral<"instant">;
3784
+ }, z.core.$strip>, z.ZodObject<{
3785
+ mode: z.ZodLiteral<"summary">;
3786
+ schedule: z.ZodObject<{
3787
+ windows: z.ZodArray<z.ZodObject<{
3788
+ days: z.ZodArray<z.ZodNumber>;
3789
+ startMinute: z.ZodNumber;
3790
+ endMinute: z.ZodNumber;
3791
+ }, z.core.$strip>>;
3792
+ timezone: z.ZodOptional<z.ZodString>;
3793
+ invert: z.ZodOptional<z.ZodBoolean>;
3794
+ }, z.core.$strip>;
3795
+ }, z.core.$strip>], "mode">>;
3613
3796
  targets: z.ZodArray<z.ZodObject<{
3614
3797
  targetId: z.ZodString;
3615
3798
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -3798,8 +3981,8 @@ export declare const notificationRulesCapability: {
3798
3981
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
3799
3982
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3800
3983
  sensorTransition: z.ZodOptional<z.ZodEnum<{
3801
- raised: "raised";
3802
3984
  cleared: "cleared";
3985
+ raised: "raised";
3803
3986
  }>>;
3804
3987
  packagePhase: z.ZodOptional<z.ZodEnum<{
3805
3988
  both: "both";
@@ -3891,6 +4074,20 @@ export declare const notificationRulesCapability: {
3891
4074
  timezone: z.ZodOptional<z.ZodString>;
3892
4075
  invert: z.ZodOptional<z.ZodBoolean>;
3893
4076
  }, z.core.$strip>>;
4077
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
4078
+ mode: z.ZodLiteral<"instant">;
4079
+ }, z.core.$strip>, z.ZodObject<{
4080
+ mode: z.ZodLiteral<"summary">;
4081
+ schedule: z.ZodObject<{
4082
+ windows: z.ZodArray<z.ZodObject<{
4083
+ days: z.ZodArray<z.ZodNumber>;
4084
+ startMinute: z.ZodNumber;
4085
+ endMinute: z.ZodNumber;
4086
+ }, z.core.$strip>>;
4087
+ timezone: z.ZodOptional<z.ZodString>;
4088
+ invert: z.ZodOptional<z.ZodBoolean>;
4089
+ }, z.core.$strip>;
4090
+ }, z.core.$strip>], "mode">>;
3894
4091
  targets: z.ZodArray<z.ZodObject<{
3895
4092
  targetId: z.ZodString;
3896
4093
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -4073,8 +4270,8 @@ export declare const notificationRulesCapability: {
4073
4270
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
4074
4271
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
4075
4272
  sensorTransition: z.ZodOptional<z.ZodEnum<{
4076
- raised: "raised";
4077
4273
  cleared: "cleared";
4274
+ raised: "raised";
4078
4275
  }>>;
4079
4276
  packagePhase: z.ZodOptional<z.ZodEnum<{
4080
4277
  both: "both";
@@ -4166,6 +4363,20 @@ export declare const notificationRulesCapability: {
4166
4363
  timezone: z.ZodOptional<z.ZodString>;
4167
4364
  invert: z.ZodOptional<z.ZodBoolean>;
4168
4365
  }, z.core.$strip>>;
4366
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
4367
+ mode: z.ZodLiteral<"instant">;
4368
+ }, z.core.$strip>, z.ZodObject<{
4369
+ mode: z.ZodLiteral<"summary">;
4370
+ schedule: z.ZodObject<{
4371
+ windows: z.ZodArray<z.ZodObject<{
4372
+ days: z.ZodArray<z.ZodNumber>;
4373
+ startMinute: z.ZodNumber;
4374
+ endMinute: z.ZodNumber;
4375
+ }, z.core.$strip>>;
4376
+ timezone: z.ZodOptional<z.ZodString>;
4377
+ invert: z.ZodOptional<z.ZodBoolean>;
4378
+ }, z.core.$strip>;
4379
+ }, z.core.$strip>], "mode">>;
4169
4380
  targets: z.ZodArray<z.ZodObject<{
4170
4381
  targetId: z.ZodString;
4171
4382
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -4313,6 +4524,20 @@ export declare const notificationRulesCapability: {
4313
4524
  timezone: z.ZodOptional<z.ZodString>;
4314
4525
  invert: z.ZodOptional<z.ZodBoolean>;
4315
4526
  }, z.core.$strip>>>;
4527
+ systemEventDelivery: z.ZodOptional<z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
4528
+ mode: z.ZodLiteral<"instant">;
4529
+ }, z.core.$strip>, z.ZodObject<{
4530
+ mode: z.ZodLiteral<"summary">;
4531
+ schedule: z.ZodObject<{
4532
+ windows: z.ZodArray<z.ZodObject<{
4533
+ days: z.ZodArray<z.ZodNumber>;
4534
+ startMinute: z.ZodNumber;
4535
+ endMinute: z.ZodNumber;
4536
+ }, z.core.$strip>>;
4537
+ timezone: z.ZodOptional<z.ZodString>;
4538
+ invert: z.ZodOptional<z.ZodBoolean>;
4539
+ }, z.core.$strip>;
4540
+ }, z.core.$strip>], "mode">>>;
4316
4541
  targets: z.ZodOptional<z.ZodArray<z.ZodObject<{
4317
4542
  targetId: z.ZodString;
4318
4543
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -4445,8 +4670,8 @@ export declare const notificationRulesCapability: {
4445
4670
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
4446
4671
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
4447
4672
  sensorTransition: z.ZodOptional<z.ZodEnum<{
4448
- raised: "raised";
4449
4673
  cleared: "cleared";
4674
+ raised: "raised";
4450
4675
  }>>;
4451
4676
  packagePhase: z.ZodOptional<z.ZodEnum<{
4452
4677
  both: "both";
@@ -4644,8 +4869,8 @@ export declare const notificationRulesCapability: {
4644
4869
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
4645
4870
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
4646
4871
  sensorTransition: z.ZodOptional<z.ZodEnum<{
4647
- raised: "raised";
4648
4872
  cleared: "cleared";
4873
+ raised: "raised";
4649
4874
  }>>;
4650
4875
  packagePhase: z.ZodOptional<z.ZodEnum<{
4651
4876
  both: "both";
@@ -4737,6 +4962,20 @@ export declare const notificationRulesCapability: {
4737
4962
  timezone: z.ZodOptional<z.ZodString>;
4738
4963
  invert: z.ZodOptional<z.ZodBoolean>;
4739
4964
  }, z.core.$strip>>;
4965
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
4966
+ mode: z.ZodLiteral<"instant">;
4967
+ }, z.core.$strip>, z.ZodObject<{
4968
+ mode: z.ZodLiteral<"summary">;
4969
+ schedule: z.ZodObject<{
4970
+ windows: z.ZodArray<z.ZodObject<{
4971
+ days: z.ZodArray<z.ZodNumber>;
4972
+ startMinute: z.ZodNumber;
4973
+ endMinute: z.ZodNumber;
4974
+ }, z.core.$strip>>;
4975
+ timezone: z.ZodOptional<z.ZodString>;
4976
+ invert: z.ZodOptional<z.ZodBoolean>;
4977
+ }, z.core.$strip>;
4978
+ }, z.core.$strip>], "mode">>;
4740
4979
  targets: z.ZodArray<z.ZodObject<{
4741
4980
  targetId: z.ZodString;
4742
4981
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -5007,8 +5246,8 @@ export declare const notificationRulesCapability: {
5007
5246
  eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
5008
5247
  sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
5009
5248
  sensorTransition: z.ZodOptional<z.ZodEnum<{
5010
- raised: "raised";
5011
5249
  cleared: "cleared";
5250
+ raised: "raised";
5012
5251
  }>>;
5013
5252
  packagePhase: z.ZodOptional<z.ZodEnum<{
5014
5253
  both: "both";
@@ -5100,6 +5339,20 @@ export declare const notificationRulesCapability: {
5100
5339
  timezone: z.ZodOptional<z.ZodString>;
5101
5340
  invert: z.ZodOptional<z.ZodBoolean>;
5102
5341
  }, z.core.$strip>>;
5342
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
5343
+ mode: z.ZodLiteral<"instant">;
5344
+ }, z.core.$strip>, z.ZodObject<{
5345
+ mode: z.ZodLiteral<"summary">;
5346
+ schedule: z.ZodObject<{
5347
+ windows: z.ZodArray<z.ZodObject<{
5348
+ days: z.ZodArray<z.ZodNumber>;
5349
+ startMinute: z.ZodNumber;
5350
+ endMinute: z.ZodNumber;
5351
+ }, z.core.$strip>>;
5352
+ timezone: z.ZodOptional<z.ZodString>;
5353
+ invert: z.ZodOptional<z.ZodBoolean>;
5354
+ }, z.core.$strip>;
5355
+ }, z.core.$strip>], "mode">>;
5103
5356
  targets: z.ZodArray<z.ZodObject<{
5104
5357
  targetId: z.ZodString;
5105
5358
  params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -5238,6 +5491,317 @@ export declare const notificationRulesCapability: {
5238
5491
  label: z.ZodOptional<z.ZodString>;
5239
5492
  }, z.core.$strip>>;
5240
5493
  }, z.core.$strip>, "mutation">;
5494
+ /**
5495
+ * The STATE SUMMARY a system rule would send now (D647) — for a saved rule
5496
+ * or an unsaved draft. Pure: sends nothing, stamps nothing. A MUTATION
5497
+ * only for transport (a whole rule does not belong in a GET URL). Admin,
5498
+ * like `testRule`: it names devices and nodes across the installation.
5499
+ */
5500
+ readonly previewStateSummary: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
5501
+ rule: z.ZodObject<{
5502
+ name: z.ZodString;
5503
+ enabled: z.ZodDefault<z.ZodBoolean>;
5504
+ delivery: z.ZodEnum<{
5505
+ "device-event": "device-event";
5506
+ immediate: "immediate";
5507
+ "track-end": "track-end";
5508
+ "package-event": "package-event";
5509
+ "system-event": "system-event";
5510
+ }>;
5511
+ conditions: z.ZodDefault<z.ZodObject<{
5512
+ deviceState: z.ZodOptional<z.ZodObject<{
5513
+ deviceId: z.ZodNumber;
5514
+ states: z.ZodArray<z.ZodString>;
5515
+ }, z.core.$strip>>;
5516
+ scene: z.ZodOptional<z.ZodObject<{
5517
+ sceneId: z.ZodString;
5518
+ deviceId: z.ZodOptional<z.ZodNumber>;
5519
+ requiredState: z.ZodEnum<{
5520
+ matched: "matched";
5521
+ diverged: "diverged";
5522
+ }>;
5523
+ latched: z.ZodOptional<z.ZodBoolean>;
5524
+ }, z.core.$strip>>;
5525
+ devices: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5526
+ devicesExclude: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5527
+ classes: z.ZodOptional<z.ZodArray<z.ZodString>>;
5528
+ classesExclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
5529
+ minConfidence: z.ZodOptional<z.ZodNumber>;
5530
+ zones: z.ZodOptional<z.ZodObject<{
5531
+ ids: z.ZodArray<z.ZodString>;
5532
+ match: z.ZodDefault<z.ZodEnum<{
5533
+ any: "any";
5534
+ all: "all";
5535
+ }>>;
5536
+ }, z.core.$strip>>;
5537
+ zonesExclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
5538
+ crossing: z.ZodOptional<z.ZodEnum<{
5539
+ any: "any";
5540
+ enter: "enter";
5541
+ exit: "exit";
5542
+ }>>;
5543
+ labelEquals: z.ZodOptional<z.ZodArray<z.ZodString>>;
5544
+ identities: z.ZodOptional<z.ZodArray<z.ZodString>>;
5545
+ plates: z.ZodOptional<z.ZodObject<{
5546
+ values: z.ZodArray<z.ZodString>;
5547
+ maxDistance: z.ZodDefault<z.ZodNumber>;
5548
+ }, z.core.$strip>>;
5549
+ identitiesExclude: z.ZodOptional<z.ZodArray<z.ZodString>>;
5550
+ minImportance: z.ZodOptional<z.ZodNumber>;
5551
+ minDwellSeconds: z.ZodOptional<z.ZodNumber>;
5552
+ source: z.ZodOptional<z.ZodEnum<{
5553
+ sensor: "sensor";
5554
+ any: "any";
5555
+ pipeline: "pipeline";
5556
+ audio: "audio";
5557
+ onboard: "onboard";
5558
+ }>>;
5559
+ minLabelConfidence: z.ZodOptional<z.ZodNumber>;
5560
+ eventTypeTokens: z.ZodOptional<z.ZodArray<z.ZodString>>;
5561
+ sensorKinds: z.ZodOptional<z.ZodArray<z.ZodString>>;
5562
+ sensorTransition: z.ZodOptional<z.ZodEnum<{
5563
+ cleared: "cleared";
5564
+ raised: "raised";
5565
+ }>>;
5566
+ packagePhase: z.ZodOptional<z.ZodEnum<{
5567
+ both: "both";
5568
+ delivered: "delivered";
5569
+ "picked-up": "picked-up";
5570
+ }>>;
5571
+ systemEvent: z.ZodOptional<z.ZodObject<{
5572
+ kinds: z.ZodArray<z.ZodEnum<{
5573
+ "device-disabled": "device-disabled";
5574
+ "device-online": "device-online";
5575
+ "device-offline": "device-offline";
5576
+ "device-enabled": "device-enabled";
5577
+ "device-battery-low": "device-battery-low";
5578
+ "device-battery-normal": "device-battery-normal";
5579
+ "device-consumable-low": "device-consumable-low";
5580
+ "device-consumable-normal": "device-consumable-normal";
5581
+ "device-tank-low": "device-tank-low";
5582
+ "device-tank-full": "device-tank-full";
5583
+ "device-tank-normal": "device-tank-normal";
5584
+ "stream-online": "stream-online";
5585
+ "stream-offline": "stream-offline";
5586
+ "node-online": "node-online";
5587
+ "node-offline": "node-offline";
5588
+ "node-inference-unavailable": "node-inference-unavailable";
5589
+ "detection-blind": "detection-blind";
5590
+ "addon-crash-loop": "addon-crash-loop";
5591
+ "addon-update-available": "addon-update-available";
5592
+ "server-update-available": "server-update-available";
5593
+ "wrapper-update-available": "wrapper-update-available";
5594
+ "alarm-triggered": "alarm-triggered";
5595
+ "alarm-armed": "alarm-armed";
5596
+ "alarm-disarmed": "alarm-disarmed";
5597
+ "alarm-arming": "alarm-arming";
5598
+ "alarm-arm-refused": "alarm-arm-refused";
5599
+ "alarm-pending": "alarm-pending";
5600
+ "alarm-rearmed": "alarm-rearmed";
5601
+ "alarm-sensor-bypass": "alarm-sensor-bypass";
5602
+ "alarm-check-failed": "alarm-check-failed";
5603
+ "addon-updated": "addon-updated";
5604
+ "server-updated": "server-updated";
5605
+ "export-completed": "export-completed";
5606
+ "backup-completed": "backup-completed";
5607
+ "camera-online": "camera-online";
5608
+ "camera-offline": "camera-offline";
5609
+ "camera-disabled": "camera-disabled";
5610
+ "camera-enabled": "camera-enabled";
5611
+ }>>;
5612
+ deviceIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5613
+ deviceTypes: z.ZodOptional<z.ZodArray<z.ZodString>>;
5614
+ excludeDeviceIds: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5615
+ nodeIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
5616
+ packageNames: z.ZodOptional<z.ZodArray<z.ZodString>>;
5617
+ consumableLowPercent: z.ZodOptional<z.ZodNumber>;
5618
+ }, z.core.$strip>>;
5619
+ customZones: z.ZodOptional<z.ZodArray<z.ZodObject<{
5620
+ kind: z.ZodLiteral<"polygon">;
5621
+ points: z.ZodArray<z.ZodObject<{
5622
+ x: z.ZodNumber;
5623
+ y: z.ZodNumber;
5624
+ }, z.core.$strip>>;
5625
+ }, z.core.$strip>>>;
5626
+ occupancy: z.ZodOptional<z.ZodObject<{
5627
+ zoneId: z.ZodOptional<z.ZodString>;
5628
+ className: z.ZodOptional<z.ZodString>;
5629
+ op: z.ZodDefault<z.ZodEnum<{
5630
+ "became-occupied": "became-occupied";
5631
+ "became-free": "became-free";
5632
+ ">=": ">=";
5633
+ "<=": "<=";
5634
+ }>>;
5635
+ count: z.ZodDefault<z.ZodNumber>;
5636
+ sustainSeconds: z.ZodDefault<z.ZodNumber>;
5637
+ }, z.core.$strip>>;
5638
+ audio: z.ZodOptional<z.ZodObject<{
5639
+ labels: z.ZodOptional<z.ZodArray<z.ZodString>>;
5640
+ dbThreshold: z.ZodOptional<z.ZodNumber>;
5641
+ hitPercent: z.ZodDefault<z.ZodNumber>;
5642
+ samplingSeconds: z.ZodDefault<z.ZodNumber>;
5643
+ confirmHits: z.ZodOptional<z.ZodNumber>;
5644
+ confirmWindowSec: z.ZodOptional<z.ZodNumber>;
5645
+ }, z.core.$strip>>;
5646
+ }, z.core.$strip>>;
5647
+ schedule: z.ZodOptional<z.ZodObject<{
5648
+ windows: z.ZodArray<z.ZodObject<{
5649
+ days: z.ZodArray<z.ZodNumber>;
5650
+ startMinute: z.ZodNumber;
5651
+ endMinute: z.ZodNumber;
5652
+ }, z.core.$strip>>;
5653
+ timezone: z.ZodOptional<z.ZodString>;
5654
+ invert: z.ZodOptional<z.ZodBoolean>;
5655
+ }, z.core.$strip>>;
5656
+ systemEventDelivery: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
5657
+ mode: z.ZodLiteral<"instant">;
5658
+ }, z.core.$strip>, z.ZodObject<{
5659
+ mode: z.ZodLiteral<"summary">;
5660
+ schedule: z.ZodObject<{
5661
+ windows: z.ZodArray<z.ZodObject<{
5662
+ days: z.ZodArray<z.ZodNumber>;
5663
+ startMinute: z.ZodNumber;
5664
+ endMinute: z.ZodNumber;
5665
+ }, z.core.$strip>>;
5666
+ timezone: z.ZodOptional<z.ZodString>;
5667
+ invert: z.ZodOptional<z.ZodBoolean>;
5668
+ }, z.core.$strip>;
5669
+ }, z.core.$strip>], "mode">>;
5670
+ targets: z.ZodArray<z.ZodObject<{
5671
+ targetId: z.ZodString;
5672
+ params: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5673
+ }, z.core.$strip>>;
5674
+ targetUsers: z.ZodOptional<z.ZodArray<z.ZodString>>;
5675
+ media: z.ZodDefault<z.ZodObject<{
5676
+ attach: z.ZodDefault<z.ZodEnum<{
5677
+ none: "none";
5678
+ keyFrame: "keyFrame";
5679
+ best: "best";
5680
+ "best-matching": "best-matching";
5681
+ }>>;
5682
+ frame: z.ZodOptional<z.ZodEnum<{
5683
+ full: "full";
5684
+ boxed: "boxed";
5685
+ cropped: "cropped";
5686
+ }>>;
5687
+ zoneCrop: z.ZodOptional<z.ZodBoolean>;
5688
+ gif: z.ZodOptional<z.ZodBoolean>;
5689
+ clip: z.ZodOptional<z.ZodBoolean>;
5690
+ clipPreRollSec: z.ZodOptional<z.ZodNumber>;
5691
+ clipPostRollSec: z.ZodOptional<z.ZodNumber>;
5692
+ clipSpeed: z.ZodOptional<z.ZodNumber>;
5693
+ profile: z.ZodOptional<z.ZodEnum<{
5694
+ high: "high";
5695
+ mid: "mid";
5696
+ low: "low";
5697
+ }>>;
5698
+ linkedCameras: z.ZodOptional<z.ZodEnum<{
5699
+ mosaic: "mosaic";
5700
+ each: "each";
5701
+ }>>;
5702
+ }, z.core.$strip>>;
5703
+ throttle: z.ZodDefault<z.ZodObject<{
5704
+ cooldownSec: z.ZodDefault<z.ZodNumber>;
5705
+ scope: z.ZodDefault<z.ZodEnum<{
5706
+ rule: "rule";
5707
+ "rule-device": "rule-device";
5708
+ }>>;
5709
+ granularity: z.ZodOptional<z.ZodEnum<{
5710
+ shared: "shared";
5711
+ "per-class": "per-class";
5712
+ }>>;
5713
+ }, z.core.$strip>>;
5714
+ template: z.ZodOptional<z.ZodObject<{
5715
+ title: z.ZodOptional<z.ZodString>;
5716
+ body: z.ZodOptional<z.ZodString>;
5717
+ }, z.core.$strip>>;
5718
+ priority: z.ZodDefault<z.ZodNumber>;
5719
+ ownerUserId: z.ZodOptional<z.ZodString>;
5720
+ snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
5721
+ snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5722
+ actions: z.ZodOptional<z.ZodObject<{
5723
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
5724
+ name: z.ZodString;
5725
+ enabled: z.ZodBoolean;
5726
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
5727
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5728
+ kind: z.ZodLiteral<"wait">;
5729
+ seconds: z.ZodNumber;
5730
+ }, z.core.$strip>, z.ZodObject<{
5731
+ kind: z.ZodLiteral<"cap">;
5732
+ deviceId: z.ZodNumber;
5733
+ cap: z.ZodString;
5734
+ method: z.ZodString;
5735
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5736
+ }, z.core.$strip>], "kind">>;
5737
+ }, z.core.$strip>>>;
5738
+ buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
5739
+ id: z.ZodString;
5740
+ label: z.ZodString;
5741
+ sequence: z.ZodString;
5742
+ icon: z.ZodOptional<z.ZodEnum<{
5743
+ camera: "camera";
5744
+ light: "light";
5745
+ lock: "lock";
5746
+ view: "view";
5747
+ arm: "arm";
5748
+ disarm: "disarm";
5749
+ dismiss: "dismiss";
5750
+ open: "open";
5751
+ close: "close";
5752
+ unlock: "unlock";
5753
+ play: "play";
5754
+ acknowledge: "acknowledge";
5755
+ silence: "silence";
5756
+ snooze: "snooze";
5757
+ "arm-home": "arm-home";
5758
+ "arm-away": "arm-away";
5759
+ "arm-night": "arm-night";
5760
+ alert: "alert";
5761
+ }>>;
5762
+ destructive: z.ZodOptional<z.ZodBoolean>;
5763
+ }, z.core.$strip>>>;
5764
+ }, z.core.$strip>>;
5765
+ confirm: z.ZodOptional<z.ZodObject<{
5766
+ enabled: z.ZodDefault<z.ZodBoolean>;
5767
+ profileId: z.ZodOptional<z.ZodString>;
5768
+ prompt: z.ZodOptional<z.ZodString>;
5769
+ expect: z.ZodOptional<z.ZodObject<{
5770
+ op: z.ZodEnum<{
5771
+ ">=": ">=";
5772
+ "<=": "<=";
5773
+ ">": ">";
5774
+ "<": "<";
5775
+ "==": "==";
5776
+ }>;
5777
+ count: z.ZodNumber;
5778
+ }, z.core.$strip>>;
5779
+ timeoutMs: z.ZodDefault<z.ZodNumber>;
5780
+ onTimeout: z.ZodDefault<z.ZodEnum<{
5781
+ fire: "fire";
5782
+ suppress: "suppress";
5783
+ }>>;
5784
+ maxImagePx: z.ZodDefault<z.ZodNumber>;
5785
+ }, z.core.$strip>>;
5786
+ waitForEnhancement: z.ZodOptional<z.ZodBoolean>;
5787
+ groupIdleSec: z.ZodOptional<z.ZodNumber>;
5788
+ }, z.core.$strip>;
5789
+ }, z.core.$strip>, z.ZodObject<{
5790
+ empty: z.ZodBoolean;
5791
+ count: z.ZodNumber;
5792
+ text: z.ZodString;
5793
+ sections: z.ZodArray<z.ZodObject<{
5794
+ id: z.ZodString;
5795
+ status: z.ZodEnum<{
5796
+ read: "read";
5797
+ unavailable: "unavailable";
5798
+ }>;
5799
+ items: z.ZodNumber;
5800
+ reason: z.ZodOptional<z.ZodString>;
5801
+ }, z.core.$strip>>;
5802
+ dropped: z.ZodRecord<z.ZodString, z.ZodNumber>;
5803
+ excludedGroups: z.ZodArray<z.ZodString>;
5804
+ }, z.core.$strip>, "mutation">;
5241
5805
  /**
5242
5806
  * The machine-readable condition surface a rule editor renders from, plus
5243
5807
  * the picker VOCABULARY those conditions draw on.
@@ -5256,9 +5820,9 @@ export declare const notificationRulesCapability: {
5256
5820
  audio: "audio";
5257
5821
  class: "class";
5258
5822
  label: "label";
5823
+ zones: "zones";
5259
5824
  device: "device";
5260
5825
  system: "system";
5261
- zones: "zones";
5262
5826
  occupancy: "occupancy";
5263
5827
  scope: "scope";
5264
5828
  schedule: "schedule";
@@ -5337,8 +5901,8 @@ export declare const notificationRulesCapability: {
5337
5901
  example: z.ZodString;
5338
5902
  group: z.ZodEnum<{
5339
5903
  sensor: "sensor";
5340
- system: "system";
5341
5904
  subject: "subject";
5905
+ system: "system";
5342
5906
  occupancy: "occupancy";
5343
5907
  ai: "ai";
5344
5908
  time: "time";
@@ -5360,8 +5924,8 @@ export declare const notificationRulesCapability: {
5360
5924
  }>>>;
5361
5925
  kinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
5362
5926
  sensor: "sensor";
5363
- system: "system";
5364
5927
  detection: "detection";
5928
+ system: "system";
5365
5929
  occupancy: "occupancy";
5366
5930
  sound: "sound";
5367
5931
  }>>>;
@@ -5412,6 +5976,10 @@ export declare const notificationRulesCapability: {
5412
5976
  "camera-disabled": "camera-disabled";
5413
5977
  "camera-enabled": "camera-enabled";
5414
5978
  }>>>;
5979
+ systemEventDeliveries: z.ZodOptional<z.ZodArray<z.ZodEnum<{
5980
+ summary: "summary";
5981
+ instant: "instant";
5982
+ }>>>;
5415
5983
  dynamic: z.ZodOptional<z.ZodObject<{
5416
5984
  prefix: z.ZodLiteral<"count_">;
5417
5985
  from: z.ZodLiteral<"classes">;
@@ -5439,8 +6007,8 @@ export declare const notificationRulesCapability: {
5439
6007
  }>;
5440
6008
  kind: z.ZodOptional<z.ZodEnum<{
5441
6009
  sensor: "sensor";
5442
- system: "system";
5443
6010
  detection: "detection";
6011
+ system: "system";
5444
6012
  occupancy: "occupancy";
5445
6013
  sound: "sound";
5446
6014
  alarm: "alarm";
@@ -5494,6 +6062,10 @@ export declare const notificationRulesCapability: {
5494
6062
  "camera-disabled": "camera-disabled";
5495
6063
  "camera-enabled": "camera-enabled";
5496
6064
  }>>>;
6065
+ systemEventDelivery: z.ZodOptional<z.ZodEnum<{
6066
+ summary: "summary";
6067
+ instant: "instant";
6068
+ }>>;
5497
6069
  }, z.core.$strip>;
5498
6070
  template: z.ZodObject<{
5499
6071
  title: z.ZodOptional<z.ZodString>;
@@ -5665,8 +6237,8 @@ export declare const notificationRulesCapability: {
5665
6237
  id: z.ZodString;
5666
6238
  userId: z.ZodString;
5667
6239
  scope: z.ZodEnum<{
5668
- all: "all";
5669
6240
  device: "device";
6241
+ all: "all";
5670
6242
  rule: "rule";
5671
6243
  }>;
5672
6244
  ruleId: z.ZodOptional<z.ZodString>;
@@ -5692,8 +6264,8 @@ export declare const notificationRulesCapability: {
5692
6264
  readonly createSnooze: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
5693
6265
  snooze: z.ZodObject<{
5694
6266
  scope: z.ZodEnum<{
5695
- all: "all";
5696
6267
  device: "device";
6268
+ all: "all";
5697
6269
  rule: "rule";
5698
6270
  }>;
5699
6271
  ruleId: z.ZodOptional<z.ZodString>;
@@ -5708,8 +6280,8 @@ export declare const notificationRulesCapability: {
5708
6280
  id: z.ZodString;
5709
6281
  userId: z.ZodString;
5710
6282
  scope: z.ZodEnum<{
5711
- all: "all";
5712
6283
  device: "device";
6284
+ all: "all";
5713
6285
  rule: "rule";
5714
6286
  }>;
5715
6287
  ruleId: z.ZodOptional<z.ZodString>;