@manifest-editor/shell 2.0.3-next.0.2c09e87 → 2.0.3-next.0.3782be7

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.
package/dist/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
- import * as react11 from "react";
2
- import { Dispatch, HTMLAttributes, ReactNode, SetStateAction } from "react";
3
- import * as react_jsx_runtime7 from "react/jsx-runtime";
1
+ import * as react4 from "react";
2
+ import { CSSProperties, Dispatch, HTMLAttributes, ReactElement, ReactNode, SVGProps, SetStateAction } from "react";
3
+ import * as react_jsx_runtime4 from "react/jsx-runtime";
4
4
  import * as _manifest_editor_creator_api0 from "@manifest-editor/creator-api";
5
5
  import { CreatableResource, Creator, CreatorDefinition } from "@manifest-editor/creator-api";
6
6
  import * as _iiif_presentation_30 from "@iiif/presentation-3";
@@ -16,10 +16,34 @@ import { Vault as Vault$1 } from "@iiif/helpers";
16
16
  import { EditorInstance } from "@manifest-editor/editor-api";
17
17
  import { ManifestNormalized } from "@iiif/presentation-3-normalized";
18
18
  import { Emitter } from "mitt";
19
- import { useLocalStorage, useOptionalLocalStorage } from "@manifest-editor/components";
19
+ import { ToastContent as ToastContent$1, ToastVariant as ToastVariant$1, useLocalStorage, useOptionalLocalStorage } from "@manifest-editor/components";
20
20
  import * as styled_components_dist_types0 from "styled-components/dist/types";
21
21
  import * as styled_components0 from "styled-components";
22
+ import { ToastOptions } from "@react-stately/toast";
23
+ import { MessagePortClientVault, RemoteVaultAction, RemoteVaultClientMessage } from "@manifest-editor/client-vault";
22
24
 
25
+ //#region src/AppResourceProvider/AppResourceProvider.d.ts
26
+ interface Resource {
27
+ id: string;
28
+ type: string;
29
+ }
30
+ declare function useAppResourceInstance(): string;
31
+ declare function useAppResource(): Resource;
32
+ declare function AppResourceInstanceProvider({
33
+ id,
34
+ children
35
+ }: {
36
+ id?: string;
37
+ children: React.ReactNode;
38
+ }): string | number | bigint | boolean | Iterable<react4.ReactNode> | Promise<string | number | bigint | boolean | react4.ReactPortal | react4.ReactElement<unknown, string | react4.JSXElementConstructor<any>> | Iterable<react4.ReactNode> | null | undefined> | react_jsx_runtime4.JSX.Element | null | undefined;
39
+ declare function AppResourceProvider({
40
+ resource,
41
+ children
42
+ }: {
43
+ resource?: Resource;
44
+ children: React.ReactNode;
45
+ }): react_jsx_runtime4.JSX.Element;
46
+ //#endregion
23
47
  //#region src/PreviewContext/PreviewContext.types.d.ts
24
48
  interface Preview {
25
49
  id: string;
@@ -110,6 +134,13 @@ interface Config {
110
134
  version: 3 | 2;
111
135
  };
112
136
  uploadBackends: Array<UploadBackendConfig>;
137
+ plugins?: {
138
+ apps?: Record<string, {
139
+ enabled?: string[];
140
+ disabled?: string[];
141
+ settings?: Record<string, Record<string, unknown>> & Record<string, unknown>;
142
+ }>;
143
+ };
113
144
  }
114
145
  interface EditorConfig {
115
146
  singleTab?: string;
@@ -127,8 +158,10 @@ interface UploadBackendConfig {
127
158
  type: string;
128
159
  }> | null;
129
160
  }
130
- declare const ConfigReactContext: react11.Context<Config>;
131
- declare const SaveConfigReactContext: react11.Context<(config: Partial<Config>) => void>;
161
+ declare function mergePartialConfig(...configs: Array<Partial<Config> | null | undefined>): Partial<Config>;
162
+ declare function mergeConfig(...configs: Array<Partial<Config> | null | undefined>): Config;
163
+ declare const ConfigReactContext: react4.Context<Config>;
164
+ declare const SaveConfigReactContext: react4.Context<(config: Partial<Config>) => void>;
132
165
  declare function useConfig(): Config;
133
166
  declare function useSaveConfig(): (config: Partial<Config>) => void;
134
167
  declare function ConfigProvider({
@@ -139,7 +172,7 @@ declare function ConfigProvider({
139
172
  children: ReactNode;
140
173
  config?: Partial<Config>;
141
174
  saveConfig?: (config: Partial<Config>) => void;
142
- }): react_jsx_runtime7.JSX.Element;
175
+ }): react_jsx_runtime4.JSX.Element;
143
176
  //#endregion
144
177
  //#region src/EditingStack/EditingStack.types.d.ts
