@camstack/types 1.2.297 → 1.2.299

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.
@@ -491,15 +491,35 @@ export declare const NcRuleActionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
491
491
  }, z.core.$strip>], "kind">;
492
492
  export type NcRuleAction = z.infer<typeof NcRuleActionSchema>;
493
493
  /**
494
- * A named, ordered run of steps with its own throttle.
494
+ * A named, ordered run of steps shared across rules, with its own throttle.
495
495
  *
496
- * `minDelaySec` exists because a noisy rule otherwise hammers a physical
497
- * actuator — the rule's own cooldown governs NOTIFICATIONS, which is a
498
- * different budget from "how often may this gate actually open".
496
+ * Sequences live in the notification centre's sequence store — never inline on
497
+ * a rule. A rule binds to one by id ({@link NcActionBindingSchema}), and a
498
+ * button names one the same way. `minDelaySec` exists because a noisy rule
499
+ * otherwise hammers a physical actuator — the rule's own cooldown governs
500
+ * NOTIFICATIONS, which is a different budget from "how often may this gate
501
+ * actually open". The throttle key is the sequence id, so two rules sharing
502
+ * one sequence share its budget.
499
503
  */
500
- export declare const NcRuleActionSequenceSchema: z.ZodObject<{
504
+ export declare const NcSharedSequenceSchema: z.ZodObject<{
505
+ id: z.ZodString;
506
+ name: z.ZodString;
507
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
508
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
509
+ kind: z.ZodLiteral<"wait">;
510
+ seconds: z.ZodNumber;
511
+ }, z.core.$strip>, z.ZodObject<{
512
+ kind: z.ZodLiteral<"cap">;
513
+ deviceId: z.ZodNumber;
514
+ cap: z.ZodString;
515
+ method: z.ZodString;
516
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
517
+ }, z.core.$strip>], "kind">>;
518
+ }, z.core.$strip>;
519
+ export type NcSharedSequence = z.infer<typeof NcSharedSequenceSchema>;
520
+ /** Create / update body — the id is minted by the provider. */
521
+ export declare const NcSharedSequenceInputSchema: z.ZodObject<{
501
522
  name: z.ZodString;
502
- enabled: z.ZodBoolean;
503
523
  minDelaySec: z.ZodOptional<z.ZodNumber>;
504
524
  actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
505
525
  kind: z.ZodLiteral<"wait">;
@@ -512,9 +532,52 @@ export declare const NcRuleActionSequenceSchema: z.ZodObject<{
512
532
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
513
533
  }, z.core.$strip>], "kind">>;
514
534
  }, z.core.$strip>;
515
- export type NcRuleActionSequence = z.infer<typeof NcRuleActionSequenceSchema>;
535
+ export type NcSharedSequenceInput = z.infer<typeof NcSharedSequenceInputSchema>;
536
+ /**
537
+ * What one hook slot may run: a shared sequence, or a single step authored
538
+ * inline ("Do").
539
+ *
540
+ * A button may ONLY name a sequence — a one-shot Do on a public callback would
541
+ * be a parallel actuation vocabulary with no throttle and no shared authoring
542
+ * surface.
543
+ */
544
+ export declare const NcActionBindingSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
545
+ kind: z.ZodLiteral<"sequence">;
546
+ sequenceId: z.ZodString;
547
+ }, z.core.$strip>, z.ZodObject<{
548
+ kind: z.ZodLiteral<"do">;
549
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
550
+ kind: z.ZodLiteral<"wait">;
551
+ seconds: z.ZodNumber;
552
+ }, z.core.$strip>, z.ZodObject<{
553
+ kind: z.ZodLiteral<"cap">;
554
+ deviceId: z.ZodNumber;
555
+ cap: z.ZodString;
556
+ method: z.ZodString;
557
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
558
+ }, z.core.$strip>], "kind">;
559
+ }, z.core.$strip>], "kind">;
560
+ export type NcActionBinding = z.infer<typeof NcActionBindingSchema>;
561
+ /** Bindings on one hook edge. Cap keeps a slot from becoming a second sequence editor. */
562
+ export declare const NcHookBindingsSchema: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
563
+ kind: z.ZodLiteral<"sequence">;
564
+ sequenceId: z.ZodString;
565
+ }, z.core.$strip>, z.ZodObject<{
566
+ kind: z.ZodLiteral<"do">;
567
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
568
+ kind: z.ZodLiteral<"wait">;
569
+ seconds: z.ZodNumber;
570
+ }, z.core.$strip>, z.ZodObject<{
571
+ kind: z.ZodLiteral<"cap">;
572
+ deviceId: z.ZodNumber;
573
+ cap: z.ZodString;
574
+ method: z.ZodString;
575
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
576
+ }, z.core.$strip>], "kind">;
577
+ }, z.core.$strip>], "kind">>;
578
+ export type NcHookBindings = z.infer<typeof NcHookBindingsSchema>;
516
579
  /**
517
- * One button carried by the notification, running a named sequence on tap.
580
+ * One button carried by the notification, running a shared sequence on tap.
518
581
  *
519
582
  * **Read this before adding a button that does something physical.** The tap
520
583
  * arrives over a link that travelled through third-party infrastructure — ntfy,
@@ -528,7 +591,7 @@ export type NcRuleActionSequence = z.infer<typeof NcRuleActionSequenceSchema>;
528
591
  export declare const NcRuleNotificationButtonSchema: z.ZodObject<{
529
592
  id: z.ZodString;
530
593
  label: z.ZodString;
531
- sequence: z.ZodString;
594
+ sequenceId: z.ZodString;
532
595
  icon: z.ZodOptional<z.ZodEnum<{
533
596
  camera: "camera";
534
597
  light: "light";
@@ -553,19 +616,22 @@ export declare const NcRuleNotificationButtonSchema: z.ZodObject<{
553
616
  }, z.core.$strip>;
554
617
  export type NcRuleNotificationButton = z.infer<typeof NcRuleNotificationButtonSchema>;
555
618
  /**
556
- * Sequences a rule runs, by hook point.
619
+ * What a rule runs, by hook edge.
557
620
  *
558
- * ONLY `onTrigger` is here, deliberately. The reference also has activation /
559
- * deactivation / reset / post-generation hooks, and they are wanted — but this
560
- * repo's expensive failure mode is declaring a surface nothing produces, so a
561
- * hook appears here in the same change that produces its edge, never before.
621
+ * Each hook appears here only with an edge that produces it:
622
+ *
623
+ * - `onActivation` / `onDeactivation` — `setRuleEnabled`
624
+ * - `onTrigger` — a positive/raised match
625
+ * - `onTriggerOff` — a clear/leave match (`sensorRaised === false`, occupancy
626
+ * leave). A delivery with no clear edge never produces this hook.
562
627
  */
563
628
  export declare const NcRuleActionsSchema: z.ZodObject<{
564
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
565
- name: z.ZodString;
566
- enabled: z.ZodBoolean;
567
- minDelaySec: z.ZodOptional<z.ZodNumber>;
568
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
629
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
630
+ kind: z.ZodLiteral<"sequence">;
631
+ sequenceId: z.ZodString;
632
+ }, z.core.$strip>, z.ZodObject<{
633
+ kind: z.ZodLiteral<"do">;
634
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
569
635
  kind: z.ZodLiteral<"wait">;
570
636
  seconds: z.ZodNumber;
571
637
  }, z.core.$strip>, z.ZodObject<{
@@ -574,12 +640,60 @@ export declare const NcRuleActionsSchema: z.ZodObject<{
574
640
  cap: z.ZodString;
575
641
  method: z.ZodString;
576
642
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
577
- }, z.core.$strip>], "kind">>;
578
- }, z.core.$strip>>>;
643
+ }, z.core.$strip>], "kind">;
644
+ }, z.core.$strip>], "kind">>>;
645
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
646
+ kind: z.ZodLiteral<"sequence">;
647
+ sequenceId: z.ZodString;
648
+ }, z.core.$strip>, z.ZodObject<{
649
+ kind: z.ZodLiteral<"do">;
650
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
651
+ kind: z.ZodLiteral<"wait">;
652
+ seconds: z.ZodNumber;
653
+ }, z.core.$strip>, z.ZodObject<{
654
+ kind: z.ZodLiteral<"cap">;
655
+ deviceId: z.ZodNumber;
656
+ cap: z.ZodString;
657
+ method: z.ZodString;
658
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
659
+ }, z.core.$strip>], "kind">;
660
+ }, z.core.$strip>], "kind">>>;
661
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
662
+ kind: z.ZodLiteral<"sequence">;
663
+ sequenceId: z.ZodString;
664
+ }, z.core.$strip>, z.ZodObject<{
665
+ kind: z.ZodLiteral<"do">;
666
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
667
+ kind: z.ZodLiteral<"wait">;
668
+ seconds: z.ZodNumber;
669
+ }, z.core.$strip>, z.ZodObject<{
670
+ kind: z.ZodLiteral<"cap">;
671
+ deviceId: z.ZodNumber;
672
+ cap: z.ZodString;
673
+ method: z.ZodString;
674
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
675
+ }, z.core.$strip>], "kind">;
676
+ }, z.core.$strip>], "kind">>>;
677
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
678
+ kind: z.ZodLiteral<"sequence">;
679
+ sequenceId: z.ZodString;
680
+ }, z.core.$strip>, z.ZodObject<{
681
+ kind: z.ZodLiteral<"do">;
682
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
683
+ kind: z.ZodLiteral<"wait">;
684
+ seconds: z.ZodNumber;
685
+ }, z.core.$strip>, z.ZodObject<{
686
+ kind: z.ZodLiteral<"cap">;
687
+ deviceId: z.ZodNumber;
688
+ cap: z.ZodString;
689
+ method: z.ZodString;
690
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
691
+ }, z.core.$strip>], "kind">;
692
+ }, z.core.$strip>], "kind">>>;
579
693
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
580
694
  id: z.ZodString;
581
695
  label: z.ZodString;
582
- sequence: z.ZodString;
696
+ sequenceId: z.ZodString;
583
697
  icon: z.ZodOptional<z.ZodEnum<{
584
698
  camera: "camera";
585
699
  light: "light";
@@ -604,6 +718,45 @@ export declare const NcRuleActionsSchema: z.ZodObject<{
604
718
  }, z.core.$strip>>>;
605
719
  }, z.core.$strip>;
606
720
  export type NcRuleActions = z.infer<typeof NcRuleActionsSchema>;
