@neta-art/cohub 5.10.0 → 7.0.0

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 (62) hide show
  1. package/README.md +47 -50
  2. package/dist/board/animation.d.ts +157 -67
  3. package/dist/board/animation.js +161 -306
  4. package/dist/board/core/connections.js +4 -4
  5. package/dist/board/core/export-plan.js +1 -1
  6. package/dist/board/core/shape-types.js +0 -1
  7. package/dist/board/geometry.js +4 -4
  8. package/dist/board/index.d.ts +8 -7
  9. package/dist/board/index.js +8 -9
  10. package/dist/board/mutation.d.ts +2 -17
  11. package/dist/board/mutation.js +2 -93
  12. package/dist/board/render/renderers/text-card-renderer.js +1 -1
  13. package/dist/board/semantic-document.d.ts +30 -0
  14. package/dist/board/semantic-document.js +271 -0
  15. package/dist/board/semantic-mutation.d.ts +10 -0
  16. package/dist/board/semantic-mutation.js +203 -0
  17. package/dist/chunks/http.d.ts +27 -95
  18. package/dist/chunks/http.js +628 -1610
  19. package/dist/chunks/transport.js +1 -1
  20. package/dist/chunks/websocket.d.ts +3462 -533
  21. package/dist/chunks/websocket.js +1 -1
  22. package/dist/http.d.ts +3 -3
  23. package/dist/index.d.ts +158 -299
  24. package/dist/index.js +1207 -499
  25. package/dist/protocol/dist/board-authoring.d.ts +1305 -0
  26. package/dist/protocol/dist/board-authoring.js +291 -0
  27. package/dist/protocol/dist/board-capability-registry.d.ts +2 -0
  28. package/dist/protocol/dist/board-capability-registry.js +74 -0
  29. package/dist/protocol/dist/board-codec.d.ts +2 -0
  30. package/dist/protocol/dist/board-codec.js +19 -0
  31. package/dist/protocol/dist/board-composition.d.ts +383 -0
  32. package/dist/protocol/dist/board-composition.js +310 -0
  33. package/dist/protocol/dist/board-connection.d.ts +16 -16
  34. package/dist/protocol/dist/board-connection.js +16 -16
  35. package/dist/protocol/dist/board-constants.js +0 -25
  36. package/dist/protocol/dist/board-document.d.ts +34 -3
  37. package/dist/protocol/dist/board-document.js +3 -1
  38. package/dist/protocol/dist/board-effect.d.ts +94 -0
  39. package/dist/protocol/dist/board-effect.js +53 -0
  40. package/dist/protocol/dist/board-json.js +16 -0
  41. package/dist/protocol/dist/board-node.d.ts +1 -12
  42. package/dist/protocol/dist/board-node.js +1 -81
  43. package/dist/protocol/dist/board.d.ts +42 -245
  44. package/dist/protocol/dist/board.js +56 -117
  45. package/dist/protocol/dist/index.d.ts +9 -4
  46. package/dist/types.d.ts +4 -1
  47. package/docs/work-runtime-guide.md +19 -3
  48. package/package.json +2 -2
  49. package/dist/board/codec.d.ts +0 -27
  50. package/dist/board/codec.js +0 -277
  51. package/dist/board/nodes.d.ts +0 -113
  52. package/dist/board/nodes.js +0 -154
  53. package/dist/protocol/dist/board-content.js +0 -26
  54. package/dist/protocol/dist/identifiers.js +0 -10
  55. package/dist/protocol/dist/index.js +0 -14
  56. package/dist/protocol/dist/provenance.js +0 -15
  57. package/dist/protocol/dist/public-identifiers.js +0 -38
  58. package/dist/protocol/dist/realtime/board-awareness.js +0 -119
  59. package/dist/protocol/dist/ui-command.js +0 -2
  60. package/dist/protocol/dist/work-promotion-stats.js +0 -11
  61. package/dist/protocol/dist/work-surface.js +0 -2
  62. package/dist/protocol/dist/work-view-stats.js +0 -3
@@ -511,20 +511,10 @@ type BoardCapability = {
511
511
  };
512
512
  //#endregion
513
513
  //#region ../protocol/dist/board-connection.d.ts
514
- /**
515
- * Which ends carry an arrowhead.
516
- *
517
- * This is the *semantic* direction, not a style flag: `forward` means the
518
- * relation reads source → target, `backward` means target → source, and `none`
519
- * means the relation is symmetric. Renderers derive arrowheads from it, so the
520
- * drawing can never disagree with the meaning.
521
- */
522
- declare const BOARD_CONNECTION_DIRECTIONS: readonly ["none", "forward", "backward", "both"];
523
- type BoardConnectionDirection = (typeof BOARD_CONNECTION_DIRECTIONS)[number];
524
514
  declare const BoardConnectionSchema: z.ZodObject<{
525
515
  id: z.ZodString;
526
516
  source: z.ZodObject<{
527
- nodeId: z.ZodString;
517
+ itemId: z.ZodString;
528
518
  portId: z.ZodOptional<z.ZodString>;
529
519
  anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
530
520
  kind: z.ZodLiteral<"auto">;
@@ -544,7 +534,7 @@ declare const BoardConnectionSchema: z.ZodObject<{
544
534
  }, z.core.$strip>]>>;
545
535
  }, z.core.$strip>;
546
536
  target: z.ZodObject<{
547
- nodeId: z.ZodString;
537
+ itemId: z.ZodString;
548
538
  portId: z.ZodOptional<z.ZodString>;
549
539
  anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
550
540
  kind: z.ZodLiteral<"auto">;
@@ -592,254 +582,93 @@ declare const BoardConnectionSchema: z.ZodObject<{
592
582
  }>>;
593
583
  }, z.core.$strip>>;
594
584
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
595
- }, z.core.$strip>;
585
+ }, z.core.$strict>;
596
586
  type BoardConnection = z.infer<typeof BoardConnectionSchema>;
597
- /** Server-owned fields, mirroring how nodes carry a board id and revision. */
598
- type BoardConnectionRecord = BoardConnection & {
599
- boardId: string;
600
- revision: number;
601
- createdAt: string | null;
602
- updatedAt: string | null;
603
- };
604
- /** The client-authored form of a connection (no server-owned fields). */
605
- type BoardConnectionInput = BoardConnection;
606
- /**
607
- * A patch to an existing connection.
608
- *
609
- * `id` is excluded: a connection's identity never changes, and re-pointing both
610
- * endpoints is an edit of the same relation, not a new one.
611
- */
612
- declare const BoardConnectionPatchSchema: z.ZodObject<{
613
- source: z.ZodOptional<z.ZodObject<{
614
- nodeId: z.ZodString;
615
- portId: z.ZodOptional<z.ZodString>;
616
- anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
617
- kind: z.ZodLiteral<"auto">;
618
- }, z.core.$strip>, z.ZodObject<{
619
- kind: z.ZodLiteral<"side">;
620
- side: z.ZodEnum<{
621
- bottom: "bottom";
622
- left: "left";
623
- right: "right";
624
- top: "top";
625
- }>;
626
- offset: z.ZodDefault<z.ZodNumber>;
627
- }, z.core.$strip>, z.ZodObject<{
628
- kind: z.ZodLiteral<"fixed">;
629
- nx: z.ZodNumber;
630
- ny: z.ZodNumber;
631
- }, z.core.$strip>]>>;
632
- }, z.core.$strip>>;
633
- target: z.ZodOptional<z.ZodObject<{
634
- nodeId: z.ZodString;
635
- portId: z.ZodOptional<z.ZodString>;
636
- anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
637
- kind: z.ZodLiteral<"auto">;
638
- }, z.core.$strip>, z.ZodObject<{
639
- kind: z.ZodLiteral<"side">;
640
- side: z.ZodEnum<{
641
- bottom: "bottom";
642
- left: "left";
643
- right: "right";
644
- top: "top";
645
- }>;
646
- offset: z.ZodDefault<z.ZodNumber>;
647
- }, z.core.$strip>, z.ZodObject<{
648
- kind: z.ZodLiteral<"fixed">;
649
- nx: z.ZodNumber;
650
- ny: z.ZodNumber;
651
- }, z.core.$strip>]>>;
652
- }, z.core.$strip>>;
653
- relation: z.ZodOptional<z.ZodDefault<z.ZodString>>;
654
- direction: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
655
- backward: "backward";
656
- both: "both";
657
- forward: "forward";
658
- none: "none";
659
- }>>>;
660
- label: z.ZodOptional<z.ZodDefault<z.ZodString>>;
661
- routing: z.ZodOptional<z.ZodDefault<z.ZodObject<{
662
- kind: z.ZodDefault<z.ZodEnum<{
663
- curve: "curve";
664
- orthogonal: "orthogonal";
665
- straight: "straight";
666
- }>>;
667
- bend: z.ZodDefault<z.ZodNumber>;
668
- waypoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
669
- x: z.ZodNumber;
670
- y: z.ZodNumber;
671
- }, z.core.$strip>>>;
672
- }, z.core.$strip>>>;
673
- style: z.ZodOptional<z.ZodDefault<z.ZodObject<{
674
- color: z.ZodDefault<z.ZodString>;
675
- size: z.ZodDefault<z.ZodNumber>;
676
- line: z.ZodDefault<z.ZodEnum<{
677
- dashed: "dashed";
678
- solid: "solid";
679
- }>>;
680
- }, z.core.$strip>>>;
681
- metadata: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
682
- }, z.core.$strip>;
683
- type BoardConnectionPatch = z.infer<typeof BoardConnectionPatchSchema>;
684
- //#endregion
685
- //#region ../protocol/dist/board-node.d.ts
686
- declare const BOARD_COLOR_IDS: readonly ["brand", "neutral", "black", "white", "blue", "green", "amber", "violet", "rose"];
687
- type BoardColorId = (typeof BOARD_COLOR_IDS)[number];
688
- declare const BOARD_GEO_KINDS: readonly ["rectangle", "rounded", "ellipse", "diamond", "triangle"];
689
- type BoardGeoKind = (typeof BOARD_GEO_KINDS)[number];
690
- declare const BOARD_NATIVE_NODE_TYPES: readonly ["image", "video", "audio", "file", "task", "text", "geo", "draw", "arrow", "frame"];
691
- type BoardNativeNodeType = (typeof BOARD_NATIVE_NODE_TYPES)[number];
692
- type BoardNodeValidationDiagnostic = {
693
- severity: "error";
694
- code: "INVALID_BOARD_NODE" | "INVALID_BOARD_GEOMETRY";
695
- message: string;
696
- path: string;
697
- expected?: string;
698
- received?: unknown;
699
- allowedValues?: readonly string[];
700
- coordinateSpace?: BoardCoordinateSpace;
701
- };
702
- type BoardJsonSchema = Record<string, unknown>;
703
- type BoardNodeContract = {
704
- types: readonly BoardNativeNodeType[];
705
- colors: readonly BoardColorId[];
706
- geos: readonly BoardGeoKind[];
707
- coordinates: {
708
- frame: "world";
709
- drawPoints: "frame-local";
710
- arrowEndpoints: "world";
711
- };
712
- references: {
713
- nodeTypes: readonly ["image", "video", "audio", "file"];
714
- kind: "space_file";
715
- pathField: "refPath";
716
- };
717
- schemas: {
718
- envelope: BoardJsonSchema;
719
- data: Record<BoardNativeNodeType, BoardJsonSchema>;
720
- view: Record<BoardNativeNodeType, BoardJsonSchema>;
721
- };
722
- };
723
- type BoardNodeLike = {
724
- nodeId?: unknown;
725
- type: unknown;
726
- parentId?: unknown;
727
- orderKey?: unknown;
728
- x: number;
729
- y: number;
730
- width: number;
731
- height: number;
732
- rotation?: unknown;
733
- refKind?: unknown;
734
- refPath?: unknown;
735
- refUrl?: unknown;
736
- view?: unknown;
737
- style?: unknown;
738
- data?: unknown;
739
- };
740
- declare const BOARD_NODE_CONTRACT: BoardNodeContract;
741
- declare function validateBoardNodeInput(node: BoardNodeLike, path?: string): BoardNodeValidationDiagnostic[];
742
587
  //#endregion
743
- //#region ../protocol/dist/board.d.ts
744
- declare const BOARD_SNAPSHOT_KIND: "cohub.board.snapshot";
745
- declare const BOARD_PROTOCOL_VERSION: 1;
746
- declare const BoardManifestSchema: z.ZodObject<{
747
- kind: z.ZodLiteral<"cohub.board.manifest">;
748
- version: z.ZodLiteral<1>;
749
- boardId: z.ZodString;
750
- title: z.ZodString;
751
- }, z.core.$strip>;
752
- type BoardManifest = z.infer<typeof BoardManifestSchema>;
753
- declare const BoardTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
754
- type: z.ZodLiteral<"node">;
755
- nodeId: z.ZodString;
756
- }, z.core.$strip>, z.ZodObject<{
588
+ //#region ../protocol/dist/board-composition.d.ts
589
+ declare const BoardEasingSchema: z.ZodEnum<{
590
+ "ease-in-cubic": "ease-in-cubic";
591
+ "ease-in-out-cubic": "ease-in-out-cubic";
592
+ "ease-in-out-quad": "ease-in-out-quad";
593
+ "ease-in-quad": "ease-in-quad";
594
+ "ease-out-cubic": "ease-out-cubic";
595
+ "ease-out-expo": "ease-out-expo";
596
+ "ease-out-quad": "ease-out-quad";
597
+ "ease-out-quart": "ease-out-quart";
598
+ linear: "linear";
599
+ }>;
600
+ type BoardEasing = z.infer<typeof BoardEasingSchema>;
601
+ declare const BoardAnimationTargetSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
602
+ type: z.ZodLiteral<"item">;
603
+ itemId: z.ZodString;
604
+ }, z.core.$strict>, z.ZodObject<{
757
605
  type: z.ZodLiteral<"effect">;
758
606
  effectId: z.ZodString;
759
- }, z.core.$strip>, z.ZodObject<{
760
- type: z.ZodLiteral<"board">;
761
- }, z.core.$strip>, z.ZodObject<{
607
+ }, z.core.$strict>, z.ZodObject<{
762
608
  type: z.ZodLiteral<"camera">;
763
- }, z.core.$strip>], "type">;
764
- declare const BoardCameraStateSchema: z.ZodObject<{
765
- centerX: z.ZodNumber;
766
- centerY: z.ZodNumber;
767
- zoom: z.ZodNumber;
768
- }, z.core.$strip>;
769
- declare const BoardCameraFocusSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
770
- type: z.ZodLiteral<"rect">;
771
- rect: z.ZodObject<{
772
- x: z.ZodNumber;
773
- y: z.ZodNumber;
774
- width: z.ZodNumber;
775
- height: z.ZodNumber;
776
- }, z.core.$strip>;
777
- }, z.core.$strip>, z.ZodObject<{
778
- type: z.ZodLiteral<"node">;
779
- nodeId: z.ZodString;
780
- }, z.core.$strip>, z.ZodObject<{
781
- type: z.ZodLiteral<"nodes">;
782
- nodeIds: z.ZodArray<z.ZodString>;
783
- }, z.core.$strip>, z.ZodObject<{
784
- type: z.ZodLiteral<"frame">;
785
- frameId: z.ZodString;
786
- }, z.core.$strip>], "type">;
787
- declare const BoardCameraFocusParamsSchema: z.ZodObject<{
788
- focus: z.ZodDiscriminatedUnion<[z.ZodObject<{
789
- type: z.ZodLiteral<"rect">;
790
- rect: z.ZodObject<{
791
- x: z.ZodNumber;
792
- y: z.ZodNumber;
793
- width: z.ZodNumber;
794
- height: z.ZodNumber;
795
- }, z.core.$strip>;
796
- }, z.core.$strip>, z.ZodObject<{
797
- type: z.ZodLiteral<"node">;
798
- nodeId: z.ZodString;
799
- }, z.core.$strip>, z.ZodObject<{
800
- type: z.ZodLiteral<"nodes">;
801
- nodeIds: z.ZodArray<z.ZodString>;
802
- }, z.core.$strip>, z.ZodObject<{
803
- type: z.ZodLiteral<"frame">;
804
- frameId: z.ZodString;
805
- }, z.core.$strip>], "type">;
806
- fit: z.ZodDefault<z.ZodEnum<{
807
- contain: "contain";
808
- cover: "cover";
609
+ }, z.core.$strict>, z.ZodObject<{
610
+ type: z.ZodLiteral<"board">;
611
+ }, z.core.$strict>], "type">;
612
+ type BoardAnimationTarget = z.infer<typeof BoardAnimationTargetSchema>;
613
+ type BoardTrackInterpolation = "linear" | "step";
614
+ declare const BoardTrackSchema: z.ZodObject<{
615
+ id: z.ZodString;
616
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
617
+ type: z.ZodLiteral<"item">;
618
+ itemId: z.ZodString;
619
+ }, z.core.$strict>, z.ZodObject<{
620
+ type: z.ZodLiteral<"effect">;
621
+ effectId: z.ZodString;
622
+ }, z.core.$strict>, z.ZodObject<{
623
+ type: z.ZodLiteral<"camera">;
624
+ }, z.core.$strict>, z.ZodObject<{
625
+ type: z.ZodLiteral<"board">;
626
+ }, z.core.$strict>], "type">;
627
+ channel: z.ZodString;
628
+ channelVersion: z.ZodDefault<z.ZodNumber>;
629
+ interpolation: z.ZodDefault<z.ZodEnum<{
630
+ linear: "linear";
631
+ step: "step";
809
632
  }>>;
810
- padding: z.ZodDefault<z.ZodNumber>;
811
- minZoom: z.ZodOptional<z.ZodNumber>;
812
- maxZoom: z.ZodOptional<z.ZodNumber>;
813
- }, z.core.$strip>;
814
- declare const BoardAssetRefSchema: z.ZodObject<{
815
- type: z.ZodEnum<{
816
- extension: "extension";
817
- "space-file": "space-file";
818
- }>;
819
- ref: z.ZodString;
820
- digest: z.ZodOptional<z.ZodString>;
821
- }, z.core.$strip>;
822
- declare const BoardKeyframeSchema: z.ZodObject<{
823
- at: z.ZodNumber;
824
- value: z.ZodUnknown;
825
- easing: z.ZodOptional<z.ZodString>;
826
- }, z.core.$strip>;
827
- declare const BoardClipSchema: z.ZodObject<{
633
+ fill: z.ZodDefault<z.ZodEnum<{
634
+ backwards: "backwards";
635
+ both: "both";
636
+ forwards: "forwards";
637
+ none: "none";
638
+ }>>;
639
+ keyframes: z.ZodArray<z.ZodObject<{
640
+ time: z.ZodNumber;
641
+ value: z.ZodUnknown;
642
+ easing: z.ZodOptional<z.ZodEnum<{
643
+ "ease-in-cubic": "ease-in-cubic";
644
+ "ease-in-out-cubic": "ease-in-out-cubic";
645
+ "ease-in-out-quad": "ease-in-out-quad";
646
+ "ease-in-quad": "ease-in-quad";
647
+ "ease-out-cubic": "ease-out-cubic";
648
+ "ease-out-expo": "ease-out-expo";
649
+ "ease-out-quad": "ease-out-quad";
650
+ "ease-out-quart": "ease-out-quart";
651
+ linear: "linear";
652
+ }>>;
653
+ }, z.core.$strict>>;
654
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
655
+ }, z.core.$strict>;
656
+ type BoardTrack = z.infer<typeof BoardTrackSchema>;
657
+ declare const BoardProceduralClipSchema: z.ZodObject<{
828
658
  id: z.ZodString;
829
- sequenceId: z.ZodString;
830
659
  kind: z.ZodString;
831
660
  kindVersion: z.ZodNumber;
832
661
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
833
- type: z.ZodLiteral<"node">;
834
- nodeId: z.ZodString;
835
- }, z.core.$strip>, z.ZodObject<{
662
+ type: z.ZodLiteral<"item">;
663
+ itemId: z.ZodString;
664
+ }, z.core.$strict>, z.ZodObject<{
836
665
  type: z.ZodLiteral<"effect">;
837
666
  effectId: z.ZodString;
838
- }, z.core.$strip>, z.ZodObject<{
839
- type: z.ZodLiteral<"board">;
840
- }, z.core.$strip>, z.ZodObject<{
667
+ }, z.core.$strict>, z.ZodObject<{
841
668
  type: z.ZodLiteral<"camera">;
842
- }, z.core.$strip>], "type">;
669
+ }, z.core.$strict>, z.ZodObject<{
670
+ type: z.ZodLiteral<"board">;
671
+ }, z.core.$strict>], "type">;
843
672
  start: z.ZodNumber;
844
673
  duration: z.ZodNumber;
845
674
  layer: z.ZodDefault<z.ZodEnum<{
@@ -854,13 +683,18 @@ declare const BoardClipSchema: z.ZodObject<{
854
683
  forwards: "forwards";
855
684
  none: "none";
856
685
  }>>;
857
- easing: z.ZodDefault<z.ZodString>;
686
+ easing: z.ZodDefault<z.ZodEnum<{
687
+ "ease-in-cubic": "ease-in-cubic";
688
+ "ease-in-out-cubic": "ease-in-out-cubic";
689
+ "ease-in-out-quad": "ease-in-out-quad";
690
+ "ease-in-quad": "ease-in-quad";
691
+ "ease-out-cubic": "ease-out-cubic";
692
+ "ease-out-expo": "ease-out-expo";
693
+ "ease-out-quad": "ease-out-quad";
694
+ "ease-out-quart": "ease-out-quart";
695
+ linear: "linear";
696
+ }>>;
858
697
  params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
859
- keyframes: z.ZodDefault<z.ZodArray<z.ZodObject<{
860
- at: z.ZodNumber;
861
- value: z.ZodUnknown;
862
- easing: z.ZodOptional<z.ZodString>;
863
- }, z.core.$strip>>>;
864
698
  assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
865
699
  type: z.ZodEnum<{
866
700
  extension: "extension";
@@ -868,69 +702,2892 @@ declare const BoardClipSchema: z.ZodObject<{
868
702
  }>;
869
703
  ref: z.ZodString;
870
704
  digest: z.ZodOptional<z.ZodString>;
871
- }, z.core.$strip>>>;
705
+ }, z.core.$strict>>>;
872
706
  seed: z.ZodString;