145
178
  interface EditableResource {
@@ -208,6 +241,7 @@ interface LayoutProviderProps {
208
241
  modals?: Array<LayoutPanel>;
209
242
  annotations?: Array<AnnotationPanel>;
210
243
  background?: Array<BackgroundPanel>;
244
+ backgroundActions?: Array<BackgroundActionDefinition>;
211
245
  }
212
246
  interface LayoutContext extends LayoutProviderProps {
213
247
  state: LayoutState;
@@ -345,7 +379,14 @@ interface LayoutPanel {
345
379
  id: string;
346
380
  label: string;
347
381
  divide?: boolean;
382
+ separator?: boolean;
348
383
  icon?: null | string | ReactNode;
384
+ supports?: (ctx: LayoutPanelSupportContext) => boolean;
385
+ focusedMode?: {
386
+ hide?: boolean;
387
+ closeOnMainPanelClick?: boolean;
388
+ onSelect?: (ctx: LayoutPanelFocusedModeContext) => void;
389
+ };
349
390
  render: LayoutFunction;
350
391
  onMount?: (state: any, ctx: {
351
392
  current: PanelActions;
@@ -373,6 +414,21 @@ interface LayoutPanel {
373
414
  tabs?: boolean;
374
415
  };
375
416
  }
417
+ interface LayoutPanelSupportContext {
418
+ rootResource?: Resource;
419
+ vault?: Vault;
420
+ app: MappedApp;
421
+ layoutState: LayoutState;
422
+ appState: AppState;
423
+ }
424
+ interface LayoutPanelFocusedModeContext {
425
+ rootResource?: Resource;
426
+ vault?: Vault;
427
+ app: MappedApp;
428
+ layoutState: LayoutState;
429
+ appState: AppState;
430
+ actions: LayoutActions;
431
+ }
376
432
  type MenuPositions = "left" | "right" | "bottom" | "top";
377
433
  interface PinnedLayoutPanel<T$1 = any> extends LayoutPanel {
378
434
  pinned: true;
@@ -427,6 +483,7 @@ interface LayoutProps {
427
483
  modals?: Array<LayoutPanel>;
428
484
  annotations?: Array<AnnotationPanel>;
429
485
  background?: Array<BackgroundPanel>;
486
+ backgroundActions?: Array<BackgroundActionDefinition>;
430
487
  footer?: ReactNode;
431
488
  menu?: ReactNode;
432
489
  header?: ReactNode;
@@ -437,12 +494,442 @@ interface LayoutProps {
437
494
  leftPanelMenuPosition?: MenuPositions;
438
495
  centerPanelMenuPosition?: MenuPositions;
439
496
  rightPanelMenuPosition?: MenuPositions;
497
+ layoutMode?: "default" | "focused";
440
498
  editors?: EditorDefinition[];
441
499
  resources?: (string | ResourceDefinition)[];
442
500
  creators?: CreatorDefinition$1[];
443
501
  canvasEditors?: CanvasEditorDefinition[];
444
502
  }
445
503
  //#endregion
504
+ //#region src/CanvasProgress.d.ts
505
+ declare const CANVAS_PROGRESS_META_NAMESPACE = "@manifest-editor/canvas-progress";
506
+ declare const CANVAS_PROGRESS_STATUS_META_KEY = "status";
507
+ type CanvasProgressActiveStatus = "queued" | "pending" | "done";
508
+ type CanvasProgressStatus = CanvasProgressActiveStatus | "none";
509
+ type CanvasProgressStatusInput = CanvasProgressStatus | null | undefined;
510
+ type CanvasProgressResource = string | {
511
+ id: string;
512
+ type?: string;
513
+ } | null | undefined;
514
+ declare function getCanvasProgressStatus(vault: Vault, resource: CanvasProgressResource): CanvasProgressStatus;
515
+ declare function getCanvasProgressStatusFromState(state: any, resource: CanvasProgressResource): CanvasProgressStatus;
516
+ declare function setCanvasProgressStatus(vault: Vault, resource: CanvasProgressResource, status: CanvasProgressStatusInput): CanvasProgressStatus;
517
+ declare function clearCanvasProgressStatus(vault: Vault, resource: CanvasProgressResource): CanvasProgressStatus;
518
+ declare function setCanvasProgressStatuses(vault: Vault, resources: CanvasProgressResource[], status: CanvasProgressStatusInput): Record<string, CanvasProgressStatus>;
519
+ declare function clearCanvasProgressStatuses(vault: Vault, resources: CanvasProgressResource[]): Record<string, CanvasProgressStatus>;
520
+ interface ManifestEditorCanvasProgressApi {
521
+ getStatus(resource: CanvasProgressResource): CanvasProgressStatus;
522
+ setStatus(resource: CanvasProgressResource, status: CanvasProgressStatusInput): CanvasProgressStatus;
523
+ clearStatus(resource: CanvasProgressResource): CanvasProgressStatus;
524
+ setStatuses(resources: CanvasProgressResource[], status: CanvasProgressStatusInput): Record<string, CanvasProgressStatus>;
525
+ clearStatuses(resources: CanvasProgressResource[]): Record<string, CanvasProgressStatus>;
526
+ }
527
+ declare function createManifestEditorCanvasProgressApi(vault: Vault): ManifestEditorCanvasProgressApi;
528
+ declare function createTrackingCanvasProgressApi(baseApi: ManifestEditorCanvasProgressApi, trackedResourceIds?: Set<string>): ManifestEditorCanvasProgressApi & {
529
+ clearTrackedStatuses(): void;
530
+ trackedResourceIds: Set<string>;
531
+ };
532
+ declare function useCanvasProgressStatus(resource: CanvasProgressResource): CanvasProgressStatus;
533
+ declare function useCanvasProgressActions(resource: CanvasProgressResource): {
534
+ setStatus(status: CanvasProgressStatusInput): CanvasProgressStatus;
535
+ clearStatus(): CanvasProgressStatus;
536
+ getStatus(): CanvasProgressStatus;
537
+ };
538
+ declare function ManifestEditorCanvasProgressOverlay({
539
+ resource,
540
+ status,
541
+ className
542
+ }: {
543
+ resource?: CanvasProgressResource;
544
+ status?: CanvasProgressStatus;
545
+ className?: string;
546
+ }): react_jsx_runtime4.JSX.Element;
547
+ //#endregion
548
+ //#region src/PluginContext/PluginContext.types.d.ts
549
+ type PluginMetadata = {
550
+ id: string;
551
+ label: string;
552
+ description?: string;
553
+ author?: string | {
554
+ name: string;
555
+ url?: string;
556
+ };
557
+ official?: boolean;
558
+ image?: string | {
559
+ src: string;
560
+ alt?: string;
561
+ };
562
+ screenshots?: Array<{
563
+ src: string;
564
+ label?: string;
565
+ alt?: string;
566
+ }>;
567
+ version?: string;
568
+ tags?: string[];
569
+ supports?: {
570
+ apps?: string[];
571
+ projectTypes?: Array<"Manifest" | "Collection">;
572
+ };
573
+ defaultEnabled?: boolean;
574
+ dependencies?: string[];
575
+ };
576
+ type PluginModule = {
577
+ default: PluginMetadata;
578
+ config?: Partial<Config>;
579
+ settings?: PluginSettingsDefinition;
580
+ } & AppExtension;
581
+ type LazyPluginModule = {
582
+ default: PluginMetadata;
583
+ settings?: PluginSettingsDefinition;
584
+ load: () => Promise<PluginModule | MappedPlugin>;
585
+ };
586
+ type MappedPlugin = {
587
+ metadata: PluginMetadata;
588
+ extension: AppExtension;
589
+ settings?: PluginSettingsDefinition;
590
+ load?: () => Promise<PluginModule | MappedPlugin>;
591
+ loadStatus?: "idle" | "loading" | "loaded" | "error";
592
+ loadError?: string;
593
+ };
594
+ type PluginInput = PluginModule | MappedPlugin | LazyPluginModule;
595
+ type PluginSettingsValue = Record<string, unknown>;
596
+ type PluginSettingsRecord = Record<string, PluginSettingsValue>;
597
+ type PluginSettingsFieldOption = {
598
+ label: string;
599
+ value: string | number | boolean;
600
+ };
601
+ type PluginSettingsField = {
602
+ id: string;
603
+ label: string;
604
+ description?: string;
605
+ type?: "text" | "textarea" | "number" | "boolean" | "select";
606
+ placeholder?: string;
607
+ options?: PluginSettingsFieldOption[];
608
+ };
609
+ type PluginSettingsRenderContext<T$1 extends PluginSettingsValue = PluginSettingsValue> = {
610
+ plugin: MappedPlugin;
611
+ appId: string;
612
+ scope: PluginConfigScope;
613
+ value: T$1;
614
+ defaults: T$1;
615
+ effective: T$1;
616
+ onChange: (value: T$1) => void;
617
+ };
618
+ type PluginSettingsDefinition<T$1 extends PluginSettingsValue = PluginSettingsValue> = {
619
+ defaults?: T$1;
620
+ fields?: PluginSettingsField[];
621
+ validate?: (settings: T$1) => string | null | undefined | void;
622
+ render?: (context: PluginSettingsRenderContext<T$1>) => ReactNode;
623
+ };
624
+ type PluginConfigScope = "workspace" | "global";
625
+ type PluginAppConfig = {
626
+ enabled?: string[];
627
+ disabled?: string[];
628
+ settings?: PluginSettingsRecord & Record<string, unknown>;
629
+ };
630
+ type PluginStoreSnapshot = {
631
+ plugins: MappedPlugin[];
632
+ enabled: string[];
633
+ disabled: string[];
634
+ globalApps: Record<string, PluginAppConfig>;
635
+ apps: Record<string, PluginAppConfig>;
636
+ };
637
+ type PluginStore = PluginStoreSnapshot & {
638
+ setProviderState(state: {
639
+ plugins?: MappedPlugin[];
640
+ enabled?: string[];
641
+ disabled?: string[];
642
+ globalPluginConfig?: Config["plugins"];
643
+ }): void;
644
+ setPluginLoading(id: string): void;
645
+ setPluginLoaded(id: string, plugin: MappedPlugin): void;
646
+ setPluginLoadError(id: string, error: string): void;
647
+ setAppConfig(appId: string, config: PluginAppConfig): void;
648
+ setGlobalConfig(config?: Config["plugins"]): void;
649
+ setGlobalAppConfig(appId: string, config: PluginAppConfig): void;
650
+ enable(appId: string, id: string): void;
651
+ enable(appId: string, id: string, scope: PluginConfigScope): void;
652
+ disable(appId: string, id: string): void;
653
+ disable(appId: string, id: string, scope: PluginConfigScope): void;
654
+ };
655
+ type PluginHostApp = Pick<MappedApp, "metadata" | "layout">;
656
+ type PluginRuntimeApi = {
657
+ getSettings<T$1 extends PluginSettingsValue = PluginSettingsValue>(pluginId: string): T$1;
658
+ };
659
+ //#endregion
660
+ //#region src/Tags.d.ts
661
+ declare const TAGS_META_NAMESPACE = "@manifest-editor/tags";
662
+ declare const TAGS_META_KEY = "tags";
663
+ interface ManifestEditorTag {
664
+ type: string;
665
+ id: string;
666
+ label: string;
667
+ backgroundColor: string;
668
+ textColor: string;
669
+ icon?: string;
670
+ }
671
+ type ManifestEditorTagResource = string | {
672
+ id: string;
673
+ type?: string;
674
+ } | null | undefined;
675
+ interface ManifestEditorTagGroupRow {
676
+ key: string;
677
+ type: string;
678
+ id: string;
679
+ tag: ManifestEditorTag;
680
+ canvasIds: string[];
681
+ canvasCount: number;
682
+ }
683
+ interface ManifestEditorTagGroup {
684
+ key: string;
685
+ type: string;
686
+ rows: ManifestEditorTagGroupRow[];
687
+ canvasIds: string[];
688
+ canvasCount: number;
689
+ tagCount: number;
690
+ }
691
+ declare const FLAG_TAG: ManifestEditorTag;
692
+ declare function getResourceTags(vault: Vault, resource: ManifestEditorTagResource): ManifestEditorTag[];
693
+ declare function getResourceTagsFromState(state: any, resource: ManifestEditorTagResource): ManifestEditorTag[];
694
+ declare function setResourceTags(vault: Vault, resource: ManifestEditorTagResource, tags: ManifestEditorTag[]): ManifestEditorTag[];
695
+ declare function addResourceTag(vault: Vault, resource: ManifestEditorTagResource, tag: ManifestEditorTag): ManifestEditorTag[];
696
+ declare function getResourceTag(vault: Vault, resource: ManifestEditorTagResource, tagType: string): ManifestEditorTag | undefined;
697
+ declare function removeResourceTag(vault: Vault, resource: ManifestEditorTagResource, tagType: string, tagId?: string): ManifestEditorTag[];
698
+ declare function getResourceTagGroups(vault: Vault, resources: ManifestEditorTagResource[]): ManifestEditorTagGroup[];
699
+ declare function hasResourceTag(vault: Vault, resource: ManifestEditorTagResource, tagType: string, tagId?: string): boolean;
700
+ declare function toggleResourceTag(vault: Vault, resource: ManifestEditorTagResource, tag: ManifestEditorTag): ManifestEditorTag[];
701
+ interface ManifestEditorTagsApi {
702
+ getTags(resource: ManifestEditorTagResource): ManifestEditorTag[];
703
+ setTags(resource: ManifestEditorTagResource, tags: ManifestEditorTag[]): ManifestEditorTag[];
704
+ addTag(resource: ManifestEditorTagResource, tag: ManifestEditorTag): ManifestEditorTag[];
705
+ upsertTag(resource: ManifestEditorTagResource, tag: ManifestEditorTag): ManifestEditorTag[];
706
+ getTag(resource: ManifestEditorTagResource, tagType: string): ManifestEditorTag | undefined;
707
+ removeTag(resource: ManifestEditorTagResource, tagType: string, tagId?: string): ManifestEditorTag[];
708
+ hasTag(resource: ManifestEditorTagResource, tagType: string, tagId?: string): boolean;
709
+ toggleTag(resource: ManifestEditorTagResource, tag: ManifestEditorTag): ManifestEditorTag[];
710
+ }
711
+ declare function createManifestEditorTagsApi(vault: Vault): ManifestEditorTagsApi;
712
+ declare function useResourceTags(resource: ManifestEditorTagResource): ManifestEditorTag[];
713
+ declare function useResourceTagActions(resource: ManifestEditorTagResource): {
714
+ setTags(tags: ManifestEditorTag[]): ManifestEditorTag[];
715
+ addTag(tag: ManifestEditorTag): ManifestEditorTag[];
716
+ getTag(tagType: string): ManifestEditorTag | undefined;
717
+ removeTag(tagType: string, tagId?: string): ManifestEditorTag[];
718
+ toggleTag(tag: ManifestEditorTag): ManifestEditorTag[];
719
+ hasTag(tagType: string, tagId?: string): boolean;
720
+ };
721
+ declare function ManifestEditorTagIcon({
722
+ icon,
723
+ title,
724
+ ...props
725
+ }: SVGProps<SVGSVGElement> & {
726
+ icon?: string;
727
+ title?: string;
728
+ }): react_jsx_runtime4.JSX.Element | null;
729
+ declare function ManifestEditorTagBadge({
730
+ tag,
731
+ showIcon,
732
+ className,
733
+ style
734
+ }: {
735
+ tag: ManifestEditorTag;
736
+ showIcon?: boolean;
737
+ className?: string;
738
+ style?: CSSProperties;
739
+ }): react_jsx_runtime4.JSX.Element;
740
+ declare function ManifestEditorTagOverlay({
741
+ resource,
742
+ tags,
743
+ className
744
+ }: {
745
+ resource?: ManifestEditorTagResource;
746
+ tags?: ManifestEditorTag[];
747
+ className?: string;
748
+ }): react_jsx_runtime4.JSX.Element;
749
+ //#endregion
750
+ //#region src/BackgroundTasks/BackgroundTasks.types.d.ts
751
+ type BackgroundActionStatus = "idle" | "preparing" | "running" | "complete" | "error" | "cancelled";
752
+ type BackgroundActionLogLevel = "debug" | "info" | "warn" | "error";
753
+ type BackgroundActionTaskStatus = "queued" | "running" | "complete" | "skipped" | "error" | "cancelled";
754
+ type BackgroundActionEventType = "started" | "label" | "status" | "log" | "result" | "results-available" | "error" | "cancel-requested";
755
+ interface BackgroundActionTarget extends Reference {
756
+ label: string;
757
+ scope: "root" | "canvas";
758
+ }
759
+ interface BackgroundActionError {
760
+ message: string;
761
+ stack?: string;
762
+ detail?: unknown;
763
+ }
764
+ interface BackgroundActionLogEntry {
765
+ id: string;
766
+ createdAt: number;
767
+ level: BackgroundActionLogLevel;
768
+ message: string;
769
+ data?: unknown;
770
+ }
771
+ interface BackgroundActionEvent {
772
+ id: string;
773
+ createdAt: number;
774
+ type: BackgroundActionEventType;
775
+ message?: string;
776
+ data?: unknown;
777
+ }
778
+ interface BackgroundActionProgress {
779
+ percent: number;
780
+ current?: number;
781
+ total?: number;
782
+ label?: string;
783
+ }
784
+ type BackgroundActionProgressInput = {
785
+ percent: number;
786
+ current?: number;
787
+ total?: number;
788
+ label?: string;
789
+ } | {
790
+ current: number;
791
+ total: number;
792
+ percent?: number;
793
+ label?: string;
794
+ };
795
+ interface BackgroundActionTask {
796
+ id: string;
797
+ label: string;
798
+ target?: BackgroundActionTarget;
799
+ input?: unknown;
800
+ status?: BackgroundActionTaskStatus;
801
+ statusText?: string;
802
+ result?: unknown;
803
+ error?: BackgroundActionError | null;
804
+ createdAt?: number;
805
+ startedAt?: number;
806
+ completedAt?: number;
807
+ }
808
+ interface BackgroundActionPlan {
809
+ version: 1;
810
+ data?: unknown;
811
+ tasks: BackgroundActionTask[];
812
+ }
813
+ interface BackgroundActionPersistedState {
814
+ version: 1;
815
+ savedAt: number;
816
+ instances: Record<string, BackgroundActionInstance>;
817
+ histories: Record<string, BackgroundActionInstance[]>;
818
+ plans: Record<string, BackgroundActionPlan>;
819
+ }
820
+ interface BackgroundActionPersistenceKey {
821
+ appId: string;
822
+ instanceId: string;
823
+ rootResource: Reference;
824
+ }
825
+ interface BackgroundActionPersistence {
826
+ load(key: BackgroundActionPersistenceKey): Promise<BackgroundActionPersistedState | null | undefined>;
827
+ save(key: BackgroundActionPersistenceKey, state: BackgroundActionPersistedState): Promise<void>;
828
+ clear(key: BackgroundActionPersistenceKey): Promise<void>;
829
+ }
830
+ type BackgroundActionTaskRunResult = {
831
+ taskStatus?: "complete" | "skipped";
832
+ result?: unknown;
833
+ statusText?: string;
834
+ } | unknown;
835
+ interface BackgroundActionTaskRunOptions {
836
+ statuses?: BackgroundActionTaskStatus[];
837
+ progressLabel?: (task: BackgroundActionTask, index: number, total: number) => string;
838
+ yieldEveryMs?: number | false;
839
+ }
840
+ interface BackgroundActionTasksApi {
841
+ getAll(): BackgroundActionTask[];
842
+ getPending(): BackgroundActionTask[];
843
+ update(id: string, patch: Partial<BackgroundActionTask>, persistImmediately?: boolean): void;
844
+ runEach(handler: (task: BackgroundActionTask, context: {
845
+ index: number;
846
+ total: number;
847
+ pendingIndex: number;
848
+ pendingTotal: number;
849
+ }) => BackgroundActionTaskRunResult | Promise<BackgroundActionTaskRunResult>, options?: BackgroundActionTaskRunOptions): Promise<BackgroundActionTask[]>;
850
+ }
851
+ interface BackgroundActionInstance {
852
+ id: string;
853
+ runId: string;
854
+ actionId: string;
855
+ target: BackgroundActionTarget;
856
+ label: string;
857
+ status: BackgroundActionStatus;
858
+ statusText?: string;
859
+ error?: BackgroundActionError | null;
860
+ result?: unknown;
861
+ resultsAvailable: boolean;
862
+ logs: BackgroundActionLogEntry[];
863
+ events: BackgroundActionEvent[];
864
+ progress?: BackgroundActionProgress;
865
+ startedAt?: number;
866
+ completedAt?: number;
867
+ cancelRequestedAt?: number;
868
+ cancelledAt?: number;
869
+ }
870
+ interface BackgroundActionSystemContext {
871
+ rootResource: Resource;
872
+ currentCanvas?: BackgroundActionTarget;
873
+ vault: Vault;
874
+ tags: ManifestEditorTagsApi;
875
+ canvasProgress: ManifestEditorCanvasProgressApi;
876
+ plugins: PluginRuntimeApi;
877
+ config: Config;
878
+ layoutState: LayoutState;
879
+ layoutActions: LayoutActions;
880
+ }
881
+ interface BackgroundActionContext extends BackgroundActionSystemContext {
882
+ definition: BackgroundActionDefinition;
883
+ target: BackgroundActionTarget;
884
+ instanceKey: string;
885
+ instance?: BackgroundActionInstance;
886
+ }
887
+ interface BackgroundActionLifecycle {
888
+ setActionLabel(label: string): void;
889
+ setActionStatus(status: BackgroundActionStatus, statusText?: string): void;
890
+ setActionError(error: unknown, statusText?: string): void;
891
+ appendActionLog(message: string, level?: BackgroundActionLogLevel, data?: unknown): void;
892
+ setActionProgress(progress: BackgroundActionProgressInput | null): void;
893
+ setResult(result: unknown): void;
894
+ setResultsAvailable(available: boolean): void;
895
+ }
896
+ interface BackgroundActionRunContext extends BackgroundActionContext, BackgroundActionLifecycle {
897
+ signal: AbortSignal;
898
+ prepareData?: unknown;
899
+ plan?: BackgroundActionPlan;
900
+ tasks: BackgroundActionTasksApi;
901
+ }
902
+ interface BackgroundActionRenderContext extends BackgroundActionSystemContext {
903
+ definition: BackgroundActionDefinition;
904
+ }
905
+ interface BackgroundActionDefinition {
906
+ id: string;
907
+ label: string;
908
+ summary?: string;
909
+ section?: string;
910
+ order?: number;
911
+ resourceTypes?: string[];
912
+ resumable?: boolean;
913
+ supports?: (ctx: BackgroundActionContext) => boolean;
914
+ prepare?: (ctx: BackgroundActionRunContext) => BackgroundActionPlan | boolean | void | Promise<BackgroundActionPlan | boolean | void>;
915
+ run: (ctx: BackgroundActionRunContext) => unknown | Promise<unknown>;
916
+ render?: (ctx: BackgroundActionRenderContext) => ReactNode | null;
917
+ onResults?: (ctx: BackgroundActionContext) => unknown | Promise<unknown>;
918
+ }
919
+ interface AvailableBackgroundAction {
920
+ definition: BackgroundActionDefinition;
921
+ target: BackgroundActionTarget;
922
+ instanceKey: string;
923
+ instance?: BackgroundActionInstance;
924
+ context: BackgroundActionContext;
925
+ }
926
+ interface BackgroundActionGroup {
927
+ id: string;
928
+ label: string;
929
+ target: BackgroundActionTarget;
930
+ actions: AvailableBackgroundAction[];
931
+ }
932
+ //#endregion
446
933
  //#region src/AppContext/AppContext.d.ts
447
934
  type AppContext = {
448
935
  instanceId: string;
@@ -479,6 +966,7 @@ interface AppExtension {
479
966
  canvasEditors?: CanvasEditorDefinition[];
480
967
  annotations?: AnnotationPanel[];
481
968
  background?: BackgroundPanel[];
969
+ backgroundActions?: BackgroundActionDefinition[];
482
970
  leftPanelIds?: string[];
483
971
  disableSideEffects?: string[];
484
972
  }
@@ -486,9 +974,9 @@ type AppState = {
486
974
  state: null | any;
487
975
  setState: SetStateAction<any>;
488
976
  };
489
- declare const PrimeAppReactContext: react11.Context<MappedApp | null>;
490
- declare const AppReactContext: react11.Context<AppContext | null>;
491
- declare const AppStateReactContext: react11.Context<{
977
+ declare const PrimeAppReactContext: react4.Context<MappedApp | null>;
978
+ declare const AppReactContext: react4.Context<AppContext | null>;
979
+ declare const AppStateReactContext: react4.Context<{
492
980
  state: null | any;
493
981
  setState: SetStateAction<any>;
494
982
  }>;
@@ -512,7 +1000,7 @@ declare function AppProvider({
512
1000
  args?: any;
513
1001
  definition: MappedApp;
514
1002
  children: ReactNode;
515
- }): react_jsx_runtime7.JSX.Element;
1003
+ }): react_jsx_runtime4.JSX.Element;
516
1004
  //#endregion
517
1005
  //#region src/AppContext/MultiAppContext.d.ts
518
1006
  type MappedApp$1 = any;
@@ -551,13 +1039,13 @@ declare function MultiAppProvider({
551
1039
  manifestApp?: string;
552
1040
  collectionApp?: string;
553
1041
  };
554
- }): react_jsx_runtime7.JSX.Element | null;
1042
+ }): react_jsx_runtime4.JSX.Element | null;
555
1043
  //#endregion
556
1044
  //#region src/AppHeader/AppHeader.d.ts
557
1045
  interface AppHeaderProps {
558
1046
  onClickLogo?: () => void;
559
1047
  }
560
- declare const AppHeader: react11.NamedExoticComponent<AppHeaderProps>;
1048
+ declare const AppHeader: react4.NamedExoticComponent<AppHeaderProps>;
561
1049
  //#endregion
562
1050
  //#region src/AppMenu/AppMenuContext.d.ts
563
1051
  type MenuItem = {
@@ -582,29 +1070,7 @@ declare function AppMenuProvider({
582
1070
  }: {
583
1071
  children: React.ReactNode;
584
1072
  menu: AppMenuContext;
585
- }): react_jsx_runtime7.JSX.Element;
586
- //#endregion
587
- //#region src/AppResourceProvider/AppResourceProvider.d.ts
588
- interface Resource {
589
- id: string;
590
- type: string;
591
- }
592
- declare function useAppResourceInstance(): string;
593
- declare function useAppResource(): Resource;
594
- declare function AppResourceInstanceProvider({
595
- id,
596
- children
597
- }: {
598
- id?: string;
599
- children: React.ReactNode;
600
- }): string | number | bigint | boolean | Iterable<react11.ReactNode> | Promise<string | number | bigint | boolean | react11.ReactPortal | react11.ReactElement<unknown, string | react11.JSXElementConstructor<any>> | Iterable<react11.ReactNode> | null | undefined> | react_jsx_runtime7.JSX.Element | null | undefined;
601
- declare function AppResourceProvider({
602
- resource,
603
- children
604
- }: {
605
- resource?: Resource;
606
- children: React.ReactNode;
607
- }): react_jsx_runtime7.JSX.Element;
1073
+ }): react_jsx_runtime4.JSX.Element;
608
1074
  //#endregion
609
1075
  //#region src/AtlasStore/AtlasStoreProvider.d.ts
610
1076
  declare function useAtlasStore(): StoreApi<AtlasStore>;
@@ -627,6 +1093,84 @@ declare function getImageDimensions(url: string): Promise<{
627
1093
  height: number;
628
1094
  } | null>;
629
1095
  //#endregion
1096
+ //#region src/BackgroundTasks/BackgroundActions.d.ts
1097
+ declare function useAvailableBackgroundActions(): BackgroundActionGroup[];
1098
+ declare function BackgroundActionsMount(): react_jsx_runtime4.JSX.Element;
1099
+ declare function BackgroundActionToasts(): null;
1100
+ declare function BackgroundActionsMenu(): react_jsx_runtime4.JSX.Element | null;
1101
+ //#endregion
1102
+ //#region src/BackgroundTasks/BackgroundTasksStore.d.ts
1103
+ interface BackgroundActionsStore {
1104
+ definitions: BackgroundActionDefinition[];
1105
+ instances: Record<string, BackgroundActionInstance>;
1106
+ histories: Record<string, BackgroundActionInstance[]>;
1107
+ plans: Record<string, BackgroundActionPlan>;
1108
+ controllers: Record<string, AbortController>;
1109
+ hasHydrated: boolean;
1110
+ setDefinitions(definitions: BackgroundActionDefinition[]): void;
1111
+ setPersistence(persistence: BackgroundActionPersistence | null, key: BackgroundActionPersistenceKey | null): void;
1112
+ hydrate(snapshot?: BackgroundActionPersistedState | null): void;
1113
+ persist(immediate?: boolean): void;
1114
+ flushPersistence(): Promise<void>;
1115
+ registerAction(definition: BackgroundActionDefinition): () => void;
1116
+ unregisterAction(id: string): void;
1117
+ resetAction(instanceKey: string): void;
1118
+ startAction(instanceKey: string, definition: BackgroundActionDefinition, target: BackgroundActionTarget, controller?: AbortController): void;
1119
+ resumeAction(instanceKey: string, controller: AbortController): void;
1120
+ cancelAction(instanceKey: string): void;
1121
+ setActionLabel(instanceKey: string, label: string): void;
1122
+ setActionStatus(instanceKey: string, status: BackgroundActionStatus, statusText?: string): void;
1123
+ setActionError(instanceKey: string, error: unknown, statusText?: string): void;
1124
+ appendActionLog(instanceKey: string, message: string, level?: BackgroundActionLogLevel, data?: unknown): void;
1125
+ setActionProgress(instanceKey: string, progress: BackgroundActionProgressInput | null): void;
1126
+ setResult(instanceKey: string, result: unknown): void;
1127
+ setResultsAvailable(instanceKey: string, available: boolean): void;
1128
+ setActionPlan(instanceKey: string, plan: BackgroundActionPlan): void;
1129
+ updateActionTask(instanceKey: string, taskId: string, patch: Partial<BackgroundActionTask>, persistImmediately?: boolean): void;
1130
+ }
1131
+ interface RunBackgroundActionOptions {
1132
+ store: StoreApi<BackgroundActionsStore>;
1133
+ context: BackgroundActionContext;
1134
+ signal?: AbortSignal;
1135
+ resume?: boolean;
1136
+ prepareData?: unknown;
1137
+ }
1138
+ interface GetAvailableBackgroundActionGroupsOptions {
1139
+ definitions: BackgroundActionDefinition[];
1140
+ instances: Record<string, BackgroundActionInstance>;
1141
+ systemContext: BackgroundActionSystemContext;
1142
+ targets: BackgroundActionTarget[];
1143
+ onSupportsError?: (definition: BackgroundActionDefinition, error: unknown) => void;
1144
+ }
1145
+ declare function getBackgroundActionInstanceKey(actionId: string, target: BackgroundActionTarget): string;
1146
+ declare function mergeBackgroundActionDefinitions(base?: BackgroundActionDefinition[], extensions?: BackgroundActionDefinition[]): BackgroundActionDefinition[];
1147
+ declare function sortBackgroundActionDefinitions(definitions: BackgroundActionDefinition[]): BackgroundActionDefinition[];
1148
+ declare function normaliseBackgroundActionError(error: unknown): BackgroundActionError;
1149
+ declare function getAvailableBackgroundActionGroups({
1150
+ definitions,
1151
+ instances,
1152
+ systemContext,
1153
+ targets,
1154
+ onSupportsError
1155
+ }: GetAvailableBackgroundActionGroupsOptions): BackgroundActionGroup[];
1156
+ declare function createBackgroundActionsStore(initialDefinitions?: BackgroundActionDefinition[]): StoreApi<BackgroundActionsStore>;
1157
+ declare function runBackgroundAction(options: RunBackgroundActionOptions): Promise<BackgroundActionInstance | undefined>;
1158
+ declare function createLocalForageBackgroundActionPersistence(): BackgroundActionPersistence | null;
1159
+ declare const BackgroundActionsReactContext: react4.Context<StoreApi<BackgroundActionsStore> | null>;
1160
+ declare function BackgroundActionsProvider({
1161
+ children,
1162
+ persistence,
1163
+ persistenceKey
1164
+ }: {
1165
+ children: ReactNode;
1166
+ persistence?: BackgroundActionPersistence | false | null;
1167
+ persistenceKey?: BackgroundActionPersistenceKey;
1168
+ }): react4.FunctionComponentElement<react4.ProviderProps<StoreApi<BackgroundActionsStore> | null>>;
1169
+ declare function useBackgroundActionsStoreApi(): StoreApi<BackgroundActionsStore>;
1170
+ declare function useBackgroundActionsStore<T$1 = BackgroundActionsStore>(selector?: (state: BackgroundActionsStore) => T$1): T$1;
1171
+ declare function useBackgroundActionInstance(instanceKey: string): BackgroundActionInstance | undefined;
1172
+ declare function useBackgroundActionHistory(instanceKey: string): BackgroundActionInstance[];
1173
+ //#endregion
630
1174
  //#region src/BaseCreator/index.d.ts
631
1175
  declare const baseCreator: LayoutPanel;
632
1176
  //#endregion
@@ -635,7 +1179,7 @@ interface BaseAnnotationCreatorProps {
635
1179
  resource: CreatableResource;
636
1180
  onCreate: () => void;
637
1181
  }
638
- declare function BaseAnnotationCreator(props: BaseAnnotationCreatorProps): react_jsx_runtime7.JSX.Element;
1182
+ declare function BaseAnnotationCreator(props: BaseAnnotationCreatorProps): react_jsx_runtime4.JSX.Element;
639
1183
  //#endregion
640
1184
  //#region src/BaseCreator/BaseCreator.hooks.d.ts
641
1185
  declare function useCreator(parent: any, property: string, type: string, target?: Reference, options?: {
@@ -658,7 +1202,7 @@ declare function CreatorInitialData<T$1 extends Record<string, unknown>>(props:
658
1202
  id: string;
659
1203
  children: React.ReactNode;
660
1204
  data: T$1;
661
- }): react_jsx_runtime7.JSX.Element;
1205
+ }): react_jsx_runtime4.JSX.Element;
662
1206
  //#endregion
663
1207
  //#region src/BaseEditor/index.d.ts
664
1208
  declare const baseEditor: LayoutPanel;
@@ -680,10 +1224,10 @@ declare function BaseEditor({
680
1224
  currentTab
681
1225
  }: {
682
1226
  currentTab?: string;
683
- }): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react11.ReactPortal | react11.ReactElement<unknown, string | react11.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime7.JSX.Element | null | undefined;
1227
+ }): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | react4.ReactPortal | react4.ReactElement<unknown, string | react4.JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | react_jsx_runtime4.JSX.Element | null | undefined;
684
1228
  //#endregion
