export { SessionHistoryControl, type SessionHistoryControlProps } from './editor/SessionHistoryControl.js'; export type { TokenApplyOutcome } from './workspace/sessionRestore.js'; export * from './document/components.js'; export * from './token-library/bindings.js'; export { STYLE_KINDS, STYLE_SLOTS, STYLE_SLOT_KIND, STYLE_KIND_LABEL, STYLE_SLOT_LABEL, TEXT_STYLE_CHARACTER_KEYS, TEXT_STYLE_PARAGRAPH_KEYS, TEXT_STYLE_KEYS, StyleError, isStylePaint, isTextStyleValue, isStyleEffect, isStyleValue, isDesignStyle, isStylesMetadata, isStyleReferences, validateStyleLibrary, EMPTY_STYLES, documentStyles, documentStyle, documentStylesOfKind, nodeStyleReferences, styleSlotsFor, documentStyleDiagnostics, createStyle, renameStyle, describeStyle, setStyleValue, removeStyle, detachStyleFromLibrary, projectStyle, detachStyleReference, styleValueFromNode, styleConsumers, propagateStyle, applyStylePropagation, writeStyles, applyStylePatch, detachStylePatch, commitCreateStyle, commitStyleValue, commitRenameStyle, commitRemoveStyle, commitApplyStyle, commitDetachStyle, commitStyleFromNode, importLibraryStyle, planStyleLibraryUpdate, commitStyleLibraryUpdate, stylesDuplicateRemapper, STYLES_METADATA_KEY, STYLE_SIDECAR_PROPERTY_KEYS, stylesSourceDiagnostics } from './document/styles.js'; export type { StyleKind, StyleSlot, StylePaint, PaintStyleValue, TextStyleValue, StyleEffect, EffectStyleValue, GridStyleValue, StyleValue, StyleValueByKind, StyleOrigin, DesignStyle, StylesMetadata, StyleLibraryDocument, StyleReferences, StyleConsumer, StylePropagation, StyleLibraryChange, StyleLibraryUpdatePlan } from './document/styles.js'; export { componentOverrideTarget, remapComponentOverrideAddress } from './document/engine.js'; export * from './document/pages.js'; export { ComponentPanel } from './workspace/edit/ComponentPanel.js'; export type { ComponentPanelProps } from './workspace/edit/ComponentPanel.js'; export { StylesPanel } from './workspace/edit/StylesPanel.js'; export type { StylesPanelProps } from './workspace/edit/StylesPanel.js'; export { TokenLibraryProvider, useTokenLibraryController, useHasTokenLibraryProvider } from './workspace/tokens/TokenLibraryContext.js'; /** The language the editor speaks. A host may install its own, and reads the active one for its own words. */ export { editorLanguage, editorLanguages, editorMessages, registerEditorLanguage, setEditorLanguage, useMessages } from './locales/index.js'; export type { EditorLanguage, MessageCatalog, MessageKey, Translator } from './locales/index.js'; export { LanguageSelect } from './locales/LanguageSelect.js'; export type { LanguageSelectProps } from './locales/LanguageSelect.js'; export { createTokenLibraryEngine, reopenTokenLibrary, validateTokenLibraryDocument, resolveTokenLibraryValue, tokenValueEditability, TokenLibraryValidationError } from './token-library/engine.js'; export type * from './token-library/contracts.js'; export { createTokenLibraryCache } from './token-library/cache.js'; export type { TokenLibraryTextResolver, TokenLibraryPreviewContext, TokenLibraryCacheOptions, TokenLibraryCache } from './token-library/cache.js'; export { formatTokenReferences, TokenReferenceFormatError } from './token-library/formatReferences.js'; export type { TokenReferenceFormatContext } from './token-library/formatReferences.js'; export { createTokenValueResolver } from './token-library/valueResolver.js'; export type { TokenValueReferenceRange, TokenValueResolverOptions, ResolvedTokenText } from './token-library/valueResolver.js'; export type * from './workspace/tokens/contracts.js'; export { WorkspaceTokenLibraryController } from './workspace/tokens/controller.js'; export type { WorkspaceTokenLibraryState } from './workspace/tokens/controller.js'; export { createReviewedSourceOperation } from './host/sourceWriteback.js'; export type { ReviewedSourceOperationRuntime, ReviewedSourceOperationPolicy, ReviewedSourceOperationFiles } from './host/sourceWriteback.js'; export type { SourceFilePlan } from './host/sourceFilePlan.js'; export type { WorkspaceDraftPreviewClient } from './workspace/source/draftPreviewClient.js'; import { type PygmalionHostProject } from './host/project.js'; export { createPygmalionHostProject, createPygmalionRevisionCatalog, PYGMALION_HOST_PROJECT_VERSION, } from './host/project.js'; export type { PygmalionHostProject, PygmalionHostProjectDefinition, PygmalionHostStoryboard, PygmalionHostDesign, } from './host/project.js'; export { createDesignRegistryConnections } from './host/registryConnections.js'; export type { DesignRegistryInventoryEntry } from './host/registryConnections.js'; export { createReviewedSourceWriter, assertInspectSourcePayload, inspectPayloadSourceFiles, SourceWriteError, } from './host/sourceWriteback.js'; export type { InspectSourceRuntime, SourceWritePolicy, SourceWriteErrorCode } from './host/sourceWriteback.js'; export { WorkspaceController } from './workspace/controller.js'; export { createLegacyModeAdapter } from './workspace/legacyModeAdapter.js'; export type * from './workspace/contracts.js'; export { canEditWorkspaceTarget, createWorkspaceTargetResolver, resolveWorkspaceTarget } from './workspace/configuration.js'; export { screenStateGroup, screenStateLabel } from './workspace/screenStates.js'; export { matchingScreenPreset, screenSize } from './workspace/view/ScreenSizeControl.js'; export type { ScreenStateGroup, ScreenStateMember } from './workspace/screenStates.js'; export type { WorkspaceConfiguration, WorkspaceTargetConfiguration, WorkspaceTargetResolverOptions, WorkspaceDocumentLoadProgress } from './workspace/configuration.js'; export { capturedScreenMetadata, screenDocumentFromImport } from './document/screenImport.js'; export { createCapturedScreenDocumentLoader } from './workspace/capture/capturedScreenDocument.js'; export { withCapturedScreenDocuments } from './workspace/capture/capturedScreenConfiguration.js'; export { CAPTURED_SCREEN_METADATA_KEY } from './workspace/capture/contracts.js'; export type { CapturedScreenDocumentLoader, CapturedScreenDocumentOptions, CapturedScreenMetadata, ScreenImportResult, ScreenImportSource } from './workspace/capture/contracts.js'; export { compileWorkspaceVisualSource, workspaceSourceFingerprint } from './workspace/source/compiler.js'; export { compileWorkspaceDocumentSource, jsxStructureWrapperClassName } from './workspace/source/structure.js'; export { compileWorkspaceResponsiveSource, resolveResponsiveLayout, setResponsiveLayoutOverride } from './workspace/source/responsive.js'; export { describeResponsiveValueContract, responsiveRangePreviewWidth, sortResponsiveRanges } from './workspace/source/responsive.js'; export { useWorkspaceResponsiveViewport } from './workspace/source/ResponsiveLayoutPanel.js'; export type * from './workspace/source/responsiveContracts.js'; export type { WorkspaceDocumentSourceChanges } from './workspace/source/structure.js'; export { WorkspaceSourceReviewController } from './workspace/source/controller.js'; export { createWorkspaceDraftPreviewClient } from './workspace/source/draftPreviewClient.js'; export { runWorkspaceDraftRecipe, WorkspaceDraftRecipeError } from './workspace/source/draftRecipe.js'; export type { WorkspaceDraftDocumentContext, WorkspaceDraftRecipe, WorkspaceDraftRecipeOptions, WorkspaceDraftRecipeReport } from './workspace/source/draftRecipe.js'; export type * from './workspace/source/contracts.js'; export type * from './workspace/source/flowContracts.js'; export type { WorkspaceSourceReviewState } from './workspace/source/controller.js'; export * from './binding/index.js'; export { planScopeTransfer, resolveScopeTransfer, applyScopeTransfer } from './workspace/edit/scopeTransfer.js'; export type { ScopeTransferPlan, ScopeTransferDecisionPlan, ScopeTransferItem, ScopeTransferChoice, ScopeTransferDecision, ScopeTransferOptions, ResolvedScopeTransfer } from './workspace/edit/scopeTransfer.js'; export { planDocumentLayerMove, applyDocumentLayerMove, normalizeDocumentLayerSelection } from './workspace/edit/layerMoves.js'; export type { DocumentLayerMoveRequest, DocumentLayerMovePlan, DocumentLayerMoveOperation, ReadyDocumentLayerMove } from './workspace/edit/layerMoves.js'; export { TEXT_CHARACTER_KEYS, TEXT_PARAGRAPH_KEYS, TEXT_RESIZE_MODES, RICH_TEXT_CASES, RICH_TEXT_LISTS, RICH_TEXT_ALIGNMENTS, TEXT_PARAGRAPH_PROPERTY, TEXT_NODE_PROPERTY_KEYS, isTextLink, isTextResizeMode, isRichTextCharacterValue, isRichTextParagraphValue, isRichTextCharacterStyle, isRichTextParagraphStyle, isRichTextRun, isRichTextParagraph, isRichText, richTextPlain, richTextLength, richTextFromPlain, normalizeRichText, applyRichTextCharacterStyle, clearRichTextCharacterStyle, setRichTextParagraphStyle, clearRichTextParagraphStyle, richTextInheritedStyle, insertRichText, deleteRichText, replaceRichText, splitRichTextParagraph, mergeRichTextParagraphs, applyPlainTextEdit, richTextCharacterStyleAt, richTextParagraphStyleAt, richTextVaryingKeys, textNodeStyle, textResizeMode, textNodePlain, textNodeModel, isRichTextTrivial, hoistRichTextStyle, richTextValue, normalizeTextProperties, plainTextProperties, textFontRequirements, documentFontRequirements, textNodeFontRequirements, loadTextFonts, loadDocumentFonts, fontFaceSetLoader, textFontFaceRequests, } from './document/richText.js'; export type * from './document/richText.js'; export * from './document/textFontPreparation.js'; export { createTextFontPreparationRuntime } from './workspace/edit/textFontRuntime.js'; export type { TextFontPreparationRuntime } from './workspace/edit/textFontRuntime.js'; export { createProjectFontSourceClient, projectFontUpload } from './workspace/fonts/projectFontSource.js'; export type { ProjectFontSourceCapabilities, ProjectFontUpload, ProjectFontAsset, ProjectFontReview } from './workspace/fonts/projectFontSource.js'; export { collectTextFontOccurrences, textFontAddressKey } from './workspace/edit/textFontOccurrences.js'; export type { TextFontAddress, TextFontOccurrence, TextFontCollection, TextFontCollectionOptions } from './workspace/edit/textFontOccurrences.js'; export { useTextFontPreparation } from './workspace/edit/useTextFontPreparation.js'; export type { TextFontPreparationState } from './workspace/edit/useTextFontPreparation.js'; export { VECTOR_SHAPES, VECTOR_BOOLEAN_OPERATIONS, VECTOR_FLATNESS, VECTOR_MERGE_DISTANCE, VECTOR_SIDE_SAMPLE, isVectorProperties, parseVector, serializeVector, vectorPathAnchors, vectorPathFromAnchors, vectorPathSegments, vectorBounds, transformVector, translateVector, vectorFitTransform, normalizeVectorOrigin, fitVectorNode, rectangleVector, ellipseVector, arcVector, lineVector, polygonVector, starVector, createShapeVector, roundVectorCorners, vectorPathData, vectorAnchorMode, moveVectorAnchor, moveVectorHandle, setVectorAnchorMode, insertVectorAnchor, deleteVectorAnchor, canSplitVectorPath, splitVectorPath, canJoinVectorPaths, joinVectorPaths, nearestVectorSegmentPoint, flattenVector, vectorContainsPoint, vectorArea, booleanRings, booleanVectors, booleanVectorPrecision, vectorRenderTransform, } from './document/vector.js'; export type * from './document/vector.js'; export { VectorEditor, VectorInspector, VectorNodeSurface, useVectorEditing } from './workspace/edit/VectorEditor.js'; export type { VectorEditing, VectorEditingInput, VectorEditingSession, VectorEditorProps, VectorGeometryPreview } from './workspace/edit/VectorEditor.js'; export { VectorToolbar } from './workspace/edit/VectorToolbar.js'; export { VECTOR_TOOLS, VECTOR_SHAPE_LABELS, VECTOR_BOOLEAN_LABELS, VECTOR_DEFAULT_FILL, VECTOR_DEFAULT_STROKE, VECTOR_NO_ANCHOR_ACTIONS, vectorNodeGeometry, vectorBoxGeometry, vectorRenderModel, vectorGeometryPatch, vectorStylePatch, renderedWorldTransform, vectorInsertParent, shapeInsertion, penClosesOnFirst, penPathNode, penDragAnchor, vectorAnchorsInBox, planVectorEdit, vectorAnchorActions, applyVectorAnchorAction, planVectorBoolean, vectorBooleanNode, vectorBooleanPrecision, applyVectorBoolean, vectorMaskClips, } from './workspace/edit/vectorTools.js'; export type { VectorTool, VectorAnchorAction, VectorStyle, VectorRenderModel, VectorEditTarget, VectorEditPlan, VectorAnchorActions, VectorAnchorActionResult, VectorBooleanPlan, VectorInsertion } from './workspace/edit/vectorTools.js'; export { richTextSourceDiagnostics, richTextSourceProjection, TEXT_SOURCE_MAPPED_PROPERTIES } from './workspace/source/textSource.js'; export type { RichTextSourceProjection } from './workspace/source/textSource.js'; export { TextEditor, TextInlineEditor, TextNodeSurface, useTextFontStatus } from './workspace/edit/TextEditor.js'; export type { TextEditorProps, TextInlineEditorProps } from './workspace/edit/TextEditor.js'; export { applyTextCharacterStyle, applyTextParagraphStyle, characterStyleCss, commitTextEdit, decorationCss, isBoundTextNode, paragraphStyleCss, richTextBlocks, setTextResize, textEditorModel, textResizeCss, textStyleTarget, textStyleValues, TEXT_ALIGN_OPTIONS, TEXT_CASE_OPTIONS, TEXT_FONT_WEIGHT_OPTIONS, TEXT_INDENT_STEP, TEXT_LIST_OPTIONS, TEXT_RESIZE_OPTIONS, } from './workspace/edit/textStyles.js'; export type { TextBlock, TextStyleTarget, TextStyleValues } from './workspace/edit/textStyles.js'; export * from './document/contracts.js'; export * from './document/geometry.js'; export { createDesignDocument, createDocumentNode, createDocumentEngine, reopenDesignDocument, resolveDocumentNode, projectDesignDocument, validateDesignDocument, DocumentValidationError, } from './document/engine.js'; import type { WorkspaceConfiguration } from './workspace/configuration.js'; import type { DesignImportController, DesignImportInitialPage, DesignScenarioSource } from './editor/designImport.js'; import type { ComponentRegistry } from './editor/registry.js'; import type { DesignComponentConnectionDef } from './editor/componentConnections.js'; import type { ApplyPayload, DesignChangePayload, DesignChangeResult, InspectApplyResult, InspectImpactResult, InspectPreviewResult } from './editor/host.js'; import type { InspectApplyPayload } from './editor/inspect.js'; import type { EditorRuntime } from './core/runtime.js'; import type { ScreenFlowPath } from './editor/screenFlows.js'; import type { ScenarioCoverageClaim } from './editor/scenarioCoverage.js'; import type { InteractiveStateDef, ScreenStateAxisDef } from './editor/interactiveStates.js'; import type { SurfaceClassification } from './editor/surfaceDemands.js'; import type { ScreenDimensionDef } from './editor/screenDimensions.js'; import type { FrameBranchKindDef, FrameLabelLabels } from './editor/frameLabels.js'; import type { ScreenCardDef } from './editor/screenCards.js'; import type { SectionHeaderDef, SectionHeaderLabels } from './editor/sectionHeaders.js'; import type { ScreenLaneDef } from './editor/frameLanes.js'; import type { ScreenListDef } from './editor/screenLists.js'; import { type RoutePreviewArtifactBundle } from './editor/routePreview.js'; import type { StoryboardDefinition } from './editor/storyboardGraph.js'; import type { TokenDef } from './editor/tokens.js'; import type { ViewportPresetDef } from './editor/viewportPresets.js'; import type { PreviewEnvironmentControlDef } from './editor/previewEnvironmentControls.js'; import type { DesignCodegenProjectManifest, DesignCodegenValidator } from './editor/designCompiler.js'; export { loadPygmalionRevisionCatalog, PygmalionRevisionCatalogClient, PygmalionRevisionCatalogHttpError, PYGMALION_REVISION_CATALOG_VERSION, validatePygmalionRevisionCatalog, } from './editor/revisionCatalog.js'; export type { PygmalionRevisionCatalog, PygmalionRevisionCatalogExpectation, PygmalionRevisionCatalogLoadOptions, PygmalionRevisionCatalogRequestResult, PygmalionRevisionCatalogValidation, PygmalionRevisionCatalogV1, PygmalionRevisionComponentRegistry, PygmalionRevisionScreenCatalog, PygmalionRevisionScreenPage, } from './editor/revisionCatalog.js'; export { PYGMALION_PREVIEW_CAPTURE_PROGRESS_SUFFIX, previewCaptureProgressEndpoint, usePygmalionPreviewCaptureProgress, } from './editor/previewCaptureProgress.js'; export type { PygmalionPreviewCaptureProgress, PygmalionPreviewCaptureProgressPhase, } from './editor/previewCaptureProgress.js'; export type { FrameInteractionPhase, FrameInteractionScrollState, FrameInteractionSnapshot, } from './editor/frameInteraction.js'; export type { ComponentRegistry, RegistryEntry, RegistryPropValue, } from './editor/registry.js'; export type { DesignComponentConnectionCase, DesignComponentConnectionCases, DesignComponentConnectionDef, DesignComponentReference, DesignConnectionDiagnostic, DesignConnectionPropertyDef, DesignConnectionPropertyKind, } from './editor/componentConnections.js'; export { compileDesignDocument, createDesignIntermediateDocument, DEFAULT_DESIGN_COMPILE_LIMITS, DESIGN_CODEGEN_PROJECT_SCHEMA, DESIGN_CODEGEN_PROJECT_VERSION, DESIGN_IR_SCHEMA, DESIGN_IR_VERSION, getDesignCodegenAdapters, registerDesignCodegenAdapter, } from './editor/designCompiler.js'; export type { DesignCodegenAdapter, DesignCodegenAdapterContext, DesignCodegenAdapterOutput, DesignCodegenData, DesignCodegenFrameContract, DesignCodegenPageContext, DesignCodegenProjectManifest, DesignCodegenPromptReference, DesignCodegenRuntimeContext, DesignCodegenValidationArtifacts, DesignCodegenValidationRequest, DesignCodegenValidationResult, DesignCodegenValidationStatus, DesignCodegenValidator, DesignCompileDiagnostic, DesignCompileLimits, DesignCompileOptions, DesignCompilePurpose, DesignCompileResult, DesignCompileSeverity, DesignCompileStage, DesignCompileStatus, DesignIntermediateDocumentV1, DesignIRAsset, DesignIRComponent, DesignIRMetrics, } from './editor/designCompiler.js'; export { VARIANT_SEGMENT_LIMIT, changedVariantAxes, collectVariantAxes, variantAxisGroups, variantAxisValueLabels, } from './editor/variantAxes.js'; export type { VariantAxis, VariantAxisInput, VariantAxisOption, VariantAxisRef, VariantAxisSource, VariantGroup, } from './editor/variantAxes.js'; export type { CodegenFrameOptions } from './editor/codegen.js'; export { createDesignComponentCatalog, createDesignComponentVariantMatrix, createDesignGalleryCatalog, designCatalogKey, designCatalogRegistryName, PygmalionCatalogDocument, PygmalionCatalogMatrix, PygmalionCatalogSection, } from './editor/catalog.js'; export type { DesignCatalogBuild, DesignCatalogFrame, DesignCatalogItem, DesignCatalogKind, DesignCatalogPageDescriptor, DesignComponentCatalogOptions, DesignComponentVariantMatrix, DesignGalleryCatalogOptions, PygmalionCatalogDocumentProps, PygmalionCatalogMatrixProps, PygmalionCatalogSectionProps, } from './editor/catalog.js'; export { createEditorRuntime } from './core/runtime.js'; export type { EditorDeclarations } from './editor/declarations.js'; export type { EditorSchedulers } from './core/schedulers.js'; export { createViteTransport, resolvePygmalionEndpoints, PYGMALION_ENDPOINTS, TransportError, } from './contract/index.js'; export type { ComponentBranchesRequest, EditorTransport, InspectImpactRequest, MirrorRefreshRequest, PreviewCatalogRequest, PygmalionEndpointOverrides, PygmalionEndpoints, QaCaptureEnvelope, SessionApplyVisualRequest, SessionApplyVisualResponse, SessionCheckRequest, SessionMutationRequest, SessionOpenRequest, SessionPreviewVisualRequest, SessionPreviewVisualResponse, SessionRevertVisualRequest, SessionRevertVisualResponse, SessionRestoreVisualRequest, SessionHistoryResponse, PygmalionHistoryResult, PygmalionSessionHistoryEntry, PygmalionVisualRedoOperation, PygmalionVisualRestoreOperation, SourceUsageRequest, TransportCallOptions, TransportErrorInit, TransportFetch, TransportRequestInit, TransportResponse, ViteTransportOptions, } from './contract/index.js'; export type { EditorRuntime, EditorRuntimeOptions } from './core/runtime.js'; export type { EditorRuntimeDebug, EditorRuntimeDiagnostics } from './core/debug.js'; export type { HostBindings, HostBindingsInit, HostCallbacks, } from './core/hostBindings.js'; export { EditorRuntimeProvider, useEditorRuntime, useEditorStore, useHostBindings, useHostCallbacks, } from './core/context.js'; export { recommendedRoutePreviewConcurrency as getRecommendedPygmalionPreviewConcurrency } from './editor/routePreview.js'; export type { RoutePreviewArtifactBundle } from './editor/routePreview.js'; export { reconstructRoutePreviewArtifactScreenshotV3, reconstructRoutePreviewArtifactSnapshotV3, validateRoutePreviewArtifactV3Browser, } from './editor/routePreviewArtifactV3.js'; export type { RoutePreviewArtifactBundleV3, RoutePreviewArtifactV3Diagnostic, RoutePreviewArtifactV3Frame, RoutePreviewArtifactV3ReconstructedScreenshot, RoutePreviewArtifactV3ScreenshotAsset, RoutePreviewArtifactV3ScreenshotMediaType, RoutePreviewArtifactV3ScreenshotReference, RoutePreviewArtifactV3Status, RoutePreviewArtifactV3ValidationResult, RoutePreviewArtifactV3Viewport, } from './editor/routePreviewArtifactV3.js'; export { bootstrapPreviewArtifact, createPreviewArtifactHttpTransport, createPreviewCacheNamespace, createPreviewFrameFingerprint, createPreviewRecipeFingerprint, createStoryboardCaptureRecipeIdentity, PYGMALION_PREVIEW_CAPTURE_SCHEMA_VERSION, resolvePreviewArtifactFrames, validatePreviewArtifactBundle, } from './editor/previewBootstrap.js'; export type { PreviewArtifactBootstrapResult, PreviewArtifactExpectation, PreviewArtifactFetch, PreviewArtifactFrameRequest, PreviewArtifactFrameResolution, PreviewArtifactHttpResponse, PreviewArtifactHttpTransportOptions, PreviewArtifactTransport, PreviewArtifactTransportRequest, PreviewArtifactValidationReason, PreviewArtifactValidationResult, PreviewCacheNamespaceOptions, PreviewRecipeIdentity, StoryboardCaptureRecipeInput, } from './editor/previewBootstrap.js'; export { createRequestedPreviewFrameExpectations } from './editor/requestedPreviewFrames.js'; export type { RequestedPreviewFrameCase, RequestedPreviewFrameExpectationsOptions } from './editor/requestedPreviewFrames.js'; export { validateScreenStateGroups } from './editor/screenStateGroups.js'; export type { ScreenStateGroupDiagnostic, ScreenStateGroupInput, } from './editor/screenStateGroups.js'; export { deriveScreenFlowPaths } from './editor/deriveScreenFlowPaths.js'; export { validateScreenFlows, } from './editor/screenFlows.js'; export type { ScreenFlowDiagnostic, ScreenFlowPath, ScreenFlowWaypoint, } from './editor/screenFlows.js'; export { summarizeScenarioCoverage, validateScenarioCoverage, } from './editor/scenarioCoverage.js'; export type { ApplyCoverageResult, ScenarioCoverageClaim, ScenarioCoverageContext, ScenarioCoverageDiagnostic, ScenarioCoverageDiagnosticCode, ScenarioCoverageSummary, } from './editor/scenarioCoverage.js'; export { auditRouteCoverage, declaredCoverageTargets, enumerateControlCandidates, enumerateRequestCandidates, enumerateRouteCandidates, MIN_SURFACE_REASON_LENGTH, requestEndpointShape, summarizeSurfaceDemands, unclassifiedSurfaces, validateSurfaceDemands, } from './editor/surfaceDemands.js'; export type { ControlNodeLike, CoverageTargetDeclarations, DeclaredScreenRoute, DiscoveredRoute, FrameSurfaceDemands, ObservedRequest, RouteCoverageAudit, RouteCoverageDiagnostic, RouteCoverageDiagnosticCode, RouteEnumerationInput, RouteRepresentation, RouteRepresentationKind, SurfaceCandidate, SurfaceClassification, SurfaceCoverageSummary, SurfaceDemandDiagnostic, SurfaceDemandDiagnosticCode, SurfaceDemandKind, SurfaceDemandOptions, SurfaceVerdict, } from './editor/surfaceDemands.js'; export { validateInteractiveStates, validateScreenStateAxes, } from './editor/interactiveStates.js'; export type { InteractiveStateSelections, InteractiveStatePreset } from './editor/interactiveStateComposition.js'; export type { InteractiveStateDef, InteractiveStateDiagnostic, InteractiveStateOption, ScreenStateLiveTransition, ScreenStateAxisDef, ScreenStateAxisDiagnostic, ScreenStateAxisKind, ScreenStateOption, } from './editor/interactiveStates.js'; export { validateScreenCards, } from './editor/screenCards.js'; export type { CardBadgeOption, CardSlotDef, ScreenCardDef, ScreenCardDiagnostic, } from './editor/screenCards.js'; export { validateFrameBranchKinds, framesMissingScenario, } from './editor/frameLabels.js'; export type { FrameBranchKindDef, FrameBranchKindDiagnostic, FrameLabelLabels, } from './editor/frameLabels.js'; export { validateSectionHeaders, } from './editor/sectionHeaders.js'; export type { SectionHeaderDef, SectionHeaderDiagnostic, SectionHeaderFacts, SectionHeaderLabels, } from './editor/sectionHeaders.js'; export { validateScreenLanes, } from './editor/frameLanes.js'; export type { ScreenLaneDef, ScreenLaneDiagnostic } from './editor/frameLanes.js'; export { validateScreenLists, } from './editor/screenLists.js'; export type { ScreenListDef, ScreenListDiagnostic } from './editor/screenLists.js'; export type { NodeSelector } from './editor/nodeSelector.js'; export { validateScreenDimensions, } from './editor/screenDimensions.js'; export type { ComponentBranch, ScreenDimensionDef, ScreenDimensionDiagnostic, ScreenDimensionOption, } from './editor/screenDimensions.js'; export { createStoryboardPathEdges, createStoryboardGraph, storyboardScreenRecipeKey, } from './editor/storyboardGraph.js'; export { createAuthoredStoryboardGraph } from './editor/storyboardAuthored.js'; export type { StoryboardDefinition, StoryboardGraph, StoryboardGraphBranch, StoryboardGraphBuildOptions, StoryboardGraphCoverage, StoryboardGraphEdge, StoryboardGraphEdgeInput, StoryboardGraphEdgeLabelScope, StoryboardGraphEdgeOrigin, StoryboardGraphNode, StoryboardGraphSourceGroup, StoryboardGraphWarning, StoryboardGraphWarningCode, StoryboardPathInput, } from './editor/storyboardGraph.js'; export { createStoryboardRouteScenarioId, createStoryboardGraphFromDiscovery, getStoryboardDiscoveryBaselineEnvironment, loadStoryboardDiscovery, publishStoryboardDiscovery, resolveStoryboardScreenCases, } from './editor/storyboardDiscovery.js'; export type { LoadStoryboardDiscoveryOptions, StoryboardDiscoveryCandidate, StoryboardDiscoveryEdge, StoryboardDiscoveryGraphOptions, StoryboardDiscoveryManifest, StoryboardDiscoveryResult, StoryboardDiscoveryRoute, StoryboardDiscoveryScenario, StoryboardResolvedPage, } from './editor/storyboardDiscovery.js'; export { createStoryboardGraphViewModel } from './editor/storyboardGraphView.js'; export type { StoryboardFrameReference, StoryboardGraphCanonicalView, StoryboardGraphFrameView, StoryboardGraphSourceView, StoryboardGraphTransitionView, StoryboardGraphViewModel, } from './editor/storyboardGraphView.js'; export { createStoryboardRouteUrl, mergeStoryboardEnvironment, resolveStoryboardBootEnvironment, STORYBOARD_ENVIRONMENT_CONTROL, STORYBOARD_ENVIRONMENT_QUERY, } from './editor/storyboardEnvironment.js'; export type { ApplyPayload, DesignChangePayload, DesignChangeResult, DesignCodeDocument, DesignElementChange, DesignElementDocument, DesignTokenDocument, InspectApplyResult, InspectImpactFrame, InspectImpactResult, InspectPreviewResult, } from './editor/host.js'; export type { InspectApplyPayload, PrimitiveSourceValue, PrimitiveSourceValueType, SourceAffectedFrame, SourceEditOperation, SourceEditScope, SourceIdentity, SourceInsertComponent, } from './editor/inspect.js'; export type { InspectQaArtifactHash, InspectQaCaptureRequest, InspectQaFailure, InspectQaFrameResult, InspectQaPixelDiff, InspectQaPixelDimensions, InspectQaResult, } from './editor/visualQa.js'; export { inspectQaBaseUrl, requestInspectQaCapture } from './editor/visualQa.js'; export { usePygmalionProject } from './editor/projectRuntime.js'; export type { PygmalionDesignSessionStatus, PygmalionDevMirrorStatus, PygmalionIntegrationState, PygmalionProjectRuntime, PygmalionProjectRuntimeOptions, PygmalionRevertResult, PygmalionSessionOperation, PygmalionSourceRef, PygmalionSourceRefs, PygmalionVisualOperation, PygmalionVisualRevertOperation, } from './editor/projectRuntime.js'; export { SourceRefControl } from './ui/SourceRefControl.js'; export type { SourceRefControlProps } from './ui/SourceRefControl.js'; export type { TokenDef } from './editor/tokens.js'; import type { SessionPresetDef } from './editor/sessionPresets.js'; import type { CatalogConditionAxisDef } from './editor/conditionAxes.js'; export type { CatalogConditionAxisDef, CatalogConditionAxisOptionDef, CatalogConditionSelections, ScreenConditionDeclaration, } from './editor/conditionAxes.js'; export type { ViewportPresetDef } from './editor/viewportPresets.js'; export type { SessionPresetDef } from './editor/sessionPresets.js'; export { GENERIC_ASSERTION_SHARE, MIN_UNVERIFIED_REASON_LENGTH, detectStateGroupCandidates, hooksInSelector, summarizeConditionCoverage, validateHookTargeting, validateScreenConformance, } from './editor/screenConformance.js'; export type { ConditionCoverageRoute, ConditionCoverageScreen, ConformanceScreen, HookTargetingFinding, HookTargetingInput, HookTargetingKind, ScreenConformanceFinding, ScreenConformanceKind, StateGroupFinding, StateGroupScreen, } from './editor/screenConformance.js'; export type { PreviewEnvironmentControlDef, PreviewEnvironmentControlOptionDef, } from './editor/previewEnvironmentControls.js'; export { createDesignImportController, createDesignScreenCollection, DESIGN_IMPORT_KINDS, expandDesignScreenCasesViewports, expandDesignScreenCollectionViewports, mergeScreenPresets, } from './editor/designImport.js'; export type { CreateDesignImportOptions, DesignBehaviorScenario, DesignImportAsset, DesignImportCollection, DesignImportController, DesignImportCoverage, DesignImportCoverageItem, DesignImportInitialPage, DesignImportKind, DesignImportManifest, DesignImportPage, DesignFrameHeightMode, DesignFrameSizeMode, DesignScenarioCoverage, DesignScenarioSource, DesignScreenCase, DesignScreenAssertion, DesignScreenAssertionReport, DesignScreenAssertionVisibility, DesignScreenAttributeAssertion, DesignScreenCaptureFailure, DesignScreenCaptureFailureCode, DesignScreenCaptureFailureStage, DesignScreenCaptureDefaults, DesignScreenCaptureRequirements, DesignScreenCaptureReport, DesignScreenCaptureSpec, DesignScreenCollectionResult, DesignScreenDesiredState, DesignScreenDesiredStateExecutor, DesignScreenDesiredStateRequest, DesignScreenInteraction, DesignScreenInteractionAction, DesignScreenInteractionRunOptions, DesignScreenInteractionReport, DesignScreenPreset, DesignScreenPresetContext, DesignScreenPresetExecutionResult, DesignScreenPresetExecutor, DesignScreenPresetRequest, DesignScreenViewport, DesignScreenViewportExpansionOptions, DesignScreenViewportPagePatch, DesignSerializable, StoryboardEnvironment, StoryboardMediaDevice, StoryboardMediaFailure, StoryboardNetwork, StoryboardPermissionState, StoryboardRequestCondition, StoryboardRequestOutcome, } from './editor/designImport.js'; export type { DomImportDiagnostic, DomImportMetrics, DomImportOptions, DomImportResult, } from './editor/domImport.js'; export type { SharedSourceEditScope, SharedSourceFrameSummary, SharedSourceImpact, } from './editor/sharedSource.js'; export type { NodeJSON } from './editor/store.js'; export interface InitialPageDef extends DesignImportInitialPage { } export interface PygmalionEditorProps { /** Host-owned inventory, storyboard, reproduction and design bindings. */ project?: PygmalionHostProject; /** * The runtime this editor renders. Create one with `createEditorRuntime()` * and keep it for the editor's lifetime; two editors on one page each take * their own. Omitted, the editor uses the process-wide default runtime. */ runtime?: EditorRuntime; registry?: ComponentRegistry; tokens?: TokenDef[]; initialPages?: InitialPageDef[]; /** Canvas shown on first mount. Useful when an earlier catalog canvas is expensive to render. */ initialCanvas?: string; /** * Stable host/workspace identity used to restore the last active frame after * a same-tab reload. Pygmalion namespaces and hashes this value before using * sessionStorage; canonical `importPageId` values are stored, never transient * internal page ids. */ activeFramePersistenceKey?: string; /** * Mode the editor opens in. Defaults to 'edit'. A host whose editor is a * review surface declares 'view-only' so a reader is not one keystroke from * changing the design; the toggle stays where it is, and the choice applies * once rather than re-asserting over whatever the designer picked. */ initialEditMode?: 'edit' | 'view-only'; /** The redesigned workspaces use a canonical document and separate run state. */ workspace?: WorkspaceConfiguration; /** Explicit external-design to registered-code component mappings. */ componentConnections?: readonly DesignComponentConnectionDef[]; /** * Checked-in repository contract for deterministic, state-aware codegen. * Its prompt reference is provenance only; no model runs in the editor. */ codegenProject?: DesignCodegenProjectManifest; /** Runs only while Generated JSX is visible; frame switching never awaits it. */ codegenValidator?: DesignCodegenValidator; /** Source/revision identity used to restart a visible generated-code check. */ codegenValidationScope?: string; /** Named frame widths the application supports — rendered as one-click buttons beside the W/H boxes. */ viewportPresets?: readonly ViewportPresetDef[]; /** * Runtimes the whole catalog can be seen under — an embedded host build and a * standalone one, for instance. Unlike an axis, which belongs to a frame, * choosing one re-resolves every frame: it decides which screens exist. */ sessionPresets?: readonly SessionPresetDef[]; /** Host-declared browser conditions shown in the active frame's Preview inspector. */ previewEnvironmentControls?: readonly PreviewEnvironmentControlDef[]; /** * Independent catalog conditions — a color scheme, an account level — that * every screen, capture and run resolves under. Screens name the values they * exist in through `conditions`; an option's environment joins the storyboard * baseline so captures re-resolve when the value changes. */ conditionAxes?: readonly CatalogConditionAxisDef[]; /** A public importer that provides unified control over code inventory and importing of entire DOM layers. */ designImport?: DesignImportController; /** Called with cumulative changes when editing a token in the Assets panel — the host is responsible for writing back (file saving). */ onTokensChange?: (changed: { name: string; value: string; }[]) => void; /** The standard origin of the route page iframe ('' if same-origin). */ appOrigin?: string; /** Code version as of preview (dev SHA, etc.). Even if the URL is the same, if the value changes, the screen cache is updated. */ previewRevision?: string; /** Retain the last canvas while the project prepares another source; live input and capture are suspended. */ sourceTransition?: boolean; /** Project/branch boundaries for screen caches that are persistent in the browser. Stable string separate from random dev port. */ previewCacheNamespace?: string; /** A canonical screen snapshot created during build. When the namespace matches, it is injected into the cache before the first render. */ previewArtifacts?: RoutePreviewArtifactBundle; /** Number of actual app previews to run simultaneously. Defaults to an adaptive 12–32 lanes. */ previewConcurrency?: number; /** Controlled by external status such as host route ▶ Whether the preview is opened or not. */ previewOpen?: boolean; /** ▶ Called when the preview is opened or closed — allows the host to synchronize URLs. */ onPreviewOpenChange?: (open: boolean) => void; /** ▶ The name of the “app screen flow” canvas that the preview will always play — Enter this canvas screen even if you press it on another canvas. */ flowCanvas?: string; /** * Static surface for route frames: `bitmap` (default) renders captured * screenshots and reconstructs frozen DOM on demand; `dom` mounts the * frozen DOM from the start — recommended with per-section canvases, where * a canvas holds a section's worth of frames and every activation is then * promotion-ready without a mount wait. */ frameSurface?: 'bitmap' | 'dom'; /** * Who fills a canvas first. `worker-first` asks the capture worker behind * the transport's preview artifact endpoint for the active canvas in batches (nearest the * viewport first, other canvases after, in the background) and keeps the * walking sessions and per-screen sweep as the fallback for what the worker * cannot answer. `browser-first` fills the canvas inside the editor — the * walking sessions and sweep — and uses the worker only for the frame the * designer selects. Defaults to worker-first when an endpoint is configured * and browser-first otherwise. */ captureSupply?: 'worker-first' | 'browser-first'; /** * Host-declared flow paths — the captureless surface supply. One hidden * live instance boots per path and walks its waypoints, publishing a * frozen snapshot per screen into the preview store; frames whose screen a * flow claims wait for the delivery instead of booting live themselves. * Screens no flow claims keep the classic artifact/sweep/boot supply. * Under worker-first supply, flows walk only the screens the worker * released. */ screenFlows?: readonly ScreenFlowPath[]; /** * How many flow walks run at once. Defaults to 1, because mocked backends * are commonly single-session; a host whose fixtures survive concurrent * sessions can raise it — measured, two walks filled a canvas in half the * time with no more long tasks on the editor thread. */ screenFlowConcurrency?: number; /** * Host-declared scenario coverage ledger: where each QA scenario is * verified (frame, folded screen state, component toggle, viewport * preset, behavior, todo). The right panel lists a screen's claims as * executable rows and badges component controls with the scenarios they * demonstrate. Validate with validateScenarioCoverage in the host gate. */ scenarioCoverage?: readonly ScenarioCoverageClaim[]; /** * Host-declared screen dimensions: curated right-panel controls that swap * a captured piece's state (a status bar, a row badge) by adopting the * matched node into a registry adapter. Validate with * validateScreenDimensions against the component-branch scan. */ screenDimensions?: readonly ScreenDimensionDef[]; /** * Host-declared screen lists: right-panel row-count controls for a * repeating list. Growing clones the list's last row; the per-row * dimension controls are what make the copies differ. Validate with * validateScreenLists. */ screenLists?: readonly ScreenListDef[]; /** * Host-declared section headers: the band above a section box that says what * the group covers. The core counts the frames, folded variants, scenarios * and viewport itself; the host declares the code, the one-line purpose, the * accent and the category. A section with no declaration keeps its plain * name. Validate with validateSectionHeaders. */ sectionHeaders?: readonly SectionHeaderDef[]; /** Words for the facts a section header counts. English by default. */ sectionHeaderLabels?: SectionHeaderLabels; /** * Host-declared situation lanes: within a section, one lane is one row of * the canvas, read left to right. Packing by area produces a uniform grid * that says nothing, and only the host knows which screens belong to the * same situation. A section with no lanes keeps the area packing. * Validate with validateScreenLanes. */ screenLanes?: readonly ScreenLaneDef[]; /** * Host-declared presentation of each branch kind a frame label can carry: * the state kinds the catalog declares, plus the core's own `step` and * `variant`. The core decides which kind a frame is and counts its facts; * this says what each kind is called and what colour it reads as. Validate * with validateFrameBranchKinds. */ frameBranchKinds?: readonly FrameBranchKindDef[]; /** Words for the facts a frame label counts. English by default. */ frameLabelLabels?: FrameLabelLabels; /** * Host-declared card compositions: which badges each repeated card may show, * in which slot, and how many at once. Declares the component's anatomy so * the panel offers only combinations the product could render. Validate with * validateScreenCards. */ screenCards?: readonly ScreenCardDef[]; /** * How many frames may render the running application instead of their * capture. Defaults to 3: the active frame and the two nearest the * viewport run live; everything else is served from its capture, which is * what keeps a canvas deterministic and quiet. Pass 0 for a capture-only * canvas. The least recently activated holder gives its slot back. */ liveScreenBudget?: number; /** * Host-declared screen-state axes. Interaction axes replay local gestures; * condition axes recreate external boot conditions. Both stay attached to * the same frame instead of multiplying the canvas. Validate with * validateScreenStateAxes. */ screenStateAxes?: readonly ScreenStateAxisDef[]; /** * @deprecated Use screenStateAxes. Kept as a migration bridge. */ interactiveStates?: readonly InteractiveStateDef[]; /** * Host verdicts for the surfaces the editor asks about — the routes it can * render, the operable elements of an imported tree, the requests a frame * makes while booting. Each answer either names the declaration that covers * the surface or excludes it with a reason; anything unanswered shows up on * the frame as an unclassified surface instead of quietly not existing. */ surfaceClassifications?: readonly SurfaceClassification[]; /** Reflect button — Returns { branch } after the host saves the file and commits the branch (push is done directly by the user). */ onApply?: (payload: ApplyPayload) => Promise<{ branch: string; } | void>; /** A common write-back pathway that automatically saves the final state of all canvas elements in your code. */ onDesignChange?: (payload: DesignChangePayload) => Promise; /** Apply inspection edits through the host write-back endpoint. */ onInspectApply?: (payload: InspectApplyPayload) => Promise; /** Generate a source diff before apply. When connected, apply is blocked until review. */ onInspectPreview?: (payload: InspectApplyPayload) => Promise; /** Calculate the impact screen by querying the inverse dependency closure of the changed file. */ onInspectImpact?: (componentFiles: string[]) => Promise; /** Authored paths, starts, and primary journey merged with discovered navigation. */ storyboard?: StoryboardDefinition; /** Code-owned scenario inventory for hosts that declare their own route catalog. */ storyboardScenarios?: readonly DesignScenarioSource[]; /** * Runtime-specific storyboards keyed by `SessionPresetDef.id`. * * A runtime decides which screens exist, so it also owns the paths that can * connect them. The plain `storyboard` remains the fallback for hosts with a * single runtime and for the brief state before a required preset is chosen. */ sessionStoryboards?: Readonly>; /** * Detect portable browser branches from source before route frames boot. * Default true. The manifest comes from the transport's storyboard * environment service. */ storyboardDiscovery?: boolean; } export declare function PygmalionEditor(props: PygmalionEditorProps): import("react").JSX.Element; export { applyLayout, layoutHugAxes, layoutProblem, layoutChildProblem, layoutChild, isAbsoluteLayoutChild, participatesInLayout } from './document/layout.js'; export type { LayoutSpec, LayoutChild, LayoutPlacement, LayoutResult } from './document/layout.js'; export { LayoutPanel } from './workspace/edit/LayoutPanel.js'; export type { LayoutPanelProps } from './workspace/edit/LayoutPanel.js'; export { CanvasGuides, CanvasGuidesPanel } from './workspace/edit/CanvasGuides.js'; export { nodeGuides, guidesPatch, nodeLayoutGrids, layoutGridsPatch, isCanvasGuide, isLayoutGrid, defaultLayoutGrid, rulerTicks, rulerScale } from './workspace/edit/canvasGuideModel.js'; export type { CanvasGuide, LayoutGrid, LayoutGridTracks, LayoutGridPixels } from './workspace/edit/canvasGuideModel.js'; export * from './document/appearance.js'; export { AppearancePanel, AppearanceSurface, AppearanceVectorSurface } from './workspace/edit/AppearancePanel.js'; export type { AppearancePanelProps } from './workspace/edit/AppearancePanel.js'; export * from './workspace/source/appearanceSource.js'; export { assetInteropSourceDeltaDiagnostics, ASSETS_METADATA_KEY, ASSET_STORE_VERSION, IMAGE_MEDIA_TYPES, IMAGE_SCALE_MODES, IMAGE_SCALE_MODE_LABELS, createImageAsset, createSvgAsset, documentAssets, resolveAsset, addAsset, removeAsset, renameAsset, mergeAssetStores, assetStoreDiagnostics, serializeAssetStore, writeDocumentAssets, addDocumentAsset, nodeImagePaints, nodeAssetIds, assetReferences, unusedAssetIds, pruneUnusedAssets, missingAssetIds, assetsDuplicateMetadata, assetSourceUrl, imagePaint, imagePaintCss, nodeImageCss, imageNode, isImageNode, importAssetFiles, assetsFromInventory } from './document/assets.js'; export type { DocumentAsset, ImageAsset, SvgAsset, AssetStore, ImageAssetInput, SvgAssetInput, AssetFileLike, InventoryAssetMedia, InventoryAssetEntry } from './document/assets.js'; export * from './document/svgImport.js'; export * from './document/exportSettings.js'; export { DESIGN_CLIPBOARD_FORMAT, DESIGN_INTERCHANGE_FORMAT, copyDesignSubtrees, serializeDesignClipboard, parseDesignClipboard, pasteDesignSubtrees, applyDesignPaste, exportDesignInterchange, importDesignInterchange } from './workspace/edit/clipboard.js'; export type { DesignClipboard, PasteDesignResult } from './workspace/edit/clipboard.js'; export * from './workspace/edit/clipboardTransfer.js'; export * from './workspace/edit/clipboardStyles.js'; export * from './workspace/edit/clipboardPrototype.js'; export { createTextLayoutPlan } from './workspace/edit/textLayoutPlan.js'; export type { TextLayoutPlanOptions } from './workspace/edit/textLayoutPlan.js'; export { createTextLayoutRuntime } from './workspace/edit/textLayoutRuntime.js'; export type { TextLayoutRuntime } from './workspace/edit/textLayoutRuntime.js'; export type { TextLayoutAddress, TextLayoutRect, TextLayoutPlan, TextLayoutFace, TextLayoutRange, TextLayoutLine, TextLayoutGeometry, TextLayoutSnapshot } from './document/textLayout.js'; export type { PreparedTextFaceReference, PreparedTextFaceResolver } from './workspace/edit/preparedTextFace.js'; export { AssetsPanel } from './workspace/edit/AssetsPanel.js'; export type { AssetsPanelProps } from './workspace/edit/AssetsPanel.js'; export * from './document/prototype.js'; export * from './document/prototypeMotionContracts.js'; export * from './document/prototypeDrag.js'; export * from './document/prototypeSpring.js'; export * from './document/prototypeEasing.js'; export * from './document/prototypeMotion.js'; export { remapPrototypeProperties } from './document/prototypeReferences.js'; export { PrototypePanel } from './workspace/edit/PrototypePanel.js'; export { PrototypePlayer } from './workspace/view/PrototypePlayer.js'; export type { PrototypePlayerProps } from './workspace/view/PrototypePlayer.js'; export * from './workspace/view/prototypePlayback.js'; export type { PrototypeInputFrame } from './workspace/view/prototypeInputFrame.js'; export { createPrototypeProjectionContext } from './workspace/edit/prototypeProjection.js'; export type { PrototypeProjectionContext } from './workspace/edit/prototypeProjection.js'; export * from './workspace/edit/rasterExport.js'; export type { PreparedTextRasterFaceReference, TextRasterFaceResolver } from './workspace/edit/staticTextRaster.js'; export * from './document/imagePaintGeometry.js'; export { DesignDocumentView } from './workspace/edit/DesignWorkspace.js'; export { compileWorkspaceDocumentFile } from './workspace/source/documentFile.js'; export * from './workspace/commands/contracts.js'; export { createWorkspaceCommandClient } from './workspace/commands/client.js'; export type { WorkspaceDataSourceMapping } from './workspace/source/dataSource.js'; export { sourcePublicationRecovery } from './_external/node/source-publication-recovery.mjs'; export type { SourcePublicationRecovery, SourcePublicationRecoveryAction } from './_external/node/source-publication-recovery.mjs';