873
707
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
874
- }, z.core.$strip>;
875
- declare const BoardEffectSchema: z.ZodObject<{
708
+ }, z.core.$strict>;
709
+ type BoardProceduralClip = z.infer<typeof BoardProceduralClipSchema>;
710
+ declare const BoardTimelineMarkerSchema: z.ZodObject<{
876
711
  id: z.ZodString;
877
- boardId: z.ZodString;
878
- target: z.ZodDiscriminatedUnion<[z.ZodObject<{
879
- type: z.ZodLiteral<"node">;
880
- nodeId: z.ZodString;
881
- }, z.core.$strip>, z.ZodObject<{
882
- type: z.ZodLiteral<"board">;
712
+ time: z.ZodNumber;
713
+ duration: z.ZodOptional<z.ZodNumber>;
714
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
715
+ }, z.core.$strict>;
716
+ type BoardTimelineMarker = z.infer<typeof BoardTimelineMarkerSchema>;
717
+ declare const BoardTimelineSchema: z.ZodObject<{
718
+ duration: z.ZodNumber;
719
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
720
+ id: z.ZodString;
721
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
722
+ type: z.ZodLiteral<"item">;
723
+ itemId: z.ZodString;
724
+ }, z.core.$strict>, z.ZodObject<{
725
+ type: z.ZodLiteral<"effect">;
726
+ effectId: z.ZodString;
727
+ }, z.core.$strict>, z.ZodObject<{
728
+ type: z.ZodLiteral<"camera">;
729
+ }, z.core.$strict>, z.ZodObject<{
730
+ type: z.ZodLiteral<"board">;
731
+ }, z.core.$strict>], "type">;
732
+ channel: z.ZodString;
733
+ channelVersion: z.ZodDefault<z.ZodNumber>;
734
+ interpolation: z.ZodDefault<z.ZodEnum<{
735
+ linear: "linear";
736
+ step: "step";
737
+ }>>;
738
+ fill: z.ZodDefault<z.ZodEnum<{
739
+ backwards: "backwards";
740
+ both: "both";
741
+ forwards: "forwards";
742
+ none: "none";
743
+ }>>;
744
+ keyframes: z.ZodArray<z.ZodObject<{
745
+ time: z.ZodNumber;
746
+ value: z.ZodUnknown;
747
+ easing: z.ZodOptional<z.ZodEnum<{
748
+ "ease-in-cubic": "ease-in-cubic";
749
+ "ease-in-out-cubic": "ease-in-out-cubic";
750
+ "ease-in-out-quad": "ease-in-out-quad";
751
+ "ease-in-quad": "ease-in-quad";
752
+ "ease-out-cubic": "ease-out-cubic";
753
+ "ease-out-expo": "ease-out-expo";
754
+ "ease-out-quad": "ease-out-quad";
755
+ "ease-out-quart": "ease-out-quart";
756
+ linear: "linear";
757
+ }>>;
758
+ }, z.core.$strict>>;
759
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
760
+ }, z.core.$strict>>>;
761
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
762
+ id: z.ZodString;
763
+ kind: z.ZodString;
764
+ kindVersion: z.ZodNumber;
765
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
766
+ type: z.ZodLiteral<"item">;
767
+ itemId: z.ZodString;
768
+ }, z.core.$strict>, z.ZodObject<{
769
+ type: z.ZodLiteral<"effect">;
770
+ effectId: z.ZodString;
771
+ }, z.core.$strict>, z.ZodObject<{
772
+ type: z.ZodLiteral<"camera">;
773
+ }, z.core.$strict>, z.ZodObject<{
774
+ type: z.ZodLiteral<"board">;
775
+ }, z.core.$strict>], "type">;
776
+ start: z.ZodNumber;
777
+ duration: z.ZodNumber;
778
+ layer: z.ZodDefault<z.ZodEnum<{
779
+ behind: "behind";
780
+ content: "content";
781
+ front: "front";
782
+ screen: "screen";
783
+ }>>;
784
+ fill: z.ZodDefault<z.ZodEnum<{
785
+ backwards: "backwards";
786
+ both: "both";
787
+ forwards: "forwards";
788
+ none: "none";
789
+ }>>;
790
+ easing: z.ZodDefault<z.ZodEnum<{
791
+ "ease-in-cubic": "ease-in-cubic";
792
+ "ease-in-out-cubic": "ease-in-out-cubic";
793
+ "ease-in-out-quad": "ease-in-out-quad";
794
+ "ease-in-quad": "ease-in-quad";
795
+ "ease-out-cubic": "ease-out-cubic";
796
+ "ease-out-expo": "ease-out-expo";
797
+ "ease-out-quad": "ease-out-quad";
798
+ "ease-out-quart": "ease-out-quart";
799
+ linear: "linear";
800
+ }>>;
801
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
802
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
803
+ type: z.ZodEnum<{
804
+ extension: "extension";
805
+ "space-file": "space-file";
806
+ }>;
807
+ ref: z.ZodString;
808
+ digest: z.ZodOptional<z.ZodString>;
809
+ }, z.core.$strict>>>;
810
+ seed: z.ZodString;
811
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
812
+ }, z.core.$strict>>>;
813
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
814
+ id: z.ZodString;
815
+ time: z.ZodNumber;
816
+ duration: z.ZodOptional<z.ZodNumber>;
817
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
818
+ }, z.core.$strict>>>;
819
+ }, z.core.$strict>;
820
+ type BoardTimeline = z.infer<typeof BoardTimelineSchema>;
821
+ declare const BoardCompositionPlaybackSchema: z.ZodObject<{
822
+ loop: z.ZodDefault<z.ZodBoolean>;
823
+ endBehavior: z.ZodDefault<z.ZodEnum<{
824
+ hold: "hold";
825
+ reset: "reset";
826
+ }>>;
827
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
828
+ mode: z.ZodLiteral<"base">;
829
+ }, z.core.$strict>, z.ZodObject<{
830
+ mode: z.ZodLiteral<"time">;
831
+ time: z.ZodNumber;
832
+ }, z.core.$strict>, z.ZodObject<{
833
+ mode: z.ZodLiteral<"marker">;
834
+ markerId: z.ZodString;
835
+ }, z.core.$strict>], "mode">>;
836
+ }, z.core.$strict>;
837
+ type BoardCompositionPlayback = z.infer<typeof BoardCompositionPlaybackSchema>;
838
+ declare const BoardCompositionInputSchema: z.ZodObject<{
839
+ id: z.ZodString;
840
+ name: z.ZodString;
841
+ timeline: z.ZodObject<{
842
+ duration: z.ZodNumber;
843
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
844
+ id: z.ZodString;
845
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
846
+ type: z.ZodLiteral<"item">;
847
+ itemId: z.ZodString;
848
+ }, z.core.$strict>, z.ZodObject<{
849
+ type: z.ZodLiteral<"effect">;
850
+ effectId: z.ZodString;
851
+ }, z.core.$strict>, z.ZodObject<{
852
+ type: z.ZodLiteral<"camera">;
853
+ }, z.core.$strict>, z.ZodObject<{
854
+ type: z.ZodLiteral<"board">;
855
+ }, z.core.$strict>], "type">;
856
+ channel: z.ZodString;
857
+ channelVersion: z.ZodDefault<z.ZodNumber>;
858
+ interpolation: z.ZodDefault<z.ZodEnum<{
859
+ linear: "linear";
860
+ step: "step";
861
+ }>>;
862
+ fill: z.ZodDefault<z.ZodEnum<{
863
+ backwards: "backwards";
864
+ both: "both";
865
+ forwards: "forwards";
866
+ none: "none";
867
+ }>>;
868
+ keyframes: z.ZodArray<z.ZodObject<{
869
+ time: z.ZodNumber;
870
+ value: z.ZodUnknown;
871
+ easing: z.ZodOptional<z.ZodEnum<{
872
+ "ease-in-cubic": "ease-in-cubic";
873
+ "ease-in-out-cubic": "ease-in-out-cubic";
874
+ "ease-in-out-quad": "ease-in-out-quad";
875
+ "ease-in-quad": "ease-in-quad";
876
+ "ease-out-cubic": "ease-out-cubic";
877
+ "ease-out-expo": "ease-out-expo";
878
+ "ease-out-quad": "ease-out-quad";
879
+ "ease-out-quart": "ease-out-quart";
880
+ linear: "linear";
881
+ }>>;
882
+ }, z.core.$strict>>;
883
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
884
+ }, z.core.$strict>>>;
885
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
886
+ id: z.ZodString;
887
+ kind: z.ZodString;
888
+ kindVersion: z.ZodNumber;
889
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
890
+ type: z.ZodLiteral<"item">;
891
+ itemId: z.ZodString;
892
+ }, z.core.$strict>, z.ZodObject<{
893
+ type: z.ZodLiteral<"effect">;
894
+ effectId: z.ZodString;
895
+ }, z.core.$strict>, z.ZodObject<{
896
+ type: z.ZodLiteral<"camera">;
897
+ }, z.core.$strict>, z.ZodObject<{
898
+ type: z.ZodLiteral<"board">;
899
+ }, z.core.$strict>], "type">;
900
+ start: z.ZodNumber;
901
+ duration: z.ZodNumber;
902
+ layer: z.ZodDefault<z.ZodEnum<{
903
+ behind: "behind";
904
+ content: "content";
905
+ front: "front";
906
+ screen: "screen";
907
+ }>>;
908
+ fill: z.ZodDefault<z.ZodEnum<{
909
+ backwards: "backwards";
910
+ both: "both";
911
+ forwards: "forwards";
912
+ none: "none";
913
+ }>>;
914
+ easing: z.ZodDefault<z.ZodEnum<{
915
+ "ease-in-cubic": "ease-in-cubic";
916
+ "ease-in-out-cubic": "ease-in-out-cubic";
917
+ "ease-in-out-quad": "ease-in-out-quad";
918
+ "ease-in-quad": "ease-in-quad";
919
+ "ease-out-cubic": "ease-out-cubic";
920
+ "ease-out-expo": "ease-out-expo";
921
+ "ease-out-quad": "ease-out-quad";
922
+ "ease-out-quart": "ease-out-quart";
923
+ linear: "linear";
924
+ }>>;
925
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
926
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
927
+ type: z.ZodEnum<{
928
+ extension: "extension";
929
+ "space-file": "space-file";
930
+ }>;
931
+ ref: z.ZodString;
932
+ digest: z.ZodOptional<z.ZodString>;
933
+ }, z.core.$strict>>>;
934
+ seed: z.ZodString;
935
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
936
+ }, z.core.$strict>>>;
937
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
938
+ id: z.ZodString;
939
+ time: z.ZodNumber;
940
+ duration: z.ZodOptional<z.ZodNumber>;
941
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
942
+ }, z.core.$strict>>>;
943
+ }, z.core.$strict>;
944
+ playback: z.ZodDefault<z.ZodObject<{
945
+ loop: z.ZodDefault<z.ZodBoolean>;
946
+ endBehavior: z.ZodDefault<z.ZodEnum<{
947
+ hold: "hold";
948
+ reset: "reset";
949
+ }>>;
950
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
951
+ mode: z.ZodLiteral<"base">;
952
+ }, z.core.$strict>, z.ZodObject<{
953
+ mode: z.ZodLiteral<"time">;
954
+ time: z.ZodNumber;
955
+ }, z.core.$strict>, z.ZodObject<{
956
+ mode: z.ZodLiteral<"marker">;
957
+ markerId: z.ZodString;
958
+ }, z.core.$strict>], "mode">>;
959
+ }, z.core.$strict>>;
960
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
961
+ }, z.core.$strict>;
962
+ type BoardCompositionInput = z.infer<typeof BoardCompositionInputSchema>;
963
+ declare const BoardCompositionSchema: z.ZodObject<{
964
+ id: z.ZodString;
965
+ name: z.ZodString;
966
+ timeline: z.ZodObject<{
967
+ duration: z.ZodNumber;
968
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
969
+ id: z.ZodString;
970
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
971
+ type: z.ZodLiteral<"item">;
972
+ itemId: z.ZodString;
973
+ }, z.core.$strict>, z.ZodObject<{
974
+ type: z.ZodLiteral<"effect">;
975
+ effectId: z.ZodString;
976
+ }, z.core.$strict>, z.ZodObject<{
977
+ type: z.ZodLiteral<"camera">;
978
+ }, z.core.$strict>, z.ZodObject<{
979
+ type: z.ZodLiteral<"board">;
980
+ }, z.core.$strict>], "type">;
981
+ channel: z.ZodString;
982
+ channelVersion: z.ZodDefault<z.ZodNumber>;
983
+ interpolation: z.ZodDefault<z.ZodEnum<{
984
+ linear: "linear";
985
+ step: "step";
986
+ }>>;
987
+ fill: z.ZodDefault<z.ZodEnum<{
988
+ backwards: "backwards";
989
+ both: "both";
990
+ forwards: "forwards";
991
+ none: "none";
992
+ }>>;
993
+ keyframes: z.ZodArray<z.ZodObject<{
994
+ time: z.ZodNumber;
995
+ value: z.ZodUnknown;
996
+ easing: z.ZodOptional<z.ZodEnum<{
997
+ "ease-in-cubic": "ease-in-cubic";
998
+ "ease-in-out-cubic": "ease-in-out-cubic";
999
+ "ease-in-out-quad": "ease-in-out-quad";
1000
+ "ease-in-quad": "ease-in-quad";
1001
+ "ease-out-cubic": "ease-out-cubic";
1002
+ "ease-out-expo": "ease-out-expo";
1003
+ "ease-out-quad": "ease-out-quad";
1004
+ "ease-out-quart": "ease-out-quart";
1005
+ linear: "linear";
1006
+ }>>;
1007
+ }, z.core.$strict>>;
1008
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1009
+ }, z.core.$strict>>>;
1010
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
1011
+ id: z.ZodString;
1012
+ kind: z.ZodString;
1013
+ kindVersion: z.ZodNumber;
1014
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
1015
+ type: z.ZodLiteral<"item">;
1016
+ itemId: z.ZodString;
1017
+ }, z.core.$strict>, z.ZodObject<{
1018
+ type: z.ZodLiteral<"effect">;
1019
+ effectId: z.ZodString;
1020
+ }, z.core.$strict>, z.ZodObject<{
1021
+ type: z.ZodLiteral<"camera">;
1022
+ }, z.core.$strict>, z.ZodObject<{
1023
+ type: z.ZodLiteral<"board">;
1024
+ }, z.core.$strict>], "type">;
1025
+ start: z.ZodNumber;
1026
+ duration: z.ZodNumber;
1027
+ layer: z.ZodDefault<z.ZodEnum<{
1028
+ behind: "behind";
1029
+ content: "content";
1030
+ front: "front";
1031
+ screen: "screen";
1032
+ }>>;
1033
+ fill: z.ZodDefault<z.ZodEnum<{
1034
+ backwards: "backwards";
1035
+ both: "both";
1036
+ forwards: "forwards";
1037
+ none: "none";
1038
+ }>>;
1039
+ easing: z.ZodDefault<z.ZodEnum<{
1040
+ "ease-in-cubic": "ease-in-cubic";
1041
+ "ease-in-out-cubic": "ease-in-out-cubic";
1042
+ "ease-in-out-quad": "ease-in-out-quad";
1043
+ "ease-in-quad": "ease-in-quad";
1044
+ "ease-out-cubic": "ease-out-cubic";
1045
+ "ease-out-expo": "ease-out-expo";
1046
+ "ease-out-quad": "ease-out-quad";
1047
+ "ease-out-quart": "ease-out-quart";
1048
+ linear: "linear";
1049
+ }>>;
1050
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1051
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
1052
+ type: z.ZodEnum<{
1053
+ extension: "extension";
1054
+ "space-file": "space-file";
1055
+ }>;
1056
+ ref: z.ZodString;
1057
+ digest: z.ZodOptional<z.ZodString>;
1058
+ }, z.core.$strict>>>;
1059
+ seed: z.ZodString;
1060
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1061
+ }, z.core.$strict>>>;
1062
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
1063
+ id: z.ZodString;
1064
+ time: z.ZodNumber;
1065
+ duration: z.ZodOptional<z.ZodNumber>;
1066
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1067
+ }, z.core.$strict>>>;
1068
+ }, z.core.$strict>;
1069
+ playback: z.ZodDefault<z.ZodObject<{
1070
+ loop: z.ZodDefault<z.ZodBoolean>;
1071
+ endBehavior: z.ZodDefault<z.ZodEnum<{
1072
+ hold: "hold";
1073
+ reset: "reset";
1074
+ }>>;
1075
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
1076
+ mode: z.ZodLiteral<"base">;
1077
+ }, z.core.$strict>, z.ZodObject<{
1078
+ mode: z.ZodLiteral<"time">;
1079
+ time: z.ZodNumber;
1080
+ }, z.core.$strict>, z.ZodObject<{
1081
+ mode: z.ZodLiteral<"marker">;
1082
+ markerId: z.ZodString;
1083
+ }, z.core.$strict>], "mode">>;
1084
+ }, z.core.$strict>>;
1085
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1086
+ revision: z.ZodDefault<z.ZodNumber>;
1087
+ }, z.core.$strict>;
1088
+ type BoardComposition = z.infer<typeof BoardCompositionSchema>;
1089
+ /**
1090
+ * Accept inspect/get output as apply input while stripping server-owned
1091
+ * `revision`. Anything else that looks server-owned (or simply unknown) fails
1092
+ * with a pointer at the offending key, so a get → edit → apply round-trip that
1093
+ * accidentally carries runtime fields names the culprit instead of a bare
1094
+ * "Unrecognized key".
1095
+ */
1096
+ declare function parseBoardCompositionInput(value: unknown): BoardCompositionInput;
1097
+ type BoardAnimationChannelCapability = {
1098
+ id: string;
1099
+ version: number;
1100
+ targets: readonly BoardAnimationTarget["type"][];
1101
+ interpolations: readonly BoardTrackInterpolation[];
1102
+ coordinateSpace?: string;
1103
+ unit?: string;
1104
+ valueSchema: Record<string, unknown>;
1105
+ };
1106
+ declare const BOARD_ANIMATION_CHANNEL_CAPABILITIES: BoardAnimationChannelCapability[];
1107
+ //#endregion
1108
+ //#region ../protocol/dist/board-effect.d.ts
1109
+ declare const BoardAssetRefSchema: z.ZodObject<{
1110
+ type: z.ZodEnum<{
1111
+ extension: "extension";
1112
+ "space-file": "space-file";
1113
+ }>;
1114
+ ref: z.ZodString;
1115
+ digest: z.ZodOptional<z.ZodString>;
1116
+ }, z.core.$strict>;
1117
+ declare const BoardEffectSchema: z.ZodObject<{
1118
+ id: z.ZodString;
1119
+ boardId: z.ZodString;
1120
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
1121
+ type: z.ZodLiteral<"item">;
1122
+ itemId: z.ZodString;
1123
+ }, z.core.$strict>, z.ZodObject<{
1124
+ type: z.ZodLiteral<"board">;
1125
+ }, z.core.$strict>], "type">;
1126
+ kind: z.ZodString;
1127
+ kindVersion: z.ZodNumber;
1128
+ enabled: z.ZodDefault<z.ZodBoolean>;
1129
+ lifecycle: z.ZodEnum<{
1130
+ manual: "manual";
1131
+ persistent: "persistent";
1132
+ "when-visible": "when-visible";
1133
+ }>;
1134
+ timeOrigin: z.ZodEnum<{
1135
+ activation: "activation";
1136
+ board: "board";
1137
+ visible: "visible";
1138
+ }>;
1139
+ layer: z.ZodDefault<z.ZodEnum<{
1140
+ behind: "behind";
1141
+ front: "front";
1142
+ screen: "screen";
1143
+ }>>;
1144
+ seed: z.ZodString;
1145
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1146
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
1147
+ type: z.ZodEnum<{
1148
+ extension: "extension";
1149
+ "space-file": "space-file";
1150
+ }>;
1151
+ ref: z.ZodString;
1152
+ digest: z.ZodOptional<z.ZodString>;
1153
+ }, z.core.$strict>>>;
1154
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1155
+ revision: z.ZodNumber;
1156
+ }, z.core.$strict>;
1157
+ type BoardAssetRef = z.infer<typeof BoardAssetRefSchema>;
1158
+ type BoardEffect = z.infer<typeof BoardEffectSchema>;
1159
+ /** The client-authored effect form: no server-owned `boardId`/`revision`. */
1160
+ declare const BoardEffectInputSchema: z.ZodObject<{
1161
+ id: z.ZodString;
1162
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
1163
+ type: z.ZodLiteral<"item">;
1164
+ itemId: z.ZodString;
1165
+ }, z.core.$strict>, z.ZodObject<{
1166
+ type: z.ZodLiteral<"board">;
1167
+ }, z.core.$strict>], "type">;
1168
+ kind: z.ZodString;
1169
+ kindVersion: z.ZodNumber;
1170
+ enabled: z.ZodDefault<z.ZodBoolean>;
1171
+ lifecycle: z.ZodEnum<{
1172
+ manual: "manual";
1173
+ persistent: "persistent";
1174
+ "when-visible": "when-visible";
1175
+ }>;
1176
+ timeOrigin: z.ZodEnum<{
1177
+ activation: "activation";
1178
+ board: "board";
1179
+ visible: "visible";
1180
+ }>;
1181
+ layer: z.ZodDefault<z.ZodEnum<{
1182
+ behind: "behind";
1183
+ front: "front";
1184
+ screen: "screen";
1185
+ }>>;
1186
+ seed: z.ZodString;
1187
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1188
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
1189
+ type: z.ZodEnum<{
1190
+ extension: "extension";
1191
+ "space-file": "space-file";
1192
+ }>;
1193
+ ref: z.ZodString;
1194
+ digest: z.ZodOptional<z.ZodString>;
1195
+ }, z.core.$strict>>>;
1196
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1197
+ }, z.core.$strict>;
1198
+ type BoardEffectInput = z.infer<typeof BoardEffectInputSchema>;
1199
+ /** Accept a read projection in a write command while stripping server fields. */
1200
+ declare function parseBoardEffectInput(value: unknown): BoardEffectInput;
1201
+ //#endregion
1202
+ //#region ../protocol/dist/board-authoring.d.ts
1203
+ declare const BoardAuthoringItemSchema: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
1204
+ id: z.ZodString;
1205
+ frame: z.ZodObject<{
1206
+ x: z.ZodNumber;
1207
+ y: z.ZodNumber;
1208
+ width: z.ZodNumber;
1209
+ height: z.ZodNumber;
1210
+ rotation: z.ZodDefault<z.ZodNumber>;
1211
+ }, z.core.$strict>;
1212
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1213
+ locked: z.ZodOptional<z.ZodBoolean>;
1214
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1215
+ style: z.ZodOptional<z.ZodObject<{
1216
+ color: z.ZodOptional<z.ZodEnum<{
1217
+ amber: "amber";
1218
+ black: "black";
1219
+ blue: "blue";
1220
+ brand: "brand";
1221
+ green: "green";
1222
+ neutral: "neutral";
1223
+ rose: "rose";
1224
+ violet: "violet";
1225
+ white: "white";
1226
+ }>>;
1227
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1228
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1229
+ }, z.core.$strict>>;
1230
+ type: z.ZodLiteral<"text">;
1231
+ props: z.ZodObject<{
1232
+ text: z.ZodDefault<z.ZodString>;
1233
+ fontSize: z.ZodDefault<z.ZodNumber>;
1234
+ }, z.core.$strict>;
1235
+ }, z.core.$strict>, z.ZodObject<{
1236
+ id: z.ZodString;
1237
+ frame: z.ZodObject<{
1238
+ x: z.ZodNumber;
1239
+ y: z.ZodNumber;
1240
+ width: z.ZodNumber;
1241
+ height: z.ZodNumber;
1242
+ rotation: z.ZodDefault<z.ZodNumber>;
1243
+ }, z.core.$strict>;
1244
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1245
+ locked: z.ZodOptional<z.ZodBoolean>;
1246
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1247
+ style: z.ZodOptional<z.ZodObject<{
1248
+ color: z.ZodOptional<z.ZodEnum<{
1249
+ amber: "amber";
1250
+ black: "black";
1251
+ blue: "blue";
1252
+ brand: "brand";
1253
+ green: "green";
1254
+ neutral: "neutral";
1255
+ rose: "rose";
1256
+ violet: "violet";
1257
+ white: "white";
1258
+ }>>;
1259
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1260
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1261
+ }, z.core.$strict>>;
1262
+ type: z.ZodLiteral<"geo">;
1263
+ props: z.ZodObject<{
1264
+ shape: z.ZodDefault<z.ZodEnum<{
1265
+ diamond: "diamond";
1266
+ ellipse: "ellipse";
1267
+ rectangle: "rectangle";
1268
+ rounded: "rounded";
1269
+ triangle: "triangle";
1270
+ }>>;
1271
+ text: z.ZodDefault<z.ZodString>;
1272
+ }, z.core.$strict>;
1273
+ }, z.core.$strict>, z.ZodObject<{
1274
+ id: z.ZodString;
1275
+ frame: z.ZodObject<{
1276
+ x: z.ZodNumber;
1277
+ y: z.ZodNumber;
1278
+ width: z.ZodNumber;
1279
+ height: z.ZodNumber;
1280
+ rotation: z.ZodDefault<z.ZodNumber>;
1281
+ }, z.core.$strict>;
1282
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1283
+ locked: z.ZodOptional<z.ZodBoolean>;
1284
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1285
+ style: z.ZodOptional<z.ZodObject<{
1286
+ color: z.ZodOptional<z.ZodEnum<{
1287
+ amber: "amber";
1288
+ black: "black";
1289
+ blue: "blue";
1290
+ brand: "brand";
1291
+ green: "green";
1292
+ neutral: "neutral";
1293
+ rose: "rose";
1294
+ violet: "violet";
1295
+ white: "white";
1296
+ }>>;
1297
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1298
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1299
+ }, z.core.$strict>>;
1300
+ type: z.ZodLiteral<"draw">;
1301
+ props: z.ZodObject<{
1302
+ points: z.ZodArray<z.ZodObject<{
1303
+ x: z.ZodNumber;
1304
+ y: z.ZodNumber;
1305
+ p: z.ZodDefault<z.ZodNumber>;
1306
+ }, z.core.$strict>>;
1307
+ }, z.core.$strict>;
1308
+ }, z.core.$strict>, z.ZodObject<{
1309
+ id: z.ZodString;
1310
+ frame: z.ZodObject<{
1311
+ x: z.ZodNumber;
1312
+ y: z.ZodNumber;
1313
+ width: z.ZodNumber;
1314
+ height: z.ZodNumber;
1315
+ rotation: z.ZodDefault<z.ZodNumber>;
1316
+ }, z.core.$strict>;
1317
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1318
+ locked: z.ZodOptional<z.ZodBoolean>;
1319
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1320
+ style: z.ZodOptional<z.ZodObject<{
1321
+ color: z.ZodOptional<z.ZodEnum<{
1322
+ amber: "amber";
1323
+ black: "black";
1324
+ blue: "blue";
1325
+ brand: "brand";
1326
+ green: "green";
1327
+ neutral: "neutral";
1328
+ rose: "rose";
1329
+ violet: "violet";
1330
+ white: "white";
1331
+ }>>;
1332
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1333
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1334
+ }, z.core.$strict>>;
1335
+ type: z.ZodLiteral<"arrow">;
1336
+ props: z.ZodObject<{
1337
+ start: z.ZodObject<{
1338
+ x: z.ZodNumber;
1339
+ y: z.ZodNumber;
1340
+ }, z.core.$strict>;
1341
+ end: z.ZodObject<{
1342
+ x: z.ZodNumber;
1343
+ y: z.ZodNumber;
1344
+ }, z.core.$strict>;
1345
+ bend: z.ZodDefault<z.ZodNumber>;
1346
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
1347
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
1348
+ label: z.ZodDefault<z.ZodString>;
1349
+ }, z.core.$strict>;
1350
+ }, z.core.$strict>, z.ZodObject<{
1351
+ id: z.ZodString;
1352
+ frame: z.ZodObject<{
1353
+ x: z.ZodNumber;
1354
+ y: z.ZodNumber;
1355
+ width: z.ZodNumber;
1356
+ height: z.ZodNumber;
1357
+ rotation: z.ZodDefault<z.ZodNumber>;
1358
+ }, z.core.$strict>;
1359
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1360
+ locked: z.ZodOptional<z.ZodBoolean>;
1361
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1362
+ style: z.ZodOptional<z.ZodObject<{
1363
+ color: z.ZodOptional<z.ZodEnum<{
1364
+ amber: "amber";
1365
+ black: "black";
1366
+ blue: "blue";
1367
+ brand: "brand";
1368
+ green: "green";
1369
+ neutral: "neutral";
1370
+ rose: "rose";
1371
+ violet: "violet";
1372
+ white: "white";
1373
+ }>>;
1374
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1375
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1376
+ }, z.core.$strict>>;
1377
+ type: z.ZodLiteral<"frame">;
1378
+ props: z.ZodObject<{
1379
+ label: z.ZodDefault<z.ZodString>;
1380
+ }, z.core.$strict>;
1381
+ }, z.core.$strict>, z.ZodObject<{
1382
+ id: z.ZodString;
1383
+ frame: z.ZodObject<{
1384
+ x: z.ZodNumber;
1385
+ y: z.ZodNumber;
1386
+ width: z.ZodNumber;
1387
+ height: z.ZodNumber;
1388
+ rotation: z.ZodDefault<z.ZodNumber>;
1389
+ }, z.core.$strict>;
1390
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1391
+ locked: z.ZodOptional<z.ZodBoolean>;
1392
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1393
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1394
+ source: z.ZodObject<{
1395
+ kind: z.ZodLiteral<"space-file">;
1396
+ path: z.ZodString;
1397
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1398
+ }, z.core.$strict>;
1399
+ type: z.ZodLiteral<"image">;
1400
+ props: z.ZodObject<{
1401
+ crop: z.ZodOptional<z.ZodObject<{
1402
+ x: z.ZodNumber;
1403
+ y: z.ZodNumber;
1404
+ w: z.ZodNumber;
1405
+ h: z.ZodNumber;
1406
+ }, z.core.$strict>>;
1407
+ }, z.core.$strict>;
1408
+ }, z.core.$strict>, z.ZodObject<{
1409
+ id: z.ZodString;
1410
+ frame: z.ZodObject<{
1411
+ x: z.ZodNumber;
1412
+ y: z.ZodNumber;
1413
+ width: z.ZodNumber;
1414
+ height: z.ZodNumber;
1415
+ rotation: z.ZodDefault<z.ZodNumber>;
1416
+ }, z.core.$strict>;
1417
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1418
+ locked: z.ZodOptional<z.ZodBoolean>;
1419
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1420
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1421
+ source: z.ZodObject<{
1422
+ kind: z.ZodLiteral<"space-file">;
1423
+ path: z.ZodString;
1424
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1425
+ }, z.core.$strict>;
1426
+ type: z.ZodLiteral<"video">;
1427
+ props: z.ZodObject<{}, z.core.$strict>;
1428
+ }, z.core.$strict>, z.ZodObject<{
1429
+ id: z.ZodString;
1430
+ frame: z.ZodObject<{
1431
+ x: z.ZodNumber;
1432
+ y: z.ZodNumber;
1433
+ width: z.ZodNumber;
1434
+ height: z.ZodNumber;
1435
+ rotation: z.ZodDefault<z.ZodNumber>;
1436
+ }, z.core.$strict>;
1437
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1438
+ locked: z.ZodOptional<z.ZodBoolean>;
1439
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1440
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1441
+ source: z.ZodObject<{
1442
+ kind: z.ZodLiteral<"space-file">;
1443
+ path: z.ZodString;
1444
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1445
+ }, z.core.$strict>;
1446
+ type: z.ZodLiteral<"audio">;
1447
+ props: z.ZodObject<{}, z.core.$strict>;
1448
+ }, z.core.$strict>, z.ZodObject<{
1449
+ id: z.ZodString;
1450
+ frame: z.ZodObject<{
1451
+ x: z.ZodNumber;
1452
+ y: z.ZodNumber;
1453
+ width: z.ZodNumber;
1454
+ height: z.ZodNumber;
1455
+ rotation: z.ZodDefault<z.ZodNumber>;
1456
+ }, z.core.$strict>;
1457
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1458
+ locked: z.ZodOptional<z.ZodBoolean>;
1459
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1460
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1461
+ source: z.ZodObject<{
1462
+ kind: z.ZodLiteral<"space-file">;
1463
+ path: z.ZodString;
1464
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1465
+ }, z.core.$strict>;
1466
+ type: z.ZodLiteral<"file">;
1467
+ props: z.ZodObject<{}, z.core.$strict>;
1468
+ }, z.core.$strict>, z.ZodObject<{
1469
+ id: z.ZodString;
1470
+ frame: z.ZodObject<{
1471
+ x: z.ZodNumber;
1472
+ y: z.ZodNumber;
1473
+ width: z.ZodNumber;
1474
+ height: z.ZodNumber;
1475
+ rotation: z.ZodDefault<z.ZodNumber>;
1476
+ }, z.core.$strict>;
1477
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1478
+ locked: z.ZodOptional<z.ZodBoolean>;
1479
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1480
+ type: z.ZodLiteral<"task">;
1481
+ props: z.ZodObject<{
1482
+ taskRunId: z.ZodString;
1483
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1484
+ }, z.core.$strict>;
1485
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1486
+ }, z.core.$strict>], "type">, z.ZodObject<{
1487
+ id: z.ZodString;
1488
+ frame: z.ZodObject<{
1489
+ x: z.ZodNumber;
1490
+ y: z.ZodNumber;
1491
+ width: z.ZodNumber;
1492
+ height: z.ZodNumber;
1493
+ rotation: z.ZodDefault<z.ZodNumber>;
1494
+ }, z.core.$strict>;
1495
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1496
+ locked: z.ZodOptional<z.ZodBoolean>;
1497
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1498
+ type: z.ZodString;
1499
+ kindVersion: z.ZodNumber;
1500
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1501
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1502
+ source: z.ZodOptional<z.ZodObject<{
1503
+ kind: z.ZodString;
1504
+ ref: z.ZodString;
1505
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1506
+ }, z.core.$strict>>;
1507
+ }, z.core.$strict>]>;
1508
+ type BoardAuthoringItem = z.infer<typeof BoardAuthoringItemSchema>;
1509
+ /** JSON Merge Patch semantics, constrained to the stable Item envelope. */
1510
+ declare const BoardItemPatchSchema: z.ZodObject<{
1511
+ frame: z.ZodOptional<z.ZodObject<{
1512
+ x: z.ZodOptional<z.ZodNumber>;
1513
+ y: z.ZodOptional<z.ZodNumber>;
1514
+ width: z.ZodOptional<z.ZodNumber>;
1515
+ height: z.ZodOptional<z.ZodNumber>;
1516
+ rotation: z.ZodOptional<z.ZodNumber>;
1517
+ }, z.core.$strict>>;
1518
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1519
+ locked: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1520
+ props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1521
+ style: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1522
+ source: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1523
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1524
+ }, z.core.$strict>;
1525
+ type BoardItemPatch = z.infer<typeof BoardItemPatchSchema>;
1526
+ declare const BoardSemanticCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1527
+ type: z.ZodLiteral<"board.patch">;
1528
+ patch: z.ZodObject<{
1529
+ title: z.ZodOptional<z.ZodString>;
1530
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1531
+ metadataPatch: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1532
+ }, z.core.$strict>;
1533
+ }, z.core.$strict>, z.ZodObject<{
1534
+ type: z.ZodLiteral<"item.create">;
1535
+ item: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
1536
+ id: z.ZodString;
1537
+ frame: z.ZodObject<{
1538
+ x: z.ZodNumber;
1539
+ y: z.ZodNumber;
1540
+ width: z.ZodNumber;
1541
+ height: z.ZodNumber;
1542
+ rotation: z.ZodDefault<z.ZodNumber>;
1543
+ }, z.core.$strict>;
1544
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1545
+ locked: z.ZodOptional<z.ZodBoolean>;
1546
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1547
+ style: z.ZodOptional<z.ZodObject<{
1548
+ color: z.ZodOptional<z.ZodEnum<{
1549
+ amber: "amber";
1550
+ black: "black";
1551
+ blue: "blue";
1552
+ brand: "brand";
1553
+ green: "green";
1554
+ neutral: "neutral";
1555
+ rose: "rose";
1556
+ violet: "violet";
1557
+ white: "white";
1558
+ }>>;
1559
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1560
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1561
+ }, z.core.$strict>>;
1562
+ type: z.ZodLiteral<"text">;
1563
+ props: z.ZodObject<{
1564
+ text: z.ZodDefault<z.ZodString>;
1565
+ fontSize: z.ZodDefault<z.ZodNumber>;
1566
+ }, z.core.$strict>;
1567
+ }, z.core.$strict>, z.ZodObject<{
1568
+ id: z.ZodString;
1569
+ frame: z.ZodObject<{
1570
+ x: z.ZodNumber;
1571
+ y: z.ZodNumber;
1572
+ width: z.ZodNumber;
1573
+ height: z.ZodNumber;
1574
+ rotation: z.ZodDefault<z.ZodNumber>;
1575
+ }, z.core.$strict>;
1576
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1577
+ locked: z.ZodOptional<z.ZodBoolean>;
1578
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1579
+ style: z.ZodOptional<z.ZodObject<{
1580
+ color: z.ZodOptional<z.ZodEnum<{
1581
+ amber: "amber";
1582
+ black: "black";
1583
+ blue: "blue";
1584
+ brand: "brand";
1585
+ green: "green";
1586
+ neutral: "neutral";
1587
+ rose: "rose";
1588
+ violet: "violet";
1589
+ white: "white";
1590
+ }>>;
1591
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1592
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1593
+ }, z.core.$strict>>;
1594
+ type: z.ZodLiteral<"geo">;
1595
+ props: z.ZodObject<{
1596
+ shape: z.ZodDefault<z.ZodEnum<{
1597
+ diamond: "diamond";
1598
+ ellipse: "ellipse";
1599
+ rectangle: "rectangle";
1600
+ rounded: "rounded";
1601
+ triangle: "triangle";
1602
+ }>>;
1603
+ text: z.ZodDefault<z.ZodString>;
1604
+ }, z.core.$strict>;
1605
+ }, z.core.$strict>, z.ZodObject<{
1606
+ id: z.ZodString;
1607
+ frame: z.ZodObject<{
1608
+ x: z.ZodNumber;
1609
+ y: z.ZodNumber;
1610
+ width: z.ZodNumber;
1611
+ height: z.ZodNumber;
1612
+ rotation: z.ZodDefault<z.ZodNumber>;
1613
+ }, z.core.$strict>;
1614
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1615
+ locked: z.ZodOptional<z.ZodBoolean>;
1616
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1617
+ style: z.ZodOptional<z.ZodObject<{
1618
+ color: z.ZodOptional<z.ZodEnum<{
1619
+ amber: "amber";
1620
+ black: "black";
1621
+ blue: "blue";
1622
+ brand: "brand";
1623
+ green: "green";
1624
+ neutral: "neutral";
1625
+ rose: "rose";
1626
+ violet: "violet";
1627
+ white: "white";
1628
+ }>>;
1629
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1630
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1631
+ }, z.core.$strict>>;
1632
+ type: z.ZodLiteral<"draw">;
1633
+ props: z.ZodObject<{
1634
+ points: z.ZodArray<z.ZodObject<{
1635
+ x: z.ZodNumber;
1636
+ y: z.ZodNumber;
1637
+ p: z.ZodDefault<z.ZodNumber>;
1638
+ }, z.core.$strict>>;
1639
+ }, z.core.$strict>;
1640
+ }, z.core.$strict>, z.ZodObject<{
1641
+ id: z.ZodString;
1642
+ frame: z.ZodObject<{
1643
+ x: z.ZodNumber;
1644
+ y: z.ZodNumber;
1645
+ width: z.ZodNumber;
1646
+ height: z.ZodNumber;
1647
+ rotation: z.ZodDefault<z.ZodNumber>;
1648
+ }, z.core.$strict>;
1649
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1650
+ locked: z.ZodOptional<z.ZodBoolean>;
1651
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1652
+ style: z.ZodOptional<z.ZodObject<{
1653
+ color: z.ZodOptional<z.ZodEnum<{
1654
+ amber: "amber";
1655
+ black: "black";
1656
+ blue: "blue";
1657
+ brand: "brand";
1658
+ green: "green";
1659
+ neutral: "neutral";
1660
+ rose: "rose";
1661
+ violet: "violet";
1662
+ white: "white";
1663
+ }>>;
1664
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1665
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1666
+ }, z.core.$strict>>;
1667
+ type: z.ZodLiteral<"arrow">;
1668
+ props: z.ZodObject<{
1669
+ start: z.ZodObject<{
1670
+ x: z.ZodNumber;
1671
+ y: z.ZodNumber;
1672
+ }, z.core.$strict>;
1673
+ end: z.ZodObject<{
1674
+ x: z.ZodNumber;
1675
+ y: z.ZodNumber;
1676
+ }, z.core.$strict>;
1677
+ bend: z.ZodDefault<z.ZodNumber>;
1678
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
1679
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
1680
+ label: z.ZodDefault<z.ZodString>;
1681
+ }, z.core.$strict>;
1682
+ }, z.core.$strict>, z.ZodObject<{
1683
+ id: z.ZodString;
1684
+ frame: z.ZodObject<{
1685
+ x: z.ZodNumber;
1686
+ y: z.ZodNumber;
1687
+ width: z.ZodNumber;
1688
+ height: z.ZodNumber;
1689
+ rotation: z.ZodDefault<z.ZodNumber>;
1690
+ }, z.core.$strict>;
1691
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1692
+ locked: z.ZodOptional<z.ZodBoolean>;
1693
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1694
+ style: z.ZodOptional<z.ZodObject<{
1695
+ color: z.ZodOptional<z.ZodEnum<{
1696
+ amber: "amber";
1697
+ black: "black";
1698
+ blue: "blue";
1699
+ brand: "brand";
1700
+ green: "green";
1701
+ neutral: "neutral";
1702
+ rose: "rose";
1703
+ violet: "violet";
1704
+ white: "white";
1705
+ }>>;
1706
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1707
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1708
+ }, z.core.$strict>>;
1709
+ type: z.ZodLiteral<"frame">;
1710
+ props: z.ZodObject<{
1711
+ label: z.ZodDefault<z.ZodString>;
1712
+ }, z.core.$strict>;
1713
+ }, z.core.$strict>, z.ZodObject<{
1714
+ id: z.ZodString;
1715
+ frame: z.ZodObject<{
1716
+ x: z.ZodNumber;
1717
+ y: z.ZodNumber;
1718
+ width: z.ZodNumber;
1719
+ height: z.ZodNumber;
1720
+ rotation: z.ZodDefault<z.ZodNumber>;
1721
+ }, z.core.$strict>;
1722
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1723
+ locked: z.ZodOptional<z.ZodBoolean>;
1724
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1725
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1726
+ source: z.ZodObject<{
1727
+ kind: z.ZodLiteral<"space-file">;
1728
+ path: z.ZodString;
1729
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1730
+ }, z.core.$strict>;
1731
+ type: z.ZodLiteral<"image">;
1732
+ props: z.ZodObject<{
1733
+ crop: z.ZodOptional<z.ZodObject<{
1734
+ x: z.ZodNumber;
1735
+ y: z.ZodNumber;
1736
+ w: z.ZodNumber;
1737
+ h: z.ZodNumber;
1738
+ }, z.core.$strict>>;
1739
+ }, z.core.$strict>;
1740
+ }, z.core.$strict>, z.ZodObject<{
1741
+ id: z.ZodString;
1742
+ frame: z.ZodObject<{
1743
+ x: z.ZodNumber;
1744
+ y: z.ZodNumber;
1745
+ width: z.ZodNumber;
1746
+ height: z.ZodNumber;
1747
+ rotation: z.ZodDefault<z.ZodNumber>;
1748
+ }, z.core.$strict>;
1749
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1750
+ locked: z.ZodOptional<z.ZodBoolean>;
1751
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1752
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1753
+ source: z.ZodObject<{
1754
+ kind: z.ZodLiteral<"space-file">;
1755
+ path: z.ZodString;
1756
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1757
+ }, z.core.$strict>;
1758
+ type: z.ZodLiteral<"video">;
1759
+ props: z.ZodObject<{}, z.core.$strict>;
1760
+ }, z.core.$strict>, z.ZodObject<{
1761
+ id: z.ZodString;
1762
+ frame: z.ZodObject<{
1763
+ x: z.ZodNumber;
1764
+ y: z.ZodNumber;
1765
+ width: z.ZodNumber;
1766
+ height: z.ZodNumber;
1767
+ rotation: z.ZodDefault<z.ZodNumber>;
1768
+ }, z.core.$strict>;
1769
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1770
+ locked: z.ZodOptional<z.ZodBoolean>;
1771
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1772
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1773
+ source: z.ZodObject<{
1774
+ kind: z.ZodLiteral<"space-file">;
1775
+ path: z.ZodString;
1776
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1777
+ }, z.core.$strict>;
1778
+ type: z.ZodLiteral<"audio">;
1779
+ props: z.ZodObject<{}, z.core.$strict>;
1780
+ }, z.core.$strict>, z.ZodObject<{
1781
+ id: z.ZodString;
1782
+ frame: z.ZodObject<{
1783
+ x: z.ZodNumber;
1784
+ y: z.ZodNumber;
1785
+ width: z.ZodNumber;
1786
+ height: z.ZodNumber;
1787
+ rotation: z.ZodDefault<z.ZodNumber>;
1788
+ }, z.core.$strict>;
1789
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1790
+ locked: z.ZodOptional<z.ZodBoolean>;
1791
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1792
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1793
+ source: z.ZodObject<{
1794
+ kind: z.ZodLiteral<"space-file">;
1795
+ path: z.ZodString;
1796
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1797
+ }, z.core.$strict>;
1798
+ type: z.ZodLiteral<"file">;
1799
+ props: z.ZodObject<{}, z.core.$strict>;
1800
+ }, z.core.$strict>, z.ZodObject<{
1801
+ id: z.ZodString;
1802
+ frame: z.ZodObject<{
1803
+ x: z.ZodNumber;
1804
+ y: z.ZodNumber;
1805
+ width: z.ZodNumber;
1806
+ height: z.ZodNumber;
1807
+ rotation: z.ZodDefault<z.ZodNumber>;
1808
+ }, z.core.$strict>;
1809
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1810
+ locked: z.ZodOptional<z.ZodBoolean>;
1811
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1812
+ type: z.ZodLiteral<"task">;
1813
+ props: z.ZodObject<{
1814
+ taskRunId: z.ZodString;
1815
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1816
+ }, z.core.$strict>;
1817
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
1818
+ }, z.core.$strict>], "type">, z.ZodObject<{
1819
+ id: z.ZodString;
1820
+ frame: z.ZodObject<{
1821
+ x: z.ZodNumber;
1822
+ y: z.ZodNumber;
1823
+ width: z.ZodNumber;
1824
+ height: z.ZodNumber;
1825
+ rotation: z.ZodDefault<z.ZodNumber>;
1826
+ }, z.core.$strict>;
1827
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1828
+ locked: z.ZodOptional<z.ZodBoolean>;
1829
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1830
+ type: z.ZodString;
1831
+ kindVersion: z.ZodNumber;
1832
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1833
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1834
+ source: z.ZodOptional<z.ZodObject<{
1835
+ kind: z.ZodString;
1836
+ ref: z.ZodString;
1837
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1838
+ }, z.core.$strict>>;
1839
+ }, z.core.$strict>]>;
1840
+ }, z.core.$strict>, z.ZodObject<{
1841
+ type: z.ZodLiteral<"item.patch">;
1842
+ itemId: z.ZodString;
1843
+ patch: z.ZodObject<{
1844
+ frame: z.ZodOptional<z.ZodObject<{
1845
+ x: z.ZodOptional<z.ZodNumber>;
1846
+ y: z.ZodOptional<z.ZodNumber>;
1847
+ width: z.ZodOptional<z.ZodNumber>;
1848
+ height: z.ZodOptional<z.ZodNumber>;
1849
+ rotation: z.ZodOptional<z.ZodNumber>;
1850
+ }, z.core.$strict>>;
1851
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1852
+ locked: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
1853
+ props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1854
+ style: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1855
+ source: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1856
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
1857
+ }, z.core.$strict>;
1858
+ }, z.core.$strict>, z.ZodObject<{
1859
+ type: z.ZodLiteral<"item.replace">;
1860
+ itemId: z.ZodString;
1861
+ item: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
1862
+ id: z.ZodString;
1863
+ frame: z.ZodObject<{
1864
+ x: z.ZodNumber;
1865
+ y: z.ZodNumber;
1866
+ width: z.ZodNumber;
1867
+ height: z.ZodNumber;
1868
+ rotation: z.ZodDefault<z.ZodNumber>;
1869
+ }, z.core.$strict>;
1870
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1871
+ locked: z.ZodOptional<z.ZodBoolean>;
1872
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1873
+ style: z.ZodOptional<z.ZodObject<{
1874
+ color: z.ZodOptional<z.ZodEnum<{
1875
+ amber: "amber";
1876
+ black: "black";
1877
+ blue: "blue";
1878
+ brand: "brand";
1879
+ green: "green";
1880
+ neutral: "neutral";
1881
+ rose: "rose";
1882
+ violet: "violet";
1883
+ white: "white";
1884
+ }>>;
1885
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1886
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1887
+ }, z.core.$strict>>;
1888
+ type: z.ZodLiteral<"text">;
1889
+ props: z.ZodObject<{
1890
+ text: z.ZodDefault<z.ZodString>;
1891
+ fontSize: z.ZodDefault<z.ZodNumber>;
1892
+ }, z.core.$strict>;
1893
+ }, z.core.$strict>, z.ZodObject<{
1894
+ id: z.ZodString;
1895
+ frame: z.ZodObject<{
1896
+ x: z.ZodNumber;
1897
+ y: z.ZodNumber;
1898
+ width: z.ZodNumber;
1899
+ height: z.ZodNumber;
1900
+ rotation: z.ZodDefault<z.ZodNumber>;
1901
+ }, z.core.$strict>;
1902
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1903
+ locked: z.ZodOptional<z.ZodBoolean>;
1904
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1905
+ style: z.ZodOptional<z.ZodObject<{
1906
+ color: z.ZodOptional<z.ZodEnum<{
1907
+ amber: "amber";
1908
+ black: "black";
1909
+ blue: "blue";
1910
+ brand: "brand";
1911
+ green: "green";
1912
+ neutral: "neutral";
1913
+ rose: "rose";
1914
+ violet: "violet";
1915
+ white: "white";
1916
+ }>>;
1917
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1918
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1919
+ }, z.core.$strict>>;
1920
+ type: z.ZodLiteral<"geo">;
1921
+ props: z.ZodObject<{
1922
+ shape: z.ZodDefault<z.ZodEnum<{
1923
+ diamond: "diamond";
1924
+ ellipse: "ellipse";
1925
+ rectangle: "rectangle";
1926
+ rounded: "rounded";
1927
+ triangle: "triangle";
1928
+ }>>;
1929
+ text: z.ZodDefault<z.ZodString>;
1930
+ }, z.core.$strict>;
1931
+ }, z.core.$strict>, z.ZodObject<{
1932
+ id: z.ZodString;
1933
+ frame: z.ZodObject<{
1934
+ x: z.ZodNumber;
1935
+ y: z.ZodNumber;
1936
+ width: z.ZodNumber;
1937
+ height: z.ZodNumber;
1938
+ rotation: z.ZodDefault<z.ZodNumber>;
1939
+ }, z.core.$strict>;
1940
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1941
+ locked: z.ZodOptional<z.ZodBoolean>;
1942
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1943
+ style: z.ZodOptional<z.ZodObject<{
1944
+ color: z.ZodOptional<z.ZodEnum<{
1945
+ amber: "amber";
1946
+ black: "black";
1947
+ blue: "blue";
1948
+ brand: "brand";
1949
+ green: "green";
1950
+ neutral: "neutral";
1951
+ rose: "rose";
1952
+ violet: "violet";
1953
+ white: "white";
1954
+ }>>;
1955
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1956
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1957
+ }, z.core.$strict>>;
1958
+ type: z.ZodLiteral<"draw">;
1959
+ props: z.ZodObject<{
1960
+ points: z.ZodArray<z.ZodObject<{
1961
+ x: z.ZodNumber;
1962
+ y: z.ZodNumber;
1963
+ p: z.ZodDefault<z.ZodNumber>;
1964
+ }, z.core.$strict>>;
1965
+ }, z.core.$strict>;
1966
+ }, z.core.$strict>, z.ZodObject<{
1967
+ id: z.ZodString;
1968
+ frame: z.ZodObject<{
1969
+ x: z.ZodNumber;
1970
+ y: z.ZodNumber;
1971
+ width: z.ZodNumber;
1972
+ height: z.ZodNumber;
1973
+ rotation: z.ZodDefault<z.ZodNumber>;
1974
+ }, z.core.$strict>;
1975
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1976
+ locked: z.ZodOptional<z.ZodBoolean>;
1977
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1978
+ style: z.ZodOptional<z.ZodObject<{
1979
+ color: z.ZodOptional<z.ZodEnum<{
1980
+ amber: "amber";
1981
+ black: "black";
1982
+ blue: "blue";
1983
+ brand: "brand";
1984
+ green: "green";
1985
+ neutral: "neutral";
1986
+ rose: "rose";
1987
+ violet: "violet";
1988
+ white: "white";
1989
+ }>>;
1990
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1991
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1992
+ }, z.core.$strict>>;
1993
+ type: z.ZodLiteral<"arrow">;
1994
+ props: z.ZodObject<{
1995
+ start: z.ZodObject<{
1996
+ x: z.ZodNumber;
1997
+ y: z.ZodNumber;
1998
+ }, z.core.$strict>;
1999
+ end: z.ZodObject<{
2000
+ x: z.ZodNumber;
2001
+ y: z.ZodNumber;
2002
+ }, z.core.$strict>;
2003
+ bend: z.ZodDefault<z.ZodNumber>;
2004
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
2005
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
2006
+ label: z.ZodDefault<z.ZodString>;
2007
+ }, z.core.$strict>;
2008
+ }, z.core.$strict>, z.ZodObject<{
2009
+ id: z.ZodString;
2010
+ frame: z.ZodObject<{
2011
+ x: z.ZodNumber;
2012
+ y: z.ZodNumber;
2013
+ width: z.ZodNumber;
2014
+ height: z.ZodNumber;
2015
+ rotation: z.ZodDefault<z.ZodNumber>;
2016
+ }, z.core.$strict>;
2017
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2018
+ locked: z.ZodOptional<z.ZodBoolean>;
2019
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2020
+ style: z.ZodOptional<z.ZodObject<{
2021
+ color: z.ZodOptional<z.ZodEnum<{
2022
+ amber: "amber";
2023
+ black: "black";
2024
+ blue: "blue";
2025
+ brand: "brand";
2026
+ green: "green";
2027
+ neutral: "neutral";
2028
+ rose: "rose";
2029
+ violet: "violet";
2030
+ white: "white";
2031
+ }>>;
2032
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2033
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2034
+ }, z.core.$strict>>;
2035
+ type: z.ZodLiteral<"frame">;
2036
+ props: z.ZodObject<{
2037
+ label: z.ZodDefault<z.ZodString>;
2038
+ }, z.core.$strict>;
2039
+ }, z.core.$strict>, z.ZodObject<{
2040
+ id: z.ZodString;
2041
+ frame: z.ZodObject<{
2042
+ x: z.ZodNumber;
2043
+ y: z.ZodNumber;
2044
+ width: z.ZodNumber;
2045
+ height: z.ZodNumber;
2046
+ rotation: z.ZodDefault<z.ZodNumber>;
2047
+ }, z.core.$strict>;
2048
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2049
+ locked: z.ZodOptional<z.ZodBoolean>;
2050
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2051
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2052
+ source: z.ZodObject<{
2053
+ kind: z.ZodLiteral<"space-file">;
2054
+ path: z.ZodString;
2055
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2056
+ }, z.core.$strict>;
2057
+ type: z.ZodLiteral<"image">;
2058
+ props: z.ZodObject<{
2059
+ crop: z.ZodOptional<z.ZodObject<{
2060
+ x: z.ZodNumber;
2061
+ y: z.ZodNumber;
2062
+ w: z.ZodNumber;
2063
+ h: z.ZodNumber;
2064
+ }, z.core.$strict>>;
2065
+ }, z.core.$strict>;
2066
+ }, z.core.$strict>, z.ZodObject<{
2067
+ id: z.ZodString;
2068
+ frame: z.ZodObject<{
2069
+ x: z.ZodNumber;
2070
+ y: z.ZodNumber;
2071
+ width: z.ZodNumber;
2072
+ height: z.ZodNumber;
2073
+ rotation: z.ZodDefault<z.ZodNumber>;
2074
+ }, z.core.$strict>;
2075
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2076
+ locked: z.ZodOptional<z.ZodBoolean>;
2077
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2078
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2079
+ source: z.ZodObject<{
2080
+ kind: z.ZodLiteral<"space-file">;
2081
+ path: z.ZodString;
2082
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2083
+ }, z.core.$strict>;
2084
+ type: z.ZodLiteral<"video">;
2085
+ props: z.ZodObject<{}, z.core.$strict>;
2086
+ }, z.core.$strict>, z.ZodObject<{
2087
+ id: z.ZodString;
2088
+ frame: z.ZodObject<{
2089
+ x: z.ZodNumber;
2090
+ y: z.ZodNumber;
2091
+ width: z.ZodNumber;
2092
+ height: z.ZodNumber;
2093
+ rotation: z.ZodDefault<z.ZodNumber>;
2094
+ }, z.core.$strict>;
2095
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2096
+ locked: z.ZodOptional<z.ZodBoolean>;
2097
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2098
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2099
+ source: z.ZodObject<{
2100
+ kind: z.ZodLiteral<"space-file">;
2101
+ path: z.ZodString;
2102
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2103
+ }, z.core.$strict>;
2104
+ type: z.ZodLiteral<"audio">;
2105
+ props: z.ZodObject<{}, z.core.$strict>;
2106
+ }, z.core.$strict>, z.ZodObject<{
2107
+ id: z.ZodString;
2108
+ frame: z.ZodObject<{
2109
+ x: z.ZodNumber;
2110
+ y: z.ZodNumber;
2111
+ width: z.ZodNumber;
2112
+ height: z.ZodNumber;
2113
+ rotation: z.ZodDefault<z.ZodNumber>;
2114
+ }, z.core.$strict>;
2115
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2116
+ locked: z.ZodOptional<z.ZodBoolean>;
2117
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2118
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2119
+ source: z.ZodObject<{
2120
+ kind: z.ZodLiteral<"space-file">;
2121
+ path: z.ZodString;
2122
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2123
+ }, z.core.$strict>;
2124
+ type: z.ZodLiteral<"file">;
2125
+ props: z.ZodObject<{}, z.core.$strict>;
2126
+ }, z.core.$strict>, z.ZodObject<{
2127
+ id: z.ZodString;
2128
+ frame: z.ZodObject<{
2129
+ x: z.ZodNumber;
2130
+ y: z.ZodNumber;
2131
+ width: z.ZodNumber;
2132
+ height: z.ZodNumber;
2133
+ rotation: z.ZodDefault<z.ZodNumber>;
2134
+ }, z.core.$strict>;
2135
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2136
+ locked: z.ZodOptional<z.ZodBoolean>;
2137
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2138
+ type: z.ZodLiteral<"task">;
2139
+ props: z.ZodObject<{
2140
+ taskRunId: z.ZodString;
2141
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2142
+ }, z.core.$strict>;
2143
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2144
+ }, z.core.$strict>], "type">, z.ZodObject<{
2145
+ id: z.ZodString;
2146
+ frame: z.ZodObject<{
2147
+ x: z.ZodNumber;
2148
+ y: z.ZodNumber;
2149
+ width: z.ZodNumber;
2150
+ height: z.ZodNumber;
2151
+ rotation: z.ZodDefault<z.ZodNumber>;
2152
+ }, z.core.$strict>;
2153
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2154
+ locked: z.ZodOptional<z.ZodBoolean>;
2155
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2156
+ type: z.ZodString;
2157
+ kindVersion: z.ZodNumber;
2158
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2159
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2160
+ source: z.ZodOptional<z.ZodObject<{
2161
+ kind: z.ZodString;
2162
+ ref: z.ZodString;
2163
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2164
+ }, z.core.$strict>>;
2165
+ }, z.core.$strict>]>;
2166
+ }, z.core.$strict>, z.ZodObject<{
2167
+ type: z.ZodLiteral<"item.delete">;
2168
+ itemId: z.ZodString;
2169
+ cascade: z.ZodDefault<z.ZodBoolean>;
2170
+ }, z.core.$strict>, z.ZodObject<{
2171
+ type: z.ZodLiteral<"item.reorder">;
2172
+ itemId: z.ZodString;
2173
+ index: z.ZodNumber;
2174
+ }, z.core.$strict>, z.ZodObject<{
2175
+ type: z.ZodLiteral<"connection.create">;
2176
+ connection: z.ZodObject<{
2177
+ id: z.ZodString;
2178
+ source: z.ZodObject<{
2179
+ itemId: z.ZodString;
2180
+ portId: z.ZodOptional<z.ZodString>;
2181
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
2182
+ kind: z.ZodLiteral<"auto">;
2183
+ }, z.core.$strip>, z.ZodObject<{
2184
+ kind: z.ZodLiteral<"side">;
2185
+ side: z.ZodEnum<{
2186
+ bottom: "bottom";
2187
+ left: "left";
2188
+ right: "right";
2189
+ top: "top";
2190
+ }>;
2191
+ offset: z.ZodDefault<z.ZodNumber>;
2192
+ }, z.core.$strip>, z.ZodObject<{
2193
+ kind: z.ZodLiteral<"fixed">;
2194
+ nx: z.ZodNumber;
2195
+ ny: z.ZodNumber;
2196
+ }, z.core.$strip>]>>;
2197
+ }, z.core.$strip>;
2198
+ target: z.ZodObject<{
2199
+ itemId: z.ZodString;
2200
+ portId: z.ZodOptional<z.ZodString>;
2201
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
2202
+ kind: z.ZodLiteral<"auto">;
2203
+ }, z.core.$strip>, z.ZodObject<{
2204
+ kind: z.ZodLiteral<"side">;
2205
+ side: z.ZodEnum<{
2206
+ bottom: "bottom";
2207
+ left: "left";
2208
+ right: "right";
2209
+ top: "top";
2210
+ }>;
2211
+ offset: z.ZodDefault<z.ZodNumber>;
2212
+ }, z.core.$strip>, z.ZodObject<{
2213
+ kind: z.ZodLiteral<"fixed">;
2214
+ nx: z.ZodNumber;
2215
+ ny: z.ZodNumber;
2216
+ }, z.core.$strip>]>>;
2217
+ }, z.core.$strip>;
2218
+ relation: z.ZodDefault<z.ZodString>;
2219
+ direction: z.ZodDefault<z.ZodEnum<{
2220
+ backward: "backward";
2221
+ both: "both";
2222
+ forward: "forward";
2223
+ none: "none";
2224
+ }>>;
2225
+ label: z.ZodDefault<z.ZodString>;
2226
+ routing: z.ZodDefault<z.ZodObject<{
2227
+ kind: z.ZodDefault<z.ZodEnum<{
2228
+ curve: "curve";
2229
+ orthogonal: "orthogonal";
2230
+ straight: "straight";
2231
+ }>>;
2232
+ bend: z.ZodDefault<z.ZodNumber>;
2233
+ waypoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
2234
+ x: z.ZodNumber;
2235
+ y: z.ZodNumber;
2236
+ }, z.core.$strip>>>;
2237
+ }, z.core.$strip>>;
2238
+ style: z.ZodDefault<z.ZodObject<{
2239
+ color: z.ZodDefault<z.ZodString>;
2240
+ size: z.ZodDefault<z.ZodNumber>;
2241
+ line: z.ZodDefault<z.ZodEnum<{
2242
+ dashed: "dashed";
2243
+ solid: "solid";
2244
+ }>>;
2245
+ }, z.core.$strip>>;
2246
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2247
+ }, z.core.$strict>;
2248
+ }, z.core.$strict>, z.ZodObject<{
2249
+ type: z.ZodLiteral<"connection.patch">;
2250
+ connectionId: z.ZodString;
2251
+ patch: z.ZodObject<{
2252
+ source: z.ZodOptional<z.ZodObject<{
2253
+ itemId: z.ZodString;
2254
+ portId: z.ZodOptional<z.ZodString>;
2255
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
2256
+ kind: z.ZodLiteral<"auto">;
2257
+ }, z.core.$strip>, z.ZodObject<{
2258
+ kind: z.ZodLiteral<"side">;
2259
+ side: z.ZodEnum<{
2260
+ bottom: "bottom";
2261
+ left: "left";
2262
+ right: "right";
2263
+ top: "top";
2264
+ }>;
2265
+ offset: z.ZodDefault<z.ZodNumber>;
2266
+ }, z.core.$strip>, z.ZodObject<{
2267
+ kind: z.ZodLiteral<"fixed">;
2268
+ nx: z.ZodNumber;
2269
+ ny: z.ZodNumber;
2270
+ }, z.core.$strip>]>>;
2271
+ }, z.core.$strip>>;
2272
+ target: z.ZodOptional<z.ZodObject<{
2273
+ itemId: z.ZodString;
2274
+ portId: z.ZodOptional<z.ZodString>;
2275
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
2276
+ kind: z.ZodLiteral<"auto">;
2277
+ }, z.core.$strip>, z.ZodObject<{
2278
+ kind: z.ZodLiteral<"side">;
2279
+ side: z.ZodEnum<{
2280
+ bottom: "bottom";
2281
+ left: "left";
2282
+ right: "right";
2283
+ top: "top";
2284
+ }>;
2285
+ offset: z.ZodDefault<z.ZodNumber>;
2286
+ }, z.core.$strip>, z.ZodObject<{
2287
+ kind: z.ZodLiteral<"fixed">;
2288
+ nx: z.ZodNumber;
2289
+ ny: z.ZodNumber;
2290
+ }, z.core.$strip>]>>;
2291
+ }, z.core.$strip>>;
2292
+ relation: z.ZodOptional<z.ZodDefault<z.ZodString>>;
2293
+ direction: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
2294
+ backward: "backward";
2295
+ both: "both";
2296
+ forward: "forward";
2297
+ none: "none";
2298
+ }>>>;
2299
+ label: z.ZodOptional<z.ZodDefault<z.ZodString>>;
2300
+ routing: z.ZodOptional<z.ZodDefault<z.ZodObject<{
2301
+ kind: z.ZodDefault<z.ZodEnum<{
2302
+ curve: "curve";
2303
+ orthogonal: "orthogonal";
2304
+ straight: "straight";
2305
+ }>>;
2306
+ bend: z.ZodDefault<z.ZodNumber>;
2307
+ waypoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
2308
+ x: z.ZodNumber;
2309
+ y: z.ZodNumber;
2310
+ }, z.core.$strip>>>;
2311
+ }, z.core.$strip>>>;
2312
+ style: z.ZodOptional<z.ZodDefault<z.ZodObject<{
2313
+ color: z.ZodDefault<z.ZodString>;
2314
+ size: z.ZodDefault<z.ZodNumber>;
2315
+ line: z.ZodDefault<z.ZodEnum<{
2316
+ dashed: "dashed";
2317
+ solid: "solid";
2318
+ }>>;
2319
+ }, z.core.$strip>>>;
2320
+ metadata: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
2321
+ }, z.core.$strict>;
2322
+ }, z.core.$strict>, z.ZodObject<{
2323
+ type: z.ZodLiteral<"connection.delete">;
2324
+ connectionId: z.ZodString;
2325
+ }, z.core.$strict>, z.ZodObject<{
2326
+ type: z.ZodLiteral<"effect.apply">;
2327
+ effect: z.ZodPreprocess<z.ZodObject<{
2328
+ id: z.ZodString;
2329
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
2330
+ type: z.ZodLiteral<"item">;
2331
+ itemId: z.ZodString;
2332
+ }, z.core.$strict>, z.ZodObject<{
2333
+ type: z.ZodLiteral<"board">;
2334
+ }, z.core.$strict>], "type">;
2335
+ kind: z.ZodString;
2336
+ kindVersion: z.ZodNumber;
2337
+ enabled: z.ZodDefault<z.ZodBoolean>;
2338
+ lifecycle: z.ZodEnum<{
2339
+ manual: "manual";
2340
+ persistent: "persistent";
2341
+ "when-visible": "when-visible";
2342
+ }>;
2343
+ timeOrigin: z.ZodEnum<{
2344
+ activation: "activation";
2345
+ board: "board";
2346
+ visible: "visible";
2347
+ }>;
2348
+ layer: z.ZodDefault<z.ZodEnum<{
2349
+ behind: "behind";
2350
+ front: "front";
2351
+ screen: "screen";
2352
+ }>>;
2353
+ seed: z.ZodString;
2354
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2355
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
2356
+ type: z.ZodEnum<{
2357
+ extension: "extension";
2358
+ "space-file": "space-file";
2359
+ }>;
2360
+ ref: z.ZodString;
2361
+ digest: z.ZodOptional<z.ZodString>;
2362
+ }, z.core.$strict>>>;
2363
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2364
+ }, z.core.$strict>>;
2365
+ }, z.core.$strict>, z.ZodObject<{
2366
+ type: z.ZodLiteral<"effect.delete">;
2367
+ effectId: z.ZodString;
2368
+ }, z.core.$strict>, z.ZodObject<{
2369
+ type: z.ZodLiteral<"composition.apply">;
2370
+ composition: z.ZodPreprocess<z.ZodObject<{
2371
+ id: z.ZodString;
2372
+ name: z.ZodString;
2373
+ timeline: z.ZodObject<{
2374
+ duration: z.ZodNumber;
2375
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
2376
+ id: z.ZodString;
2377
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
2378
+ type: z.ZodLiteral<"item">;
2379
+ itemId: z.ZodString;
2380
+ }, z.core.$strict>, z.ZodObject<{
2381
+ type: z.ZodLiteral<"effect">;
2382
+ effectId: z.ZodString;
2383
+ }, z.core.$strict>, z.ZodObject<{
2384
+ type: z.ZodLiteral<"camera">;
2385
+ }, z.core.$strict>, z.ZodObject<{
2386
+ type: z.ZodLiteral<"board">;
2387
+ }, z.core.$strict>], "type">;
2388
+ channel: z.ZodString;
2389
+ channelVersion: z.ZodDefault<z.ZodNumber>;
2390
+ interpolation: z.ZodDefault<z.ZodEnum<{
2391
+ linear: "linear";
2392
+ step: "step";
2393
+ }>>;
2394
+ fill: z.ZodDefault<z.ZodEnum<{
2395
+ backwards: "backwards";
2396
+ both: "both";
2397
+ forwards: "forwards";
2398
+ none: "none";
2399
+ }>>;
2400
+ keyframes: z.ZodArray<z.ZodObject<{
2401
+ time: z.ZodNumber;
2402
+ value: z.ZodUnknown;
2403
+ easing: z.ZodOptional<z.ZodEnum<{
2404
+ "ease-in-cubic": "ease-in-cubic";
2405
+ "ease-in-out-cubic": "ease-in-out-cubic";
2406
+ "ease-in-out-quad": "ease-in-out-quad";
2407
+ "ease-in-quad": "ease-in-quad";
2408
+ "ease-out-cubic": "ease-out-cubic";
2409
+ "ease-out-expo": "ease-out-expo";
2410
+ "ease-out-quad": "ease-out-quad";
2411
+ "ease-out-quart": "ease-out-quart";
2412
+ linear: "linear";
2413
+ }>>;
2414
+ }, z.core.$strict>>;
2415
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2416
+ }, z.core.$strict>>>;
2417
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
2418
+ id: z.ZodString;
2419
+ kind: z.ZodString;
2420
+ kindVersion: z.ZodNumber;
2421
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
2422
+ type: z.ZodLiteral<"item">;
2423
+ itemId: z.ZodString;
2424
+ }, z.core.$strict>, z.ZodObject<{
2425
+ type: z.ZodLiteral<"effect">;
2426
+ effectId: z.ZodString;
2427
+ }, z.core.$strict>, z.ZodObject<{
2428
+ type: z.ZodLiteral<"camera">;
2429
+ }, z.core.$strict>, z.ZodObject<{
2430
+ type: z.ZodLiteral<"board">;
2431
+ }, z.core.$strict>], "type">;
2432
+ start: z.ZodNumber;
2433
+ duration: z.ZodNumber;
2434
+ layer: z.ZodDefault<z.ZodEnum<{
2435
+ behind: "behind";
2436
+ content: "content";
2437
+ front: "front";
2438
+ screen: "screen";
2439
+ }>>;
2440
+ fill: z.ZodDefault<z.ZodEnum<{
2441
+ backwards: "backwards";
2442
+ both: "both";
2443
+ forwards: "forwards";
2444
+ none: "none";
2445
+ }>>;
2446
+ easing: z.ZodDefault<z.ZodEnum<{
2447
+ "ease-in-cubic": "ease-in-cubic";
2448
+ "ease-in-out-cubic": "ease-in-out-cubic";
2449
+ "ease-in-out-quad": "ease-in-out-quad";
2450
+ "ease-in-quad": "ease-in-quad";
2451
+ "ease-out-cubic": "ease-out-cubic";
2452
+ "ease-out-expo": "ease-out-expo";
2453
+ "ease-out-quad": "ease-out-quad";
2454
+ "ease-out-quart": "ease-out-quart";
2455
+ linear: "linear";
2456
+ }>>;
2457
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2458
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
2459
+ type: z.ZodEnum<{
2460
+ extension: "extension";
2461
+ "space-file": "space-file";
2462
+ }>;
2463
+ ref: z.ZodString;
2464
+ digest: z.ZodOptional<z.ZodString>;
2465
+ }, z.core.$strict>>>;
2466
+ seed: z.ZodString;
2467
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2468
+ }, z.core.$strict>>>;
2469
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
2470
+ id: z.ZodString;
2471
+ time: z.ZodNumber;
2472
+ duration: z.ZodOptional<z.ZodNumber>;
2473
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2474
+ }, z.core.$strict>>>;
2475
+ }, z.core.$strict>;
2476
+ playback: z.ZodDefault<z.ZodObject<{
2477
+ loop: z.ZodDefault<z.ZodBoolean>;
2478
+ endBehavior: z.ZodDefault<z.ZodEnum<{
2479
+ hold: "hold";
2480
+ reset: "reset";
2481
+ }>>;
2482
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
2483
+ mode: z.ZodLiteral<"base">;
2484
+ }, z.core.$strict>, z.ZodObject<{
2485
+ mode: z.ZodLiteral<"time">;
2486
+ time: z.ZodNumber;
2487
+ }, z.core.$strict>, z.ZodObject<{
2488
+ mode: z.ZodLiteral<"marker">;
2489
+ markerId: z.ZodString;
2490
+ }, z.core.$strict>], "mode">>;
2491
+ }, z.core.$strict>>;
2492
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2493
+ }, z.core.$strict>>;
2494
+ }, z.core.$strict>, z.ZodObject<{
2495
+ type: z.ZodLiteral<"composition.delete">;
2496
+ compositionId: z.ZodString;
2497
+ }, z.core.$strict>], "type">;
2498
+ type BoardSemanticCommand = z.infer<typeof BoardSemanticCommandSchema>;
2499
+ declare const BoardSemanticMutationSchema: z.ZodObject<{
2500
+ mutationId: z.ZodString;
2501
+ baseVersion: z.ZodNumber;
2502
+ clientId: z.ZodOptional<z.ZodString>;
2503
+ undoGroupId: z.ZodOptional<z.ZodString>;
2504
+ dryRun: z.ZodDefault<z.ZodBoolean>;
2505
+ commands: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2506
+ type: z.ZodLiteral<"board.patch">;
2507
+ patch: z.ZodObject<{
2508
+ title: z.ZodOptional<z.ZodString>;
2509
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
2510
+ metadataPatch: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2511
+ }, z.core.$strict>;
2512
+ }, z.core.$strict>, z.ZodObject<{
2513
+ type: z.ZodLiteral<"item.create">;
2514
+ item: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
2515
+ id: z.ZodString;
2516
+ frame: z.ZodObject<{
2517
+ x: z.ZodNumber;
2518
+ y: z.ZodNumber;
2519
+ width: z.ZodNumber;
2520
+ height: z.ZodNumber;
2521
+ rotation: z.ZodDefault<z.ZodNumber>;
2522
+ }, z.core.$strict>;
2523
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2524
+ locked: z.ZodOptional<z.ZodBoolean>;
2525
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2526
+ style: z.ZodOptional<z.ZodObject<{
2527
+ color: z.ZodOptional<z.ZodEnum<{
2528
+ amber: "amber";
2529
+ black: "black";
2530
+ blue: "blue";
2531
+ brand: "brand";
2532
+ green: "green";
2533
+ neutral: "neutral";
2534
+ rose: "rose";
2535
+ violet: "violet";
2536
+ white: "white";
2537
+ }>>;
2538
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2539
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2540
+ }, z.core.$strict>>;
2541
+ type: z.ZodLiteral<"text">;
2542
+ props: z.ZodObject<{
2543
+ text: z.ZodDefault<z.ZodString>;
2544
+ fontSize: z.ZodDefault<z.ZodNumber>;
2545
+ }, z.core.$strict>;
2546
+ }, z.core.$strict>, z.ZodObject<{
2547
+ id: z.ZodString;
2548
+ frame: z.ZodObject<{
2549
+ x: z.ZodNumber;
2550
+ y: z.ZodNumber;
2551
+ width: z.ZodNumber;
2552
+ height: z.ZodNumber;
2553
+ rotation: z.ZodDefault<z.ZodNumber>;
2554
+ }, z.core.$strict>;
2555
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2556
+ locked: z.ZodOptional<z.ZodBoolean>;
2557
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2558
+ style: z.ZodOptional<z.ZodObject<{
2559
+ color: z.ZodOptional<z.ZodEnum<{
2560
+ amber: "amber";
2561
+ black: "black";
2562
+ blue: "blue";
2563
+ brand: "brand";
2564
+ green: "green";
2565
+ neutral: "neutral";
2566
+ rose: "rose";
2567
+ violet: "violet";
2568
+ white: "white";
2569
+ }>>;
2570
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2571
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2572
+ }, z.core.$strict>>;
2573
+ type: z.ZodLiteral<"geo">;
2574
+ props: z.ZodObject<{
2575
+ shape: z.ZodDefault<z.ZodEnum<{
2576
+ diamond: "diamond";
2577
+ ellipse: "ellipse";
2578
+ rectangle: "rectangle";
2579
+ rounded: "rounded";
2580
+ triangle: "triangle";
2581
+ }>>;
2582
+ text: z.ZodDefault<z.ZodString>;
2583
+ }, z.core.$strict>;
2584
+ }, z.core.$strict>, z.ZodObject<{
2585
+ id: z.ZodString;
2586
+ frame: z.ZodObject<{
2587
+ x: z.ZodNumber;
2588
+ y: z.ZodNumber;
2589
+ width: z.ZodNumber;
2590
+ height: z.ZodNumber;
2591
+ rotation: z.ZodDefault<z.ZodNumber>;
2592
+ }, z.core.$strict>;
2593
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2594
+ locked: z.ZodOptional<z.ZodBoolean>;
2595
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2596
+ style: z.ZodOptional<z.ZodObject<{
2597
+ color: z.ZodOptional<z.ZodEnum<{
2598
+ amber: "amber";
2599
+ black: "black";
2600
+ blue: "blue";
2601
+ brand: "brand";
2602
+ green: "green";
2603
+ neutral: "neutral";
2604
+ rose: "rose";
2605
+ violet: "violet";
2606
+ white: "white";
2607
+ }>>;
2608
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2609
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2610
+ }, z.core.$strict>>;
2611
+ type: z.ZodLiteral<"draw">;
2612
+ props: z.ZodObject<{
2613
+ points: z.ZodArray<z.ZodObject<{
2614
+ x: z.ZodNumber;
2615
+ y: z.ZodNumber;
2616
+ p: z.ZodDefault<z.ZodNumber>;
2617
+ }, z.core.$strict>>;
2618
+ }, z.core.$strict>;
2619
+ }, z.core.$strict>, z.ZodObject<{
2620
+ id: z.ZodString;
2621
+ frame: z.ZodObject<{
2622
+ x: z.ZodNumber;
2623
+ y: z.ZodNumber;
2624
+ width: z.ZodNumber;
2625
+ height: z.ZodNumber;
2626
+ rotation: z.ZodDefault<z.ZodNumber>;
2627
+ }, z.core.$strict>;
2628
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2629
+ locked: z.ZodOptional<z.ZodBoolean>;
2630
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2631
+ style: z.ZodOptional<z.ZodObject<{
2632
+ color: z.ZodOptional<z.ZodEnum<{
2633
+ amber: "amber";
2634
+ black: "black";
2635
+ blue: "blue";
2636
+ brand: "brand";
2637
+ green: "green";
2638
+ neutral: "neutral";
2639
+ rose: "rose";
2640
+ violet: "violet";
2641
+ white: "white";
2642
+ }>>;
2643
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2644
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2645
+ }, z.core.$strict>>;
2646
+ type: z.ZodLiteral<"arrow">;
2647
+ props: z.ZodObject<{
2648
+ start: z.ZodObject<{
2649
+ x: z.ZodNumber;
2650
+ y: z.ZodNumber;
2651
+ }, z.core.$strict>;
2652
+ end: z.ZodObject<{
2653
+ x: z.ZodNumber;
2654
+ y: z.ZodNumber;
2655
+ }, z.core.$strict>;
2656
+ bend: z.ZodDefault<z.ZodNumber>;
2657
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
2658
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
2659
+ label: z.ZodDefault<z.ZodString>;
2660
+ }, z.core.$strict>;
2661
+ }, z.core.$strict>, z.ZodObject<{
2662
+ id: z.ZodString;
2663
+ frame: z.ZodObject<{
2664
+ x: z.ZodNumber;
2665
+ y: z.ZodNumber;
2666
+ width: z.ZodNumber;
2667
+ height: z.ZodNumber;
2668
+ rotation: z.ZodDefault<z.ZodNumber>;
2669
+ }, z.core.$strict>;
2670
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2671
+ locked: z.ZodOptional<z.ZodBoolean>;
2672
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2673
+ style: z.ZodOptional<z.ZodObject<{
2674
+ color: z.ZodOptional<z.ZodEnum<{
2675
+ amber: "amber";
2676
+ black: "black";
2677
+ blue: "blue";
2678
+ brand: "brand";
2679
+ green: "green";
2680
+ neutral: "neutral";
2681
+ rose: "rose";
2682
+ violet: "violet";
2683
+ white: "white";
2684
+ }>>;
2685
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2686
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2687
+ }, z.core.$strict>>;
2688
+ type: z.ZodLiteral<"frame">;
2689
+ props: z.ZodObject<{
2690
+ label: z.ZodDefault<z.ZodString>;
2691
+ }, z.core.$strict>;
2692
+ }, z.core.$strict>, z.ZodObject<{
2693
+ id: z.ZodString;
2694
+ frame: z.ZodObject<{
2695
+ x: z.ZodNumber;
2696
+ y: z.ZodNumber;
2697
+ width: z.ZodNumber;
2698
+ height: z.ZodNumber;
2699
+ rotation: z.ZodDefault<z.ZodNumber>;
2700
+ }, z.core.$strict>;
2701
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2702
+ locked: z.ZodOptional<z.ZodBoolean>;
2703
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2704
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2705
+ source: z.ZodObject<{
2706
+ kind: z.ZodLiteral<"space-file">;
2707
+ path: z.ZodString;
2708
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2709
+ }, z.core.$strict>;
2710
+ type: z.ZodLiteral<"image">;
2711
+ props: z.ZodObject<{
2712
+ crop: z.ZodOptional<z.ZodObject<{
2713
+ x: z.ZodNumber;
2714
+ y: z.ZodNumber;
2715
+ w: z.ZodNumber;
2716
+ h: z.ZodNumber;
2717
+ }, z.core.$strict>>;
2718
+ }, z.core.$strict>;
2719
+ }, z.core.$strict>, z.ZodObject<{
2720
+ id: z.ZodString;
2721
+ frame: z.ZodObject<{
2722
+ x: z.ZodNumber;
2723
+ y: z.ZodNumber;
2724
+ width: z.ZodNumber;
2725
+ height: z.ZodNumber;
2726
+ rotation: z.ZodDefault<z.ZodNumber>;
2727
+ }, z.core.$strict>;
2728
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2729
+ locked: z.ZodOptional<z.ZodBoolean>;
2730
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2731
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2732
+ source: z.ZodObject<{
2733
+ kind: z.ZodLiteral<"space-file">;
2734
+ path: z.ZodString;
2735
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2736
+ }, z.core.$strict>;
2737
+ type: z.ZodLiteral<"video">;
2738
+ props: z.ZodObject<{}, z.core.$strict>;
2739
+ }, z.core.$strict>, z.ZodObject<{
2740
+ id: z.ZodString;
2741
+ frame: z.ZodObject<{
2742
+ x: z.ZodNumber;
2743
+ y: z.ZodNumber;
2744
+ width: z.ZodNumber;
2745
+ height: z.ZodNumber;
2746
+ rotation: z.ZodDefault<z.ZodNumber>;
2747
+ }, z.core.$strict>;
2748
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2749
+ locked: z.ZodOptional<z.ZodBoolean>;
2750
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2751
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2752
+ source: z.ZodObject<{
2753
+ kind: z.ZodLiteral<"space-file">;
2754
+ path: z.ZodString;
2755
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2756
+ }, z.core.$strict>;
2757
+ type: z.ZodLiteral<"audio">;
2758
+ props: z.ZodObject<{}, z.core.$strict>;
2759
+ }, z.core.$strict>, z.ZodObject<{
2760
+ id: z.ZodString;
2761
+ frame: z.ZodObject<{
2762
+ x: z.ZodNumber;
2763
+ y: z.ZodNumber;
2764
+ width: z.ZodNumber;
2765
+ height: z.ZodNumber;
2766
+ rotation: z.ZodDefault<z.ZodNumber>;
2767
+ }, z.core.$strict>;
2768
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2769
+ locked: z.ZodOptional<z.ZodBoolean>;
2770
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2771
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2772
+ source: z.ZodObject<{
2773
+ kind: z.ZodLiteral<"space-file">;
2774
+ path: z.ZodString;
2775
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2776
+ }, z.core.$strict>;
2777
+ type: z.ZodLiteral<"file">;
2778
+ props: z.ZodObject<{}, z.core.$strict>;
2779
+ }, z.core.$strict>, z.ZodObject<{
2780
+ id: z.ZodString;
2781
+ frame: z.ZodObject<{
2782
+ x: z.ZodNumber;
2783
+ y: z.ZodNumber;
2784
+ width: z.ZodNumber;
2785
+ height: z.ZodNumber;
2786
+ rotation: z.ZodDefault<z.ZodNumber>;
2787
+ }, z.core.$strict>;
2788
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2789
+ locked: z.ZodOptional<z.ZodBoolean>;
2790
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2791
+ type: z.ZodLiteral<"task">;
2792
+ props: z.ZodObject<{
2793
+ taskRunId: z.ZodString;
2794
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2795
+ }, z.core.$strict>;
2796
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
2797
+ }, z.core.$strict>], "type">, z.ZodObject<{
2798
+ id: z.ZodString;
2799
+ frame: z.ZodObject<{
2800
+ x: z.ZodNumber;
2801
+ y: z.ZodNumber;
2802
+ width: z.ZodNumber;
2803
+ height: z.ZodNumber;
2804
+ rotation: z.ZodDefault<z.ZodNumber>;
2805
+ }, z.core.$strict>;
2806
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2807
+ locked: z.ZodOptional<z.ZodBoolean>;
2808
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2809
+ type: z.ZodString;
2810
+ kindVersion: z.ZodNumber;
2811
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
2812
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2813
+ source: z.ZodOptional<z.ZodObject<{
2814
+ kind: z.ZodString;
2815
+ ref: z.ZodString;
2816
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2817
+ }, z.core.$strict>>;
2818
+ }, z.core.$strict>]>;
2819
+ }, z.core.$strict>, z.ZodObject<{
2820
+ type: z.ZodLiteral<"item.patch">;
2821
+ itemId: z.ZodString;
2822
+ patch: z.ZodObject<{
2823
+ frame: z.ZodOptional<z.ZodObject<{
2824
+ x: z.ZodOptional<z.ZodNumber>;
2825
+ y: z.ZodOptional<z.ZodNumber>;
2826
+ width: z.ZodOptional<z.ZodNumber>;
2827
+ height: z.ZodOptional<z.ZodNumber>;
2828
+ rotation: z.ZodOptional<z.ZodNumber>;
2829
+ }, z.core.$strict>>;
2830
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2831
+ locked: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
2832
+ props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2833
+ style: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
2834
+ source: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
2835
+ metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
2836
+ }, z.core.$strict>;
2837
+ }, z.core.$strict>, z.ZodObject<{
2838
+ type: z.ZodLiteral<"item.replace">;
2839
+ itemId: z.ZodString;
2840
+ item: z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
2841
+ id: z.ZodString;
2842
+ frame: z.ZodObject<{
2843
+ x: z.ZodNumber;
2844
+ y: z.ZodNumber;
2845
+ width: z.ZodNumber;
2846
+ height: z.ZodNumber;
2847
+ rotation: z.ZodDefault<z.ZodNumber>;
2848
+ }, z.core.$strict>;
2849
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2850
+ locked: z.ZodOptional<z.ZodBoolean>;
2851
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2852
+ style: z.ZodOptional<z.ZodObject<{
2853
+ color: z.ZodOptional<z.ZodEnum<{
2854
+ amber: "amber";
2855
+ black: "black";
2856
+ blue: "blue";
2857
+ brand: "brand";
2858
+ green: "green";
2859
+ neutral: "neutral";
2860
+ rose: "rose";
2861
+ violet: "violet";
2862
+ white: "white";
2863
+ }>>;
2864
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2865
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2866
+ }, z.core.$strict>>;
2867
+ type: z.ZodLiteral<"text">;
2868
+ props: z.ZodObject<{
2869
+ text: z.ZodDefault<z.ZodString>;
2870
+ fontSize: z.ZodDefault<z.ZodNumber>;
2871
+ }, z.core.$strict>;
2872
+ }, z.core.$strict>, z.ZodObject<{
2873
+ id: z.ZodString;
2874
+ frame: z.ZodObject<{
2875
+ x: z.ZodNumber;
2876
+ y: z.ZodNumber;
2877
+ width: z.ZodNumber;
2878
+ height: z.ZodNumber;
2879
+ rotation: z.ZodDefault<z.ZodNumber>;
2880
+ }, z.core.$strict>;
2881
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2882
+ locked: z.ZodOptional<z.ZodBoolean>;
2883
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2884
+ style: z.ZodOptional<z.ZodObject<{
2885
+ color: z.ZodOptional<z.ZodEnum<{
2886
+ amber: "amber";
2887
+ black: "black";
2888
+ blue: "blue";
2889
+ brand: "brand";
2890
+ green: "green";
2891
+ neutral: "neutral";
2892
+ rose: "rose";
2893
+ violet: "violet";
2894
+ white: "white";
2895
+ }>>;
2896
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2897
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2898
+ }, z.core.$strict>>;
2899
+ type: z.ZodLiteral<"geo">;
2900
+ props: z.ZodObject<{
2901
+ shape: z.ZodDefault<z.ZodEnum<{
2902
+ diamond: "diamond";
2903
+ ellipse: "ellipse";
2904
+ rectangle: "rectangle";
2905
+ rounded: "rounded";
2906
+ triangle: "triangle";
2907
+ }>>;
2908
+ text: z.ZodDefault<z.ZodString>;
2909
+ }, z.core.$strict>;
2910
+ }, z.core.$strict>, z.ZodObject<{
2911
+ id: z.ZodString;
2912
+ frame: z.ZodObject<{
2913
+ x: z.ZodNumber;
2914
+ y: z.ZodNumber;
2915
+ width: z.ZodNumber;
2916
+ height: z.ZodNumber;
2917
+ rotation: z.ZodDefault<z.ZodNumber>;
2918
+ }, z.core.$strict>;
2919
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2920
+ locked: z.ZodOptional<z.ZodBoolean>;
2921
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2922
+ style: z.ZodOptional<z.ZodObject<{
2923
+ color: z.ZodOptional<z.ZodEnum<{
2924
+ amber: "amber";
2925
+ black: "black";
2926
+ blue: "blue";
2927
+ brand: "brand";
2928
+ green: "green";
2929
+ neutral: "neutral";
2930
+ rose: "rose";
2931
+ violet: "violet";
2932
+ white: "white";
2933
+ }>>;
2934
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2935
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2936
+ }, z.core.$strict>>;
2937
+ type: z.ZodLiteral<"draw">;
2938
+ props: z.ZodObject<{
2939
+ points: z.ZodArray<z.ZodObject<{
2940
+ x: z.ZodNumber;
2941
+ y: z.ZodNumber;
2942
+ p: z.ZodDefault<z.ZodNumber>;
2943
+ }, z.core.$strict>>;
2944
+ }, z.core.$strict>;
2945
+ }, z.core.$strict>, z.ZodObject<{
2946
+ id: z.ZodString;
2947
+ frame: z.ZodObject<{
2948
+ x: z.ZodNumber;
2949
+ y: z.ZodNumber;
2950
+ width: z.ZodNumber;
2951
+ height: z.ZodNumber;
2952
+ rotation: z.ZodDefault<z.ZodNumber>;
2953
+ }, z.core.$strict>;
2954
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2955
+ locked: z.ZodOptional<z.ZodBoolean>;
2956
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2957
+ style: z.ZodOptional<z.ZodObject<{
2958
+ color: z.ZodOptional<z.ZodEnum<{
2959
+ amber: "amber";
2960
+ black: "black";
2961
+ blue: "blue";
2962
+ brand: "brand";
2963
+ green: "green";
2964
+ neutral: "neutral";
2965
+ rose: "rose";
2966
+ violet: "violet";
2967
+ white: "white";
2968
+ }>>;
2969
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
2970
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
2971
+ }, z.core.$strict>>;
2972
+ type: z.ZodLiteral<"arrow">;
2973
+ props: z.ZodObject<{
2974
+ start: z.ZodObject<{
2975
+ x: z.ZodNumber;
2976
+ y: z.ZodNumber;
2977
+ }, z.core.$strict>;
2978
+ end: z.ZodObject<{
2979
+ x: z.ZodNumber;
2980
+ y: z.ZodNumber;
2981
+ }, z.core.$strict>;
2982
+ bend: z.ZodDefault<z.ZodNumber>;
2983
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
2984
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
2985
+ label: z.ZodDefault<z.ZodString>;
2986
+ }, z.core.$strict>;
2987
+ }, z.core.$strict>, z.ZodObject<{
2988
+ id: z.ZodString;
2989
+ frame: z.ZodObject<{
2990
+ x: z.ZodNumber;
2991
+ y: z.ZodNumber;
2992
+ width: z.ZodNumber;
2993
+ height: z.ZodNumber;
2994
+ rotation: z.ZodDefault<z.ZodNumber>;
2995
+ }, z.core.$strict>;
2996
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2997
+ locked: z.ZodOptional<z.ZodBoolean>;
2998
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
2999
+ style: z.ZodOptional<z.ZodObject<{
3000
+ color: z.ZodOptional<z.ZodEnum<{
3001
+ amber: "amber";
3002
+ black: "black";
3003
+ blue: "blue";
3004
+ brand: "brand";
3005
+ green: "green";
3006
+ neutral: "neutral";
3007
+ rose: "rose";
3008
+ violet: "violet";
3009
+ white: "white";
3010
+ }>>;
3011
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3012
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3013
+ }, z.core.$strict>>;
3014
+ type: z.ZodLiteral<"frame">;
3015
+ props: z.ZodObject<{
3016
+ label: z.ZodDefault<z.ZodString>;
3017
+ }, z.core.$strict>;
3018
+ }, z.core.$strict>, z.ZodObject<{
3019
+ id: z.ZodString;
3020
+ frame: z.ZodObject<{
3021
+ x: z.ZodNumber;
3022
+ y: z.ZodNumber;
3023
+ width: z.ZodNumber;
3024
+ height: z.ZodNumber;
3025
+ rotation: z.ZodDefault<z.ZodNumber>;
3026
+ }, z.core.$strict>;
3027
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3028
+ locked: z.ZodOptional<z.ZodBoolean>;
3029
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3030
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3031
+ source: z.ZodObject<{
3032
+ kind: z.ZodLiteral<"space-file">;
3033
+ path: z.ZodString;
3034
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3035
+ }, z.core.$strict>;
3036
+ type: z.ZodLiteral<"image">;
3037
+ props: z.ZodObject<{
3038
+ crop: z.ZodOptional<z.ZodObject<{
3039
+ x: z.ZodNumber;
3040
+ y: z.ZodNumber;
3041
+ w: z.ZodNumber;
3042
+ h: z.ZodNumber;
3043
+ }, z.core.$strict>>;
3044
+ }, z.core.$strict>;
3045
+ }, z.core.$strict>, z.ZodObject<{
3046
+ id: z.ZodString;
3047
+ frame: z.ZodObject<{
3048
+ x: z.ZodNumber;
3049
+ y: z.ZodNumber;
3050
+ width: z.ZodNumber;
3051
+ height: z.ZodNumber;
3052
+ rotation: z.ZodDefault<z.ZodNumber>;
3053
+ }, z.core.$strict>;
3054
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3055
+ locked: z.ZodOptional<z.ZodBoolean>;
3056
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3057
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3058
+ source: z.ZodObject<{
3059
+ kind: z.ZodLiteral<"space-file">;
3060
+ path: z.ZodString;
3061
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3062
+ }, z.core.$strict>;
3063
+ type: z.ZodLiteral<"video">;
3064
+ props: z.ZodObject<{}, z.core.$strict>;
3065
+ }, z.core.$strict>, z.ZodObject<{
3066
+ id: z.ZodString;
3067
+ frame: z.ZodObject<{
3068
+ x: z.ZodNumber;
3069
+ y: z.ZodNumber;
3070
+ width: z.ZodNumber;
3071
+ height: z.ZodNumber;
3072
+ rotation: z.ZodDefault<z.ZodNumber>;
3073
+ }, z.core.$strict>;
3074
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3075
+ locked: z.ZodOptional<z.ZodBoolean>;
3076
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3077
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3078
+ source: z.ZodObject<{
3079
+ kind: z.ZodLiteral<"space-file">;
3080
+ path: z.ZodString;
3081
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3082
+ }, z.core.$strict>;
3083
+ type: z.ZodLiteral<"audio">;
3084
+ props: z.ZodObject<{}, z.core.$strict>;
3085
+ }, z.core.$strict>, z.ZodObject<{
3086
+ id: z.ZodString;
3087
+ frame: z.ZodObject<{
3088
+ x: z.ZodNumber;
3089
+ y: z.ZodNumber;
3090
+ width: z.ZodNumber;
3091
+ height: z.ZodNumber;
3092
+ rotation: z.ZodDefault<z.ZodNumber>;
3093
+ }, z.core.$strict>;
3094
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3095
+ locked: z.ZodOptional<z.ZodBoolean>;
3096
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3097
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3098
+ source: z.ZodObject<{
3099
+ kind: z.ZodLiteral<"space-file">;
3100
+ path: z.ZodString;
3101
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3102
+ }, z.core.$strict>;
3103
+ type: z.ZodLiteral<"file">;
3104
+ props: z.ZodObject<{}, z.core.$strict>;
3105
+ }, z.core.$strict>, z.ZodObject<{
3106
+ id: z.ZodString;
3107
+ frame: z.ZodObject<{
3108
+ x: z.ZodNumber;
3109
+ y: z.ZodNumber;
3110
+ width: z.ZodNumber;
3111
+ height: z.ZodNumber;
3112
+ rotation: z.ZodDefault<z.ZodNumber>;
3113
+ }, z.core.$strict>;
3114
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3115
+ locked: z.ZodOptional<z.ZodBoolean>;
3116
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3117
+ type: z.ZodLiteral<"task">;
3118
+ props: z.ZodObject<{
3119
+ taskRunId: z.ZodString;
3120
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3121
+ }, z.core.$strict>;
3122
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3123
+ }, z.core.$strict>], "type">, z.ZodObject<{
3124
+ id: z.ZodString;
3125
+ frame: z.ZodObject<{
3126
+ x: z.ZodNumber;
3127
+ y: z.ZodNumber;
3128
+ width: z.ZodNumber;
3129
+ height: z.ZodNumber;
3130
+ rotation: z.ZodDefault<z.ZodNumber>;
3131
+ }, z.core.$strict>;
3132
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3133
+ locked: z.ZodOptional<z.ZodBoolean>;
3134
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3135
+ type: z.ZodString;
3136
+ kindVersion: z.ZodNumber;
3137
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3138
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3139
+ source: z.ZodOptional<z.ZodObject<{
3140
+ kind: z.ZodString;
3141
+ ref: z.ZodString;
3142
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3143
+ }, z.core.$strict>>;
3144
+ }, z.core.$strict>]>;
3145
+ }, z.core.$strict>, z.ZodObject<{
3146
+ type: z.ZodLiteral<"item.delete">;
3147
+ itemId: z.ZodString;
3148
+ cascade: z.ZodDefault<z.ZodBoolean>;
3149
+ }, z.core.$strict>, z.ZodObject<{
3150
+ type: z.ZodLiteral<"item.reorder">;
3151
+ itemId: z.ZodString;
3152
+ index: z.ZodNumber;
3153
+ }, z.core.$strict>, z.ZodObject<{
3154
+ type: z.ZodLiteral<"connection.create">;
3155
+ connection: z.ZodObject<{
3156
+ id: z.ZodString;
3157
+ source: z.ZodObject<{
3158
+ itemId: z.ZodString;
3159
+ portId: z.ZodOptional<z.ZodString>;
3160
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
3161
+ kind: z.ZodLiteral<"auto">;
3162
+ }, z.core.$strip>, z.ZodObject<{
3163
+ kind: z.ZodLiteral<"side">;
3164
+ side: z.ZodEnum<{
3165
+ bottom: "bottom";
3166
+ left: "left";
3167
+ right: "right";
3168
+ top: "top";
3169
+ }>;
3170
+ offset: z.ZodDefault<z.ZodNumber>;
3171
+ }, z.core.$strip>, z.ZodObject<{
3172
+ kind: z.ZodLiteral<"fixed">;
3173
+ nx: z.ZodNumber;
3174
+ ny: z.ZodNumber;
3175
+ }, z.core.$strip>]>>;
3176
+ }, z.core.$strip>;
3177
+ target: z.ZodObject<{
3178
+ itemId: z.ZodString;
3179
+ portId: z.ZodOptional<z.ZodString>;
3180
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
3181
+ kind: z.ZodLiteral<"auto">;
3182
+ }, z.core.$strip>, z.ZodObject<{
3183
+ kind: z.ZodLiteral<"side">;
3184
+ side: z.ZodEnum<{
3185
+ bottom: "bottom";
3186
+ left: "left";
3187
+ right: "right";
3188
+ top: "top";
3189
+ }>;
3190
+ offset: z.ZodDefault<z.ZodNumber>;
3191
+ }, z.core.$strip>, z.ZodObject<{
3192
+ kind: z.ZodLiteral<"fixed">;
3193
+ nx: z.ZodNumber;
3194
+ ny: z.ZodNumber;
3195
+ }, z.core.$strip>]>>;
3196
+ }, z.core.$strip>;
3197
+ relation: z.ZodDefault<z.ZodString>;
3198
+ direction: z.ZodDefault<z.ZodEnum<{
3199
+ backward: "backward";
3200
+ both: "both";
3201
+ forward: "forward";
3202
+ none: "none";
3203
+ }>>;
3204
+ label: z.ZodDefault<z.ZodString>;
3205
+ routing: z.ZodDefault<z.ZodObject<{
3206
+ kind: z.ZodDefault<z.ZodEnum<{
3207
+ curve: "curve";
3208
+ orthogonal: "orthogonal";
3209
+ straight: "straight";
3210
+ }>>;
3211
+ bend: z.ZodDefault<z.ZodNumber>;
3212
+ waypoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
3213
+ x: z.ZodNumber;
3214
+ y: z.ZodNumber;
3215
+ }, z.core.$strip>>>;
3216
+ }, z.core.$strip>>;
3217
+ style: z.ZodDefault<z.ZodObject<{
3218
+ color: z.ZodDefault<z.ZodString>;
3219
+ size: z.ZodDefault<z.ZodNumber>;
3220
+ line: z.ZodDefault<z.ZodEnum<{
3221
+ dashed: "dashed";
3222
+ solid: "solid";
3223
+ }>>;
3224
+ }, z.core.$strip>>;
3225
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3226
+ }, z.core.$strict>;
3227
+ }, z.core.$strict>, z.ZodObject<{
3228
+ type: z.ZodLiteral<"connection.patch">;
3229
+ connectionId: z.ZodString;
3230
+ patch: z.ZodObject<{
3231
+ source: z.ZodOptional<z.ZodObject<{
3232
+ itemId: z.ZodString;
3233
+ portId: z.ZodOptional<z.ZodString>;
3234
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
3235
+ kind: z.ZodLiteral<"auto">;
3236
+ }, z.core.$strip>, z.ZodObject<{
3237
+ kind: z.ZodLiteral<"side">;
3238
+ side: z.ZodEnum<{
3239
+ bottom: "bottom";
3240
+ left: "left";
3241
+ right: "right";
3242
+ top: "top";
3243
+ }>;
3244
+ offset: z.ZodDefault<z.ZodNumber>;
3245
+ }, z.core.$strip>, z.ZodObject<{
3246
+ kind: z.ZodLiteral<"fixed">;
3247
+ nx: z.ZodNumber;
3248
+ ny: z.ZodNumber;
3249
+ }, z.core.$strip>]>>;
3250
+ }, z.core.$strip>>;
3251
+ target: z.ZodOptional<z.ZodObject<{
3252
+ itemId: z.ZodString;
3253
+ portId: z.ZodOptional<z.ZodString>;
3254
+ anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
3255
+ kind: z.ZodLiteral<"auto">;
3256
+ }, z.core.$strip>, z.ZodObject<{
3257
+ kind: z.ZodLiteral<"side">;
3258
+ side: z.ZodEnum<{
3259
+ bottom: "bottom";
3260
+ left: "left";
3261
+ right: "right";
3262
+ top: "top";
3263
+ }>;
3264
+ offset: z.ZodDefault<z.ZodNumber>;
3265
+ }, z.core.$strip>, z.ZodObject<{
3266
+ kind: z.ZodLiteral<"fixed">;
3267
+ nx: z.ZodNumber;
3268
+ ny: z.ZodNumber;
3269
+ }, z.core.$strip>]>>;
3270
+ }, z.core.$strip>>;
3271
+ relation: z.ZodOptional<z.ZodDefault<z.ZodString>>;
3272
+ direction: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
3273
+ backward: "backward";
3274
+ both: "both";
3275
+ forward: "forward";
3276
+ none: "none";
3277
+ }>>>;
3278
+ label: z.ZodOptional<z.ZodDefault<z.ZodString>>;
3279
+ routing: z.ZodOptional<z.ZodDefault<z.ZodObject<{
3280
+ kind: z.ZodDefault<z.ZodEnum<{
3281
+ curve: "curve";
3282
+ orthogonal: "orthogonal";
3283
+ straight: "straight";
3284
+ }>>;
3285
+ bend: z.ZodDefault<z.ZodNumber>;
3286
+ waypoints: z.ZodDefault<z.ZodArray<z.ZodObject<{
3287
+ x: z.ZodNumber;
3288
+ y: z.ZodNumber;
3289
+ }, z.core.$strip>>>;
3290
+ }, z.core.$strip>>>;
3291
+ style: z.ZodOptional<z.ZodDefault<z.ZodObject<{
3292
+ color: z.ZodDefault<z.ZodString>;
3293
+ size: z.ZodDefault<z.ZodNumber>;
3294
+ line: z.ZodDefault<z.ZodEnum<{
3295
+ dashed: "dashed";
3296
+ solid: "solid";
3297
+ }>>;
3298
+ }, z.core.$strip>>>;
3299
+ metadata: z.ZodOptional<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
3300
+ }, z.core.$strict>;
3301
+ }, z.core.$strict>, z.ZodObject<{
3302
+ type: z.ZodLiteral<"connection.delete">;
3303
+ connectionId: z.ZodString;
3304
+ }, z.core.$strict>, z.ZodObject<{
3305
+ type: z.ZodLiteral<"effect.apply">;
3306
+ effect: z.ZodPreprocess<z.ZodObject<{
3307
+ id: z.ZodString;
3308
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
3309
+ type: z.ZodLiteral<"item">;
3310
+ itemId: z.ZodString;
3311
+ }, z.core.$strict>, z.ZodObject<{
3312
+ type: z.ZodLiteral<"board">;
3313
+ }, z.core.$strict>], "type">;
3314
+ kind: z.ZodString;
3315
+ kindVersion: z.ZodNumber;
3316
+ enabled: z.ZodDefault<z.ZodBoolean>;
3317
+ lifecycle: z.ZodEnum<{
3318
+ manual: "manual";
3319
+ persistent: "persistent";
3320
+ "when-visible": "when-visible";
3321
+ }>;
3322
+ timeOrigin: z.ZodEnum<{
3323
+ activation: "activation";
3324
+ board: "board";
3325
+ visible: "visible";
3326
+ }>;
3327
+ layer: z.ZodDefault<z.ZodEnum<{
3328
+ behind: "behind";
3329
+ front: "front";
3330
+ screen: "screen";
3331
+ }>>;
3332
+ seed: z.ZodString;
3333
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3334
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
3335
+ type: z.ZodEnum<{
3336
+ extension: "extension";
3337
+ "space-file": "space-file";
3338
+ }>;
3339
+ ref: z.ZodString;
3340
+ digest: z.ZodOptional<z.ZodString>;
3341
+ }, z.core.$strict>>>;
3342
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3343
+ }, z.core.$strict>>;
3344
+ }, z.core.$strict>, z.ZodObject<{
3345
+ type: z.ZodLiteral<"effect.delete">;
3346
+ effectId: z.ZodString;
3347
+ }, z.core.$strict>, z.ZodObject<{
3348
+ type: z.ZodLiteral<"composition.apply">;
3349
+ composition: z.ZodPreprocess<z.ZodObject<{
3350
+ id: z.ZodString;
3351
+ name: z.ZodString;
3352
+ timeline: z.ZodObject<{
3353
+ duration: z.ZodNumber;
3354
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
3355
+ id: z.ZodString;
3356
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
3357
+ type: z.ZodLiteral<"item">;
3358
+ itemId: z.ZodString;
3359
+ }, z.core.$strict>, z.ZodObject<{
3360
+ type: z.ZodLiteral<"effect">;
3361
+ effectId: z.ZodString;
3362
+ }, z.core.$strict>, z.ZodObject<{
3363
+ type: z.ZodLiteral<"camera">;
3364
+ }, z.core.$strict>, z.ZodObject<{
3365
+ type: z.ZodLiteral<"board">;
3366
+ }, z.core.$strict>], "type">;
3367
+ channel: z.ZodString;
3368
+ channelVersion: z.ZodDefault<z.ZodNumber>;
3369
+ interpolation: z.ZodDefault<z.ZodEnum<{
3370
+ linear: "linear";
3371
+ step: "step";
3372
+ }>>;
3373
+ fill: z.ZodDefault<z.ZodEnum<{
3374
+ backwards: "backwards";
3375
+ both: "both";
3376
+ forwards: "forwards";
3377
+ none: "none";
3378
+ }>>;
3379
+ keyframes: z.ZodArray<z.ZodObject<{
3380
+ time: z.ZodNumber;
3381
+ value: z.ZodUnknown;
3382
+ easing: z.ZodOptional<z.ZodEnum<{
3383
+ "ease-in-cubic": "ease-in-cubic";
3384
+ "ease-in-out-cubic": "ease-in-out-cubic";
3385
+ "ease-in-out-quad": "ease-in-out-quad";
3386
+ "ease-in-quad": "ease-in-quad";
3387
+ "ease-out-cubic": "ease-out-cubic";
3388
+ "ease-out-expo": "ease-out-expo";
3389
+ "ease-out-quad": "ease-out-quad";
3390
+ "ease-out-quart": "ease-out-quart";
3391
+ linear: "linear";
3392
+ }>>;
3393
+ }, z.core.$strict>>;
3394
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3395
+ }, z.core.$strict>>>;
3396
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
3397
+ id: z.ZodString;
3398
+ kind: z.ZodString;
3399
+ kindVersion: z.ZodNumber;
3400
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
3401
+ type: z.ZodLiteral<"item">;
3402
+ itemId: z.ZodString;
3403
+ }, z.core.$strict>, z.ZodObject<{
3404
+ type: z.ZodLiteral<"effect">;
3405
+ effectId: z.ZodString;
3406
+ }, z.core.$strict>, z.ZodObject<{
3407
+ type: z.ZodLiteral<"camera">;
3408
+ }, z.core.$strict>, z.ZodObject<{
3409
+ type: z.ZodLiteral<"board">;
3410
+ }, z.core.$strict>], "type">;
3411
+ start: z.ZodNumber;
3412
+ duration: z.ZodNumber;
3413
+ layer: z.ZodDefault<z.ZodEnum<{
3414
+ behind: "behind";
3415
+ content: "content";
3416
+ front: "front";
3417
+ screen: "screen";
3418
+ }>>;
3419
+ fill: z.ZodDefault<z.ZodEnum<{
3420
+ backwards: "backwards";
3421
+ both: "both";
3422
+ forwards: "forwards";
3423
+ none: "none";
3424
+ }>>;
3425
+ easing: z.ZodDefault<z.ZodEnum<{
3426
+ "ease-in-cubic": "ease-in-cubic";
3427
+ "ease-in-out-cubic": "ease-in-out-cubic";
3428
+ "ease-in-out-quad": "ease-in-out-quad";
3429
+ "ease-in-quad": "ease-in-quad";
3430
+ "ease-out-cubic": "ease-out-cubic";
3431
+ "ease-out-expo": "ease-out-expo";
3432
+ "ease-out-quad": "ease-out-quad";
3433
+ "ease-out-quart": "ease-out-quart";
3434
+ linear: "linear";
3435
+ }>>;
3436
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3437
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
3438
+ type: z.ZodEnum<{
3439
+ extension: "extension";
3440
+ "space-file": "space-file";
3441
+ }>;
3442
+ ref: z.ZodString;
3443
+ digest: z.ZodOptional<z.ZodString>;
3444
+ }, z.core.$strict>>>;
3445
+ seed: z.ZodString;
3446
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3447
+ }, z.core.$strict>>>;
3448
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
3449
+ id: z.ZodString;
3450
+ time: z.ZodNumber;
3451
+ duration: z.ZodOptional<z.ZodNumber>;
3452
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3453
+ }, z.core.$strict>>>;
3454
+ }, z.core.$strict>;
3455
+ playback: z.ZodDefault<z.ZodObject<{
3456
+ loop: z.ZodDefault<z.ZodBoolean>;
3457
+ endBehavior: z.ZodDefault<z.ZodEnum<{
3458
+ hold: "hold";
3459
+ reset: "reset";
3460
+ }>>;
3461
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
3462
+ mode: z.ZodLiteral<"base">;
3463
+ }, z.core.$strict>, z.ZodObject<{
3464
+ mode: z.ZodLiteral<"time">;
3465
+ time: z.ZodNumber;
3466
+ }, z.core.$strict>, z.ZodObject<{
3467
+ mode: z.ZodLiteral<"marker">;
3468
+ markerId: z.ZodString;
3469
+ }, z.core.$strict>], "mode">>;
3470
+ }, z.core.$strict>>;
3471
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3472
+ }, z.core.$strict>>;
3473
+ }, z.core.$strict>, z.ZodObject<{
3474
+ type: z.ZodLiteral<"composition.delete">;
3475
+ compositionId: z.ZodString;
3476
+ }, z.core.$strict>], "type">>;
3477
+ }, z.core.$strict>;
3478
+ type BoardSemanticMutation = z.infer<typeof BoardSemanticMutationSchema>;
3479
+ declare const BOARD_AUTHORING_ITEM_CAPABILITIES: {
3480
+ types: readonly ["image", "video", "audio", "file", "task", "text", "geo", "draw", "arrow", "frame"];
3481
+ colors: readonly ["brand", "neutral", "black", "white", "blue", "green", "amber", "violet", "rose"];
3482
+ shapes: readonly ["rectangle", "rounded", "ellipse", "diamond", "triangle"];
3483
+ coordinates: {
3484
+ frame: "world";
3485
+ drawPoints: "frame-local";
3486
+ arrowEndpoints: "world";
3487
+ };
3488
+ };
3489
+ declare const BoardAuthoringReadInputSchema: z.ZodObject<{
3490
+ include: z.ZodOptional<z.ZodArray<z.ZodEnum<{
3491
+ compositions: "compositions";
3492
+ connections: "connections";
3493
+ effects: "effects";
3494
+ items: "items";
3495
+ playback: "playback";
3496
+ }>>>;
3497
+ itemIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3498
+ connectionIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3499
+ effectIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3500
+ compositionIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
3501
+ viewport: z.ZodOptional<z.ZodObject<{
3502
+ x: z.ZodNumber;
3503
+ y: z.ZodNumber;
3504
+ width: z.ZodNumber;
3505
+ height: z.ZodNumber;
3506
+ }, z.core.$strip>>;
3507
+ }, z.core.$strict>;
3508
+ type BoardAuthoringReadInput = z.infer<typeof BoardAuthoringReadInputSchema>;
3509
+ type BoardAuthoringSnapshot = {
3510
+ board: {
3511
+ id: string;
3512
+ title: string;
3513
+ version: number;
3514
+ metadata: Record<string, unknown>;
3515
+ updatedAt: string | null;
3516
+ };
3517
+ items?: BoardAuthoringItem[];
3518
+ connections?: BoardConnection[];
3519
+ effects?: Array<BoardEffectInput & {
3520
+ revision: number;
3521
+ }>;
3522
+ compositions?: Array<BoardCompositionInput & {
3523
+ revision: number;
3524
+ }>;
3525
+ playback?: BoardPlaybackSnapshot | null;
3526
+ };
3527
+ //#endregion
3528
+ //#region ../protocol/dist/board.d.ts
3529
+ declare const BOARD_SNAPSHOT_KIND: "cohub.board.snapshot";
3530
+ declare const BOARD_PROTOCOL_VERSION: 2;
3531
+ declare const BoardManifestSchema: z.ZodObject<{
3532
+ kind: z.ZodLiteral<"cohub.board.manifest">;
3533
+ version: z.ZodLiteral<1>;
3534
+ boardId: z.ZodString;
3535
+ title: z.ZodString;
3536
+ }, z.core.$strip>;
3537
+ type BoardManifest = z.infer<typeof BoardManifestSchema>;
3538
+ declare const BoardCameraStateSchema: z.ZodObject<{
3539
+ centerX: z.ZodNumber;
3540
+ centerY: z.ZodNumber;
3541
+ zoom: z.ZodNumber;
3542
+ }, z.core.$strip>;
3543
+ declare const BoardCameraFocusSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3544
+ type: z.ZodLiteral<"rect">;
3545
+ rect: z.ZodObject<{
3546
+ x: z.ZodNumber;
3547
+ y: z.ZodNumber;
3548
+ width: z.ZodNumber;
3549
+ height: z.ZodNumber;
3550
+ }, z.core.$strip>;
3551
+ }, z.core.$strip>, z.ZodObject<{
3552
+ type: z.ZodLiteral<"item">;
3553
+ itemId: z.ZodString;
3554
+ }, z.core.$strip>, z.ZodObject<{
3555
+ type: z.ZodLiteral<"items">;
3556
+ itemIds: z.ZodArray<z.ZodString>;
3557
+ }, z.core.$strip>, z.ZodObject<{
3558
+ type: z.ZodLiteral<"frame">;
3559
+ frameId: z.ZodString;
3560
+ }, z.core.$strip>], "type">;
3561
+ declare const BoardCameraFocusParamsSchema: z.ZodObject<{
3562
+ focus: z.ZodDiscriminatedUnion<[z.ZodObject<{
3563
+ type: z.ZodLiteral<"rect">;
3564
+ rect: z.ZodObject<{
3565
+ x: z.ZodNumber;
3566
+ y: z.ZodNumber;
3567
+ width: z.ZodNumber;
3568
+ height: z.ZodNumber;
3569
+ }, z.core.$strip>;
3570
+ }, z.core.$strip>, z.ZodObject<{
3571
+ type: z.ZodLiteral<"item">;
3572
+ itemId: z.ZodString;
3573
+ }, z.core.$strip>, z.ZodObject<{
3574
+ type: z.ZodLiteral<"items">;
3575
+ itemIds: z.ZodArray<z.ZodString>;
3576
+ }, z.core.$strip>, z.ZodObject<{
3577
+ type: z.ZodLiteral<"frame">;
3578
+ frameId: z.ZodString;
883
3579
  }, z.core.$strip>], "type">;
884
- kind: z.ZodString;
885
- kindVersion: z.ZodNumber;
886
- enabled: z.ZodDefault<z.ZodBoolean>;
887
- lifecycle: z.ZodEnum<{
888
- manual: "manual";
889
- persistent: "persistent";
890
- "when-visible": "when-visible";
891
- }>;
892
- timeOrigin: z.ZodEnum<{
893
- activation: "activation";
894
- board: "board";
895
- visible: "visible";
896
- }>;
897
- layer: z.ZodDefault<z.ZodEnum<{
898
- behind: "behind";
899
- front: "front";
900
- screen: "screen";
3580
+ fit: z.ZodDefault<z.ZodEnum<{
3581
+ contain: "contain";
3582
+ cover: "cover";
901
3583
  }>>;
902
- seed: z.ZodString;
903
- params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
904
- assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
905
- type: z.ZodEnum<{
906
- extension: "extension";
907
- "space-file": "space-file";
908
- }>;
909
- ref: z.ZodString;
910
- digest: z.ZodOptional<z.ZodString>;
911
- }, z.core.$strip>>>;
912
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
913
- revision: z.ZodNumber;
914
- }, z.core.$strip>;
915
- declare const BoardSequenceSchema: z.ZodObject<{
916
- id: z.ZodString;
917
- boardId: z.ZodString;
918
- name: z.ZodString;
919
- duration: z.ZodNumber;
920
- seed: z.ZodString;
921
- restPose: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
922
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
923
- revision: z.ZodNumber;
3584
+ padding: z.ZodDefault<z.ZodNumber>;
3585
+ minZoom: z.ZodOptional<z.ZodNumber>;
3586
+ maxZoom: z.ZodOptional<z.ZodNumber>;
924
3587
  }, z.core.$strip>;