685
1229
  //#region src/ConfigContext/ConfigEditor.d.ts
686
- declare function ConfigEditor(): react_jsx_runtime7.JSX.Element;
1230
+ declare function ConfigEditor(): react_jsx_runtime4.JSX.Element;
687
1231
  //#endregion
688
1232
  //#region src/ContextMenu/ContextMenuContext.d.ts
689
1233
  type ContextMenuItem = {
@@ -732,12 +1276,12 @@ type ContextMenuStore = {
732
1276
  }>;
733
1277
  hookMenuItem(req: ContextMenuRequest): () => void;
734
1278
  };
735
- declare const ContextMenuReactContext: react11.Context<StoreApi<ContextMenuStore> | null>;
1279
+ declare const ContextMenuReactContext: react4.Context<StoreApi<ContextMenuStore> | null>;
736
1280
  declare function ContextMenuProvider({
737
1281
  children
738
1282
  }: {
739
1283
  children: React.ReactNode;
740
- }): react_jsx_runtime7.JSX.Element;
1284
+ }): react_jsx_runtime4.JSX.Element;
741
1285
  declare function useResourceContextMenuItems(req: {
742
1286
  id?: string;
743
1287
  type: string;
@@ -748,7 +1292,7 @@ declare function useResourceContextMenuItems(req: {
748
1292
  declare function useCustomContextMenu(req: ContextMenuRequest, deps?: any[]): void;
749
1293
  //#endregion
750
1294
  //#region src/EditingStack/EditingStack.d.ts
751
- declare const EditingStackContext: react11.Context<EditingStackState>;
1295
+ declare const EditingStackContext: react4.Context<EditingStackState>;
752
1296
  declare function useEditingStack(): EditingStackActions;
753
1297
  declare function useEditingResource(): EditableResource | null;
754
1298
  declare function useEditingResourceStack(): EditableResource[];
@@ -773,7 +1317,7 @@ declare function EditingStack(props: {
773
1317
  id: string;
774
1318
  type: string;
775
1319
  };
776
- }): react_jsx_runtime7.JSX.Element;
1320
+ }): react_jsx_runtime4.JSX.Element;
777
1321
  declare function InlineEditingStack({
778
1322
  resource,
779
1323
  children
@@ -783,14 +1327,14 @@ declare function InlineEditingStack({
783
1327
  type: string;
784
1328
  };
785
1329
  children?: React.ReactNode;
786
- }): react_jsx_runtime7.JSX.Element;
1330
+ }): react_jsx_runtime4.JSX.Element;
787
1331
  //#endregion