721
+ /**
722
+ * @deprecated Legacy inline sequence shape (pre shared-sequence store). Kept
723
+ * only so boot migration / tests can recognise and rewrite persisted rows.
724
+ * New code must use {@link NcSharedSequence} + {@link NcActionBinding}.
725
+ */
726
+ export declare const NcLegacyRuleActionSequenceSchema: z.ZodObject<{
727
+ name: z.ZodString;
728
+ enabled: z.ZodBoolean;
729
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
730
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
731
+ kind: z.ZodLiteral<"wait">;
732
+ seconds: z.ZodNumber;
733
+ }, z.core.$strip>, z.ZodObject<{
734
+ kind: z.ZodLiteral<"cap">;
735
+ deviceId: z.ZodNumber;
736
+ cap: z.ZodString;
737
+ method: z.ZodString;
738
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
739
+ }, z.core.$strip>], "kind">>;
740
+ }, z.core.$strip>;
741
+ export type NcLegacyRuleActionSequence = z.infer<typeof NcLegacyRuleActionSequenceSchema>;
742
+ /** @deprecated Alias kept for call sites mid-migration; prefer {@link NcSharedSequence}. */
743
+ export type NcRuleActionSequence = NcLegacyRuleActionSequence;
744
+ /** @deprecated */
745
+ export declare const NcRuleActionSequenceSchema: z.ZodObject<{
746
+ name: z.ZodString;
747
+ enabled: z.ZodBoolean;
748
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
749
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
750
+ kind: z.ZodLiteral<"wait">;
751
+ seconds: z.ZodNumber;
752
+ }, z.core.$strip>, z.ZodObject<{
753
+ kind: z.ZodLiteral<"cap">;
754
+ deviceId: z.ZodNumber;
755
+ cap: z.ZodString;
756
+ method: z.ZodString;
757
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
758
+ }, z.core.$strip>], "kind">>;
759
+ }, z.core.$strip>;
607
760
  /**
608
761
  * "This rule applies only while `deviceId` is in one of `states`."
609
762
  *
@@ -1240,11 +1393,12 @@ export declare const NcRuleInputSchema: z.ZodObject<{
1240
1393
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
1241
1394
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
1242
1395
  actions: z.ZodOptional<z.ZodObject<{
1243
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
1244
- name: z.ZodString;
1245
- enabled: z.ZodBoolean;
1246
- minDelaySec: z.ZodOptional<z.ZodNumber>;
1247
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1396
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1397
+ kind: z.ZodLiteral<"sequence">;
1398
+ sequenceId: z.ZodString;
1399
+ }, z.core.$strip>, z.ZodObject<{
1400
+ kind: z.ZodLiteral<"do">;
1401
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1248
1402
  kind: z.ZodLiteral<"wait">;
1249
1403
  seconds: z.ZodNumber;
1250
1404
  }, z.core.$strip>, z.ZodObject<{
@@ -1253,12 +1407,60 @@ export declare const NcRuleInputSchema: z.ZodObject<{
1253
1407
  cap: z.ZodString;
1254
1408
  method: z.ZodString;
1255
1409
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1256
- }, z.core.$strip>], "kind">>;
1257
- }, z.core.$strip>>>;
1410
+ }, z.core.$strip>], "kind">;
1411
+ }, z.core.$strip>], "kind">>>;
1412
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1413
+ kind: z.ZodLiteral<"sequence">;
1414
+ sequenceId: z.ZodString;
1415
+ }, z.core.$strip>, z.ZodObject<{
1416
+ kind: z.ZodLiteral<"do">;
1417
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1418
+ kind: z.ZodLiteral<"wait">;
1419
+ seconds: z.ZodNumber;
1420
+ }, z.core.$strip>, z.ZodObject<{
1421
+ kind: z.ZodLiteral<"cap">;
1422
+ deviceId: z.ZodNumber;
1423
+ cap: z.ZodString;
1424
+ method: z.ZodString;
1425
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1426
+ }, z.core.$strip>], "kind">;
1427
+ }, z.core.$strip>], "kind">>>;
1428
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1429
+ kind: z.ZodLiteral<"sequence">;
1430
+ sequenceId: z.ZodString;
1431
+ }, z.core.$strip>, z.ZodObject<{
1432
+ kind: z.ZodLiteral<"do">;
1433
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1434
+ kind: z.ZodLiteral<"wait">;
1435
+ seconds: z.ZodNumber;
1436
+ }, z.core.$strip>, z.ZodObject<{
1437
+ kind: z.ZodLiteral<"cap">;
1438
+ deviceId: z.ZodNumber;
1439
+ cap: z.ZodString;
1440
+ method: z.ZodString;
1441
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1442
+ }, z.core.$strip>], "kind">;
1443
+ }, z.core.$strip>], "kind">>>;
1444
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1445
+ kind: z.ZodLiteral<"sequence">;
1446
+ sequenceId: z.ZodString;
1447
+ }, z.core.$strip>, z.ZodObject<{
1448
+ kind: z.ZodLiteral<"do">;
1449
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1450
+ kind: z.ZodLiteral<"wait">;
1451
+ seconds: z.ZodNumber;
1452
+ }, z.core.$strip>, z.ZodObject<{
1453
+ kind: z.ZodLiteral<"cap">;
1454
+ deviceId: z.ZodNumber;
1455
+ cap: z.ZodString;
1456
+ method: z.ZodString;
1457
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1458
+ }, z.core.$strip>], "kind">;
1459
+ }, z.core.$strip>], "kind">>>;
1258
1460
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
1259
1461
  id: z.ZodString;
1260
1462
  label: z.ZodString;
1261
- sequence: z.ZodString;
1463
+ sequenceId: z.ZodString;
1262
1464
  icon: z.ZodOptional<z.ZodEnum<{
1263
1465
  camera: "camera";
1264
1466
  light: "light";
@@ -1364,11 +1566,12 @@ export declare const NcRulePatchSchema: z.ZodObject<{
1364
1566
  snoozeAllowGlobal: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1365
1567
  snoozeOptions: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodNumber>>>;
1366
1568
  actions: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1367
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
1368
- name: z.ZodString;
1369
- enabled: z.ZodBoolean;
1370
- minDelaySec: z.ZodOptional<z.ZodNumber>;
1371
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1569
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1570
+ kind: z.ZodLiteral<"sequence">;
1571
+ sequenceId: z.ZodString;
1572
+ }, z.core.$strip>, z.ZodObject<{
1573
+ kind: z.ZodLiteral<"do">;
1574
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1372
1575
  kind: z.ZodLiteral<"wait">;
1373
1576
  seconds: z.ZodNumber;
1374
1577
  }, z.core.$strip>, z.ZodObject<{
@@ -1377,12 +1580,60 @@ export declare const NcRulePatchSchema: z.ZodObject<{
1377
1580
  cap: z.ZodString;
1378
1581
  method: z.ZodString;
1379
1582
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1380
- }, z.core.$strip>], "kind">>;
1381
- }, z.core.$strip>>>;
1583
+ }, z.core.$strip>], "kind">;
1584
+ }, z.core.$strip>], "kind">>>;
1585
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1586
+ kind: z.ZodLiteral<"sequence">;
1587
+ sequenceId: z.ZodString;
1588
+ }, z.core.$strip>, z.ZodObject<{
1589
+ kind: z.ZodLiteral<"do">;
1590
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1591
+ kind: z.ZodLiteral<"wait">;
1592
+ seconds: z.ZodNumber;
1593
+ }, z.core.$strip>, z.ZodObject<{
1594
+ kind: z.ZodLiteral<"cap">;
1595
+ deviceId: z.ZodNumber;
1596
+ cap: z.ZodString;
1597
+ method: z.ZodString;
1598
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1599
+ }, z.core.$strip>], "kind">;
1600
+ }, z.core.$strip>], "kind">>>;
1601
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1602
+ kind: z.ZodLiteral<"sequence">;
1603
+ sequenceId: z.ZodString;
1604
+ }, z.core.$strip>, z.ZodObject<{
1605
+ kind: z.ZodLiteral<"do">;
1606
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1607
+ kind: z.ZodLiteral<"wait">;
1608
+ seconds: z.ZodNumber;
1609
+ }, z.core.$strip>, z.ZodObject<{
1610
+ kind: z.ZodLiteral<"cap">;
1611
+ deviceId: z.ZodNumber;
1612
+ cap: z.ZodString;
1613
+ method: z.ZodString;
1614
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1615
+ }, z.core.$strip>], "kind">;
1616
+ }, z.core.$strip>], "kind">>>;
1617
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1618
+ kind: z.ZodLiteral<"sequence">;
1619
+ sequenceId: z.ZodString;
1620
+ }, z.core.$strip>, z.ZodObject<{
1621
+ kind: z.ZodLiteral<"do">;
1622
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1623
+ kind: z.ZodLiteral<"wait">;
1624
+ seconds: z.ZodNumber;
1625
+ }, z.core.$strip>, z.ZodObject<{
1626
+ kind: z.ZodLiteral<"cap">;
1627
+ deviceId: z.ZodNumber;
1628
+ cap: z.ZodString;
1629
+ method: z.ZodString;
1630
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1631
+ }, z.core.$strip>], "kind">;
1632
+ }, z.core.$strip>], "kind">>>;
1382
1633
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
1383
1634
  id: z.ZodString;
1384
1635
  label: z.ZodString;
1385
- sequence: z.ZodString;
1636
+ sequenceId: z.ZodString;
1386
1637
  icon: z.ZodOptional<z.ZodEnum<{
1387
1638
  camera: "camera";
1388
1639
  light: "light";
@@ -1696,11 +1947,12 @@ export declare const NcRuleUpdateInputSchema: z.ZodObject<{
1696
1947
  snoozeAllowGlobal: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
1697
1948
  snoozeOptions: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodNumber>>>;
1698
1949
  actions: z.ZodOptional<z.ZodOptional<z.ZodObject<{
1699
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
1700
- name: z.ZodString;
1701
- enabled: z.ZodBoolean;
1702
- minDelaySec: z.ZodOptional<z.ZodNumber>;
1703
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1950
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1951
+ kind: z.ZodLiteral<"sequence">;
1952
+ sequenceId: z.ZodString;
1953
+ }, z.core.$strip>, z.ZodObject<{
1954
+ kind: z.ZodLiteral<"do">;
1955
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1704
1956
  kind: z.ZodLiteral<"wait">;
1705
1957
  seconds: z.ZodNumber;
1706
1958
  }, z.core.$strip>, z.ZodObject<{
@@ -1709,12 +1961,60 @@ export declare const NcRuleUpdateInputSchema: z.ZodObject<{
1709
1961
  cap: z.ZodString;
1710
1962
  method: z.ZodString;
1711
1963
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1712
- }, z.core.$strip>], "kind">>;
1713
- }, z.core.$strip>>>;
1964
+ }, z.core.$strip>], "kind">;
1965
+ }, z.core.$strip>], "kind">>>;
1966
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1967
+ kind: z.ZodLiteral<"sequence">;
1968
+ sequenceId: z.ZodString;
1969
+ }, z.core.$strip>, z.ZodObject<{
1970
+ kind: z.ZodLiteral<"do">;
1971
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1972
+ kind: z.ZodLiteral<"wait">;
1973
+ seconds: z.ZodNumber;
1974
+ }, z.core.$strip>, z.ZodObject<{
1975
+ kind: z.ZodLiteral<"cap">;
1976
+ deviceId: z.ZodNumber;
1977
+ cap: z.ZodString;
1978
+ method: z.ZodString;
1979
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1980
+ }, z.core.$strip>], "kind">;
1981
+ }, z.core.$strip>], "kind">>>;
1982
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1983
+ kind: z.ZodLiteral<"sequence">;
1984
+ sequenceId: z.ZodString;
1985
+ }, z.core.$strip>, z.ZodObject<{
1986
+ kind: z.ZodLiteral<"do">;
1987
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
1988
+ kind: z.ZodLiteral<"wait">;
1989
+ seconds: z.ZodNumber;
1990
+ }, z.core.$strip>, z.ZodObject<{
1991
+ kind: z.ZodLiteral<"cap">;
1992
+ deviceId: z.ZodNumber;
1993
+ cap: z.ZodString;
1994
+ method: z.ZodString;
1995
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1996
+ }, z.core.$strip>], "kind">;
1997
+ }, z.core.$strip>], "kind">>>;
1998
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1999
+ kind: z.ZodLiteral<"sequence">;
2000
+ sequenceId: z.ZodString;
2001
+ }, z.core.$strip>, z.ZodObject<{
2002
+ kind: z.ZodLiteral<"do">;
2003
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2004
+ kind: z.ZodLiteral<"wait">;
2005
+ seconds: z.ZodNumber;
2006
+ }, z.core.$strip>, z.ZodObject<{
2007
+ kind: z.ZodLiteral<"cap">;
2008
+ deviceId: z.ZodNumber;
2009
+ cap: z.ZodString;
2010
+ method: z.ZodString;
2011
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2012
+ }, z.core.$strip>], "kind">;
2013
+ }, z.core.$strip>], "kind">>>;
1714
2014
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
1715
2015
  id: z.ZodString;
1716
2016
  label: z.ZodString;
1717
- sequence: z.ZodString;
2017
+ sequenceId: z.ZodString;
1718
2018
  icon: z.ZodOptional<z.ZodEnum<{
1719
2019
  camera: "camera";
1720
2020
  light: "light";
@@ -2180,11 +2480,12 @@ export declare const NcRuleSchema: z.ZodObject<{
2180
2480
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
2181
2481
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
2182
2482
  actions: z.ZodOptional<z.ZodObject<{
2183
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
2184
- name: z.ZodString;
2185
- enabled: z.ZodBoolean;
2186
- minDelaySec: z.ZodOptional<z.ZodNumber>;
2187
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2483
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2484
+ kind: z.ZodLiteral<"sequence">;
2485
+ sequenceId: z.ZodString;
2486
+ }, z.core.$strip>, z.ZodObject<{
2487
+ kind: z.ZodLiteral<"do">;
2488
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2188
2489
  kind: z.ZodLiteral<"wait">;
2189
2490
  seconds: z.ZodNumber;
2190
2491
  }, z.core.$strip>, z.ZodObject<{
@@ -2193,12 +2494,60 @@ export declare const NcRuleSchema: z.ZodObject<{
2193
2494
  cap: z.ZodString;
2194
2495
  method: z.ZodString;
2195
2496
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2196
- }, z.core.$strip>], "kind">>;
2197
- }, z.core.$strip>>>;
2497
+ }, z.core.$strip>], "kind">;
2498
+ }, z.core.$strip>], "kind">>>;
2499
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2500
+ kind: z.ZodLiteral<"sequence">;
2501
+ sequenceId: z.ZodString;
2502
+ }, z.core.$strip>, z.ZodObject<{
2503
+ kind: z.ZodLiteral<"do">;
2504
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2505
+ kind: z.ZodLiteral<"wait">;
2506
+ seconds: z.ZodNumber;
2507
+ }, z.core.$strip>, z.ZodObject<{
2508
+ kind: z.ZodLiteral<"cap">;
2509
+ deviceId: z.ZodNumber;
2510
+ cap: z.ZodString;
2511
+ method: z.ZodString;
2512
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2513
+ }, z.core.$strip>], "kind">;
2514
+ }, z.core.$strip>], "kind">>>;
2515
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2516
+ kind: z.ZodLiteral<"sequence">;
2517
+ sequenceId: z.ZodString;
2518
+ }, z.core.$strip>, z.ZodObject<{
2519
+ kind: z.ZodLiteral<"do">;
2520
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2521
+ kind: z.ZodLiteral<"wait">;
2522
+ seconds: z.ZodNumber;
2523
+ }, z.core.$strip>, z.ZodObject<{
2524
+ kind: z.ZodLiteral<"cap">;
2525
+ deviceId: z.ZodNumber;
2526
+ cap: z.ZodString;
2527
+ method: z.ZodString;
2528
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2529
+ }, z.core.$strip>], "kind">;
2530
+ }, z.core.$strip>], "kind">>>;
2531
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2532
+ kind: z.ZodLiteral<"sequence">;
2533
+ sequenceId: z.ZodString;
2534
+ }, z.core.$strip>, z.ZodObject<{
2535
+ kind: z.ZodLiteral<"do">;
2536
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
2537
+ kind: z.ZodLiteral<"wait">;
2538
+ seconds: z.ZodNumber;
2539
+ }, z.core.$strip>, z.ZodObject<{
2540
+ kind: z.ZodLiteral<"cap">;
2541
+ deviceId: z.ZodNumber;
2542
+ cap: z.ZodString;
2543
+ method: z.ZodString;
2544
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2545
+ }, z.core.$strip>], "kind">;
2546
+ }, z.core.$strip>], "kind">>>;
2198
2547
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
2199
2548
  id: z.ZodString;
2200
2549
  label: z.ZodString;
2201
- sequence: z.ZodString;
2550
+ sequenceId: z.ZodString;
2202
2551
  icon: z.ZodOptional<z.ZodEnum<{
2203
2552
  camera: "camera";
2204
2553
  light: "light";
@@ -3279,6 +3628,45 @@ export declare const NcAlarmSettingsSchema: z.ZodObject<{
3279
3628
  }, z.core.$strip>>>;
3280
3629
  }, z.core.$strip>;
3281
3630
  export type NcAlarmSettings = z.infer<typeof NcAlarmSettingsSchema>;
3631
+ /**
3632
+ * One named alarm configuration profile — a full {@link NcAlarmSettings} blob
3633
+ * (memberships including secure-on-arm, delays, announce targets). The id is
3634
+ * assigned by the server; clients show the name.
3635
+ */
3636
+ export declare const NcAlarmProfileMetaSchema: z.ZodObject<{
3637
+ id: z.ZodString;
3638
+ name: z.ZodString;
3639
+ isDefault: z.ZodBoolean;
3640
+ }, z.core.$strip>;
3641
+ export type NcAlarmProfileMeta = z.infer<typeof NcAlarmProfileMetaSchema>;
3642
+ /**
3643
+ * Profiles ride on {@link NcAlarmConfig}: one globally active profile, whose
3644
+ * settings are what arm decisions and `settings` already expose. Switching
3645
+ * active applies that profile's blob onto the panel.
3646
+ */
3647
+ export declare const NcAlarmProfilesViewSchema: z.ZodObject<{
3648
+ activeId: z.ZodString;
3649
+ items: z.ZodArray<z.ZodObject<{
3650
+ id: z.ZodString;
3651
+ name: z.ZodString;
3652
+ isDefault: z.ZodBoolean;
3653
+ }, z.core.$strip>>;
3654
+ }, z.core.$strip>;
3655
+ export type NcAlarmProfilesView = z.infer<typeof NcAlarmProfilesViewSchema>;
3656
+ export declare const NcAlarmCreateProfileInputSchema: z.ZodObject<{
3657
+ name: z.ZodString;
3658
+ cloneFromId: z.ZodOptional<z.ZodString>;
3659
+ }, z.core.$strip>;
3660
+ export type NcAlarmCreateProfileInput = z.infer<typeof NcAlarmCreateProfileInputSchema>;
3661
+ export declare const NcAlarmRenameProfileInputSchema: z.ZodObject<{
3662
+ id: z.ZodString;
3663
+ name: z.ZodString;
3664
+ }, z.core.$strip>;
3665
+ export type NcAlarmRenameProfileInput = z.infer<typeof NcAlarmRenameProfileInputSchema>;
3666
+ export declare const NcAlarmProfileIdInputSchema: z.ZodObject<{
3667
+ id: z.ZodString;
3668
+ }, z.core.$strip>;
3669
+ export type NcAlarmProfileIdInput = z.infer<typeof NcAlarmProfileIdInputSchema>;
3282
3670
  /**
3283
3671
  * Every field optional — a tab edits one control at a time.
3284
3672
  *
@@ -3563,6 +3951,14 @@ export declare const NcAlarmConfigSchema: z.ZodObject<{
3563
3951
  triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
3564
3952
  }, z.core.$strip>>>;
3565
3953
  }, z.core.$strip>;
3954
+ profiles: z.ZodOptional<z.ZodObject<{
3955
+ activeId: z.ZodString;
3956
+ items: z.ZodArray<z.ZodObject<{
3957
+ id: z.ZodString;
3958
+ name: z.ZodString;
3959
+ isDefault: z.ZodBoolean;
3960
+ }, z.core.$strip>>;
3961
+ }, z.core.$strip>>;
3566
3962
  coverage: z.ZodArray<z.ZodObject<{
3567
3963
  mode: z.ZodEnum<{
3568
3964
  home: "home";
@@ -3993,11 +4389,12 @@ export declare const notificationRulesCapability: {
3993
4389
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
3994
4390
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
3995
4391
  actions: z.ZodOptional<z.ZodObject<{
3996
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
3997
- name: z.ZodString;
3998
- enabled: z.ZodBoolean;
3999
- minDelaySec: z.ZodOptional<z.ZodNumber>;
4000
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4392
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4393
+ kind: z.ZodLiteral<"sequence">;
4394
+ sequenceId: z.ZodString;
4395
+ }, z.core.$strip>, z.ZodObject<{
4396
+ kind: z.ZodLiteral<"do">;
4397
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4001
4398
  kind: z.ZodLiteral<"wait">;
4002
4399
  seconds: z.ZodNumber;
4003
4400
  }, z.core.$strip>, z.ZodObject<{
@@ -4006,15 +4403,63 @@ export declare const notificationRulesCapability: {
4006
4403
  cap: z.ZodString;
4007
4404
  method: z.ZodString;
4008
4405
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4009
- }, z.core.$strip>], "kind">>;
4010
- }, z.core.$strip>>>;
4011
- buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
4012
- id: z.ZodString;
4013
- label: z.ZodString;
4014
- sequence: z.ZodString;
4015
- icon: z.ZodOptional<z.ZodEnum<{
4016
- camera: "camera";
4017
- light: "light";
4406
+ }, z.core.$strip>], "kind">;
4407
+ }, z.core.$strip>], "kind">>>;
4408
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4409
+ kind: z.ZodLiteral<"sequence">;
4410
+ sequenceId: z.ZodString;
4411
+ }, z.core.$strip>, z.ZodObject<{
4412
+ kind: z.ZodLiteral<"do">;
4413
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4414
+ kind: z.ZodLiteral<"wait">;
4415
+ seconds: z.ZodNumber;
4416
+ }, z.core.$strip>, z.ZodObject<{
4417
+ kind: z.ZodLiteral<"cap">;
4418
+ deviceId: z.ZodNumber;
4419
+ cap: z.ZodString;
4420
+ method: z.ZodString;
4421
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4422
+ }, z.core.$strip>], "kind">;
4423
+ }, z.core.$strip>], "kind">>>;
4424
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4425
+ kind: z.ZodLiteral<"sequence">;
4426
+ sequenceId: z.ZodString;
4427
+ }, z.core.$strip>, z.ZodObject<{
4428
+ kind: z.ZodLiteral<"do">;
4429
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4430
+ kind: z.ZodLiteral<"wait">;
4431
+ seconds: z.ZodNumber;
4432
+ }, z.core.$strip>, z.ZodObject<{
4433
+ kind: z.ZodLiteral<"cap">;
4434
+ deviceId: z.ZodNumber;
4435
+ cap: z.ZodString;
4436
+ method: z.ZodString;
4437
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4438
+ }, z.core.$strip>], "kind">;
4439
+ }, z.core.$strip>], "kind">>>;
4440
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4441
+ kind: z.ZodLiteral<"sequence">;
4442
+ sequenceId: z.ZodString;
4443
+ }, z.core.$strip>, z.ZodObject<{
4444
+ kind: z.ZodLiteral<"do">;
4445
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4446
+ kind: z.ZodLiteral<"wait">;
4447
+ seconds: z.ZodNumber;
4448
+ }, z.core.$strip>, z.ZodObject<{
4449
+ kind: z.ZodLiteral<"cap">;
4450
+ deviceId: z.ZodNumber;
4451
+ cap: z.ZodString;
4452
+ method: z.ZodString;
4453
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4454
+ }, z.core.$strip>], "kind">;
4455
+ }, z.core.$strip>], "kind">>>;
4456
+ buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
4457
+ id: z.ZodString;
4458
+ label: z.ZodString;
4459
+ sequenceId: z.ZodString;
4460
+ icon: z.ZodOptional<z.ZodEnum<{
4461
+ camera: "camera";
4462
+ light: "light";
4018
4463
  lock: "lock";
4019
4464
  view: "view";
4020
4465
  arm: "arm";
@@ -4293,11 +4738,12 @@ export declare const notificationRulesCapability: {
4293
4738
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
4294
4739
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
4295
4740
  actions: z.ZodOptional<z.ZodObject<{
4296
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
4297
- name: z.ZodString;
4298
- enabled: z.ZodBoolean;
4299
- minDelaySec: z.ZodOptional<z.ZodNumber>;
4300
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4741
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4742
+ kind: z.ZodLiteral<"sequence">;
4743
+ sequenceId: z.ZodString;
4744
+ }, z.core.$strip>, z.ZodObject<{
4745
+ kind: z.ZodLiteral<"do">;
4746
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4301
4747
  kind: z.ZodLiteral<"wait">;
4302
4748
  seconds: z.ZodNumber;
4303
4749
  }, z.core.$strip>, z.ZodObject<{
@@ -4306,12 +4752,60 @@ export declare const notificationRulesCapability: {
4306
4752
  cap: z.ZodString;
4307
4753
  method: z.ZodString;
4308
4754
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4309
- }, z.core.$strip>], "kind">>;
4310
- }, z.core.$strip>>>;
4755
+ }, z.core.$strip>], "kind">;
4756
+ }, z.core.$strip>], "kind">>>;
4757
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4758
+ kind: z.ZodLiteral<"sequence">;
4759
+ sequenceId: z.ZodString;
4760
+ }, z.core.$strip>, z.ZodObject<{
4761
+ kind: z.ZodLiteral<"do">;
4762
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4763
+ kind: z.ZodLiteral<"wait">;
4764
+ seconds: z.ZodNumber;
4765
+ }, z.core.$strip>, z.ZodObject<{
4766
+ kind: z.ZodLiteral<"cap">;
4767
+ deviceId: z.ZodNumber;
4768
+ cap: z.ZodString;
4769
+ method: z.ZodString;
4770
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4771
+ }, z.core.$strip>], "kind">;
4772
+ }, z.core.$strip>], "kind">>>;
4773
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4774
+ kind: z.ZodLiteral<"sequence">;
4775
+ sequenceId: z.ZodString;
4776
+ }, z.core.$strip>, z.ZodObject<{
4777
+ kind: z.ZodLiteral<"do">;
4778
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4779
+ kind: z.ZodLiteral<"wait">;
4780
+ seconds: z.ZodNumber;
4781
+ }, z.core.$strip>, z.ZodObject<{
4782
+ kind: z.ZodLiteral<"cap">;
4783
+ deviceId: z.ZodNumber;
4784
+ cap: z.ZodString;
4785
+ method: z.ZodString;
4786
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4787
+ }, z.core.$strip>], "kind">;
4788
+ }, z.core.$strip>], "kind">>>;
4789
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
4790
+ kind: z.ZodLiteral<"sequence">;
4791
+ sequenceId: z.ZodString;
4792
+ }, z.core.$strip>, z.ZodObject<{
4793
+ kind: z.ZodLiteral<"do">;
4794
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4795
+ kind: z.ZodLiteral<"wait">;
4796
+ seconds: z.ZodNumber;
4797
+ }, z.core.$strip>, z.ZodObject<{
4798
+ kind: z.ZodLiteral<"cap">;
4799
+ deviceId: z.ZodNumber;
4800
+ cap: z.ZodString;
4801
+ method: z.ZodString;
4802
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4803
+ }, z.core.$strip>], "kind">;
4804
+ }, z.core.$strip>], "kind">>>;
4311
4805
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
4312
4806
  id: z.ZodString;
4313
4807
  label: z.ZodString;
4314
- sequence: z.ZodString;
4808
+ sequenceId: z.ZodString;
4315
4809
  icon: z.ZodOptional<z.ZodEnum<{
4316
4810
  camera: "camera";
4317
4811
  light: "light";
@@ -4591,11 +5085,12 @@ export declare const notificationRulesCapability: {
4591
5085
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
4592
5086
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
4593
5087
  actions: z.ZodOptional<z.ZodObject<{
4594
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
4595
- name: z.ZodString;
4596
- enabled: z.ZodBoolean;
4597
- minDelaySec: z.ZodOptional<z.ZodNumber>;
4598
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5088
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5089
+ kind: z.ZodLiteral<"sequence">;
5090
+ sequenceId: z.ZodString;
5091
+ }, z.core.$strip>, z.ZodObject<{
5092
+ kind: z.ZodLiteral<"do">;
5093
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4599
5094
  kind: z.ZodLiteral<"wait">;
4600
5095
  seconds: z.ZodNumber;
4601
5096
  }, z.core.$strip>, z.ZodObject<{
@@ -4604,12 +5099,60 @@ export declare const notificationRulesCapability: {
4604
5099
  cap: z.ZodString;
4605
5100
  method: z.ZodString;
4606
5101
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4607
- }, z.core.$strip>], "kind">>;
4608
- }, z.core.$strip>>>;
5102
+ }, z.core.$strip>], "kind">;
5103
+ }, z.core.$strip>], "kind">>>;
5104
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5105
+ kind: z.ZodLiteral<"sequence">;
5106
+ sequenceId: z.ZodString;
5107
+ }, z.core.$strip>, z.ZodObject<{
5108
+ kind: z.ZodLiteral<"do">;
5109
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5110
+ kind: z.ZodLiteral<"wait">;
5111
+ seconds: z.ZodNumber;
5112
+ }, z.core.$strip>, z.ZodObject<{
5113
+ kind: z.ZodLiteral<"cap">;
5114
+ deviceId: z.ZodNumber;
5115
+ cap: z.ZodString;
5116
+ method: z.ZodString;
5117
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5118
+ }, z.core.$strip>], "kind">;
5119
+ }, z.core.$strip>], "kind">>>;
5120
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5121
+ kind: z.ZodLiteral<"sequence">;
5122
+ sequenceId: z.ZodString;
5123
+ }, z.core.$strip>, z.ZodObject<{
5124
+ kind: z.ZodLiteral<"do">;
5125
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5126
+ kind: z.ZodLiteral<"wait">;
5127
+ seconds: z.ZodNumber;
5128
+ }, z.core.$strip>, z.ZodObject<{
5129
+ kind: z.ZodLiteral<"cap">;
5130
+ deviceId: z.ZodNumber;
5131
+ cap: z.ZodString;
5132
+ method: z.ZodString;
5133
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5134
+ }, z.core.$strip>], "kind">;
5135
+ }, z.core.$strip>], "kind">>>;
5136
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5137
+ kind: z.ZodLiteral<"sequence">;
5138
+ sequenceId: z.ZodString;
5139
+ }, z.core.$strip>, z.ZodObject<{
5140
+ kind: z.ZodLiteral<"do">;
5141
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5142
+ kind: z.ZodLiteral<"wait">;
5143
+ seconds: z.ZodNumber;
5144
+ }, z.core.$strip>, z.ZodObject<{
5145
+ kind: z.ZodLiteral<"cap">;
5146
+ deviceId: z.ZodNumber;
5147
+ cap: z.ZodString;
5148
+ method: z.ZodString;
5149
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5150
+ }, z.core.$strip>], "kind">;
5151
+ }, z.core.$strip>], "kind">>>;
4609
5152
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
4610
5153
  id: z.ZodString;
4611
5154
  label: z.ZodString;
4612
- sequence: z.ZodString;
5155
+ sequenceId: z.ZodString;
4613
5156
  icon: z.ZodOptional<z.ZodEnum<{
4614
5157
  camera: "camera";
4615
5158
  light: "light";
@@ -4883,11 +5426,12 @@ export declare const notificationRulesCapability: {
4883
5426
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
4884
5427
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
4885
5428
  actions: z.ZodOptional<z.ZodObject<{
4886
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
4887
- name: z.ZodString;
4888
- enabled: z.ZodBoolean;
4889
- minDelaySec: z.ZodOptional<z.ZodNumber>;
4890
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5429
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5430
+ kind: z.ZodLiteral<"sequence">;
5431
+ sequenceId: z.ZodString;
5432
+ }, z.core.$strip>, z.ZodObject<{
5433
+ kind: z.ZodLiteral<"do">;
5434
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
4891
5435
  kind: z.ZodLiteral<"wait">;
4892
5436
  seconds: z.ZodNumber;
4893
5437
  }, z.core.$strip>, z.ZodObject<{
@@ -4896,12 +5440,60 @@ export declare const notificationRulesCapability: {
4896
5440
  cap: z.ZodString;
4897
5441
  method: z.ZodString;
4898
5442
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4899
- }, z.core.$strip>], "kind">>;
4900
- }, z.core.$strip>>>;
5443
+ }, z.core.$strip>], "kind">;
5444
+ }, z.core.$strip>], "kind">>>;
5445
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5446
+ kind: z.ZodLiteral<"sequence">;
5447
+ sequenceId: z.ZodString;
5448
+ }, z.core.$strip>, z.ZodObject<{
5449
+ kind: z.ZodLiteral<"do">;
5450
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5451
+ kind: z.ZodLiteral<"wait">;
5452
+ seconds: z.ZodNumber;
5453
+ }, z.core.$strip>, z.ZodObject<{
5454
+ kind: z.ZodLiteral<"cap">;
5455
+ deviceId: z.ZodNumber;
5456
+ cap: z.ZodString;
5457
+ method: z.ZodString;
5458
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5459
+ }, z.core.$strip>], "kind">;
5460
+ }, z.core.$strip>], "kind">>>;
5461
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5462
+ kind: z.ZodLiteral<"sequence">;
5463
+ sequenceId: z.ZodString;
5464
+ }, z.core.$strip>, z.ZodObject<{
5465
+ kind: z.ZodLiteral<"do">;
5466
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5467
+ kind: z.ZodLiteral<"wait">;
5468
+ seconds: z.ZodNumber;
5469
+ }, z.core.$strip>, z.ZodObject<{
5470
+ kind: z.ZodLiteral<"cap">;
5471
+ deviceId: z.ZodNumber;
5472
+ cap: z.ZodString;
5473
+ method: z.ZodString;
5474
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5475
+ }, z.core.$strip>], "kind">;
5476
+ }, z.core.$strip>], "kind">>>;
5477
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5478
+ kind: z.ZodLiteral<"sequence">;
5479
+ sequenceId: z.ZodString;
5480
+ }, z.core.$strip>, z.ZodObject<{
5481
+ kind: z.ZodLiteral<"do">;
5482
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5483
+ kind: z.ZodLiteral<"wait">;
5484
+ seconds: z.ZodNumber;
5485
+ }, z.core.$strip>, z.ZodObject<{
5486
+ kind: z.ZodLiteral<"cap">;
5487
+ deviceId: z.ZodNumber;
5488
+ cap: z.ZodString;
5489
+ method: z.ZodString;
5490
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5491
+ }, z.core.$strip>], "kind">;
5492
+ }, z.core.$strip>], "kind">>>;
4901
5493
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
4902
5494
  id: z.ZodString;
4903
5495
  label: z.ZodString;
4904
- sequence: z.ZodString;
5496
+ sequenceId: z.ZodString;
4905
5497
  icon: z.ZodOptional<z.ZodEnum<{
4906
5498
  camera: "camera";
4907
5499
  light: "light";
@@ -5007,11 +5599,12 @@ export declare const notificationRulesCapability: {
5007
5599
  snoozeAllowGlobal: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
5008
5600
  snoozeOptions: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodNumber>>>;
5009
5601
  actions: z.ZodOptional<z.ZodOptional<z.ZodObject<{
5010
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
5011
- name: z.ZodString;
5012
- enabled: z.ZodBoolean;
5013
- minDelaySec: z.ZodOptional<z.ZodNumber>;
5014
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5602
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5603
+ kind: z.ZodLiteral<"sequence">;
5604
+ sequenceId: z.ZodString;
5605
+ }, z.core.$strip>, z.ZodObject<{
5606
+ kind: z.ZodLiteral<"do">;
5607
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5015
5608
  kind: z.ZodLiteral<"wait">;
5016
5609
  seconds: z.ZodNumber;
5017
5610
  }, z.core.$strip>, z.ZodObject<{
@@ -5020,12 +5613,60 @@ export declare const notificationRulesCapability: {
5020
5613
  cap: z.ZodString;
5021
5614
  method: z.ZodString;
5022
5615
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5023
- }, z.core.$strip>], "kind">>;
5024
- }, z.core.$strip>>>;
5616
+ }, z.core.$strip>], "kind">;
5617
+ }, z.core.$strip>], "kind">>>;
5618
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5619
+ kind: z.ZodLiteral<"sequence">;
5620
+ sequenceId: z.ZodString;
5621
+ }, z.core.$strip>, z.ZodObject<{
5622
+ kind: z.ZodLiteral<"do">;
5623
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5624
+ kind: z.ZodLiteral<"wait">;
5625
+ seconds: z.ZodNumber;
5626
+ }, z.core.$strip>, z.ZodObject<{
5627
+ kind: z.ZodLiteral<"cap">;
5628
+ deviceId: z.ZodNumber;
5629
+ cap: z.ZodString;
5630
+ method: z.ZodString;
5631
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5632
+ }, z.core.$strip>], "kind">;
5633
+ }, z.core.$strip>], "kind">>>;
5634
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5635
+ kind: z.ZodLiteral<"sequence">;
5636
+ sequenceId: z.ZodString;
5637
+ }, z.core.$strip>, z.ZodObject<{
5638
+ kind: z.ZodLiteral<"do">;
5639
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5640
+ kind: z.ZodLiteral<"wait">;
5641
+ seconds: z.ZodNumber;
5642
+ }, z.core.$strip>, z.ZodObject<{
5643
+ kind: z.ZodLiteral<"cap">;
5644
+ deviceId: z.ZodNumber;
5645
+ cap: z.ZodString;
5646
+ method: z.ZodString;
5647
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5648
+ }, z.core.$strip>], "kind">;
5649
+ }, z.core.$strip>], "kind">>>;
5650
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
5651
+ kind: z.ZodLiteral<"sequence">;
5652
+ sequenceId: z.ZodString;
5653
+ }, z.core.$strip>, z.ZodObject<{
5654
+ kind: z.ZodLiteral<"do">;
5655
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5656
+ kind: z.ZodLiteral<"wait">;
5657
+ seconds: z.ZodNumber;
5658
+ }, z.core.$strip>, z.ZodObject<{
5659
+ kind: z.ZodLiteral<"cap">;
5660
+ deviceId: z.ZodNumber;
5661
+ cap: z.ZodString;
5662
+ method: z.ZodString;
5663
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5664
+ }, z.core.$strip>], "kind">;
5665
+ }, z.core.$strip>], "kind">>>;
5025
5666
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
5026
5667
  id: z.ZodString;
5027
5668
  label: z.ZodString;
5028
- sequence: z.ZodString;
5669
+ sequenceId: z.ZodString;
5029
5670
  icon: z.ZodOptional<z.ZodEnum<{
5030
5671
  camera: "camera";
5031
5672
  light: "light";
@@ -5489,11 +6130,12 @@ export declare const notificationRulesCapability: {
5489
6130
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
5490
6131
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5491
6132
  actions: z.ZodOptional<z.ZodObject<{
5492
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
5493
- name: z.ZodString;
5494
- enabled: z.ZodBoolean;
5495
- minDelaySec: z.ZodOptional<z.ZodNumber>;
5496
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6133
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6134
+ kind: z.ZodLiteral<"sequence">;
6135
+ sequenceId: z.ZodString;
6136
+ }, z.core.$strip>, z.ZodObject<{
6137
+ kind: z.ZodLiteral<"do">;
6138
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5497
6139
  kind: z.ZodLiteral<"wait">;
5498
6140
  seconds: z.ZodNumber;
5499
6141
  }, z.core.$strip>, z.ZodObject<{
@@ -5502,12 +6144,60 @@ export declare const notificationRulesCapability: {
5502
6144
  cap: z.ZodString;
5503
6145
  method: z.ZodString;
5504
6146
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5505
- }, z.core.$strip>], "kind">>;
5506
- }, z.core.$strip>>>;
6147
+ }, z.core.$strip>], "kind">;
6148
+ }, z.core.$strip>], "kind">>>;
6149
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6150
+ kind: z.ZodLiteral<"sequence">;
6151
+ sequenceId: z.ZodString;
6152
+ }, z.core.$strip>, z.ZodObject<{
6153
+ kind: z.ZodLiteral<"do">;
6154
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6155
+ kind: z.ZodLiteral<"wait">;
6156
+ seconds: z.ZodNumber;
6157
+ }, z.core.$strip>, z.ZodObject<{
6158
+ kind: z.ZodLiteral<"cap">;
6159
+ deviceId: z.ZodNumber;
6160
+ cap: z.ZodString;
6161
+ method: z.ZodString;
6162
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6163
+ }, z.core.$strip>], "kind">;
6164
+ }, z.core.$strip>], "kind">>>;
6165
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6166
+ kind: z.ZodLiteral<"sequence">;
6167
+ sequenceId: z.ZodString;
6168
+ }, z.core.$strip>, z.ZodObject<{
6169
+ kind: z.ZodLiteral<"do">;
6170
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6171
+ kind: z.ZodLiteral<"wait">;
6172
+ seconds: z.ZodNumber;
6173
+ }, z.core.$strip>, z.ZodObject<{
6174
+ kind: z.ZodLiteral<"cap">;
6175
+ deviceId: z.ZodNumber;
6176
+ cap: z.ZodString;
6177
+ method: z.ZodString;
6178
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6179
+ }, z.core.$strip>], "kind">;
6180
+ }, z.core.$strip>], "kind">>>;
6181
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6182
+ kind: z.ZodLiteral<"sequence">;
6183
+ sequenceId: z.ZodString;
6184
+ }, z.core.$strip>, z.ZodObject<{
6185
+ kind: z.ZodLiteral<"do">;
6186
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6187
+ kind: z.ZodLiteral<"wait">;
6188
+ seconds: z.ZodNumber;
6189
+ }, z.core.$strip>, z.ZodObject<{
6190
+ kind: z.ZodLiteral<"cap">;
6191
+ deviceId: z.ZodNumber;
6192
+ cap: z.ZodString;
6193
+ method: z.ZodString;
6194
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6195
+ }, z.core.$strip>], "kind">;
6196
+ }, z.core.$strip>], "kind">>>;
5507
6197
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
5508
6198
  id: z.ZodString;
5509
6199
  label: z.ZodString;
5510
- sequence: z.ZodString;
6200
+ sequenceId: z.ZodString;
5511
6201
  icon: z.ZodOptional<z.ZodEnum<{
5512
6202
  camera: "camera";
5513
6203
  light: "light";
@@ -5573,6 +6263,117 @@ export declare const notificationRulesCapability: {
5573
6263
  }, z.core.$strip>, z.ZodObject<{
5574
6264
  success: z.ZodLiteral<true>;
5575
6265
  }, z.core.$strip>, "mutation">;
6266
+ /**
6267
+ * Shared action sequences — named step lists rules and buttons bind to by
6268
+ * id. One store for the whole notification centre so two rules sharing a
6269
+ * gate share its throttle too.
6270
+ */
6271
+ readonly listSequences: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{}, z.core.$strip>, z.ZodObject<{
6272
+ sequences: z.ZodArray<z.ZodObject<{
6273
+ id: z.ZodString;
6274
+ name: z.ZodString;
6275
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6276
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6277
+ kind: z.ZodLiteral<"wait">;
6278
+ seconds: z.ZodNumber;
6279
+ }, z.core.$strip>, z.ZodObject<{
6280
+ kind: z.ZodLiteral<"cap">;
6281
+ deviceId: z.ZodNumber;
6282
+ cap: z.ZodString;
6283
+ method: z.ZodString;
6284
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6285
+ }, z.core.$strip>], "kind">>;
6286
+ }, z.core.$strip>>;
6287
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
6288
+ readonly getSequence: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
6289
+ sequenceId: z.ZodString;
6290
+ }, z.core.$strip>, z.ZodObject<{
6291
+ sequence: z.ZodNullable<z.ZodObject<{
6292
+ id: z.ZodString;
6293
+ name: z.ZodString;
6294
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6295
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6296
+ kind: z.ZodLiteral<"wait">;
6297
+ seconds: z.ZodNumber;
6298
+ }, z.core.$strip>, z.ZodObject<{
6299
+ kind: z.ZodLiteral<"cap">;
6300
+ deviceId: z.ZodNumber;
6301
+ cap: z.ZodString;
6302
+ method: z.ZodString;
6303
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6304
+ }, z.core.$strip>], "kind">>;
6305
+ }, z.core.$strip>>;
6306
+ }, z.core.$strip>, import("./capability-definition.js").CapabilityMethodKind>;
6307
+ readonly createSequence: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
6308
+ sequence: z.ZodObject<{
6309
+ name: z.ZodString;
6310
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6311
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6312
+ kind: z.ZodLiteral<"wait">;
6313
+ seconds: z.ZodNumber;
6314
+ }, z.core.$strip>, z.ZodObject<{
6315
+ kind: z.ZodLiteral<"cap">;
6316
+ deviceId: z.ZodNumber;
6317
+ cap: z.ZodString;
6318
+ method: z.ZodString;
6319
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6320
+ }, z.core.$strip>], "kind">>;
6321
+ }, z.core.$strip>;
6322
+ }, z.core.$strip>, z.ZodObject<{
6323
+ sequence: z.ZodObject<{
6324
+ id: z.ZodString;
6325
+ name: z.ZodString;
6326
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6327
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6328
+ kind: z.ZodLiteral<"wait">;
6329
+ seconds: z.ZodNumber;
6330
+ }, z.core.$strip>, z.ZodObject<{
6331
+ kind: z.ZodLiteral<"cap">;
6332
+ deviceId: z.ZodNumber;
6333
+ cap: z.ZodString;
6334
+ method: z.ZodString;
6335
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6336
+ }, z.core.$strip>], "kind">>;
6337
+ }, z.core.$strip>;
6338
+ }, z.core.$strip>, "mutation">;
6339
+ readonly updateSequence: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
6340
+ sequenceId: z.ZodString;
6341
+ sequence: z.ZodObject<{
6342
+ name: z.ZodString;
6343
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6344
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6345
+ kind: z.ZodLiteral<"wait">;
6346
+ seconds: z.ZodNumber;
6347
+ }, z.core.$strip>, z.ZodObject<{
6348
+ kind: z.ZodLiteral<"cap">;
6349
+ deviceId: z.ZodNumber;
6350
+ cap: z.ZodString;
6351
+ method: z.ZodString;
6352
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6353
+ }, z.core.$strip>], "kind">>;
6354
+ }, z.core.$strip>;
6355
+ }, z.core.$strip>, z.ZodObject<{
6356
+ sequence: z.ZodObject<{
6357
+ id: z.ZodString;
6358
+ name: z.ZodString;
6359
+ minDelaySec: z.ZodOptional<z.ZodNumber>;
6360
+ actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6361
+ kind: z.ZodLiteral<"wait">;
6362
+ seconds: z.ZodNumber;
6363
+ }, z.core.$strip>, z.ZodObject<{
6364
+ kind: z.ZodLiteral<"cap">;
6365
+ deviceId: z.ZodNumber;
6366
+ cap: z.ZodString;
6367
+ method: z.ZodString;
6368
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6369
+ }, z.core.$strip>], "kind">>;
6370
+ }, z.core.$strip>;
6371
+ }, z.core.$strip>, "mutation">;
6372
+ readonly deleteSequence: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
6373
+ sequenceId: z.ZodString;
6374
+ }, z.core.$strip>, z.ZodObject<{
6375
+ success: z.ZodLiteral<true>;
6376
+ }, z.core.$strip>, "mutation">;
5576
6377
  /**
5577
6378
  * WHAT THE RULES ACTUALLY ASK the stream broker to retain, per camera.
5578
6379
  *
@@ -5869,11 +6670,12 @@ export declare const notificationRulesCapability: {
5869
6670
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
5870
6671
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
5871
6672
  actions: z.ZodOptional<z.ZodObject<{
5872
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
5873
- name: z.ZodString;
5874
- enabled: z.ZodBoolean;
5875
- minDelaySec: z.ZodOptional<z.ZodNumber>;
5876
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6673
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6674
+ kind: z.ZodLiteral<"sequence">;
6675
+ sequenceId: z.ZodString;
6676
+ }, z.core.$strip>, z.ZodObject<{
6677
+ kind: z.ZodLiteral<"do">;
6678
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
5877
6679
  kind: z.ZodLiteral<"wait">;
5878
6680
  seconds: z.ZodNumber;
5879
6681
  }, z.core.$strip>, z.ZodObject<{
@@ -5882,12 +6684,60 @@ export declare const notificationRulesCapability: {
5882
6684
  cap: z.ZodString;
5883
6685
  method: z.ZodString;
5884
6686
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5885
- }, z.core.$strip>], "kind">>;
5886
- }, z.core.$strip>>>;
6687
+ }, z.core.$strip>], "kind">;
6688
+ }, z.core.$strip>], "kind">>>;
6689
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6690
+ kind: z.ZodLiteral<"sequence">;
6691
+ sequenceId: z.ZodString;
6692
+ }, z.core.$strip>, z.ZodObject<{
6693
+ kind: z.ZodLiteral<"do">;
6694
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6695
+ kind: z.ZodLiteral<"wait">;
6696
+ seconds: z.ZodNumber;
6697
+ }, z.core.$strip>, z.ZodObject<{
6698
+ kind: z.ZodLiteral<"cap">;
6699
+ deviceId: z.ZodNumber;
6700
+ cap: z.ZodString;
6701
+ method: z.ZodString;
6702
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6703
+ }, z.core.$strip>], "kind">;
6704
+ }, z.core.$strip>], "kind">>>;
6705
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6706
+ kind: z.ZodLiteral<"sequence">;
6707
+ sequenceId: z.ZodString;
6708
+ }, z.core.$strip>, z.ZodObject<{
6709
+ kind: z.ZodLiteral<"do">;
6710
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6711
+ kind: z.ZodLiteral<"wait">;
6712
+ seconds: z.ZodNumber;
6713
+ }, z.core.$strip>, z.ZodObject<{
6714
+ kind: z.ZodLiteral<"cap">;
6715
+ deviceId: z.ZodNumber;
6716
+ cap: z.ZodString;
6717
+ method: z.ZodString;
6718
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6719
+ }, z.core.$strip>], "kind">;
6720
+ }, z.core.$strip>], "kind">>>;
6721
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
6722
+ kind: z.ZodLiteral<"sequence">;
6723
+ sequenceId: z.ZodString;
6724
+ }, z.core.$strip>, z.ZodObject<{
6725
+ kind: z.ZodLiteral<"do">;
6726
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6727
+ kind: z.ZodLiteral<"wait">;
6728
+ seconds: z.ZodNumber;
6729
+ }, z.core.$strip>, z.ZodObject<{
6730
+ kind: z.ZodLiteral<"cap">;
6731
+ deviceId: z.ZodNumber;
6732
+ cap: z.ZodString;
6733
+ method: z.ZodString;
6734
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6735
+ }, z.core.$strip>], "kind">;
6736
+ }, z.core.$strip>], "kind">>>;
5887
6737
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
5888
6738
  id: z.ZodString;
5889
6739
  label: z.ZodString;
5890
- sequence: z.ZodString;
6740
+ sequenceId: z.ZodString;
5891
6741
  icon: z.ZodOptional<z.ZodEnum<{
5892
6742
  camera: "camera";
5893
6743
  light: "light";
@@ -6186,11 +7036,12 @@ export declare const notificationRulesCapability: {
6186
7036
  snoozeAllowGlobal: z.ZodOptional<z.ZodBoolean>;
6187
7037
  snoozeOptions: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
6188
7038
  actions: z.ZodOptional<z.ZodObject<{
6189
- onTrigger: z.ZodOptional<z.ZodArray<z.ZodObject<{
6190
- name: z.ZodString;
6191
- enabled: z.ZodBoolean;
6192
- minDelaySec: z.ZodOptional<z.ZodNumber>;
6193
- actions: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7039
+ onActivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7040
+ kind: z.ZodLiteral<"sequence">;
7041
+ sequenceId: z.ZodString;
7042
+ }, z.core.$strip>, z.ZodObject<{
7043
+ kind: z.ZodLiteral<"do">;
7044
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
6194
7045
  kind: z.ZodLiteral<"wait">;
6195
7046
  seconds: z.ZodNumber;
6196
7047
  }, z.core.$strip>, z.ZodObject<{
@@ -6199,12 +7050,60 @@ export declare const notificationRulesCapability: {
6199
7050
  cap: z.ZodString;
6200
7051
  method: z.ZodString;
6201
7052
  args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
6202
- }, z.core.$strip>], "kind">>;
6203
- }, z.core.$strip>>>;
7053
+ }, z.core.$strip>], "kind">;
7054
+ }, z.core.$strip>], "kind">>>;
7055
+ onDeactivation: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7056
+ kind: z.ZodLiteral<"sequence">;
7057
+ sequenceId: z.ZodString;
7058
+ }, z.core.$strip>, z.ZodObject<{
7059
+ kind: z.ZodLiteral<"do">;
7060
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
7061
+ kind: z.ZodLiteral<"wait">;
7062
+ seconds: z.ZodNumber;
7063
+ }, z.core.$strip>, z.ZodObject<{
7064
+ kind: z.ZodLiteral<"cap">;
7065
+ deviceId: z.ZodNumber;
7066
+ cap: z.ZodString;
7067
+ method: z.ZodString;
7068
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7069
+ }, z.core.$strip>], "kind">;
7070
+ }, z.core.$strip>], "kind">>>;
7071
+ onTrigger: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7072
+ kind: z.ZodLiteral<"sequence">;
7073
+ sequenceId: z.ZodString;
7074
+ }, z.core.$strip>, z.ZodObject<{
7075
+ kind: z.ZodLiteral<"do">;
7076
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
7077
+ kind: z.ZodLiteral<"wait">;
7078
+ seconds: z.ZodNumber;
7079
+ }, z.core.$strip>, z.ZodObject<{
7080
+ kind: z.ZodLiteral<"cap">;
7081
+ deviceId: z.ZodNumber;
7082
+ cap: z.ZodString;
7083
+ method: z.ZodString;
7084
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7085
+ }, z.core.$strip>], "kind">;
7086
+ }, z.core.$strip>], "kind">>>;
7087
+ onTriggerOff: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
7088
+ kind: z.ZodLiteral<"sequence">;
7089
+ sequenceId: z.ZodString;
7090
+ }, z.core.$strip>, z.ZodObject<{
7091
+ kind: z.ZodLiteral<"do">;
7092
+ action: z.ZodDiscriminatedUnion<[z.ZodObject<{
7093
+ kind: z.ZodLiteral<"wait">;
7094
+ seconds: z.ZodNumber;
7095
+ }, z.core.$strip>, z.ZodObject<{
7096
+ kind: z.ZodLiteral<"cap">;
7097
+ deviceId: z.ZodNumber;
7098
+ cap: z.ZodString;
7099
+ method: z.ZodString;
7100
+ args: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
7101
+ }, z.core.$strip>], "kind">;
7102
+ }, z.core.$strip>], "kind">>>;
6204
7103
  buttons: z.ZodOptional<z.ZodArray<z.ZodObject<{
6205
7104
  id: z.ZodString;
6206
7105
  label: z.ZodString;
6207
- sequence: z.ZodString;
7106
+ sequenceId: z.ZodString;
6208
7107
  icon: z.ZodOptional<z.ZodEnum<{
6209
7108
  camera: "camera";
6210
7109
  light: "light";
@@ -6866,6 +7765,14 @@ export declare const notificationRulesCapability: {
6866
7765
  triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
6867
7766
  }, z.core.$strip>>>;
6868
7767
  }, z.core.$strip>;
7768
+ profiles: z.ZodOptional<z.ZodObject<{
7769
+ activeId: z.ZodString;
7770
+ items: z.ZodArray<z.ZodObject<{
7771
+ id: z.ZodString;
7772
+ name: z.ZodString;
7773
+ isDefault: z.ZodBoolean;
7774
+ }, z.core.$strip>>;
7775
+ }, z.core.$strip>>;
6869
7776
  coverage: z.ZodArray<z.ZodObject<{
6870
7777
  mode: z.ZodEnum<{
6871
7778
  home: "home";
@@ -7083,6 +7990,570 @@ export declare const notificationRulesCapability: {
7083
7990
  triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
7084
7991
  }, z.core.$strip>>>;
7085
7992
  }, z.core.$strip>;
7993
+ profiles: z.ZodOptional<z.ZodObject<{
7994
+ activeId: z.ZodString;
7995
+ items: z.ZodArray<z.ZodObject<{
7996
+ id: z.ZodString;
7997
+ name: z.ZodString;
7998
+ isDefault: z.ZodBoolean;
7999
+ }, z.core.$strip>>;
8000
+ }, z.core.$strip>>;
8001
+ coverage: z.ZodArray<z.ZodObject<{
8002
+ mode: z.ZodEnum<{
8003
+ home: "home";
8004
+ away: "away";
8005
+ night: "night";
8006
+ vacation: "vacation";
8007
+ custom_bypass: "custom_bypass";
8008
+ }>;
8009
+ ruleCount: z.ZodNumber;
8010
+ allDevices: z.ZodBoolean;
8011
+ deviceIds: z.ZodArray<z.ZodNumber>;
8012
+ allDevicesExcept: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
8013
+ skippedDevices: z.ZodDefault<z.ZodArray<z.ZodObject<{
8014
+ deviceId: z.ZodNumber;
8015
+ reason: z.ZodEnum<{
8016
+ offline: "offline";
8017
+ muted: "muted";
8018
+ "detection-off": "detection-off";
8019
+ }>;
8020
+ }, z.core.$strip>>>;
8021
+ }, z.core.$strip>>;
8022
+ live: z.ZodOptional<z.ZodObject<{
8023
+ state: z.ZodEnum<{
8024
+ pending: "pending";
8025
+ disarmed: "disarmed";
8026
+ armed_home: "armed_home";
8027
+ armed_away: "armed_away";
8028
+ armed_night: "armed_night";
8029
+ armed_vacation: "armed_vacation";
8030
+ armed_custom_bypass: "armed_custom_bypass";
8031
+ arming: "arming";
8032
+ disarming: "disarming";
8033
+ triggered: "triggered";
8034
+ }>;
8035
+ targetMode: z.ZodNullable<z.ZodEnum<{
8036
+ home: "home";
8037
+ away: "away";
8038
+ night: "night";
8039
+ vacation: "vacation";
8040
+ custom_bypass: "custom_bypass";
8041
+ }>>;
8042
+ availableModes: z.ZodArray<z.ZodEnum<{
8043
+ home: "home";
8044
+ away: "away";
8045
+ night: "night";
8046
+ vacation: "vacation";
8047
+ custom_bypass: "custom_bypass";
8048
+ }>>;
8049
+ openings: z.ZodArray<z.ZodObject<{
8050
+ mode: z.ZodEnum<{
8051
+ home: "home";
8052
+ away: "away";
8053
+ night: "night";
8054
+ vacation: "vacation";
8055
+ custom_bypass: "custom_bypass";
8056
+ }>;
8057
+ devices: z.ZodArray<z.ZodObject<{
8058
+ deviceId: z.ZodNumber;
8059
+ name: z.ZodString;
8060
+ state: z.ZodString;
8061
+ blocking: z.ZodBoolean;
8062
+ }, z.core.$strip>>;
8063
+ unknown: z.ZodArray<z.ZodNumber>;
8064
+ }, z.core.$strip>>;
8065
+ exclusions: z.ZodArray<z.ZodObject<{
8066
+ deviceId: z.ZodNumber;
8067
+ name: z.ZodString;
8068
+ phase: z.ZodEnum<{
8069
+ open: "open";
8070
+ closed: "closed";
8071
+ }>;
8072
+ }, z.core.$strip>>;
8073
+ }, z.core.$strip>>;
8074
+ }, z.core.$strip>, "mutation">;
8075
+ /**
8076
+ * Create a named profile. Without `cloneFromId` the new profile starts at
8077
+ * system defaults (empty memberships); with it, a copy of that profile.
8078
+ * Does not activate — the operator switches explicitly.
8079
+ */
8080
+ readonly createAlarmProfile: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
8081
+ name: z.ZodString;
8082
+ cloneFromId: z.ZodOptional<z.ZodString>;
8083
+ }, z.core.$strip>, z.ZodObject<{
8084
+ deviceId: z.ZodNullable<z.ZodNumber>;
8085
+ settings: z.ZodObject<{
8086
+ exitDelaySec: z.ZodNumber;
8087
+ entryDelaySec: z.ZodNumber;
8088
+ triggeredDurationSec: z.ZodNumber;
8089
+ announceArm: z.ZodOptional<z.ZodBoolean>;
8090
+ announceTargets: z.ZodArray<z.ZodString>;
8091
+ nonBlocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8092
+ mode: z.ZodEnum<{
8093
+ home: "home";
8094
+ away: "away";
8095
+ night: "night";
8096
+ vacation: "vacation";
8097
+ custom_bypass: "custom_bypass";
8098
+ }>;
8099
+ deviceIds: z.ZodArray<z.ZodNumber>;
8100
+ }, z.core.$strip>>>;
8101
+ blocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8102
+ mode: z.ZodEnum<{
8103
+ home: "home";
8104
+ away: "away";
8105
+ night: "night";
8106
+ vacation: "vacation";
8107
+ custom_bypass: "custom_bypass";
8108
+ }>;
8109
+ deviceIds: z.ZodArray<z.ZodNumber>;
8110
+ }, z.core.$strip>>>;
8111
+ secureOnArmOff: z.ZodDefault<z.ZodArray<z.ZodObject<{
8112
+ mode: z.ZodEnum<{
8113
+ home: "home";
8114
+ away: "away";
8115
+ night: "night";
8116
+ vacation: "vacation";
8117
+ custom_bypass: "custom_bypass";
8118
+ }>;
8119
+ deviceIds: z.ZodArray<z.ZodNumber>;
8120
+ }, z.core.$strip>>>;
8121
+ modeDelays: z.ZodDefault<z.ZodArray<z.ZodObject<{
8122
+ mode: z.ZodEnum<{
8123
+ home: "home";
8124
+ away: "away";
8125
+ night: "night";
8126
+ vacation: "vacation";
8127
+ custom_bypass: "custom_bypass";
8128
+ }>;
8129
+ exitDelaySec: z.ZodOptional<z.ZodNumber>;
8130
+ entryDelaySec: z.ZodOptional<z.ZodNumber>;
8131
+ triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
8132
+ }, z.core.$strip>>>;
8133
+ }, z.core.$strip>;
8134
+ profiles: z.ZodOptional<z.ZodObject<{
8135
+ activeId: z.ZodString;
8136
+ items: z.ZodArray<z.ZodObject<{
8137
+ id: z.ZodString;
8138
+ name: z.ZodString;
8139
+ isDefault: z.ZodBoolean;
8140
+ }, z.core.$strip>>;
8141
+ }, z.core.$strip>>;
8142
+ coverage: z.ZodArray<z.ZodObject<{
8143
+ mode: z.ZodEnum<{
8144
+ home: "home";
8145
+ away: "away";
8146
+ night: "night";
8147
+ vacation: "vacation";
8148
+ custom_bypass: "custom_bypass";
8149
+ }>;
8150
+ ruleCount: z.ZodNumber;
8151
+ allDevices: z.ZodBoolean;
8152
+ deviceIds: z.ZodArray<z.ZodNumber>;
8153
+ allDevicesExcept: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
8154
+ skippedDevices: z.ZodDefault<z.ZodArray<z.ZodObject<{
8155
+ deviceId: z.ZodNumber;
8156
+ reason: z.ZodEnum<{
8157
+ offline: "offline";
8158
+ muted: "muted";
8159
+ "detection-off": "detection-off";
8160
+ }>;
8161
+ }, z.core.$strip>>>;
8162
+ }, z.core.$strip>>;
8163
+ live: z.ZodOptional<z.ZodObject<{
8164
+ state: z.ZodEnum<{
8165
+ pending: "pending";
8166
+ disarmed: "disarmed";
8167
+ armed_home: "armed_home";
8168
+ armed_away: "armed_away";
8169
+ armed_night: "armed_night";
8170
+ armed_vacation: "armed_vacation";
8171
+ armed_custom_bypass: "armed_custom_bypass";
8172
+ arming: "arming";
8173
+ disarming: "disarming";
8174
+ triggered: "triggered";
8175
+ }>;
8176
+ targetMode: z.ZodNullable<z.ZodEnum<{
8177
+ home: "home";
8178
+ away: "away";
8179
+ night: "night";
8180
+ vacation: "vacation";
8181
+ custom_bypass: "custom_bypass";
8182
+ }>>;
8183
+ availableModes: z.ZodArray<z.ZodEnum<{
8184
+ home: "home";
8185
+ away: "away";
8186
+ night: "night";
8187
+ vacation: "vacation";
8188
+ custom_bypass: "custom_bypass";
8189
+ }>>;
8190
+ openings: z.ZodArray<z.ZodObject<{
8191
+ mode: z.ZodEnum<{
8192
+ home: "home";
8193
+ away: "away";
8194
+ night: "night";
8195
+ vacation: "vacation";
8196
+ custom_bypass: "custom_bypass";
8197
+ }>;
8198
+ devices: z.ZodArray<z.ZodObject<{
8199
+ deviceId: z.ZodNumber;
8200
+ name: z.ZodString;
8201
+ state: z.ZodString;
8202
+ blocking: z.ZodBoolean;
8203
+ }, z.core.$strip>>;
8204
+ unknown: z.ZodArray<z.ZodNumber>;
8205
+ }, z.core.$strip>>;
8206
+ exclusions: z.ZodArray<z.ZodObject<{
8207
+ deviceId: z.ZodNumber;
8208
+ name: z.ZodString;
8209
+ phase: z.ZodEnum<{
8210
+ open: "open";
8211
+ closed: "closed";
8212
+ }>;
8213
+ }, z.core.$strip>>;
8214
+ }, z.core.$strip>>;
8215
+ }, z.core.$strip>, "mutation">;
8216
+ /** Rename a profile (Default included — only the name, never the id). */
8217
+ readonly renameAlarmProfile: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
8218
+ id: z.ZodString;
8219
+ name: z.ZodString;
8220
+ }, z.core.$strip>, z.ZodObject<{
8221
+ deviceId: z.ZodNullable<z.ZodNumber>;
8222
+ settings: z.ZodObject<{
8223
+ exitDelaySec: z.ZodNumber;
8224
+ entryDelaySec: z.ZodNumber;
8225
+ triggeredDurationSec: z.ZodNumber;
8226
+ announceArm: z.ZodOptional<z.ZodBoolean>;
8227
+ announceTargets: z.ZodArray<z.ZodString>;
8228
+ nonBlocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8229
+ mode: z.ZodEnum<{
8230
+ home: "home";
8231
+ away: "away";
8232
+ night: "night";
8233
+ vacation: "vacation";
8234
+ custom_bypass: "custom_bypass";
8235
+ }>;
8236
+ deviceIds: z.ZodArray<z.ZodNumber>;
8237
+ }, z.core.$strip>>>;
8238
+ blocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8239
+ mode: z.ZodEnum<{
8240
+ home: "home";
8241
+ away: "away";
8242
+ night: "night";
8243
+ vacation: "vacation";
8244
+ custom_bypass: "custom_bypass";
8245
+ }>;
8246
+ deviceIds: z.ZodArray<z.ZodNumber>;
8247
+ }, z.core.$strip>>>;
8248
+ secureOnArmOff: z.ZodDefault<z.ZodArray<z.ZodObject<{
8249
+ mode: z.ZodEnum<{
8250
+ home: "home";
8251
+ away: "away";
8252
+ night: "night";
8253
+ vacation: "vacation";
8254
+ custom_bypass: "custom_bypass";
8255
+ }>;
8256
+ deviceIds: z.ZodArray<z.ZodNumber>;
8257
+ }, z.core.$strip>>>;
8258
+ modeDelays: z.ZodDefault<z.ZodArray<z.ZodObject<{
8259
+ mode: z.ZodEnum<{
8260
+ home: "home";
8261
+ away: "away";
8262
+ night: "night";
8263
+ vacation: "vacation";
8264
+ custom_bypass: "custom_bypass";
8265
+ }>;
8266
+ exitDelaySec: z.ZodOptional<z.ZodNumber>;
8267
+ entryDelaySec: z.ZodOptional<z.ZodNumber>;
8268
+ triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
8269
+ }, z.core.$strip>>>;
8270
+ }, z.core.$strip>;
8271
+ profiles: z.ZodOptional<z.ZodObject<{
8272
+ activeId: z.ZodString;
8273
+ items: z.ZodArray<z.ZodObject<{
8274
+ id: z.ZodString;
8275
+ name: z.ZodString;
8276
+ isDefault: z.ZodBoolean;
8277
+ }, z.core.$strip>>;
8278
+ }, z.core.$strip>>;
8279
+ coverage: z.ZodArray<z.ZodObject<{
8280
+ mode: z.ZodEnum<{
8281
+ home: "home";
8282
+ away: "away";
8283
+ night: "night";
8284
+ vacation: "vacation";
8285
+ custom_bypass: "custom_bypass";
8286
+ }>;
8287
+ ruleCount: z.ZodNumber;
8288
+ allDevices: z.ZodBoolean;
8289
+ deviceIds: z.ZodArray<z.ZodNumber>;
8290
+ allDevicesExcept: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
8291
+ skippedDevices: z.ZodDefault<z.ZodArray<z.ZodObject<{
8292
+ deviceId: z.ZodNumber;
8293
+ reason: z.ZodEnum<{
8294
+ offline: "offline";
8295
+ muted: "muted";
8296
+ "detection-off": "detection-off";
8297
+ }>;
8298
+ }, z.core.$strip>>>;
8299
+ }, z.core.$strip>>;
8300
+ live: z.ZodOptional<z.ZodObject<{
8301
+ state: z.ZodEnum<{
8302
+ pending: "pending";
8303
+ disarmed: "disarmed";
8304
+ armed_home: "armed_home";
8305
+ armed_away: "armed_away";
8306
+ armed_night: "armed_night";
8307
+ armed_vacation: "armed_vacation";
8308
+ armed_custom_bypass: "armed_custom_bypass";
8309
+ arming: "arming";
8310
+ disarming: "disarming";
8311
+ triggered: "triggered";
8312
+ }>;
8313
+ targetMode: z.ZodNullable<z.ZodEnum<{
8314
+ home: "home";
8315
+ away: "away";
8316
+ night: "night";
8317
+ vacation: "vacation";
8318
+ custom_bypass: "custom_bypass";
8319
+ }>>;
8320
+ availableModes: z.ZodArray<z.ZodEnum<{
8321
+ home: "home";
8322
+ away: "away";
8323
+ night: "night";
8324
+ vacation: "vacation";
8325
+ custom_bypass: "custom_bypass";
8326
+ }>>;
8327
+ openings: z.ZodArray<z.ZodObject<{
8328
+ mode: z.ZodEnum<{
8329
+ home: "home";
8330
+ away: "away";
8331
+ night: "night";
8332
+ vacation: "vacation";
8333
+ custom_bypass: "custom_bypass";
8334
+ }>;
8335
+ devices: z.ZodArray<z.ZodObject<{
8336
+ deviceId: z.ZodNumber;
8337
+ name: z.ZodString;
8338
+ state: z.ZodString;
8339
+ blocking: z.ZodBoolean;
8340
+ }, z.core.$strip>>;
8341
+ unknown: z.ZodArray<z.ZodNumber>;
8342
+ }, z.core.$strip>>;
8343
+ exclusions: z.ZodArray<z.ZodObject<{
8344
+ deviceId: z.ZodNumber;
8345
+ name: z.ZodString;
8346
+ phase: z.ZodEnum<{
8347
+ open: "open";
8348
+ closed: "closed";
8349
+ }>;
8350
+ }, z.core.$strip>>;
8351
+ }, z.core.$strip>>;
8352
+ }, z.core.$strip>, "mutation">;
8353
+ /**
8354
+ * Delete a non-default profile. If it was active, Default becomes active
8355
+ * and its settings are applied for arm decisions.
8356
+ */
8357
+ readonly deleteAlarmProfile: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
8358
+ id: z.ZodString;
8359
+ }, z.core.$strip>, z.ZodObject<{
8360
+ deviceId: z.ZodNullable<z.ZodNumber>;
8361
+ settings: z.ZodObject<{
8362
+ exitDelaySec: z.ZodNumber;
8363
+ entryDelaySec: z.ZodNumber;
8364
+ triggeredDurationSec: z.ZodNumber;
8365
+ announceArm: z.ZodOptional<z.ZodBoolean>;
8366
+ announceTargets: z.ZodArray<z.ZodString>;
8367
+ nonBlocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8368
+ mode: z.ZodEnum<{
8369
+ home: "home";
8370
+ away: "away";
8371
+ night: "night";
8372
+ vacation: "vacation";
8373
+ custom_bypass: "custom_bypass";
8374
+ }>;
8375
+ deviceIds: z.ZodArray<z.ZodNumber>;
8376
+ }, z.core.$strip>>>;
8377
+ blocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8378
+ mode: z.ZodEnum<{
8379
+ home: "home";
8380
+ away: "away";
8381
+ night: "night";
8382
+ vacation: "vacation";
8383
+ custom_bypass: "custom_bypass";
8384
+ }>;
8385
+ deviceIds: z.ZodArray<z.ZodNumber>;
8386
+ }, z.core.$strip>>>;
8387
+ secureOnArmOff: z.ZodDefault<z.ZodArray<z.ZodObject<{
8388
+ mode: z.ZodEnum<{
8389
+ home: "home";
8390
+ away: "away";
8391
+ night: "night";
8392
+ vacation: "vacation";
8393
+ custom_bypass: "custom_bypass";
8394
+ }>;
8395
+ deviceIds: z.ZodArray<z.ZodNumber>;
8396
+ }, z.core.$strip>>>;
8397
+ modeDelays: z.ZodDefault<z.ZodArray<z.ZodObject<{
8398
+ mode: z.ZodEnum<{
8399
+ home: "home";
8400
+ away: "away";
8401
+ night: "night";
8402
+ vacation: "vacation";
8403
+ custom_bypass: "custom_bypass";
8404
+ }>;
8405
+ exitDelaySec: z.ZodOptional<z.ZodNumber>;
8406
+ entryDelaySec: z.ZodOptional<z.ZodNumber>;
8407
+ triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
8408
+ }, z.core.$strip>>>;
8409
+ }, z.core.$strip>;
8410
+ profiles: z.ZodOptional<z.ZodObject<{
8411
+ activeId: z.ZodString;
8412
+ items: z.ZodArray<z.ZodObject<{
8413
+ id: z.ZodString;
8414
+ name: z.ZodString;
8415
+ isDefault: z.ZodBoolean;
8416
+ }, z.core.$strip>>;
8417
+ }, z.core.$strip>>;
8418
+ coverage: z.ZodArray<z.ZodObject<{
8419
+ mode: z.ZodEnum<{
8420
+ home: "home";
8421
+ away: "away";
8422
+ night: "night";
8423
+ vacation: "vacation";
8424
+ custom_bypass: "custom_bypass";
8425
+ }>;
8426
+ ruleCount: z.ZodNumber;
8427
+ allDevices: z.ZodBoolean;
8428
+ deviceIds: z.ZodArray<z.ZodNumber>;
8429
+ allDevicesExcept: z.ZodDefault<z.ZodArray<z.ZodNumber>>;
8430
+ skippedDevices: z.ZodDefault<z.ZodArray<z.ZodObject<{
8431
+ deviceId: z.ZodNumber;
8432
+ reason: z.ZodEnum<{
8433
+ offline: "offline";
8434
+ muted: "muted";
8435
+ "detection-off": "detection-off";
8436
+ }>;
8437
+ }, z.core.$strip>>>;
8438
+ }, z.core.$strip>>;
8439
+ live: z.ZodOptional<z.ZodObject<{
8440
+ state: z.ZodEnum<{
8441
+ pending: "pending";
8442
+ disarmed: "disarmed";
8443
+ armed_home: "armed_home";
8444
+ armed_away: "armed_away";
8445
+ armed_night: "armed_night";
8446
+ armed_vacation: "armed_vacation";
8447
+ armed_custom_bypass: "armed_custom_bypass";
8448
+ arming: "arming";
8449
+ disarming: "disarming";
8450
+ triggered: "triggered";
8451
+ }>;
8452
+ targetMode: z.ZodNullable<z.ZodEnum<{
8453
+ home: "home";
8454
+ away: "away";
8455
+ night: "night";
8456
+ vacation: "vacation";
8457
+ custom_bypass: "custom_bypass";
8458
+ }>>;
8459
+ availableModes: z.ZodArray<z.ZodEnum<{
8460
+ home: "home";
8461
+ away: "away";
8462
+ night: "night";
8463
+ vacation: "vacation";
8464
+ custom_bypass: "custom_bypass";
8465
+ }>>;
8466
+ openings: z.ZodArray<z.ZodObject<{
8467
+ mode: z.ZodEnum<{
8468
+ home: "home";
8469
+ away: "away";
8470
+ night: "night";
8471
+ vacation: "vacation";
8472
+ custom_bypass: "custom_bypass";
8473
+ }>;
8474
+ devices: z.ZodArray<z.ZodObject<{
8475
+ deviceId: z.ZodNumber;
8476
+ name: z.ZodString;
8477
+ state: z.ZodString;
8478
+ blocking: z.ZodBoolean;
8479
+ }, z.core.$strip>>;
8480
+ unknown: z.ZodArray<z.ZodNumber>;
8481
+ }, z.core.$strip>>;
8482
+ exclusions: z.ZodArray<z.ZodObject<{
8483
+ deviceId: z.ZodNumber;
8484
+ name: z.ZodString;
8485
+ phase: z.ZodEnum<{
8486
+ open: "open";
8487
+ closed: "closed";
8488
+ }>;
8489
+ }, z.core.$strip>>;
8490
+ }, z.core.$strip>>;
8491
+ }, z.core.$strip>, "mutation">;
8492
+ /**
8493
+ * Make this profile active: its membership/delays blob is applied to the
8494
+ * panel so the next arm uses it.
8495
+ */
8496
+ readonly activateAlarmProfile: import("./capability-definition.js").CapabilityMethodSchema<z.ZodObject<{
8497
+ id: z.ZodString;
8498
+ }, z.core.$strip>, z.ZodObject<{
8499
+ deviceId: z.ZodNullable<z.ZodNumber>;
8500
+ settings: z.ZodObject<{
8501
+ exitDelaySec: z.ZodNumber;
8502
+ entryDelaySec: z.ZodNumber;
8503
+ triggeredDurationSec: z.ZodNumber;
8504
+ announceArm: z.ZodOptional<z.ZodBoolean>;
8505
+ announceTargets: z.ZodArray<z.ZodString>;
8506
+ nonBlocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8507
+ mode: z.ZodEnum<{
8508
+ home: "home";
8509
+ away: "away";
8510
+ night: "night";
8511
+ vacation: "vacation";
8512
+ custom_bypass: "custom_bypass";
8513
+ }>;
8514
+ deviceIds: z.ZodArray<z.ZodNumber>;
8515
+ }, z.core.$strip>>>;
8516
+ blocking: z.ZodDefault<z.ZodArray<z.ZodObject<{
8517
+ mode: z.ZodEnum<{
8518
+ home: "home";
8519
+ away: "away";
8520
+ night: "night";
8521
+ vacation: "vacation";
8522
+ custom_bypass: "custom_bypass";
8523
+ }>;
8524
+ deviceIds: z.ZodArray<z.ZodNumber>;
8525
+ }, z.core.$strip>>>;
8526
+ secureOnArmOff: z.ZodDefault<z.ZodArray<z.ZodObject<{
8527
+ mode: z.ZodEnum<{
8528
+ home: "home";
8529
+ away: "away";
8530
+ night: "night";
8531
+ vacation: "vacation";
8532
+ custom_bypass: "custom_bypass";
8533
+ }>;
8534
+ deviceIds: z.ZodArray<z.ZodNumber>;
8535
+ }, z.core.$strip>>>;
8536
+ modeDelays: z.ZodDefault<z.ZodArray<z.ZodObject<{
8537
+ mode: z.ZodEnum<{
8538
+ home: "home";
8539
+ away: "away";
8540
+ night: "night";
8541
+ vacation: "vacation";
8542
+ custom_bypass: "custom_bypass";
8543
+ }>;
8544
+ exitDelaySec: z.ZodOptional<z.ZodNumber>;
8545
+ entryDelaySec: z.ZodOptional<z.ZodNumber>;
8546
+ triggeredDurationSec: z.ZodOptional<z.ZodNumber>;
8547
+ }, z.core.$strip>>>;
8548
+ }, z.core.$strip>;
8549
+ profiles: z.ZodOptional<z.ZodObject<{
8550
+ activeId: z.ZodString;
8551
+ items: z.ZodArray<z.ZodObject<{
8552
+ id: z.ZodString;
8553
+ name: z.ZodString;
8554
+ isDefault: z.ZodBoolean;
8555
+ }, z.core.$strip>>;
8556
+ }, z.core.$strip>>;
7086
8557
  coverage: z.ZodArray<z.ZodObject<{
7087
8558
  mode: z.ZodEnum<{
7088
8559
  home: "home";