925
- type BoardTarget = z.infer<typeof BoardTargetSchema>;
926
3588
  type BoardCameraState = z.infer<typeof BoardCameraStateSchema>;
927
3589
  type BoardCameraFocus = z.infer<typeof BoardCameraFocusSchema>;
928
3590
  type BoardCameraFocusParams = z.infer<typeof BoardCameraFocusParamsSchema>;
929
- type BoardAssetRef = z.infer<typeof BoardAssetRefSchema>;
930
- type BoardKeyframe = z.infer<typeof BoardKeyframeSchema>;
931
- type BoardClip = z.infer<typeof BoardClipSchema>;
932
- type BoardEffect = z.infer<typeof BoardEffectSchema>;
933
- type BoardSequence = z.infer<typeof BoardSequenceSchema>;
934
3591
  type BoardRecord = {
935
3592
  id: string;
936
3593
  spaceId: string;
@@ -940,160 +3597,362 @@ type BoardRecord = {
940
3597
  createdAt: string | null;
941
3598
  updatedAt: string | null;
942
3599
  };
943
- type BoardNodeRecord = {
944
- boardId: string;
945
- nodeId: string;
946
- type: string;
947
- parentId: string | null;
948
- orderKey: string | null;
949
- x: number;
950
- y: number;
951
- width: number;
952
- height: number;
953
- rotation: number;
954
- refKind: string | null;
955
- refPath: string | null;
956
- refUrl: string | null;
957
- view: Record<string, unknown>;
958
- style: Record<string, unknown>;
959
- data: Record<string, unknown>;
960
- version: number;
961
- createdAt: string | null;
962
- updatedAt: string | null;
963
- };
964
- type BoardNodeInput = Omit<BoardNodeRecord, "boardId" | "version" | "createdAt" | "updatedAt">;
965
- declare const BOARD_DELETE_REASONS: readonly ["user-delete", "orphan-cleanup", "layout-replace", "placeholder-cascade", "node-cascade"];
966
- type BoardDeleteReason = (typeof BOARD_DELETE_REASONS)[number] | (string & {});
967
- type BoardOperationBase = {
968
- opId?: string;
969
- /** Optional local undo hint. Servers recompute authoritative inverse data. */
970
- inverse?: Record<string, unknown>;
971
- };
972
- type BoardOperation = (BoardOperationBase & {
973
- type: "board.patch";
974
- payload: {
975
- patch: {
976
- title?: string;
977
- metadata?: Record<string, unknown>;
978
- metadataPatch?: Record<string, unknown>;
979
- };
980
- };
981
- }) | (BoardOperationBase & {
982
- type: "node.create";
983
- payload: {
984
- node: BoardNodeInput;
985
- };
986
- }) | (BoardOperationBase & {
987
- type: "node.patch";
988
- payload: {
989
- nodeId: string;
990
- patch: Partial<BoardNodeInput>;
991
- };
992
- }) | (BoardOperationBase & {
993
- type: "node.delete";
994
- payload: {
995
- nodeId: string;
996
- reason?: BoardDeleteReason;
997
- };
998
- }) | (BoardOperationBase & {
999
- type: "connection.create";
1000
- payload: {
1001
- connection: BoardConnectionInput;
1002
- };
1003
- }) | (BoardOperationBase & {
1004
- type: "connection.patch";
1005
- payload: {
1006
- connectionId: string;
1007
- patch: BoardConnectionPatch;
1008
- };
1009
- }) | (BoardOperationBase & {
1010
- type: "connection.delete";
1011
- payload: {
1012
- connectionId: string;
1013
- reason?: BoardDeleteReason;
1014
- };
1015
- }) | (BoardOperationBase & {
1016
- type: "effect.upsert";
1017
- payload: {
1018
- effect: Omit<BoardEffect, "boardId" | "revision">;
1019
- };
1020
- }) | (BoardOperationBase & {
1021
- type: "effect.delete";
1022
- payload: {
1023
- effectId: string;
1024
- };
1025
- }) | (BoardOperationBase & {
1026
- type: "sequence.upsert";
1027
- payload: {
1028
- sequence: Omit<BoardSequence, "boardId" | "revision">;
1029
- clips: Array<Omit<BoardClip, "sequenceId">>;
3600
+ type BoardMutationReceipt = {
3601
+ mutationId: string;
3602
+ status: "applied" | "validated";
3603
+ outcome: "applied" | "noop" | "dry-run";
3604
+ replayed: boolean;
3605
+ board: {
3606
+ id: string;
3607
+ version: number;
1030
3608
  };
1031
- }) | (BoardOperationBase & {
1032
- type: "sequence.delete";
1033
- payload: {
1034
- sequenceId: string;
3609
+ changed: {
3610
+ items: string[];
3611
+ connections: string[];
3612
+ effects: string[];
3613
+ compositions: string[];
3614
+ board: boolean;
3615
+ orderChanged: boolean;
1035
3616
  };
1036
- });
1037
- type BoardTransaction = {
1038
- txId: string;
1039
- boardId: string;
1040
- baseVersion: number;
1041
- clientId?: string | null;
1042
- undoGroupId?: string | null;
1043
- operations: BoardOperation[];
1044
3617
  };
1045
3618
  type BoardSummary = {
1046
3619
  board: BoardRecord;
1047
3620
  counts: {
1048
- nodes: number;
3621
+ items: number;
1049
3622
  connections: number;
1050
3623
  effects: number;
1051
- sequences: number;
1052
- clips: number;
3624
+ compositions: number;
1053
3625
  };
1054
3626
  playback: BoardPlaybackSnapshot | null;
1055
3627
  };
1056
- type BoardBootstrap = {
1057
- board: BoardRecord;
1058
- nodes: BoardNodeRecord[];
1059
- connections: BoardConnectionRecord[];
1060
- effects: BoardEffect[];
1061
- sequences: BoardSequence[];
1062
- clips: BoardClip[];
1063
- playback: BoardPlaybackSnapshot | null;
1064
- };
1065
3628
  /** Immutable semantic Board state shared by Checkpoints and published Works. */
1066
- type BoardSnapshot = BoardBootstrap & {
3629
+ type BoardSnapshot = {
1067
3630
  kind: typeof BOARD_SNAPSHOT_KIND;
1068
3631
  version: typeof BOARD_PROTOCOL_VERSION;
1069
3632
  capturedAt: string;
3633
+ board: BoardRecord;
3634
+ items: BoardAuthoringItem[];
3635
+ connections: BoardConnection[];
3636
+ effects: Array<BoardEffectInput & {
3637
+ revision: number;
3638
+ }>;
3639
+ compositions: BoardComposition[];
3640
+ playback: BoardPlaybackSnapshot | null;
1070
3641
  };
1071
3642
  declare const BoardCreateInputSchema: z.ZodObject<{
1072
3643
  path: z.ZodString;
1073
3644
  mutationId: z.ZodOptional<z.ZodString>;
1074
3645
  title: z.ZodOptional<z.ZodString>;
1075
3646
  metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1076
- nodes: z.ZodOptional<z.ZodArray<z.ZodObject<{
1077
- nodeId: z.ZodString;
3647
+ items: z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodDiscriminatedUnion<readonly [z.ZodObject<{
3648
+ id: z.ZodString;
3649
+ frame: z.ZodObject<{
3650
+ x: z.ZodNumber;
3651
+ y: z.ZodNumber;
3652
+ width: z.ZodNumber;
3653
+ height: z.ZodNumber;
3654
+ rotation: z.ZodDefault<z.ZodNumber>;
3655
+ }, z.core.$strict>;
3656
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3657
+ locked: z.ZodOptional<z.ZodBoolean>;
3658
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3659
+ style: z.ZodOptional<z.ZodObject<{
3660
+ color: z.ZodOptional<z.ZodEnum<{
3661
+ amber: "amber";
3662
+ black: "black";
3663
+ blue: "blue";
3664
+ brand: "brand";
3665
+ green: "green";
3666
+ neutral: "neutral";
3667
+ rose: "rose";
3668
+ violet: "violet";
3669
+ white: "white";
3670
+ }>>;
3671
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3672
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3673
+ }, z.core.$strict>>;
3674
+ type: z.ZodLiteral<"text">;
3675
+ props: z.ZodObject<{
3676
+ text: z.ZodDefault<z.ZodString>;
3677
+ fontSize: z.ZodDefault<z.ZodNumber>;
3678
+ }, z.core.$strict>;
3679
+ }, z.core.$strict>, z.ZodObject<{
3680
+ id: z.ZodString;
3681
+ frame: z.ZodObject<{
3682
+ x: z.ZodNumber;
3683
+ y: z.ZodNumber;
3684
+ width: z.ZodNumber;
3685
+ height: z.ZodNumber;
3686
+ rotation: z.ZodDefault<z.ZodNumber>;
3687
+ }, z.core.$strict>;
3688
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3689
+ locked: z.ZodOptional<z.ZodBoolean>;
3690
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3691
+ style: z.ZodOptional<z.ZodObject<{
3692
+ color: z.ZodOptional<z.ZodEnum<{
3693
+ amber: "amber";
3694
+ black: "black";
3695
+ blue: "blue";
3696
+ brand: "brand";
3697
+ green: "green";
3698
+ neutral: "neutral";
3699
+ rose: "rose";
3700
+ violet: "violet";
3701
+ white: "white";
3702
+ }>>;
3703
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3704
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3705
+ }, z.core.$strict>>;
3706
+ type: z.ZodLiteral<"geo">;
3707
+ props: z.ZodObject<{
3708
+ shape: z.ZodDefault<z.ZodEnum<{
3709
+ diamond: "diamond";
3710
+ ellipse: "ellipse";
3711
+ rectangle: "rectangle";
3712
+ rounded: "rounded";
3713
+ triangle: "triangle";
3714
+ }>>;
3715
+ text: z.ZodDefault<z.ZodString>;
3716
+ }, z.core.$strict>;
3717
+ }, z.core.$strict>, z.ZodObject<{
3718
+ id: z.ZodString;
3719
+ frame: z.ZodObject<{
3720
+ x: z.ZodNumber;
3721
+ y: z.ZodNumber;
3722
+ width: z.ZodNumber;
3723
+ height: z.ZodNumber;
3724
+ rotation: z.ZodDefault<z.ZodNumber>;
3725
+ }, z.core.$strict>;
3726
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3727
+ locked: z.ZodOptional<z.ZodBoolean>;
3728
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3729
+ style: z.ZodOptional<z.ZodObject<{
3730
+ color: z.ZodOptional<z.ZodEnum<{
3731
+ amber: "amber";
3732
+ black: "black";
3733
+ blue: "blue";
3734
+ brand: "brand";
3735
+ green: "green";
3736
+ neutral: "neutral";
3737
+ rose: "rose";
3738
+ violet: "violet";
3739
+ white: "white";
3740
+ }>>;
3741
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3742
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3743
+ }, z.core.$strict>>;
3744
+ type: z.ZodLiteral<"draw">;
3745
+ props: z.ZodObject<{
3746
+ points: z.ZodArray<z.ZodObject<{
3747
+ x: z.ZodNumber;
3748
+ y: z.ZodNumber;
3749
+ p: z.ZodDefault<z.ZodNumber>;
3750
+ }, z.core.$strict>>;
3751
+ }, z.core.$strict>;
3752
+ }, z.core.$strict>, z.ZodObject<{
3753
+ id: z.ZodString;
3754
+ frame: z.ZodObject<{
3755
+ x: z.ZodNumber;
3756
+ y: z.ZodNumber;
3757
+ width: z.ZodNumber;
3758
+ height: z.ZodNumber;
3759
+ rotation: z.ZodDefault<z.ZodNumber>;
3760
+ }, z.core.$strict>;
3761
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3762
+ locked: z.ZodOptional<z.ZodBoolean>;
3763
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3764
+ style: z.ZodOptional<z.ZodObject<{
3765
+ color: z.ZodOptional<z.ZodEnum<{
3766
+ amber: "amber";
3767
+ black: "black";
3768
+ blue: "blue";
3769
+ brand: "brand";
3770
+ green: "green";
3771
+ neutral: "neutral";
3772
+ rose: "rose";
3773
+ violet: "violet";
3774
+ white: "white";
3775
+ }>>;
3776
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3777
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3778
+ }, z.core.$strict>>;
3779
+ type: z.ZodLiteral<"arrow">;
3780
+ props: z.ZodObject<{
3781
+ start: z.ZodObject<{
3782
+ x: z.ZodNumber;
3783
+ y: z.ZodNumber;
3784
+ }, z.core.$strict>;
3785
+ end: z.ZodObject<{
3786
+ x: z.ZodNumber;
3787
+ y: z.ZodNumber;
3788
+ }, z.core.$strict>;
3789
+ bend: z.ZodDefault<z.ZodNumber>;
3790
+ arrowStart: z.ZodDefault<z.ZodBoolean>;
3791
+ arrowEnd: z.ZodDefault<z.ZodBoolean>;
3792
+ label: z.ZodDefault<z.ZodString>;
3793
+ }, z.core.$strict>;
3794
+ }, z.core.$strict>, z.ZodObject<{
3795
+ id: z.ZodString;
3796
+ frame: z.ZodObject<{
3797
+ x: z.ZodNumber;
3798
+ y: z.ZodNumber;
3799
+ width: z.ZodNumber;
3800
+ height: z.ZodNumber;
3801
+ rotation: z.ZodDefault<z.ZodNumber>;
3802
+ }, z.core.$strict>;
3803
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3804
+ locked: z.ZodOptional<z.ZodBoolean>;
3805
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3806
+ style: z.ZodOptional<z.ZodObject<{
3807
+ color: z.ZodOptional<z.ZodEnum<{
3808
+ amber: "amber";
3809
+ black: "black";
3810
+ blue: "blue";
3811
+ brand: "brand";
3812
+ green: "green";
3813
+ neutral: "neutral";
3814
+ rose: "rose";
3815
+ violet: "violet";
3816
+ white: "white";
3817
+ }>>;
3818
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
3819
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
3820
+ }, z.core.$strict>>;
3821
+ type: z.ZodLiteral<"frame">;
3822
+ props: z.ZodObject<{
3823
+ label: z.ZodDefault<z.ZodString>;
3824
+ }, z.core.$strict>;
3825
+ }, z.core.$strict>, z.ZodObject<{
3826
+ id: z.ZodString;
3827
+ frame: z.ZodObject<{
3828
+ x: z.ZodNumber;
3829
+ y: z.ZodNumber;
3830
+ width: z.ZodNumber;
3831
+ height: z.ZodNumber;
3832
+ rotation: z.ZodDefault<z.ZodNumber>;
3833
+ }, z.core.$strict>;
3834
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3835
+ locked: z.ZodOptional<z.ZodBoolean>;
3836
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3837
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3838
+ source: z.ZodObject<{
3839
+ kind: z.ZodLiteral<"space-file">;
3840
+ path: z.ZodString;
3841
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3842
+ }, z.core.$strict>;
3843
+ type: z.ZodLiteral<"image">;
3844
+ props: z.ZodObject<{
3845
+ crop: z.ZodOptional<z.ZodObject<{
3846
+ x: z.ZodNumber;
3847
+ y: z.ZodNumber;
3848
+ w: z.ZodNumber;
3849
+ h: z.ZodNumber;
3850
+ }, z.core.$strict>>;
3851
+ }, z.core.$strict>;
3852
+ }, z.core.$strict>, z.ZodObject<{
3853
+ id: z.ZodString;
3854
+ frame: z.ZodObject<{
3855
+ x: z.ZodNumber;
3856
+ y: z.ZodNumber;
3857
+ width: z.ZodNumber;
3858
+ height: z.ZodNumber;
3859
+ rotation: z.ZodDefault<z.ZodNumber>;
3860
+ }, z.core.$strict>;
3861
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3862
+ locked: z.ZodOptional<z.ZodBoolean>;
3863
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3864
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3865
+ source: z.ZodObject<{
3866
+ kind: z.ZodLiteral<"space-file">;
3867
+ path: z.ZodString;
3868
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3869
+ }, z.core.$strict>;
3870
+ type: z.ZodLiteral<"video">;
3871
+ props: z.ZodObject<{}, z.core.$strict>;
3872
+ }, z.core.$strict>, z.ZodObject<{
3873
+ id: z.ZodString;
3874
+ frame: z.ZodObject<{
3875
+ x: z.ZodNumber;
3876
+ y: z.ZodNumber;
3877
+ width: z.ZodNumber;
3878
+ height: z.ZodNumber;
3879
+ rotation: z.ZodDefault<z.ZodNumber>;
3880
+ }, z.core.$strict>;
3881
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3882
+ locked: z.ZodOptional<z.ZodBoolean>;
3883
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3884
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3885
+ source: z.ZodObject<{
3886
+ kind: z.ZodLiteral<"space-file">;
3887
+ path: z.ZodString;
3888
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3889
+ }, z.core.$strict>;
3890
+ type: z.ZodLiteral<"audio">;
3891
+ props: z.ZodObject<{}, z.core.$strict>;
3892
+ }, z.core.$strict>, z.ZodObject<{
3893
+ id: z.ZodString;
3894
+ frame: z.ZodObject<{
3895
+ x: z.ZodNumber;
3896
+ y: z.ZodNumber;
3897
+ width: z.ZodNumber;
3898
+ height: z.ZodNumber;
3899
+ rotation: z.ZodDefault<z.ZodNumber>;
3900
+ }, z.core.$strict>;
3901
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3902
+ locked: z.ZodOptional<z.ZodBoolean>;
3903
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3904
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3905
+ source: z.ZodObject<{
3906
+ kind: z.ZodLiteral<"space-file">;
3907
+ path: z.ZodString;
3908
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3909
+ }, z.core.$strict>;
3910
+ type: z.ZodLiteral<"file">;
3911
+ props: z.ZodObject<{}, z.core.$strict>;
3912
+ }, z.core.$strict>, z.ZodObject<{
3913
+ id: z.ZodString;
3914
+ frame: z.ZodObject<{
3915
+ x: z.ZodNumber;
3916
+ y: z.ZodNumber;
3917
+ width: z.ZodNumber;
3918
+ height: z.ZodNumber;
3919
+ rotation: z.ZodDefault<z.ZodNumber>;
3920
+ }, z.core.$strict>;
3921
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3922
+ locked: z.ZodOptional<z.ZodBoolean>;
3923
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3924
+ type: z.ZodLiteral<"task">;
3925
+ props: z.ZodObject<{
3926
+ taskRunId: z.ZodString;
3927
+ snapshot: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3928
+ }, z.core.$strict>;
3929
+ style: z.ZodOptional<z.ZodObject<{}, z.core.$strict>>;
3930
+ }, z.core.$strict>], "type">, z.ZodObject<{
3931
+ id: z.ZodString;
3932
+ frame: z.ZodObject<{
3933
+ x: z.ZodNumber;
3934
+ y: z.ZodNumber;
3935
+ width: z.ZodNumber;
3936
+ height: z.ZodNumber;
3937
+ rotation: z.ZodDefault<z.ZodNumber>;
3938
+ }, z.core.$strict>;
3939
+ parentId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3940
+ locked: z.ZodOptional<z.ZodBoolean>;
3941
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1078
3942
  type: z.ZodString;
1079
- parentId: z.ZodNullable<z.ZodString>;
1080
- orderKey: z.ZodNullable<z.ZodString>;
1081
- x: z.ZodNumber;
1082
- y: z.ZodNumber;
1083
- width: z.ZodNumber;
1084
- height: z.ZodNumber;
1085
- rotation: z.ZodNumber;
1086
- refKind: z.ZodNullable<z.ZodString>;
1087
- refPath: z.ZodNullable<z.ZodString>;
1088
- refUrl: z.ZodNullable<z.ZodString>;
1089
- view: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1090
- style: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1091
- data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
1092
- }, z.core.$strip>>>;
3943
+ kindVersion: z.ZodNumber;
3944
+ props: z.ZodRecord<z.ZodString, z.ZodUnknown>;
3945
+ style: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3946
+ source: z.ZodOptional<z.ZodObject<{
3947
+ kind: z.ZodString;
3948
+ ref: z.ZodString;
3949
+ snapshot: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
3950
+ }, z.core.$strict>>;
3951
+ }, z.core.$strict>]>>>;
1093
3952
  connections: z.ZodOptional<z.ZodArray<z.ZodObject<{
1094
3953
  id: z.ZodString;
1095
3954
  source: z.ZodObject<{
1096
- nodeId: z.ZodString;
3955
+ itemId: z.ZodString;
1097
3956
  portId: z.ZodOptional<z.ZodString>;
1098
3957
  anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
1099
3958
  kind: z.ZodLiteral<"auto">;
@@ -1113,7 +3972,7 @@ declare const BoardCreateInputSchema: z.ZodObject<{
1113
3972
  }, z.core.$strip>]>>;
1114
3973
  }, z.core.$strip>;
1115
3974
  target: z.ZodObject<{
1116
- nodeId: z.ZodString;
3975
+ itemId: z.ZodString;
1117
3976
  portId: z.ZodOptional<z.ZodString>;
1118
3977
  anchor: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
1119
3978
  kind: z.ZodLiteral<"auto">;
@@ -1161,15 +4020,15 @@ declare const BoardCreateInputSchema: z.ZodObject<{
1161
4020
  }>>;
1162
4021
  }, z.core.$strip>>;
1163
4022
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1164
- }, z.core.$strip>>>;
1165
- effects: z.ZodOptional<z.ZodArray<z.ZodObject<{
4023
+ }, z.core.$strict>>>;
4024
+ effects: z.ZodOptional<z.ZodArray<z.ZodPreprocess<z.ZodObject<{
1166
4025
  id: z.ZodString;
1167
4026
  target: z.ZodDiscriminatedUnion<[z.ZodObject<{
1168
- type: z.ZodLiteral<"node">;
1169
- nodeId: z.ZodString;
1170
- }, z.core.$strip>, z.ZodObject<{
4027
+ type: z.ZodLiteral<"item">;
4028
+ itemId: z.ZodString;
4029
+ }, z.core.$strict>, z.ZodObject<{
1171
4030
  type: z.ZodLiteral<"board">;
1172
- }, z.core.$strip>], "type">;
4031
+ }, z.core.$strict>], "type">;
1173
4032
  kind: z.ZodString;
1174
4033
  kindVersion: z.ZodNumber;
1175
4034
  enabled: z.ZodDefault<z.ZodBoolean>;
@@ -1197,85 +4056,150 @@ declare const BoardCreateInputSchema: z.ZodObject<{
1197
4056
  }>;
1198
4057
  ref: z.ZodString;
1199
4058
  digest: z.ZodOptional<z.ZodString>;
1200
- }, z.core.$strip>>>;
4059
+ }, z.core.$strict>>>;
1201
4060
  metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1202
- }, z.core.$strip>>>;
1203
- sequences: z.ZodOptional<z.ZodArray<z.ZodObject<{
1204
- sequence: z.ZodObject<{
1205
- id: z.ZodString;
1206
- name: z.ZodString;
1207
- duration: z.ZodNumber;
1208
- seed: z.ZodString;
1209
- restPose: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1210
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1211
- }, z.core.$strip>;
1212
- clips: z.ZodArray<z.ZodObject<{
1213
- id: z.ZodString;
1214
- kind: z.ZodString;
1215
- kindVersion: z.ZodNumber;
1216
- target: z.ZodDiscriminatedUnion<[z.ZodObject<{
1217
- type: z.ZodLiteral<"node">;
1218
- nodeId: z.ZodString;
1219
- }, z.core.$strip>, z.ZodObject<{
1220
- type: z.ZodLiteral<"effect">;
1221
- effectId: z.ZodString;
1222
- }, z.core.$strip>, z.ZodObject<{
1223
- type: z.ZodLiteral<"board">;
1224
- }, z.core.$strip>, z.ZodObject<{
1225
- type: z.ZodLiteral<"camera">;
1226
- }, z.core.$strip>], "type">;
1227
- start: z.ZodNumber;
4061
+ }, z.core.$strict>>>>;
4062
+ compositions: z.ZodOptional<z.ZodArray<z.ZodPreprocess<z.ZodObject<{
4063
+ id: z.ZodString;
4064
+ name: z.ZodString;
4065
+ timeline: z.ZodObject<{
1228
4066
  duration: z.ZodNumber;
1229
- layer: z.ZodDefault<z.ZodEnum<{
1230
- behind: "behind";
1231
- content: "content";
1232
- front: "front";
1233
- screen: "screen";
1234
- }>>;
1235
- fill: z.ZodDefault<z.ZodEnum<{
1236
- backwards: "backwards";
1237
- both: "both";
1238
- forwards: "forwards";
1239
- none: "none";
4067
+ tracks: z.ZodDefault<z.ZodArray<z.ZodObject<{
4068
+ id: z.ZodString;
4069
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
4070
+ type: z.ZodLiteral<"item">;
4071
+ itemId: z.ZodString;
4072
+ }, z.core.$strict>, z.ZodObject<{
4073
+ type: z.ZodLiteral<"effect">;
4074
+ effectId: z.ZodString;
4075
+ }, z.core.$strict>, z.ZodObject<{
4076
+ type: z.ZodLiteral<"camera">;
4077
+ }, z.core.$strict>, z.ZodObject<{
4078
+ type: z.ZodLiteral<"board">;
4079
+ }, z.core.$strict>], "type">;
4080
+ channel: z.ZodString;
4081
+ channelVersion: z.ZodDefault<z.ZodNumber>;
4082
+ interpolation: z.ZodDefault<z.ZodEnum<{
4083
+ linear: "linear";
4084
+ step: "step";
4085
+ }>>;
4086
+ fill: z.ZodDefault<z.ZodEnum<{
4087
+ backwards: "backwards";
4088
+ both: "both";
4089
+ forwards: "forwards";
4090
+ none: "none";
4091
+ }>>;
4092
+ keyframes: z.ZodArray<z.ZodObject<{
4093
+ time: z.ZodNumber;
4094
+ value: z.ZodUnknown;
4095
+ easing: z.ZodOptional<z.ZodEnum<{
4096
+ "ease-in-cubic": "ease-in-cubic";
4097
+ "ease-in-out-cubic": "ease-in-out-cubic";
4098
+ "ease-in-out-quad": "ease-in-out-quad";
4099
+ "ease-in-quad": "ease-in-quad";
4100
+ "ease-out-cubic": "ease-out-cubic";
4101
+ "ease-out-expo": "ease-out-expo";
4102
+ "ease-out-quad": "ease-out-quad";
4103
+ "ease-out-quart": "ease-out-quart";
4104
+ linear: "linear";
4105
+ }>>;
4106
+ }, z.core.$strict>>;
4107
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4108
+ }, z.core.$strict>>>;
4109
+ clips: z.ZodDefault<z.ZodArray<z.ZodObject<{
4110
+ id: z.ZodString;
4111
+ kind: z.ZodString;
4112
+ kindVersion: z.ZodNumber;
4113
+ target: z.ZodDiscriminatedUnion<[z.ZodObject<{
4114
+ type: z.ZodLiteral<"item">;
4115
+ itemId: z.ZodString;
4116
+ }, z.core.$strict>, z.ZodObject<{
4117
+ type: z.ZodLiteral<"effect">;
4118
+ effectId: z.ZodString;
4119
+ }, z.core.$strict>, z.ZodObject<{
4120
+ type: z.ZodLiteral<"camera">;
4121
+ }, z.core.$strict>, z.ZodObject<{
4122
+ type: z.ZodLiteral<"board">;
4123
+ }, z.core.$strict>], "type">;
4124
+ start: z.ZodNumber;
4125
+ duration: z.ZodNumber;
4126
+ layer: z.ZodDefault<z.ZodEnum<{
4127
+ behind: "behind";
4128
+ content: "content";
4129
+ front: "front";
4130
+ screen: "screen";
4131
+ }>>;
4132
+ fill: z.ZodDefault<z.ZodEnum<{
4133
+ backwards: "backwards";
4134
+ both: "both";
4135
+ forwards: "forwards";
4136
+ none: "none";
4137
+ }>>;
4138
+ easing: z.ZodDefault<z.ZodEnum<{
4139
+ "ease-in-cubic": "ease-in-cubic";
4140
+ "ease-in-out-cubic": "ease-in-out-cubic";
4141
+ "ease-in-out-quad": "ease-in-out-quad";
4142
+ "ease-in-quad": "ease-in-quad";
4143
+ "ease-out-cubic": "ease-out-cubic";
4144
+ "ease-out-expo": "ease-out-expo";
4145
+ "ease-out-quad": "ease-out-quad";
4146
+ "ease-out-quart": "ease-out-quart";
4147
+ linear: "linear";
4148
+ }>>;
4149
+ params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4150
+ assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
4151
+ type: z.ZodEnum<{
4152
+ extension: "extension";
4153
+ "space-file": "space-file";
4154
+ }>;
4155
+ ref: z.ZodString;
4156
+ digest: z.ZodOptional<z.ZodString>;
4157
+ }, z.core.$strict>>>;
4158
+ seed: z.ZodString;
4159
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4160
+ }, z.core.$strict>>>;
4161
+ markers: z.ZodDefault<z.ZodArray<z.ZodObject<{
4162
+ id: z.ZodString;
4163
+ time: z.ZodNumber;
4164
+ duration: z.ZodOptional<z.ZodNumber>;
4165
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4166
+ }, z.core.$strict>>>;
4167
+ }, z.core.$strict>;
4168
+ playback: z.ZodDefault<z.ZodObject<{
4169
+ loop: z.ZodDefault<z.ZodBoolean>;
4170
+ endBehavior: z.ZodDefault<z.ZodEnum<{
4171
+ hold: "hold";
4172
+ reset: "reset";
1240
4173
  }>>;
1241
- easing: z.ZodDefault<z.ZodString>;
1242
- params: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1243
- keyframes: z.ZodDefault<z.ZodArray<z.ZodObject<{
1244
- at: z.ZodNumber;
1245
- value: z.ZodUnknown;
1246
- easing: z.ZodOptional<z.ZodString>;
1247
- }, z.core.$strip>>>;
1248
- assetRefs: z.ZodDefault<z.ZodArray<z.ZodObject<{
1249
- type: z.ZodEnum<{
1250
- extension: "extension";
1251
- "space-file": "space-file";
1252
- }>;
1253
- ref: z.ZodString;
1254
- digest: z.ZodOptional<z.ZodString>;
1255
- }, z.core.$strip>>>;
1256
- seed: z.ZodString;
1257
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1258
- }, z.core.$strip>>;
1259
- }, z.core.$strip>>>;
4174
+ reducedMotion: z.ZodDefault<z.ZodDiscriminatedUnion<[z.ZodObject<{
4175
+ mode: z.ZodLiteral<"base">;
4176
+ }, z.core.$strict>, z.ZodObject<{
4177
+ mode: z.ZodLiteral<"time">;
4178
+ time: z.ZodNumber;
4179
+ }, z.core.$strict>, z.ZodObject<{
4180
+ mode: z.ZodLiteral<"marker">;
4181
+ markerId: z.ZodString;
4182
+ }, z.core.$strict>], "mode">>;
4183
+ }, z.core.$strict>>;
4184
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4185
+ }, z.core.$strict>>>>;
1260
4186
  }, z.core.$strip>;