788
1332
  //#region src/ExportPanel/ExportPanel.d.ts
789
1333
  interface ExportPanelProps {
790
1334
  initialVersion?: 2 | 3;
791
1335
  versions?: Array<2 | 3>;
792
1336
  }
793
- declare function ExportPanel(props: ExportPanelProps): react_jsx_runtime7.JSX.Element;
1337
+ declare function ExportPanel(props: ExportPanelProps): react_jsx_runtime4.JSX.Element;
794
1338
  //#endregion
795
1339
  //#region src/helpers.d.ts
796
1340
  declare function getManifestNomalized(id: string): Promise<ManifestNormalized | undefined>;
@@ -843,14 +1387,14 @@ declare function useDecayState(time: number): readonly [boolean, {
843
1387
  }];
844
1388
  //#endregion
845
1389
  //#region src/hooks/use-event.d.ts
846
- declare const ReactEmitterContext: react11.Context<Emitter<any>>;
1390
+ declare const ReactEmitterContext: react4.Context<Emitter<any>>;
847
1391
  declare function EventEmitterProvider({
848
1392
  children,
849
1393
  emitter
850
1394
  }: {
851
1395
  children: React.ReactNode;
852
1396
  emitter: Emitter<any>;
853
- }): react_jsx_runtime7.JSX.Element;
1397
+ }): react_jsx_runtime4.JSX.Element;
854
1398
  declare function useEmitter<Event extends Record<string | symbol, unknown>>(): Emitter<Event>;
855
1399
  declare function useEvent<Event extends Record<string | symbol, unknown>, Key extends keyof Event>(key: Key, listener: (data: Event[Key]) => void, deps?: any[]): void;
856
1400
  //#endregion
@@ -905,14 +1449,14 @@ declare function useSvgTools(): {
905
1449
  };
906
1450
  //#endregion
907
1451
  //#region src/Layout/components/HandleControls.d.ts
908
- declare const HandleContainer: styled_components0.IStyledComponent<"web", styled_components_dist_types0.FastOmit<react11.DetailedHTMLProps<react11.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
909
- declare const HandleControls: react11.ForwardRefExoticComponent<{
1452
+ declare const HandleContainer: styled_components0.IStyledComponent<"web", styled_components_dist_types0.FastOmit<react4.DetailedHTMLProps<react4.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
1453
+ declare const HandleControls: react4.ForwardRefExoticComponent<{
910
1454
  dir: "left" | "right";
911
1455
  open: boolean;
912
1456
  actions: PanelActions;
913
1457
  transition?: TransitionStatus;
914
1458
  reset?: () => void;
915
- } & react11.RefAttributes<HTMLDivElement>>;
1459
+ } & react4.RefAttributes<HTMLDivElement>>;
916
1460
  //#endregion
917
1461
  //#region src/Layout/components/ModularPanel.d.ts
918
1462
  interface ModularPanelProps {
@@ -928,11 +1472,11 @@ interface ModularPanelProps {
928
1472
  style?: any;
929
1473
  }
930
1474
  declare function useSetCustomTitle(): (title: string) => void;
931
- declare const ModularPanelHeader: styled_components0.IStyledComponent<"web", styled_components_dist_types0.Substitute<react11.DetailedHTMLProps<react11.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
1475
+ declare const ModularPanelHeader: styled_components0.IStyledComponent<"web", styled_components_dist_types0.Substitute<react4.DetailedHTMLProps<react4.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
932
1476
  $tabs?: boolean;
933
1477
  $error?: boolean;
934
1478
  }>>;
935
- declare const ModulePanelButton: styled_components0.IStyledComponent<"web", styled_components_dist_types0.FastOmit<react11.DetailedHTMLProps<react11.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>>;
1479
+ declare const ModulePanelButton: styled_components0.IStyledComponent<"web", styled_components_dist_types0.FastOmit<react4.DetailedHTMLProps<react4.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, never>>;
936
1480
  declare function ModularPanel({
937
1481
  panel,
938
1482
  state,
@@ -944,16 +1488,16 @@ declare function ModularPanel({
944
1488
  available,
945
1489
  style,
946
1490
  noHeader
947
- }: ModularPanelProps): react_jsx_runtime7.JSX.Element | null;
1491
+ }: ModularPanelProps): react_jsx_runtime4.JSX.Element | null;
948
1492
  //#endregion
949
1493
  //#region src/Layout/components/PanelError.d.ts
950
1494
  declare function PanelError(props: {
951
1495
  error: Error;
952
1496
  resetErrorBoundary: () => void;
953
- }): react_jsx_runtime7.JSX.Element;
1497
+ }): react_jsx_runtime4.JSX.Element;
954
1498
  //#endregion
955
1499
  //#region src/Layout/Layout.d.ts