1261
4187
  type BoardCreateInput = z.infer<typeof BoardCreateInputSchema>;
1262
- declare const BoardInspectInputSchema: z.ZodObject<{
1263
- include: z.ZodOptional<z.ZodArray<z.ZodEnum<{
1264
- clips: "clips";
1265
- connections: "connections";
1266
- effects: "effects";
1267
- nodes: "nodes";
1268
- playback: "playback";
1269
- sequences: "sequences";
1270
- }>>>;
1271
- viewport: z.ZodOptional<z.ZodObject<{
1272
- x: z.ZodNumber;
1273
- y: z.ZodNumber;
1274
- width: z.ZodNumber;
1275
- height: z.ZodNumber;
1276
- }, z.core.$strip>>;
1277
- }, z.core.$strip>;
1278
- type BoardInspectInput = z.infer<typeof BoardInspectInputSchema>;
4188
+ type BoardAuthoringSchemas = {
4189
+ item: Record<string, unknown>;
4190
+ itemPatch: Record<string, unknown>;
4191
+ mutation: Record<string, unknown>;
4192
+ composition: Record<string, unknown>;
4193
+ effect: Record<string, unknown>;
4194
+ create: Record<string, unknown>;
4195
+ };
4196
+ /**
4197
+ * JSON Schemas for the semantic authoring surface. Each property is enumerable
4198
+ * for Object.keys/JSON.stringify, but generated only when that property is
4199
+ * requested. This keeps protocol imports cheap while capabilities still returns
4200
+ * the complete machine-readable schema object.
4201
+ */
4202
+ declare const BOARD_AUTHORING_SCHEMAS: BoardAuthoringSchemas;
1279
4203
  type BoardDiagnostic = {
1280
4204
  severity: "info" | "warning" | "error";
1281
4205
  code: string;
@@ -1293,16 +4217,17 @@ type BoardValidationResult = {
1293
4217
  peakCost: BoardRenderCost;
1294
4218
  };
1295
4219
  type BoardCapabilities = {
1296
- protocolVersion: 1;
4220
+ protocolVersion: typeof BOARD_PROTOCOL_VERSION;
1297
4221
  capabilities: BoardCapability[];
1298
4222
  limits: BoardRenderCost;
1299
- nodes: BoardNodeContract;
4223
+ items: typeof BOARD_AUTHORING_ITEM_CAPABILITIES;
4224
+ animationChannels: typeof BOARD_ANIMATION_CHANNEL_CAPABILITIES;
4225
+ authoring: typeof BOARD_AUTHORING_SCHEMAS;
1300
4226
  };
1301
4227
  /** Persisted on `boards.metadata.playback`: how a Board plays when opened. */
1302
4228
  declare const BoardPlaybackPolicySchema: z.ZodObject<{
1303
- sequenceId: z.ZodString;
4229
+ compositionId: z.ZodString;
1304
4230
  delayMs: z.ZodDefault<z.ZodNumber>;
1305
- loop: z.ZodDefault<z.ZodBoolean>;
1306
4231
  }, z.core.$strip>;
1307
4232
  type BoardPlaybackPolicy = z.infer<typeof BoardPlaybackPolicySchema>;
1308
4233
  declare function parseBoardPlaybackPolicy(metadata: Record<string, unknown>): BoardPlaybackPolicy | null;
@@ -1310,8 +4235,8 @@ type BoardPlaybackStatus = "playing" | "paused" | "stopped";
1310
4235
  type BoardPlaybackSnapshot = {
1311
4236
  boardId: string;
1312
4237
  playbackId: string;
1313
- sequenceId: string;
1314
- sequenceRevision: number;
4238
+ compositionId: string;
4239
+ compositionRevision: number;
1315
4240
  playbackRevision: number;
1316
4241
  status: BoardPlaybackStatus;
1317
4242
  position: number;
@@ -1322,7 +4247,7 @@ type BoardPlaybackSnapshot = {
1322
4247
  declare const BoardPlaybackCommandSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
1323
4248
  commandId: z.ZodString;
1324
4249
  type: z.ZodLiteral<"play">;
1325
- sequenceId: z.ZodString;
4250
+ compositionId: z.ZodString;
1326
4251
  position: z.ZodOptional<z.ZodNumber>;
1327
4252
  timeScale: z.ZodOptional<z.ZodNumber>;
1328
4253
  shared: z.ZodOptional<z.ZodBoolean>;
@@ -2256,23 +5181,21 @@ type SpacePresenceUpdatedEvent = {
2256
5181
  sessionId?: string | null;
2257
5182
  payload: SpacePresenceSnapshot$1;
2258
5183
  };
2259
- type BoardTransactionAppliedEvent = {
5184
+ type BoardChangedEvent = {
2260
5185
  id: string;
2261
5186
  timestamp: number;
2262
5187
  domain: "space";
2263
- type: "board.transaction.applied";
5188
+ type: "board.changed";
2264
5189
  requestId?: string | null;
2265
5190
  spaceId: string;
2266
5191
  sessionId?: string | null;
2267
5192
  payload: {
2268
5193
  boardId: string;
2269
5194
  actorId: string;
2270
- txId: string;
5195
+ mutationId: string;
2271
5196
  version: number;
2272
- operations: BoardOperation[];
2273
- metadata?: Record<string, unknown> & {
2274
- source?: RequestSource;
2275
- };
5197
+ changed: BoardMutationReceipt["changed"];
5198
+ source?: RequestSource;
2276
5199
  };
2277
5200
  };
2278
5201
  type BoardAwarenessUpdatedEvent = {
@@ -2432,7 +5355,13 @@ type UiCommandDispatchedEvent = {
2432
5355
  rooms?: RealtimeRoom[];
2433
5356
  payload: UiCommandDispatchedPayload;
2434
5357
  };
2435
- type RealtimeServerEvent = SystemReadyEvent | SystemAuthOkEvent | SystemRequestErrorEvent | SystemPongEvent | SystemAckOkEvent | SystemSubscribeOkEvent | SystemSubscribeErrorEvent | SessionCreatedEvent | SessionUpdatedEvent | SessionRequestAcceptedEvent | SessionRequestErrorEvent | SessionTurnCreatedEvent | SessionTurnPatchEvent | SessionTurnErrorEvent | SessionTurnLifecycleEvent | SessionTurnUpdatedEvent | SessionTurnFinalizedEvent | SessionTurnNotifyEvent | SessionMessagePersistedEvent | SpaceFsChangedEvent | SpacePortsChangedEvent | SpacePresenceUpdatedEvent | BoardTransactionAppliedEvent | BoardAwarenessUpdatedEvent | BoardPlaybackChangedEvent | WorkVersionPublishedEvent | TaskCreatedEvent | TaskUpdatedEvent | LabelAssignmentsUpdatedEvent | UiCommandDispatchedEvent | RealtimeRoomEvent | RealtimeRoomJoinedEvent | RealtimeRoomMemberChangedEvent | RealtimeRoomPresenceUpdatedEvent | RealtimeRoomRequestEvent | RealtimeRoomRequestErrorEvent | RealtimeRoomClosedEvent;
5358
+ type RealtimeServerEvent = SystemReadyEvent | SystemAuthOkEvent | SystemRequestErrorEvent | SystemPongEvent | SystemAckOkEvent | SystemSubscribeOkEvent | SystemSubscribeErrorEvent | SessionCreatedEvent | SessionUpdatedEvent | SessionRequestAcceptedEvent | SessionRequestErrorEvent | SessionTurnCreatedEvent | SessionTurnPatchEvent | SessionTurnErrorEvent | SessionTurnLifecycleEvent | SessionTurnUpdatedEvent | SessionTurnFinalizedEvent | SessionTurnNotifyEvent | SessionMessagePersistedEvent | SpaceFsChangedEvent | SpacePortsChangedEvent | SpacePresenceUpdatedEvent | BoardChangedEvent | BoardAwarenessUpdatedEvent | BoardPlaybackChangedEvent | WorkVersionPublishedEvent | TaskCreatedEvent | TaskUpdatedEvent | LabelAssignmentsUpdatedEvent | UiCommandDispatchedEvent | RealtimeRoomEvent | RealtimeRoomJoinedEvent | RealtimeRoomMemberChangedEvent | RealtimeRoomPresenceUpdatedEvent | RealtimeRoomRequestEvent | RealtimeRoomRequestErrorEvent | RealtimeRoomClosedEvent;
5359
+ //#endregion
5360
+ //#region ../protocol/dist/board-node.d.ts
5361
+ declare const BOARD_COLOR_IDS: readonly ["brand", "neutral", "black", "white", "blue", "green", "amber", "violet", "rose"];
5362
+ type BoardColorId = (typeof BOARD_COLOR_IDS)[number];
5363
+ declare const BOARD_GEO_KINDS: readonly ["rectangle", "rounded", "ellipse", "diamond", "triangle"];
5364
+ type BoardGeoKind = (typeof BOARD_GEO_KINDS)[number];
2436
5365
  //#endregion
2437
5366
  //#region ../../node_modules/.pnpm/@neta-art+generation@0.1.21/node_modules/@neta-art/generation/dist/builtins-8R5iZQ10.d.ts
2438
5367
  //#region src/types.d.ts
@@ -4325,4 +7254,4 @@ declare class WebsocketClient {
4325
7254
  }
4326
7255
  declare const createWebsocketClient: (options?: WebsocketClientOptions) => WebsocketClient;
4327
7256
  //#endregion
4328
- export { CreateInvitationInput as $, SessionTurnIndexItem as $a, UiPreviewTarget as $i, SpaceFsPreparingFile as $n, GenerationModelPolicy as $r, ReferralListItem as $t, BillingPluginStatus as A, BoardTransaction as Aa, BoardAwarenessStateUpdate as Ai, SpaceCommerceFeatureBenefit as An, SpaceTurnAuthorFilter as Ar, MeResponse as At, BillingSubscriptionHistoryStatus as B, BoardNodeContract as Ba, UI_COMMAND_MAX_TIMEOUT_MS as Bi, SpaceDefaultResponse as Bn, UserActivityRankings as Br, PublicUserProfile as Bt, BillingCreditStatus as C, BoardPlaybackPolicy as Ca, RealtimeServerEvent as Ci, SpaceBootstrapStage as Cn, mergeRequestSourceIntoMeta as Co, SpacePublicProfile as Cr, LabelItemsResponse as Ct, BillingDiscountPricing as D, BoardSequence as Da, WorkVersionPublishedEvent as Di, SpaceCommerceBenefit as Dn, requestSourceToHeaders as Do, SpaceSandboxConfig as Dr, LabelResourceType as Dt, BillingDiscountOfferRef as E, BoardRecord as Ea, SessionTurnPatchEvent as Ei, SpaceCheckpointDetailResponse as En, readRequestSourceFromEnv as Eo, SpaceSandboxAutoDestroyPolicy as Er, LabelRecord as Et, BillingProductPricing as F, BOARD_NATIVE_NODE_TYPES as Fa, WorkArtifactManifestFile as Fi, SpaceConfig as Fn, SpaceUsageSummary as Fr, PromptAccessMode as Ft, CheckpointDiffFileResponse as G, BoardConnectionRecord as Ga, UI_COMMAND_VERSION as Gi, SpaceFsCreateUploadInput as Gn, UserSessionSpaceSummary as Gr, ReferenceAggregateResponse as Gt, Channel as H, validateBoardNodeInput as Ha, UI_COMMAND_PENDING_TTL_SECONDS as Hi, SpaceFsCompleteUploadInput as Hn, UserProfile as Hr, PublicUserWorkItem as Ht, BillingPromotionCodePreview as I, BOARD_NODE_CONTRACT as Ia, WorkBoardArtifactManifest as Ii, SpaceConfigInput as In, TaskRunDetailResponse as Ir, PromptTemplateCatalogEntry as It, CheckpointDiffStats as J, BoardRenderCost as Ja, UiCommandError as Ji, SpaceFsEncoding as Jn, ChannelHealth as Jr, ReferenceQueryResponse as Jt, CheckpointDiffPatchKind as K, BoardCapability as Ka, UiCommand as Ki, SpaceFsCreateUploadResponse as Kn, UserSessionsResponse as Kr, ReferenceDirection as Kt, BillingRedemptionResult as L, BoardColorId as La, WorkBoardAsset as Li, SpaceConfigResponse as Ln, TaskRunRecord as Lr, PromptTemplateCatalogResponse as Lt, BillingProductCreditBenefit as M, parseBoardPlaybackPolicy as Ma, WorkArtifactDescriptor as Mi, SpaceCommerceProduct as Mn, SpaceTurnsResponse as Mr, PatchResourceLabelsInput as Mt, BillingProductDisplay as N, BOARD_COLOR_IDS as Na, WorkArtifactDownloadDescriptor as Ni, SpaceCommerceProductBenefitBinding as Nn, SpaceUsageHourlyStat as Nr, PatchResourceLabelsResponse as Nt, BillingHistoryPagination as O, BoardSummary as Oa, BoardAwarenessGesture as Oi, SpaceCommerceBuyerProfile as On, resolveRequestSourceChannel as Oo, SpaceSandboxProvider as Or, LabelScopeType as Ot, BillingProductKind as P, BOARD_GEO_KINDS as Pa, WorkArtifactManifest as Pi, SpaceCommerceProductCreditBenefit as Pn, SpaceUsageResponse as Pr, Permission as Pt, ClaimReferralResponse as Q, SessionTurnSegmentRecord as Qa, UiPreviewShowCommand as Qi, SpaceFsMoveInput as Qn, FeishuChannelConfig as Qr, ReferralDashboard as Qt, BillingResponsePayload as R, BoardGeoKind as Ra, WorkContentKind as Ri, SpaceConfigUpdateResponse as Rn, UserActivityQuery as Rr, PublicReferral as Rt, BillingCreditGrantStatus as S, BoardPlaybackCommand as Sa, RealtimeRoomMember as Si, SpaceBootstrapSource as Sn, isRequestSourceUuid as So, SpacePresenceUser as Sr, LabelAssignmentRecord as St, BillingDiscountOffer as T, BoardPlaybackSnapshot as Ta, RealtimeWorkVersionRecord as Ti, SpaceChannelBindingInput as Tn, parseRequestSourceFromHeaders as To, SpaceRole as Tr, LabelListItem as Tt, CheckpointDiffDelivery as U, BoardConnection as Ua, UI_COMMAND_SETTLEMENT_GRACE_SECONDS as Ui, SpaceFsCompleteUploadResponse as Un, UserRulesResponse as Ur, ReferenceAggregateGroup as Ut, BillingSubscriptionSummary as V, BoardNodeValidationDiagnostic as Va, UI_COMMAND_PAYLOAD_MAX_BYTES as Vi, SpaceEnvInput as Vn, UserActivityResponse as Vr, PublicUserSpaceItem as Vt, CheckpointDiffFile as W, BoardConnectionDirection as Wa, UI_COMMAND_TERMINAL_TTL_SECONDS as Wi, SpaceFsCreateDirectoryInput as Wn, UserSessionListItem as Wr, ReferenceAggregateGroupBy as Wt, CheckpointDiffSummary as X, MessageRecord as Xa, UiCommandStatus as Xi, SpaceFsFileKind as Xn, ChannelRuntimeState as Xr, ReferenceRecord as Xt, CheckpointDiffStatus as Y, SpacePublicEndpoints as Ya, UiCommandRecord as Yi, SpaceFsEntry as Yn, ChannelHealthReasonCode as Yr, ReferenceQueryableType as Yt, CheckpointRecord as Z, SessionForkRecord as Za, UiFilePreviewTarget as Zi, SpaceFsFileResponse as Zn, DiscordChannelConfig as Zr, ReferenceResourceType as Zt, BillingCatalogProduct as _, BoardKeyframe as _a, ChannelEnvelope as _i, SkillCatalogResponse as _n, RequestSource as _o, SpaceMeta as _r, JsonObject as _t, WebsocketClientOptions as a, BoardAssetRef as aa, encodeGenerationPolicy as ai, SessionBindingRecord as an, CompletionThinkingLevel as ao, SpaceFsUploadEntry as ar, CreateSpaceSessionInput as at, BillingConversionIntent as b, BoardNodeRecord as ba, RealtimeRoomDescriptor as bi, SpaceAccessPolicy as bn, isRequestSourceClientId as bo, SpacePendingDiffSummary as br, LabelAssignmentListItem as bt, createWebsocketClient as c, BoardCameraFocusParams as ca, getAllowedGenerationModelIds as ci, SessionMessagesResponse as cn, ModelThinkingLevel as co, SpaceFsUploadPlanEntryInput as cr, CronJobUpdatePatch as ct, BatchUserProfilesResponse as d, BoardClip as da, GenerationContentBlock as di, SessionTurnResponse as dn, Usage as do, SpaceFsWriteFileInput as dr, GenerationUsageHourlyStat as dt, UiSurfaceRequest as ea, GenerationParameterConstraint as ei, ReferralReward as en, SessionTurnRecord as eo, SpaceFsReadFilesError as er, CreateInvitationResponse as et, BillingBalanceActivity as f, BoardCreateInput as fa, GenerationModelDeclaration as fi, SessionTurnSignedUrlsResponse as fn, BillingPayload as fo, SpaceInvitation as fr, GenerationUsageSummary as ft, BillingCatalog as g, BoardInspectInput as ga, BoardTransactionAppliedEvent as gi, SkillCatalogEntry as gn, REQUEST_SOURCE_VIA_MAX_LENGTH as go, SpaceMember as gr, InvitationDetail as gt, BillingBalanceActivityStatus as h, BoardEffect as ha, BoardPlaybackChangedEvent as hi, SessionTurnsPaginatedResponse as hn, COHUB_SOURCE_HEADER_NAMES as ho, SpaceListItem as hr, GlobalSearchType as ht, WebsocketClientEvents as i, parseUiCommand as ia, decodeGenerationPolicy as ii, SendMessageCronJobPayload as in, CompletionMessageRole as io, SpaceFsUploadDestination as ir, CreateSpacePromptResponse as it, BillingProductBillingInterval as j, BoardValidationResult as ja, BoardAwarenessUpdate as ji, SpaceCommerceOrder as jn, SpaceTurnListItem as jr, ModelCatalogEntry as jt, BillingPaymentStatus as k, BoardTarget as ka, BoardAwarenessNodePreview as ki, SpaceCommerceCreditsBenefit as kn, SpaceSessionsResponse as kr, LabelSource as kt, AcceptInvitationResponse as l, BoardCameraState as la, normalizeGenerationPolicy as li, SessionRecord as ln, SpaceCompletionResult as lo, SpaceFsUploadProgress as lr, CursorPageInfo as lt, BillingBalanceActivityList as m, BoardDiagnostic as ma, BoardAwarenessUpdatedEvent as mi, SessionTurnWindowResponse as mn, COHUB_SOURCE_HEADER as mo, SpaceInvitationLocation as mr, GlobalSearchResult as mt, WebSocketLike as n, isTerminalUiCommandStatus as na, GenerationPolicyError as ni, ResourceLabelsResponse as nn, CompletionAssistantMessage as no, SpaceFsReadFilesResponse as nr, CreateSpaceModInput as nt, WebsocketClientState as o, BoardBootstrap as oa, filterGenerationDeclarationsByPolicy as oi, SessionMessageResponse as on, CompletionUsage as oo, SpaceFsUploadError as or, CronJobPayload as ot, BillingBalanceActivityKind as p, BoardDeleteReason as pa, GenerationResult as pi, SessionTurnStreamSnapshotResponse as pn, ContentBlock as po, SpaceInvitationListResponse as pr, GlobalSearchResponse as pt, CheckpointDiffPatchLine as q, BoardCoordinateSpace as qa, UiCommandDispatchedPayload as qi, SpaceFsDeleteNodeInput as qn, ChannelConfig as qr, ReferenceKind as qt, WebsocketClient as r, isUiSurfaceMethod as ra, assertGenerationRequestAllowedByPolicy as ri, SandboxSpecId as rn, CompletionMessage as ro, SpaceFsTreeResponse as rr, CreateSpacePromptInput as rt, WebsocketEventPayload as s, BoardCameraFocus as sa, findGenerationModelPolicy as si, SessionMessagesPaginatedResponse as sn, CreateSpaceCompletionInput as so, SpaceFsUploadPlanEntry as sr, CronJobRecord as st, WebSocketConstructor as t, UiWorkPreviewTarget as ta, GenerationPolicy as ti, ReferralStatus as tn, SpaceTurnsResponse$1 as to, SpaceFsReadFilesInput as tr, CreateSpaceInput as tt, ApiError as u, BoardCapabilities as ua, parseGenerationPolicyFromEnv as ui, SessionTurnIndexResponse as un, SpaceCompletionStreamEvent as uo, SpaceFsUploadResponse as ur, GenerationUsageBlock as ut, BillingCheckoutActionState as v, BoardManifest as va, LabelAssignmentsUpdatedEvent as vi, SkillCatalogSource as vn, RequestSourceVia as vo, SpaceModListItem as vr, JsonPrimitive as vt, BillingCreditUnit as w, BoardPlaybackPolicySchema as wa, RealtimeWorkRecord as wi, SpaceBootstrapStatus as wn, normalizeRequestSource as wo, SpaceRecord as wr, LabelItemsSessionFork as wt, BillingCreditExpiryGroup as x, BoardOperation as xa, RealtimeRoomEvent as xi, SpaceBootstrapMeta as xn, isRequestSourceEmpty as xo, SpacePresenceSnapshot as xr, LabelAssignmentPageInfo as xt, BillingCheckoutResult as y, BoardNodeInput as ya, RealtimePatchOperation as yi, SpaceAccess as yn, hasRequestSourceIdentity as yo, SpacePendingDiffFileResponse as yr, JsonValue as yt, BillingSubscriptionHistoryList as z, BoardNativeNodeType as za, UI_COMMAND_DEFAULT_TIMEOUT_MS as zi, SpaceCreateResponse as zn, UserActivityRange as zr, PublicUserPageResponse as zt };
7257
+ export { CreateInvitationInput as $, BoardCoordinateSpace as $a, UiCommandRecord as $i, SpaceFsPreparingFile as $n, GenerationModelPolicy as $r, ReferralListItem as $t, BillingPluginStatus as A, BoardItemPatchSchema as Aa, SessionTurnPatchEvent as Ai, SpaceCommerceFeatureBenefit as An, normalizeRequestSource as Ao, SpaceTurnAuthorFilter as Ar, MeResponse as At, BillingSubscriptionHistoryStatus as B, BoardAnimationTarget as Ba, WorkBoardArtifactManifest as Bi, SpaceDefaultResponse as Bn, UserActivityRankings as Br, PublicUserProfile as Bt, BillingCreditStatus as C, BoardValidationResult as Ca, RealtimePatchOperation as Ci, SpaceBootstrapStage as Cn, RequestSource as Co, SpacePublicProfile as Cr, LabelItemsResponse as Ct, BillingDiscountPricing as D, BoardAuthoringReadInput as Da, RealtimeServerEvent as Di, SpaceCommerceBenefit as Dn, isRequestSourceEmpty as Do, SpaceSandboxConfig as Dr, LabelResourceType as Dt, BillingDiscountOfferRef as E, BoardAuthoringItemSchema as Ea, RealtimeRoomMember as Ei, SpaceCheckpointDetailResponse as En, isRequestSourceClientId as Eo, SpaceSandboxAutoDestroyPolicy as Er, LabelRecord as Et, BillingProductPricing as F, BoardEffectInput as Fa, BoardAwarenessUpdate as Fi, SpaceConfig as Fn, SpaceUsageSummary as Fr, PromptAccessMode as Ft, CheckpointDiffFileResponse as G, BoardEasing as Ga, UI_COMMAND_PAYLOAD_MAX_BYTES as Gi, SpaceFsCreateUploadInput as Gn, UserSessionSpaceSummary as Gr, ReferenceAggregateResponse as Gt, Channel as H, BoardCompositionInputSchema as Ha, WorkContentKind as Hi, SpaceFsCompleteUploadInput as Hn, UserProfile as Hr, PublicUserWorkItem as Ht, BillingPromotionCodePreview as I, BoardEffectInputSchema as Ia, WorkArtifactDescriptor as Ii, SpaceConfigInput as In, TaskRunDetailResponse as Ir, PromptTemplateCatalogEntry as It, CheckpointDiffStats as J, BoardTimelineMarker as Ja, UI_COMMAND_TERMINAL_TTL_SECONDS as Ji, SpaceFsEncoding as Jn, ChannelHealth as Jr, ReferenceQueryResponse as Jt, CheckpointDiffPatchKind as K, BoardProceduralClip as Ka, UI_COMMAND_PENDING_TTL_SECONDS as Ki, SpaceFsCreateUploadResponse as Kn, UserSessionsResponse as Kr, ReferenceDirection as Kt, BillingRedemptionResult as L, BoardEffectSchema as La, WorkArtifactDownloadDescriptor as Li, SpaceConfigResponse as Ln, TaskRunRecord as Lr, PromptTemplateCatalogResponse as Lt, BillingProductCreditBenefit as M, BoardSemanticMutation as Ma, BoardAwarenessGesture as Mi, SpaceCommerceProduct as Mn, readRequestSourceFromEnv as Mo, SpaceTurnsResponse as Mr, PatchResourceLabelsInput as Mt, BillingProductDisplay as N, BoardAssetRef as Na, BoardAwarenessNodePreview as Ni, SpaceCommerceProductBenefitBinding as Nn, requestSourceToHeaders as No, SpaceUsageHourlyStat as Nr, PatchResourceLabelsResponse as Nt, BillingHistoryPagination as O, BoardAuthoringSnapshot as Oa, RealtimeWorkRecord as Oi, SpaceCommerceBuyerProfile as On, isRequestSourceUuid as Oo, SpaceSandboxProvider as Or, LabelScopeType as Ot, BillingProductKind as P, BoardEffect as Pa, BoardAwarenessStateUpdate as Pi, SpaceCommerceProductCreditBenefit as Pn, resolveRequestSourceChannel as Po, SpaceUsageResponse as Pr, Permission as Pt, ClaimReferralResponse as Q, BoardCapability as Qa, UiCommandError as Qi, SpaceFsMoveInput as Qn, FeishuChannelConfig as Qr, ReferralDashboard as Qt, BillingResponsePayload as R, parseBoardEffectInput as Ra, WorkArtifactManifest as Ri, SpaceConfigUpdateResponse as Rn, UserActivityQuery as Rr, PublicReferral as Rt, BillingCreditGrantStatus as S, BoardSummary as Sa, LabelAssignmentsUpdatedEvent as Si, SpaceBootstrapSource as Sn, REQUEST_SOURCE_VIA_MAX_LENGTH as So, SpacePresenceUser as Sr, LabelAssignmentRecord as St, BillingDiscountOffer as T, BoardAuthoringItem as Ta, RealtimeRoomEvent as Ti, SpaceChannelBindingInput as Tn, hasRequestSourceIdentity as To, SpaceRole as Tr, LabelListItem as Tt, CheckpointDiffDelivery as U, BoardCompositionPlayback as Ua, UI_COMMAND_DEFAULT_TIMEOUT_MS as Ui, SpaceFsCompleteUploadResponse as Un, UserRulesResponse as Ur, ReferenceAggregateGroup as Ut, BillingSubscriptionSummary as V, BoardComposition as Va, WorkBoardAsset as Vi, SpaceEnvInput as Vn, UserActivityResponse as Vr, PublicUserSpaceItem as Vt, CheckpointDiffFile as W, BoardCompositionSchema as Wa, UI_COMMAND_MAX_TIMEOUT_MS as Wi, SpaceFsCreateDirectoryInput as Wn, UserSessionListItem as Wr, ReferenceAggregateGroupBy as Wt, CheckpointDiffSummary as X, BoardTrackInterpolation as Xa, UiCommand as Xi, SpaceFsFileKind as Xn, ChannelRuntimeState as Xr, ReferenceRecord as Xt, CheckpointDiffStatus as Y, BoardTrack as Ya, UI_COMMAND_VERSION as Yi, SpaceFsEntry as Yn, ChannelHealthReasonCode as Yr, ReferenceQueryableType as Yt, CheckpointRecord as Z, parseBoardCompositionInput as Za, UiCommandDispatchedPayload as Zi, SpaceFsFileResponse as Zn, DiscordChannelConfig as Zr, ReferenceResourceType as Zt, BillingCatalogProduct as _, BoardPlaybackCommand as _a, BoardGeoKind as _i, SkillCatalogResponse as _n, Usage as _o, SpaceMeta as _r, JsonObject as _t, WebsocketClientOptions as a, UiWorkPreviewTarget as aa, encodeGenerationPolicy as ai, SessionBindingRecord as an, SessionTurnIndexItem as ao, SpaceFsUploadEntry as ar, CreateSpaceSessionInput as at, BillingConversionIntent as b, BoardPlaybackSnapshot as ba, BoardPlaybackChangedEvent as bi, SpaceAccessPolicy as bn, COHUB_SOURCE_HEADER as bo, SpacePendingDiffSummary as br, LabelAssignmentListItem as bt, createWebsocketClient as c, parseUiCommand as ca, getAllowedGenerationModelIds as ci, SessionMessagesResponse as cn, CompletionAssistantMessage as co, SpaceFsUploadPlanEntryInput as cr, CronJobUpdatePatch as ct, BatchUserProfilesResponse as d, BoardCameraState as da, GenerationContentBlock as di, SessionTurnResponse as dn, CompletionThinkingLevel as do, SpaceFsWriteFileInput as dr, GenerationUsageHourlyStat as dt, UiCommandStatus as ea, GenerationParameterConstraint as ei, ReferralReward as en, BoardRenderCost as eo, SpaceFsReadFilesError as er, CreateInvitationResponse as et, BillingBalanceActivity as f, BoardCapabilities as fa, GenerationModelDeclaration as fi, SessionTurnSignedUrlsResponse as fn, CompletionUsage as fo, SpaceInvitation as fr, GenerationUsageSummary as ft, BillingCatalog as g, BoardMutationReceipt as ga, BoardColorId as gi, SkillCatalogEntry as gn, SpaceCompletionStreamEvent as go, SpaceMember as gr, InvitationDetail as gt, BillingBalanceActivityStatus as h, BoardManifest as ha, BOARD_GEO_KINDS as hi, SessionTurnsPaginatedResponse as hn, SpaceCompletionResult as ho, SpaceListItem as hr, GlobalSearchType as ht, WebsocketClientEvents as i, UiSurfaceRequest as ia, decodeGenerationPolicy as ii, SendMessageCronJobPayload as in, SessionTurnSegmentRecord as io, SpaceFsUploadDestination as ir, CreateSpacePromptResponse as it, BillingProductBillingInterval as j, BoardSemanticCommand as ja, WorkVersionPublishedEvent as ji, SpaceCommerceOrder as jn, parseRequestSourceFromHeaders as jo, SpaceTurnListItem as jr, ModelCatalogEntry as jt, BillingPaymentStatus as k, BoardItemPatch as ka, RealtimeWorkVersionRecord as ki, SpaceCommerceCreditsBenefit as kn, mergeRequestSourceIntoMeta as ko, SpaceSessionsResponse as kr, LabelSource as kt, AcceptInvitationResponse as l, BoardCameraFocus as la, normalizeGenerationPolicy as li, SessionRecord as ln, CompletionMessage as lo, SpaceFsUploadProgress as lr, CursorPageInfo as lt, BillingBalanceActivityList as m, BoardDiagnostic as ma, BOARD_COLOR_IDS as mi, SessionTurnWindowResponse as mn, ModelThinkingLevel as mo, SpaceInvitationLocation as mr, GlobalSearchResult as mt, WebSocketLike as n, UiPreviewShowCommand as na, GenerationPolicyError as ni, ResourceLabelsResponse as nn, MessageRecord as no, SpaceFsReadFilesResponse as nr, CreateSpaceModInput as nt, WebsocketClientState as o, isTerminalUiCommandStatus as oa, filterGenerationDeclarationsByPolicy as oi, SessionMessageResponse as on, SessionTurnRecord as oo, SpaceFsUploadError as or, CronJobPayload as ot, BillingBalanceActivityKind as p, BoardCreateInput as pa, GenerationResult as pi, SessionTurnStreamSnapshotResponse as pn, CreateSpaceCompletionInput as po, SpaceInvitationListResponse as pr, GlobalSearchResponse as pt, CheckpointDiffPatchLine as q, BoardTimeline as qa, UI_COMMAND_SETTLEMENT_GRACE_SECONDS as qi, SpaceFsDeleteNodeInput as qn, ChannelConfig as qr, ReferenceKind as qt, WebsocketClient as r, UiPreviewTarget as ra, assertGenerationRequestAllowedByPolicy as ri, SandboxSpecId as rn, SessionForkRecord as ro, SpaceFsTreeResponse as rr, CreateSpacePromptInput as rt, WebsocketEventPayload as s, isUiSurfaceMethod as sa, findGenerationModelPolicy as si, SessionMessagesPaginatedResponse as sn, SpaceTurnsResponse$1 as so, SpaceFsUploadPlanEntry as sr, CronJobRecord as st, WebSocketConstructor as t, UiFilePreviewTarget as ta, GenerationPolicy as ti, ReferralStatus as tn, SpacePublicEndpoints as to, SpaceFsReadFilesInput as tr, CreateSpaceInput as tt, ApiError as u, BoardCameraFocusParams as ua, parseGenerationPolicyFromEnv as ui, SessionTurnIndexResponse as un, CompletionMessageRole as uo, SpaceFsUploadResponse as ur, GenerationUsageBlock as ut, BillingCheckoutActionState as v, BoardPlaybackPolicy as va, BoardAwarenessUpdatedEvent as vi, SkillCatalogSource as vn, BillingPayload as vo, SpaceModListItem as vr, JsonPrimitive as vt, BillingCreditUnit as w, parseBoardPlaybackPolicy as wa, RealtimeRoomDescriptor as wi, SpaceBootstrapStatus as wn, RequestSourceVia as wo, SpaceRecord as wr, LabelItemsSessionFork as wt, BillingCreditExpiryGroup as x, BoardRecord as xa, ChannelEnvelope as xi, SpaceBootstrapMeta as xn, COHUB_SOURCE_HEADER_NAMES as xo, SpacePresenceSnapshot as xr, LabelAssignmentPageInfo as xt, BillingCheckoutResult as y, BoardPlaybackPolicySchema as ya, BoardChangedEvent as yi, SpaceAccess as yn, ContentBlock as yo, SpacePendingDiffFileResponse as yr, JsonValue as yt, BillingSubscriptionHistoryList as z, BOARD_ANIMATION_CHANNEL_CAPABILITIES as za, WorkArtifactManifestFile as zi, SpaceCreateResponse as zn, UserActivityRange as zr, PublicUserPageResponse as zt };