956
- interface LayoutProps$1 {
1500
+ interface LayoutRenderProps {
957
1501
  header?: React.ReactNode;
958
1502
  footer?: React.ReactNode;
959
1503
  menu?: React.ReactNode;
@@ -968,14 +1512,17 @@ interface LayoutProps$1 {
968
1512
  htmlId?: string;
969
1513
  centerPanelMenuPosition?: "top" | "bottom";
970
1514
  disableSideEffects?: string[];
1515
+ layoutMode?: "default" | "focused";
971
1516
  }
972
- declare const Layout: react11.NamedExoticComponent<LayoutProps$1>;
1517
+ declare const Layout: react4.NamedExoticComponent<LayoutRenderProps>;
973
1518
  //#endregion
974
1519
  //#region src/Layout/Layout.context.d.ts
975
- declare const LayoutActionsReactContext: react11.Context<LayoutActions>;
976
- declare const LayoutStateReactContext: react11.Context<LayoutState>;
1520
+ declare const LayoutActionsReactContext: react4.Context<LayoutActions>;
1521
+ declare const LayoutStateReactContext: react4.Context<LayoutState>;
1522
+ declare const LayoutModeReactContext: react4.Context<"default" | "focused">;
977
1523
  declare function useLayoutState(): LayoutState;
978
1524
  declare function useLayoutActions(): LayoutActions;
1525
+ declare function useLayoutMode(): "default" | "focused";
979
1526
  declare function useAvailableLayouts(): LayoutProps;
980
1527
  declare function useLayoutProvider(): LayoutProviderProps & {
981
1528
  loading?: true;
@@ -1007,6 +1554,125 @@ declare const layoutReducer: (state: LayoutState, args_0: PanelActionType) => La
1007
1554
  declare function getDefaultPanelState(): PanelState;
1008
1555
  declare function getDefaultLayoutState(): LayoutState;
1009
1556
  //#endregion
1557
+ //#region src/Layout/Layout.supports.d.ts
1558
+ declare function filterSupportedPanels(panels: LayoutPanel[], ctx: LayoutPanelSupportContext, onSupportsError?: (panel: LayoutPanel, error: unknown) => void): LayoutPanel[];
1559
+ declare function getSupportedPanelFallback(panels: LayoutPanel[], currentId: string | null): string | null;
1560
+ declare function panelIds(panels: LayoutPanel[]): string;
1561
+ //#endregion
1562
+ //#region src/ManifestPaginationNavigation.d.ts
1563
+ interface ManifestPaginationNavigationProps {
1564
+ className?: string;
1565
+ variant?: "light" | "dark";
1566
+ }
1567
+ declare function ManifestPaginationNavigation({
1568
+ className,
1569
+ variant
1570
+ }: ManifestPaginationNavigationProps): react_jsx_runtime4.JSX.Element;
1571
+ //#endregion
1572
+ //#region src/PluginContext/PluginContext.d.ts
1573
+ declare const PluginReactContext: react4.Context<StoreApi<PluginStore> | null>;
1574
+ declare const PluginGlobalConfigReactContext: react4.Context<{
1575
+ globalPluginConfig?: Config["plugins"];
1576
+ saveGlobalPluginConfig?: (config: Config["plugins"]) => void | Promise<void>;
1577
+ }>;
1578
+ declare function PluginProvider({
1579
+ plugins,
1580
+ enabled,
1581
+ disabled,
1582
+ globalPluginConfig,
1583
+ saveGlobalPluginConfig,
1584
+ children
1585
+ }: {
1586
+ plugins: PluginInput[];
1587
+ enabled?: string[];
1588
+ disabled?: string[];
1589
+ globalPluginConfig?: Config["plugins"];
1590
+ saveGlobalPluginConfig?: (config: Config["plugins"]) => void | Promise<void>;
1591
+ children: ReactNode;
1592
+ }): ReactElement;
1593
+ declare function useOptionalPluginStoreApi(): StoreApi<PluginStore> | null;
1594
+ declare function usePluginStoreApi(): StoreApi<PluginStore>;
1595
+ declare function usePlugins(): PluginStoreSnapshot;
1596
+ declare function useEnabledPlugins(appId?: string): MappedPlugin[];
1597
+ declare function usePluginActions(): {
1598
+ enable(appId: string, id: string, scope?: PluginConfigScope): void;
1599
+ disable(appId: string, id: string, scope?: PluginConfigScope): void;
1600
+ setAppConfig(appId: string, config: PluginAppConfig): void;
1601
+ setGlobalAppConfig(appId: string, config: PluginAppConfig): void;
1602
+ };
1603
+ declare function usePluginRuntimeApi(appId?: string): PluginRuntimeApi;
1604
+ declare function usePluginSettings<T$1 extends PluginSettingsValue = PluginSettingsValue>(pluginId: string, appId?: string): T$1;
1605
+ declare function usePluginConfigApi<T$1 extends PluginSettingsValue = PluginSettingsValue>(pluginId: string, appId?: string): {
1606
+ plugin: MappedPlugin | null;
1607
+ appId: string;
1608
+ defaults: T$1;
1609
+ global: T$1;
1610
+ workspace: T$1;
1611
+ effective: T$1;
1612
+ canSaveGlobal: boolean;
1613
+ setWorkspaceSettings: (settings: T$1) => void;
1614
+ resetWorkspaceSettings: () => void;
1615
+ setGlobalSettings: (settings: T$1) => Promise<void>;
1616
+ resetGlobalSettings: () => Promise<void>;
1617
+ };
1618
+ declare function useResolvedPluginApp(definition: MappedApp, appId: string): MappedApp;
1619
+ declare function PluginConfigBridge({
1620
+ config
1621
+ }: {
1622
+ config?: Partial<Config>;
1623
+ }): null;
1624
+ //#endregion
1625
+ //#region src/PluginContext/PluginContext.helpers.d.ts
1626
+ declare function getEmptyPluginState(): PluginStoreSnapshot;
1627
+ declare function normalisePluginAppConfig(config?: PluginAppConfig): PluginAppConfig;
1628
+ declare function normalisePluginAppsConfig(config?: {
1629
+ apps?: Record<string, PluginAppConfig>;
1630
+ }): Record<string, PluginAppConfig>;
1631
+ declare function enablePluginInConfig(config: PluginAppConfig | undefined, id: string): PluginAppConfig;
1632
+ declare function disablePluginInConfig(config: PluginAppConfig | undefined, id: string): PluginAppConfig;
1633
+ declare function resetPluginInConfig(config: PluginAppConfig | undefined, id: string): PluginAppConfig;
1634
+ declare function pluginAppConfigEquals(a?: PluginAppConfig, b?: PluginAppConfig): boolean;
1635
+ declare function mapPlugin(input: PluginModule, map?: (plugin: MappedPlugin) => MappedPlugin): MappedPlugin;
1636
+ declare function mapLazyPlugin(input: LazyPluginModule): MappedPlugin;
1637
+ declare function isMappedPlugin(input: PluginInput): input is MappedPlugin;
1638
+ declare function isLazyPlugin(input: PluginInput): input is LazyPluginModule;
1639
+ declare function normalisePlugin(input: PluginInput): MappedPlugin;
1640
+ declare function normalisePlugins(plugins?: PluginInput[]): MappedPlugin[];
1641
+ declare function mergeProviderPlugins(previous: MappedPlugin[], next: MappedPlugin[]): MappedPlugin[];
1642
+ declare function isPluginCompatible(plugin: MappedPlugin, app?: PluginHostApp | null, appId?: string | null): boolean;
1643
+ declare function getPluginCompatibilityReason(plugin: MappedPlugin, app?: PluginHostApp | null, appId?: string | null): "This plugin does not support the current app." | "This plugin does not support the current project type." | null;
1644
+ declare function isPluginSelected(plugin: MappedPlugin, state: PluginStoreSnapshot, appId?: string | null): boolean;
1645
+ declare function getPluginSelectionSource(plugin: MappedPlugin, state: PluginStoreSnapshot, appId?: string | null): PluginConfigScope | "provider" | "default";
1646
+ declare function getEnabledPluginsForApp(state: PluginStoreSnapshot, app?: PluginHostApp | null, appId?: string | null): MappedPlugin[];
1647
+ declare function getPluginSettingsFromConfig<T$1 extends PluginSettingsValue = PluginSettingsValue>(config: PluginAppConfig | undefined, pluginId: string): Partial<T$1>;
1648
+ declare function setPluginSettingsInConfig<T$1 extends PluginSettingsValue = PluginSettingsValue>(config: PluginAppConfig | undefined, pluginId: string, settings: T$1): PluginAppConfig;
1649
+ declare function resetPluginSettingsInConfig(config: PluginAppConfig | undefined, pluginId: string): PluginAppConfig;
1650
+ declare function getPluginDefaultSettings<T$1 extends PluginSettingsValue = PluginSettingsValue>(plugin?: MappedPlugin): T$1;
1651
+ declare function getEffectivePluginSettings<T$1 extends PluginSettingsValue = PluginSettingsValue>(state: PluginStoreSnapshot, pluginId: string, appId?: string | null): T$1;
1652
+ declare function createPluginRuntimeApi(state: PluginStoreSnapshot, appId?: string | null): PluginRuntimeApi;
1653
+ declare function enablePluginAndDependenciesInConfig(config: PluginAppConfig, state: PluginStoreSnapshot, plugin: MappedPlugin, app?: PluginHostApp | null, appId?: string | null): {
1654
+ config: PluginAppConfig;
1655
+ enabledIds: string[];
1656
+ blocked: string[];
1657
+ };
1658
+ declare function applyPlugins(app: MappedApp, plugins: MappedPlugin[], appId?: string): MappedApp;
1659
+ //#endregion
1660
+ //#region src/PluginContext/PluginContext.store.d.ts
1661
+ declare function createPluginStore({
1662
+ plugins,
1663
+ enabled,
1664
+ disabled,
1665
+ globalPluginConfig
1666
+ }?: {
1667
+ plugins?: MappedPlugin[];
1668
+ enabled?: string[];
1669
+ disabled?: string[];
1670
+ globalPluginConfig?: Config["plugins"];
1671
+ }): zustand0.StoreApi<PluginStore>;
1672
+ //#endregion
1673
+ //#region src/PluginContext/PluginManager.d.ts
1674
+ declare function PluginManager(): react_jsx_runtime4.JSX.Element | null;
1675
+ //#endregion
1010
1676
  //#region src/PreviewButton/PreviewButton.d.ts
1011
1677
  declare function PreviewButton({
1012
1678
  downloadEnabled,
@@ -1014,10 +1680,10 @@ declare function PreviewButton({
1014
1680
  }: {
1015
1681
  downloadEnabled?: boolean;
1016
1682
  fileName?: string;
1017
- }): react_jsx_runtime7.JSX.Element;
1683
+ }): react_jsx_runtime4.JSX.Element;
1018
1684
  //#endregion
1019
1685
  //#region src/PreviewContext/PreviewContext.d.ts
1020
- declare const PreviewProvider: react11.NamedExoticComponent<{
1686
+ declare const PreviewProvider: react4.NamedExoticComponent<{
1021
1687
  previews: Preview[];
1022
1688
  children: ReactNode;
1023
1689
  configs: PreviewConfiguration[];
@@ -1033,6 +1699,18 @@ declare function createPreviewVault(homepageCollectionId?: string): {
1033
1699
  readonly clearHistory: () => void;
1034
1700
  };
1035
1701
  //#endregion
1702
+ //#region src/PreviewVault/vault-message-bridge.d.ts
1703
+ type BridgeTarget = {
1704
+ port: MessagePort;
1705
+ lastActionId: string;
1706
+ };
1707
+ type VaultBridgeRegistry = {
1708
+ originalDispatch: Vault["dispatch"];
1709
+ patchedDispatch: Vault["dispatch"];
1710
+ targets: Set<BridgeTarget>;
1711
+ };
1712
+ declare function createIframeVaultBridge(vault: Vault, port: MessagePort): () => void;
1713
+ //#endregion
1036
1714
  //#region src/PreviewVault/PreviewVault.d.ts
1037
1715
  declare function usePreviewVault(): Vault;
1038
1716
  declare const HOMEPAGE_COLLECTION = "manifest-editor://homepage-collection.json";
@@ -1042,18 +1720,18 @@ declare function usePreviewHistory(): {
1042
1720
  };
1043
1721
  declare function PreviewVaultContext(props: {
1044
1722
  children: any;
1045
- }): react_jsx_runtime7.JSX.Element;
1723
+ }): react_jsx_runtime4.JSX.Element;
1046
1724
  declare function PreviewVaultBoundary({
1047
1725
  children
1048
1726
  }: {
1049
1727
  children: any;
1050
- }): react_jsx_runtime7.JSX.Element;
1728
+ }): react_jsx_runtime4.JSX.Element;
1051
1729
  //#endregion
1052
1730
  //#region src/ResourceEditingContext/ResourceEditingContext.d.ts
1053
1731
  interface ResourceEditingContext {
1054
1732
  resource: Reference<any> | null;
1055
1733
  }
1056
- declare const ResourceEditingReactContext: react11.Context<ResourceEditingContext>;
1734
+ declare const ResourceEditingReactContext: react4.Context<ResourceEditingContext>;
1057
1735
  declare function useEditingContext(): ResourceEditingContext;
1058
1736
  /**
1059
1737
  * useResource
@@ -1079,7 +1757,7 @@ declare function ResourceEditingProvider({
1079
1757
  type: string;
1080
1758
  } | null | undefined;
1081
1759
  children: ReactNode;
1082
- }): react_jsx_runtime7.JSX.Element;
1760
+ }): react_jsx_runtime4.JSX.Element;
1083
1761
  //#endregion
1084
1762
  //#region src/ShellContext/ShellContext.d.ts
1085
1763
  declare function ShellProvider({
@@ -1089,7 +1767,8 @@ declare function ShellProvider({
1089
1767
  theme,
1090
1768
  previews,
1091
1769
  resource,
1092
- editing
1770
+ editing,
1771
+ backgroundActionPersistence
1093
1772
  }: {
1094
1773
  resource: Resource;
1095
1774
  config?: Partial<Config>;
@@ -1101,7 +1780,156 @@ declare function ShellProvider({
1101
1780
  id: string;
1102
1781
  type: string;
1103
1782
  };
1104
- }): react_jsx_runtime7.JSX.Element;
1783
+ backgroundActionPersistence?: BackgroundActionPersistence | false | null;
1784
+ }): react_jsx_runtime4.JSX.Element;
1785
+ //#endregion
1786
+ //#region src/SpecificationContext/SpecificationContext.types.d.ts
1787
+ type SpecificationEntityType = "Collection" | "Manifest" | "Canvas" | "Range" | "AnnotationPage" | "Annotation" | "ContentResource" | "Agent";
1788
+ type SpecificationPropertyPath = string[];
1789
+ type SpecificationJsonValue = null | string | number | boolean | SpecificationJsonValue[] | {
1790
+ [key: string]: SpecificationJsonValue;
1791
+ };
1792
+ type SpecificationTextValue = string | {
1793
+ [language: string]: string[];
1794
+ };
1795
+ type SpecificationRuleBase = {
1796
+ id?: string;
1797
+ label?: string;
1798
+ description?: string;
1799
+ message?: string;
1800
+ };
1801
+ type SpecificationPropertyRuleBase = SpecificationRuleBase & {
1802
+ entityType: SpecificationEntityType;
1803
+ path: SpecificationPropertyPath;
1804
+ };
1805
+ type DisallowPropertySpecificationRule = SpecificationPropertyRuleBase & {
1806
+ type: "disallow-property";
1807
+ };
1808
+ type RequireNonEmptySpecificationRule = SpecificationPropertyRuleBase & {
1809
+ type: "require-non-empty";
1810
+ };
1811
+ type FixedValueSpecificationRule = SpecificationPropertyRuleBase & {
1812
+ type: "fixed-value";
1813
+ value: SpecificationJsonValue;
1814
+ };
1815
+ type CanvasWithImageServiceSpecificationRule = SpecificationRuleBase & {
1816
+ type: "iiif:canvas-with-image-service";
1817
+ serviceId?: string;
1818
+ serviceIds?: string[];
1819
+ };
1820
+ type ThumbnailFromBodyServiceSpecificationRule = SpecificationRuleBase & {
1821
+ type: "iiif:thumbnail-from-body-service";
1822
+ entityType?: "Manifest" | "Canvas";
1823
+ requireThumbnail?: boolean;
1824
+ };
1825
+ type ValidRightsSpecificationRule = SpecificationRuleBase & {
1826
+ type: "iiif:valid-rights";
1827
+ entityType?: SpecificationEntityType;
1828
+ allowed: string[];
1829
+ required?: boolean;
1830
+ };
1831
+ type RequiredStatementSpecificationRule = SpecificationRuleBase & {
1832
+ type: "iiif:required-statement";
1833
+ entityType?: SpecificationEntityType;
1834
+ label?: SpecificationTextValue;
1835
+ value?: SpecificationTextValue;
1836
+ valueRequired?: boolean;
1837
+ };
1838
+ type MetadataTemplateSpecificationRule = SpecificationRuleBase & {
1839
+ type: "iiif:metadata-template";
1840
+ entityType?: SpecificationEntityType;
1841
+ items: Array<{
1842
+ label: SpecificationTextValue;
1843
+ value?: SpecificationTextValue;
1844
+ valueRequired?: boolean;
1845
+ }>;
1846
+ };
1847
+ type SpecificationRule = DisallowPropertySpecificationRule | RequireNonEmptySpecificationRule | FixedValueSpecificationRule | CanvasWithImageServiceSpecificationRule | ThumbnailFromBodyServiceSpecificationRule | ValidRightsSpecificationRule | RequiredStatementSpecificationRule | MetadataTemplateSpecificationRule;
1848
+ type ManifestEditorSpecification = {
1849
+ id: string;
1850
+ label: string;
1851
+ description?: string;
1852
+ version?: string;
1853
+ terminology?: {
1854
+ entities?: Partial<Record<SpecificationEntityType, string>>;
1855
+ properties?: Array<{
1856
+ entityType?: SpecificationEntityType;
1857
+ path: SpecificationPropertyPath;
1858
+ label: string;
1859
+ }>;
1860
+ };
1861
+ rules: SpecificationRule[];
1862
+ };
1863
+ type SpecificationReportStatus = "satisfied" | "missing" | "invalid" | "disallowed" | "not-applicable";
1864
+ type SpecificationEditorTarget = {
1865
+ resource: Reference;
1866
+ propertyPath?: SpecificationPropertyPath;
1867
+ selectedTab?: string;
1868
+ };
1869
+ type SpecificationReportItem = {
1870
+ id: string;
1871
+ specificationId: string;
1872
+ specificationLabel: string;
1873
+ ruleId: string;
1874
+ ruleType: SpecificationRule["type"];
1875
+ ruleLabel: string;
1876
+ ruleIndex: number;
1877
+ target?: Reference;
1878
+ path?: SpecificationPropertyPath;
1879
+ status: SpecificationReportStatus;
1880
+ displayLabel: string;
1881
+ message: string;
1882
+ expected?: SpecificationJsonValue | SpecificationTextValue | string[];
1883
+ actual?: unknown;
1884
+ editorTarget?: SpecificationEditorTarget;
1885
+ };
1886
+ type SpecificationReport = {
1887
+ specifications: ManifestEditorSpecification[];
1888
+ results: SpecificationReportItem[];
1889
+ counts: Record<SpecificationReportStatus, number>;
1890
+ };
1891
+ type SpecificationPropertyPolicy = {
1892
+ entityType?: SpecificationEntityType;
1893
+ path: SpecificationPropertyPath;
1894
+ label?: string;
1895
+ disallowed: boolean;
1896
+ required: boolean;
1897
+ fixedValue?: SpecificationJsonValue;
1898
+ fixedValueRule?: FixedValueSpecificationRule;
1899
+ rules: SpecificationRule[];
1900
+ };
1901
+ //#endregion
1902
+ //#region src/SpecificationContext/SpecificationContext.d.ts
1903
+ declare function SpecificationProvider({
1904
+ children,
1905
+ specifications
1906
+ }: {
1907
+ children: ReactNode;
1908
+ specifications?: ManifestEditorSpecification[];
1909
+ }): react_jsx_runtime4.JSX.Element;
1910
+ declare function useSpecifications(): ManifestEditorSpecification[];
1911
+ declare function useSpecificationReport(rootRef?: Reference): SpecificationReport;
1912
+ declare function useSpecificationTerminology(): {
1913
+ getLabel(entityType: string | undefined, path: SpecificationPropertyPath | string | undefined, fallback?: string): string;
1914
+ };
1915
+ declare function useSpecificationPropertyPolicy(resourceRef: Reference | null | undefined, propertyPath: SpecificationPropertyPath | string): SpecificationPropertyPolicy;
1916
+ //#endregion
1917
+ //#region src/SpecificationContext/SpecificationContext.helpers.d.ts
1918
+ type CollectedResource = {
1919
+ ref: Reference;
1920
+ resource: any;
1921
+ };
1922
+ declare function normaliseSpecificationPath(path: SpecificationPropertyPath | string | undefined): SpecificationPropertyPath;
1923
+ declare function specificationPathEquals(a: SpecificationPropertyPath | string | undefined, b: SpecificationPropertyPath | string | undefined): boolean;
1924
+ declare function getValueAtPath(resource: any, path: SpecificationPropertyPath | string | undefined): unknown;
1925
+ declare function setValueAtPath(resource: any, path: SpecificationPropertyPath | string, value: unknown): any;
1926
+ declare function hasMeaningfulValue(value: unknown): boolean;
1927
+ declare function normaliseJsonValue(value: unknown): unknown;
1928
+ declare function specificationJsonEquals(a: unknown, b: unknown): boolean;
1929
+ declare function getTerminologyLabel(specifications: ManifestEditorSpecification[] | undefined, entityType: SpecificationEntityType | string | undefined, path: SpecificationPropertyPath | string | undefined, fallback?: string): string;
1930
+ declare function getPropertyPolicy(specifications: ManifestEditorSpecification[] | undefined, resource: Reference | null | undefined, path: SpecificationPropertyPath | string): SpecificationPropertyPolicy;
1931
+ declare function evaluateSpecifications(specifications: ManifestEditorSpecification[] | undefined, vault: Vault, rootRef: Reference): SpecificationReport;
1932
+ declare function collectSpecificationResources(vault: Vault, rootRef: Reference): CollectedResource[];
1105
1933
  //#endregion
1106
1934
  //#region src/TaskBridge/TaskBridge.d.ts
1107
1935
  interface Task<Req = any, Res = any> {
@@ -1124,11 +1952,32 @@ declare function TaskBridge({
1124
1952
  children
1125
1953
  }: {
1126
1954
  children?: ReactNode;
1127
- }): react_jsx_runtime7.JSX.Element;
1955
+ }): react_jsx_runtime4.JSX.Element;
1956
+ //#endregion
1957
+ //#region src/Toast/ToastContext.d.ts
1958
+ type ToastVariant = ToastVariant$1;
1959
+ type ToastContent = ToastContent$1;
1960
+ interface ToastApi {
1961
+ add(content: ToastContent, options?: ToastOptions): string;
1962
+ info(content: ToastContent, options?: ToastOptions): string;
1963
+ success(content: ToastContent, options?: ToastOptions): string;
1964
+ warning(content: ToastContent, options?: ToastOptions): string;
1965
+ error(content: ToastContent, options?: ToastOptions): string;
1966
+ close(key: string): void;
1967
+ }
1968
+ interface ToastProviderProps {
1969
+ children: ReactNode;
1970
+ maxVisibleToasts?: number;
1971
+ }
1972
+ declare function ToastProvider({
1973
+ children,
1974
+ maxVisibleToasts
1975
+ }: ToastProviderProps): react_jsx_runtime4.JSX.Element;
1976
+ declare function useToasts(): ToastApi;
1128
1977
  //#endregion
1129
1978
  //#region src/Universal/UniversalCopyPaste.types.d.ts
1130
1979
  interface UniversalCopyPasteProps<T$1> {
1131
- as?: keyof JSX.IntrinsicElements | react11.ComponentType<T$1>;
1980
+ as?: keyof JSX.IntrinsicElements | react4.ComponentType<T$1>;
1132
1981
  children?: ReactNode;
1133
1982
  reference?: Reference;
1134
1983
  onReference?: (reference: Reference) => void;
@@ -1158,7 +2007,7 @@ declare function UniversalCopyTarget<T$1>({
1158
2007
  onPasteLink: _onPasteLink,
1159
2008
  onPasteAnalysis: _onPasteAnalysis,
1160
2009
  ...props
1161
- }: Partial<HTMLAttributes<HTMLElement>> & UniversalCopyPasteProps<T$1> & T$1): react_jsx_runtime7.JSX.Element;
2010
+ }: Partial<HTMLAttributes<HTMLElement>> & UniversalCopyPasteProps<T$1> & T$1): react_jsx_runtime4.JSX.Element;
1162
2011
  //#endregion
1163
- export { AnnotationPanel, AppContext, AppExtension, AppHeader, AppMenuProvider, AppProvider, AppReactContext, AppResourceInstanceProvider, AppResourceProvider, AppState, AppStateReactContext, AtlasStoreProvider, AtlasStoreReactContext, BackgroundPanel, BaseAnnotationCreator, BaseEditor, BaseEditorBackButton, BaseEditorCloseButton, CanvasEditorDefinition, Config, ConfigEditor, ConfigProvider, ConfigReactContext, ContextMenuItem, ContextMenuProvider, ContextMenuReactContext, ContextMenuRequest, CreatorInitialData, EditableResource, EditingStack, EditingStackActionCreators, EditingStackActions, EditingStackContext, EditingStackState, EditorConfig, EditorDefinition, EventEmitterProvider, ExportPanel, ExportPanelProps, HOMEPAGE_COLLECTION, HandleContainer, HandleControls, InlineEditingStack, Layout, LayoutActions, LayoutActionsReactContext, LayoutContext, LayoutFunction, LayoutPanel, LayoutPanelContext, LayoutProps, LayoutProviderProps, LayoutState, LayoutStateReactContext, LoadedApp, MappedApp, MenuPositions, ModularPanel, ModularPanelHeader, ModulePanelButton, MultiAppContext, MultiAppProvider, PanelActionType, PanelActions, PanelError, PanelState, PinnablePanelActions, PinnablePanelState, PinnedLayoutPanel, Preview, PreviewActions, PreviewActionsType, PreviewButton, PreviewConfiguration, PreviewContext, PreviewHandler, PreviewProvider, PreviewState, PreviewVaultBoundary, PreviewVaultContext, PrimeAppReactContext, ReactEmitterContext, Resource, ResourceDefinition, ResourceEditingProvider, ResourceEditingReactContext, SaveConfigReactContext, ShellProvider, TaskBridge, UniversalCopyPasteProps, UniversalCopyTarget, UploadBackendConfig, analyse, analyseJson, baseCreator, baseEditor, copyToClipboard, createActionIdentity, createDownload, createPreviewVault, detectMedia, editBasedOnResource, extendApp, getDefaultLayoutState, getDefaultPanelState, getFormat, getImageDimensions, getManifestNomalized, isPinnableState, layoutReducer, mapApp, panelSizing, polygonToBoundingBox, randomId, renderHelper, useAnnotationCreatorState, useAnnotationPageEditor, useApp, useAppInstance, useAppMenu, useAppMenuItem, useAppResource, useAppResourceInstance, useAppState, useApps, useAtlasStore, useAvailableLayouts, useCollectionEditor, useConfig, useCreatingResource, useCreator, useCustomContextMenu, useDecayState, useEditingContext, useEditingResource, useEditingResourceStack, useEditingStack, useEditor, useEmitter, useEvent, useGenericEditor, useHighlightedImageResource, useHoverHighlightImageResource, useInitialData, useInlineCreator, useLayoutActions, useLayoutProvider, useLayoutState, useLocalStorage, useManifestEditor, useMatchMedia, useOptionalLocalStorage, useOptionalResource, usePanelActions, usePreviewContext, usePreviewHistory, usePreviewVault, usePreviews, useResource, useResourceContextMenuItems, useSaveConfig, useSaveVault, useSetCustomTitle, useSvgTools, useTask, useTaskDispatch, useTaskEvent, useTaskRunner, useTemporaryHighlight };
2012
+ export { AnnotationPanel, AppContext, AppExtension, AppHeader, AppMenuProvider, AppProvider, AppReactContext, AppResourceInstanceProvider, AppResourceProvider, AppState, AppStateReactContext, AtlasStoreProvider, AtlasStoreReactContext, AvailableBackgroundAction, BackgroundActionContext, BackgroundActionDefinition, BackgroundActionError, BackgroundActionEvent, BackgroundActionEventType, BackgroundActionGroup, BackgroundActionInstance, BackgroundActionLifecycle, BackgroundActionLogEntry, BackgroundActionLogLevel, BackgroundActionPersistedState, BackgroundActionPersistence, BackgroundActionPersistenceKey, BackgroundActionPlan, BackgroundActionProgress, BackgroundActionProgressInput, BackgroundActionRenderContext, BackgroundActionRunContext, BackgroundActionStatus, BackgroundActionSystemContext, BackgroundActionTarget, BackgroundActionTask, BackgroundActionTaskRunOptions, BackgroundActionTaskRunResult, BackgroundActionTaskStatus, BackgroundActionTasksApi, BackgroundActionToasts, BackgroundActionsMenu, BackgroundActionsMount, BackgroundActionsProvider, BackgroundActionsReactContext, BackgroundActionsStore, BackgroundPanel, BaseAnnotationCreator, BaseEditor, BaseEditorBackButton, BaseEditorCloseButton, CANVAS_PROGRESS_META_NAMESPACE, CANVAS_PROGRESS_STATUS_META_KEY, CanvasEditorDefinition, CanvasProgressActiveStatus, CanvasProgressResource, CanvasProgressStatus, CanvasProgressStatusInput, CanvasWithImageServiceSpecificationRule, Config, ConfigEditor, ConfigProvider, ConfigReactContext, ContextMenuItem, ContextMenuProvider, ContextMenuReactContext, ContextMenuRequest, CreatorInitialData, DisallowPropertySpecificationRule, EditableResource, EditingStack, EditingStackActionCreators, EditingStackActions, EditingStackContext, EditingStackState, EditorConfig, EditorDefinition, EventEmitterProvider, ExportPanel, ExportPanelProps, FLAG_TAG, FixedValueSpecificationRule, GetAvailableBackgroundActionGroupsOptions, HOMEPAGE_COLLECTION, HandleContainer, HandleControls, InlineEditingStack, Layout, LayoutActions, LayoutActionsReactContext, LayoutContext, LayoutFunction, LayoutModeReactContext, LayoutPanel, LayoutPanelContext, LayoutPanelFocusedModeContext, LayoutPanelSupportContext, LayoutProps, LayoutProviderProps, LayoutRenderProps, LayoutState, LayoutStateReactContext, LazyPluginModule, LoadedApp, ManifestEditorCanvasProgressApi, ManifestEditorCanvasProgressOverlay, ManifestEditorSpecification, ManifestEditorTag, ManifestEditorTagBadge, ManifestEditorTagGroup, ManifestEditorTagGroupRow, ManifestEditorTagIcon, ManifestEditorTagOverlay, ManifestEditorTagResource, ManifestEditorTagsApi, ManifestPaginationNavigation, ManifestPaginationNavigationProps, MappedApp, MappedPlugin, MenuPositions, MessagePortClientVault, MetadataTemplateSpecificationRule, ModularPanel, ModularPanelHeader, ModulePanelButton, MultiAppContext, MultiAppProvider, PanelActionType, PanelActions, PanelError, PanelState, PinnablePanelActions, PinnablePanelState, PinnedLayoutPanel, PluginAppConfig, PluginConfigBridge, PluginConfigScope, PluginGlobalConfigReactContext, PluginHostApp, PluginInput, PluginManager, PluginMetadata, PluginModule, PluginProvider, PluginReactContext, PluginRuntimeApi, PluginSettingsDefinition, PluginSettingsField, PluginSettingsFieldOption, PluginSettingsRecord, PluginSettingsRenderContext, PluginSettingsValue, PluginStore, PluginStoreSnapshot, Preview, PreviewActions, PreviewActionsType, PreviewButton, PreviewConfiguration, PreviewContext, PreviewHandler, PreviewProvider, PreviewState, PreviewVaultBoundary, PreviewVaultContext, PrimeAppReactContext, ReactEmitterContext, type RemoteVaultAction, type RemoteVaultClientMessage, RequireNonEmptySpecificationRule, RequiredStatementSpecificationRule, Resource, ResourceDefinition, ResourceEditingProvider, ResourceEditingReactContext, RunBackgroundActionOptions, SaveConfigReactContext, ShellProvider, SpecificationEditorTarget, SpecificationEntityType, SpecificationJsonValue, SpecificationPropertyPath, SpecificationPropertyPolicy, SpecificationPropertyRuleBase, SpecificationProvider, SpecificationReport, SpecificationReportItem, SpecificationReportStatus, SpecificationRule, SpecificationRuleBase, SpecificationTextValue, TAGS_META_KEY, TAGS_META_NAMESPACE, TaskBridge, ThumbnailFromBodyServiceSpecificationRule, ToastApi, ToastContent, ToastProvider, ToastVariant, UniversalCopyPasteProps, UniversalCopyTarget, UploadBackendConfig, ValidRightsSpecificationRule, VaultBridgeRegistry, addResourceTag, analyse, analyseJson, applyPlugins, baseCreator, baseEditor, clearCanvasProgressStatus, clearCanvasProgressStatuses, collectSpecificationResources, copyToClipboard, createActionIdentity, createBackgroundActionsStore, createDownload, createIframeVaultBridge, createLocalForageBackgroundActionPersistence, createManifestEditorCanvasProgressApi, createManifestEditorTagsApi, createPluginRuntimeApi, createPluginStore, createPreviewVault, createTrackingCanvasProgressApi, detectMedia, disablePluginInConfig, editBasedOnResource, enablePluginAndDependenciesInConfig, enablePluginInConfig, evaluateSpecifications, extendApp, filterSupportedPanels, getAvailableBackgroundActionGroups, getBackgroundActionInstanceKey, getCanvasProgressStatus, getCanvasProgressStatusFromState, getDefaultLayoutState, getDefaultPanelState, getEffectivePluginSettings, getEmptyPluginState, getEnabledPluginsForApp, getFormat, getImageDimensions, getManifestNomalized, getPluginCompatibilityReason, getPluginDefaultSettings, getPluginSelectionSource, getPluginSettingsFromConfig, getPropertyPolicy, getResourceTag, getResourceTagGroups, getResourceTags, getResourceTagsFromState, getSupportedPanelFallback, getTerminologyLabel, getValueAtPath, hasMeaningfulValue, hasResourceTag, isLazyPlugin, isMappedPlugin, isPinnableState, isPluginCompatible, isPluginSelected, layoutReducer, mapApp, mapLazyPlugin, mapPlugin, mergeBackgroundActionDefinitions, mergeConfig, mergePartialConfig, mergeProviderPlugins, normaliseBackgroundActionError, normaliseJsonValue, normalisePlugin, normalisePluginAppConfig, normalisePluginAppsConfig, normalisePlugins, normaliseSpecificationPath, panelIds, panelSizing, pluginAppConfigEquals, polygonToBoundingBox, randomId, removeResourceTag, renderHelper, resetPluginInConfig, resetPluginSettingsInConfig, runBackgroundAction, setCanvasProgressStatus, setCanvasProgressStatuses, setPluginSettingsInConfig, setResourceTags, setValueAtPath, sortBackgroundActionDefinitions, specificationJsonEquals, specificationPathEquals, toggleResourceTag, useAnnotationCreatorState, useAnnotationPageEditor, useApp, useAppInstance, useAppMenu, useAppMenuItem, useAppResource, useAppResourceInstance, useAppState, useApps, useAtlasStore, useAvailableBackgroundActions, useAvailableLayouts, useBackgroundActionHistory, useBackgroundActionInstance, useBackgroundActionsStore, useBackgroundActionsStoreApi, useCanvasProgressActions, useCanvasProgressStatus, useCollectionEditor, useConfig, useCreatingResource, useCreator, useCustomContextMenu, useDecayState, useEditingContext, useEditingResource, useEditingResourceStack, useEditingStack, useEditor, useEmitter, useEnabledPlugins, useEvent, useGenericEditor, useHighlightedImageResource, useHoverHighlightImageResource, useInitialData, useInlineCreator, useLayoutActions, useLayoutMode, useLayoutProvider, useLayoutState, useLocalStorage, useManifestEditor, useMatchMedia, useOptionalLocalStorage, useOptionalPluginStoreApi, useOptionalResource, usePanelActions, usePluginActions, usePluginConfigApi, usePluginRuntimeApi, usePluginSettings, usePluginStoreApi, usePlugins, usePreviewContext, usePreviewHistory, usePreviewVault, usePreviews, useResolvedPluginApp, useResource, useResourceContextMenuItems, useResourceTagActions, useResourceTags, useSaveConfig, useSaveVault, useSetCustomTitle, useSpecificationPropertyPolicy, useSpecificationReport, useSpecificationTerminology, useSpecifications, useSvgTools, useTask, useTaskDispatch, useTaskEvent, useTaskRunner, useTemporaryHighlight, useToasts };
1164
2013
  //# sourceMappingURL=index.d.cts.map