import * as _angular_core from '@angular/core'; import { OnChanges, OnInit, SimpleChanges, InjectionToken, Provider } from '@angular/core'; import { RichContentDocument, RichPrimitiveNode, RichPresetReferenceNode, JsonLogicDataRecord, RichBlockHostCapabilities, RichBlockNode, RichPresenterNode, RichComposeNode, RichCardNode, RichCardMedia, RichActionButtonNode, RichCalloutNode, RichCtaGroupNode, RichKeyValueListNode, RichKeyValueItem, RichEmptyStateNode, RichPropertySheetNode, RichPropertySheetItem, RichStatGroupNode, RichStatItem, RichTabsNode, RichTabsItem, RichRecordSummaryNode, RichRecordSummaryField, RichLookupResultNode, RichLookupResultField, RichLookupCardNode, RichRelatedRecordNode, RichActionCardNode, RichDecisionPackageNode, RichDecisionPackageEvidence, RichCollapsibleCardNode, RichFormLauncherNode, RichDisclosureNode, RichAccordionNode, RichAccordionItem, RichMediaBlockNode, RichTimelineNode, RichTimelineItem, RichTextNode, RichBadgeNode, RichIconNode, RichAvatarNode, RichImageNode, RichLinkNode, RichMetricNode, RichProgressNode, SettingsValueProvider, CorePresetRef, CorePresetDescriptor, ComponentDocMeta, AiCapabilityCatalog, AiCapability, AiCapabilityCategory, AiValueKind, ComponentAuthoringManifest, PraxisI18nDictionary, PraxisI18nConfig, PraxisI18nService } from '@praxisui/core'; import * as _praxisui_rich_content from '@praxisui/rich-content'; import { BehaviorSubject } from 'rxjs'; type RenderableNode = RichPrimitiveNode | RichPresetReferenceNode; declare class PraxisRichContent { private readonly i18n; private readonly jsonLogic; private readonly presetRegistry; readonly document: _angular_core.InputSignal; readonly nodes: _angular_core.InputSignal; readonly context: _angular_core.InputSignal; readonly hostCapabilities: _angular_core.InputSignal; readonly layout: _angular_core.InputSignal<"block" | "inline">; rootClassName: string; private readonly tabsSelection; private readonly runtimeNodeIds; private nextRuntimeNodeId; readonly renderableNodes: _angular_core.Signal; isNodeVisible(node: RichBlockNode): boolean; resolveNodeClasses(node: RichBlockNode): string[]; resolveNodeStyles(node: RichBlockNode): Record; resolveNodeStyleValue(node: RichBlockNode, name: string): string | number | null; resolveText(node: Extract): string; resolveImageSrc(node: Extract): string; resolveImageAlt(node: Extract): string; resolveLinkLabel(node: Extract): string; resolveLinkRel(node: Extract): string | null; resolveBadgeLabel(node: Extract): string; resolveAvatarLabel(node: Extract): string; resolveAvatarImage(node: Extract): string | null; resolveAvatarFallback(node: Extract): string; resolveMetricValue(node: Extract): string; resolveMetricCaption(node: Extract): string | null; resolveProgressValue(node: Extract): number; resolveProgressPercent(node: Extract): string; resolveProgressLabel(node: Extract): string | null; resolveComposeGap(node: RichComposeNode): string; resolveCardTitle(node: RichCardNode): string | null; resolveCardSubtitle(node: RichCardNode): string | null; resolveCardHeaderNodes(node: RichCardNode): RenderableNode[]; resolveCardBodyNodes(node: RichCardNode): RenderableNode[]; resolveCardFooterNodes(node: RichCardNode): RenderableNode[]; resolveCardAsideNodes(node: RichCardNode): RenderableNode[]; resolveCardActionNodes(node: RichCardNode): RenderableNode[]; resolveCardMedia(node: RichCardNode): RichCardMedia | null; resolveCardMediaSrc(media: RichCardMedia): string; resolveCardMediaAlt(media: RichCardMedia): string; resolveCardMediaLabel(media: RichCardMedia): string | null; resolveCardMediaFallback(media: RichCardMedia): string; isCardLoading(node: RichCardNode): boolean; isCardActive(node: RichCardNode): boolean; isCardSelected(node: RichCardNode): boolean; isCardInteractive(node: RichCardNode): boolean; isCardInteractionDisabled(node: RichCardNode): boolean; resolveCardRole(node: RichCardNode): string; resolveCardTabIndex(node: RichCardNode): number | null; resolveCardAriaLabel(node: RichCardNode): string | null; onCardSurfaceClick(node: RichCardNode, event: MouseEvent): void; onCardSurfaceKeydown(node: RichCardNode, event: KeyboardEvent): void; private shouldDispatchCardInteraction; private dispatchCardInteraction; private resolveActionPayload; private dispatchRichAction; resolveActionButtonLabel(node: RichActionButtonNode): string; isActionButtonDisabled(node: RichActionButtonNode): boolean; onActionButtonClick(node: RichActionButtonNode): void; resolveCalloutTitle(node: RichCalloutNode): string | null; resolveCalloutMessage(node: RichCalloutNode): string | null; resolveCtaGroupTitle(node: RichCtaGroupNode): string | null; resolveCtaGroupSubtitle(node: RichCtaGroupNode): string | null; resolveCtaGroupMessage(node: RichCtaGroupNode): string | null; resolveActionNodes(nodes?: RichActionButtonNode[] | null): RenderableNode[]; resolveKeyValueListTitle(node: RichKeyValueListNode): string | null; resolveKeyValueItems(node: RichKeyValueListNode): RichKeyValueItem[]; resolveKeyValueLabel(item: RichKeyValueItem): string; resolveKeyValueValue(item: RichKeyValueItem): string; resolveKeyValueBadge(item: RichKeyValueItem): string | null; resolveKeyValueIcon(item: RichKeyValueItem): string | null; resolveEmptyStateTitle(node: RichEmptyStateNode): string | null; resolveEmptyStateMessage(node: RichEmptyStateNode): string | null; resolvePropertySheetTitle(node: RichPropertySheetNode): string | null; resolvePropertySheetItems(node: RichPropertySheetNode): RichPropertySheetItem[]; resolvePropertySheetLabel(item: RichPropertySheetItem): string; resolvePropertySheetValue(item: RichPropertySheetItem): string; resolvePropertySheetHint(item: RichPropertySheetItem): string | null; resolveStatGroupTitle(node: RichStatGroupNode): string | null; resolveStatGroupSubtitle(node: RichStatGroupNode): string | null; resolveStatGroupItems(node: RichStatGroupNode): RichStatItem[]; resolveStatItemLabel(item: RichStatItem): string; resolveStatItemValue(item: RichStatItem): string; resolveStatItemCaption(item: RichStatItem): string | null; resolveTabsTitle(node: RichTabsNode): string | null; resolveTabsSubtitle(node: RichTabsNode): string | null; resolveVisibleTabsItems(node: RichTabsNode): RichTabsItem[]; resolveTabsItemLabel(item: RichTabsItem): string; resolveTabsItemBadge(item: RichTabsItem): string | null; isTabsItemDisabled(item: RichTabsItem): boolean; isTabsItemActive(node: RichTabsNode, item: RichTabsItem, index: number, items: RichTabsItem[]): boolean; resolveActiveTabsItem(node: RichTabsNode, items: RichTabsItem[]): RichTabsItem | null; onTabsItemClick(node: RichTabsNode, item: RichTabsItem, index: number): void; resolveRecordSummaryTitle(node: RichRecordSummaryNode): string | null; resolveRecordSummarySubtitle(node: RichRecordSummaryNode): string | null; resolveRecordSummaryMeta(node: RichRecordSummaryNode): string | null; resolveRecordSummaryFields(node: RichRecordSummaryNode): RichRecordSummaryField[]; resolveRecordSummaryFieldLabel(field: RichRecordSummaryField): string; resolveRecordSummaryFieldValue(field: RichRecordSummaryField): string; resolveLookupResultTitle(node: RichLookupResultNode): string | null; resolveLookupResultSubtitle(node: RichLookupResultNode): string | null; resolveLookupResultStatus(node: RichLookupResultNode): string; resolveLookupResultEmptyText(node: RichLookupResultNode): string; resolveLookupResultErrorText(node: RichLookupResultNode): string; resolveLookupResultMeta(node: RichLookupResultNode): string | null; resolveLookupResultFields(node: RichLookupResultNode): RichLookupResultField[]; resolveLookupResultFieldLabel(field: RichLookupResultField): string; resolveLookupResultFieldValue(field: RichLookupResultField): string; resolveLookupResultFieldHint(field: RichLookupResultField): string | null; resolveLookupCardTitle(node: RichLookupCardNode): string | null; resolveLookupCardSubtitle(node: RichLookupCardNode): string | null; resolveLookupCardStatus(node: RichLookupCardNode): string; resolveLookupCardEmptyText(node: RichLookupCardNode): string; resolveLookupCardErrorText(node: RichLookupCardNode): string; resolveLookupCardMeta(node: RichLookupCardNode): string | null; resolveLookupCardCtaLabel(node: RichLookupCardNode): string; resolveLookupCardFields(node: RichLookupCardNode): RichLookupResultField[]; resolveLookupCardFieldLabel(field: RichLookupResultField): string; resolveLookupCardFieldValue(field: RichLookupResultField): string; resolveLookupCardFieldHint(field: RichLookupResultField): string | null; resolveRelatedRecordTitle(node: RichRelatedRecordNode): string | null; resolveRelatedRecordSubtitle(node: RichRelatedRecordNode): string | null; resolveRelatedRecordRelationLabel(node: RichRelatedRecordNode): string | null; resolveRelatedRecordMeta(node: RichRelatedRecordNode): string | null; resolveRelatedRecordCtaLabel(node: RichRelatedRecordNode): string; resolveRelatedRecordFields(node: RichRelatedRecordNode): RichLookupResultField[]; resolveRelatedRecordFieldLabel(field: RichLookupResultField): string; resolveRelatedRecordFieldValue(field: RichLookupResultField): string; resolveRelatedRecordFieldHint(field: RichLookupResultField): string | null; isRelatedRecordDisabled(node: RichRelatedRecordNode): boolean; onRelatedRecordClick(node: RichRelatedRecordNode): void; isLookupCardDisabled(node: RichLookupCardNode): boolean; onLookupCardClick(node: RichLookupCardNode): void; tx(key: string, fallback: string): string; resolveActionCardTitle(node: RichActionCardNode): string | null; resolveActionCardSubtitle(node: RichActionCardNode): string | null; resolveActionCardMessage(node: RichActionCardNode): string | null; resolveActionCardMeta(node: RichActionCardNode): string | null; resolveActionCardCtaLabel(node: RichActionCardNode): string; resolveDecisionPackageTitle(node: RichDecisionPackageNode): string | null; resolveDecisionPackageSubtitle(node: RichDecisionPackageNode): string | null; resolveDecisionPackageSummary(node: RichDecisionPackageNode): string | null; resolveDecisionPackageStatus(node: RichDecisionPackageNode): string | null; resolveDecisionPackageOwner(node: RichDecisionPackageNode): string | null; resolveDecisionPackagePolicySource(node: RichDecisionPackageNode): string | null; resolveDecisionPackageVersion(node: RichDecisionPackageNode): string | null; resolveDecisionPackageRisk(node: RichDecisionPackageNode): string | null; resolveDecisionPackageLastReviewed(node: RichDecisionPackageNode): string | null; resolveDecisionPackageConfidence(node: RichDecisionPackageNode): string | null; resolveDecisionPackageEvidence(node: RichDecisionPackageNode): RichDecisionPackageEvidence[]; resolveDecisionPackageEvidenceLabel(item: RichDecisionPackageEvidence): string; resolveDecisionPackageEvidenceSource(item: RichDecisionPackageEvidence): string | null; isActionCardDisabled(node: RichActionCardNode): boolean; onActionCardClick(node: RichActionCardNode): void; resolveCollapsibleCardTitle(node: RichCollapsibleCardNode): string | null; resolveCollapsibleCardSubtitle(node: RichCollapsibleCardNode): string | null; resolveCollapsibleCardNodes(node: RichCollapsibleCardNode): RenderableNode[]; resolveFormLauncherTitle(node: RichFormLauncherNode): string | null; resolveFormLauncherSubtitle(node: RichFormLauncherNode): string | null; resolveFormLauncherDescription(node: RichFormLauncherNode): string | null; resolveFormLauncherCtaLabel(node: RichFormLauncherNode): string; isFormLauncherDisabled(node: RichFormLauncherNode): boolean; onFormLauncherClick(node: RichFormLauncherNode): void; resolveDisclosureTitle(node: RichDisclosureNode): string | null; resolveDisclosureSubtitle(node: RichDisclosureNode): string | null; resolveDisclosureNodes(node: RichDisclosureNode): RenderableNode[]; resolveAccordionTitle(node: RichAccordionNode): string | null; resolveAccordionItems(node: RichAccordionNode): RichAccordionItem[]; resolveAccordionItemTitle(item: RichAccordionItem): string | null; resolveAccordionItemSubtitle(item: RichAccordionItem): string | null; resolveAccordionItemNodes(item: RichAccordionItem): RenderableNode[]; resolveMediaBlockAvatarNodes(node: RichMediaBlockNode): RenderableNode[]; resolveMediaBlockTitleNodes(node: RichMediaBlockNode): RenderableNode[]; resolveMediaBlockSubtitleNodes(node: RichMediaBlockNode): RenderableNode[]; resolveMediaBlockMetaNodes(node: RichMediaBlockNode): RenderableNode[]; resolveMediaBlockTrailingNodes(node: RichMediaBlockNode): RenderableNode[]; resolveTimelineTitle(node: RichTimelineNode): string | null; resolveTimelineItems(node: RichTimelineNode): RichTimelineItem[]; resolveTimelineItemNumber(node: RichTimelineNode, item: RichTimelineItem, displayIndex: number): number; resolveTimelinePosition(node: RichTimelineNode): string; resolveTimelineOrientation(node: RichTimelineNode): string; resolveTimelineOrder(node: RichTimelineNode): string; resolveTimelineConnectorVariant(node: RichTimelineNode): string; resolveTimelineMarkerVariant(node: RichTimelineNode): string; resolveTimelineEmphasis(node: RichTimelineNode): string; resolveTimelineDensity(node: RichTimelineNode): string; resolveTimelineTextAppearance(node: RichTimelineNode): string; resolveTimelineClasses(node: RichTimelineNode): string[]; resolveTimelineNodeMarkerColor(node: RichTimelineNode): string | null; resolveTimelineNodeConnectorColor(node: RichTimelineNode): string | null; resolveTimelineItemClasses(node: RichTimelineNode, item: RichTimelineItem): string[]; resolveTimelineItemId(item: RichTimelineItem): string | null; resolveTimelineItemMarkerColor(item: RichTimelineItem): string | null; resolveTimelineItemConnectorColor(item: RichTimelineItem): string | null; resolveTimelineItemConnectorVariant(item: RichTimelineItem): string | null; resolveTimelineItemTitle(item: RichTimelineItem): string | null; resolveTimelineItemSubtitle(item: RichTimelineItem): string | null; resolveTimelineItemMeta(item: RichTimelineItem): string | null; resolveTimelineItemOpposite(item: RichTimelineItem): string | null; resolveTimelineItemIcon(item: RichTimelineItem): string | null; resolveTimelineItemBadge(item: RichTimelineItem): string | null; private resolveTimelineColor; private resolveTimelineMarkerStyle; private resolveTimelineConnectorStyle; resolvePresetNodes(node: RichPresetReferenceNode): RenderableNode[] | null; private expandPresetReference; private resolvePresetDocument; private getPresetKey; private buildEvaluationContext; private resolveValue; private resolveStructuredValue; private resolveBooleanExpression; private supportsRequiredCapabilities; private isTabsItemVisible; private evaluateRule; private supportsItemRequiredCapabilities; private resolveActiveTabsItemKey; private resolveTabsItemKey; private getRuntimeNodeKey; private getByPath; private resolveInitials; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface RichContentValidationIssue { path: string; messageKey: string; fallback: string; } interface RichContentValidationResult { valid: boolean; issues: RichContentValidationIssue[]; } declare function validateRichContentDocument(value: unknown): RichContentValidationResult; declare function isValidRichContentDocument(value: unknown): value is RichContentDocument; type EditableTopLevelNode = RichTextNode | RichBadgeNode | RichIconNode | RichAvatarNode | RichImageNode | RichLinkNode | RichMetricNode | RichProgressNode | RichActionButtonNode | RichComposeNode | RichCardNode | RichCalloutNode | RichCtaGroupNode | RichKeyValueListNode | RichPropertySheetNode | RichStatGroupNode | RichTabsNode | RichEmptyStateNode | RichRecordSummaryNode | RichLookupResultNode | RichLookupCardNode | RichRelatedRecordNode | RichActionCardNode | RichDecisionPackageNode | RichFormLauncherNode | RichCollapsibleCardNode | RichDisclosureNode | RichAccordionNode | RichMediaBlockNode | RichTimelineNode | RichPresetReferenceNode; type EditableTopLevelNodeType = EditableTopLevelNode['type']; type EditablePresenterNode = RichPresenterNode; type EditablePresenterNodeType = EditablePresenterNode['type']; type EditableCardContentNodeType = EditablePresenterNodeType | 'compose'; type EditableTimelineItemField = 'title' | 'titleExpr' | 'subtitle' | 'subtitleExpr' | 'meta' | 'metaExpr' | 'opposite' | 'oppositeExpr' | 'icon' | 'iconExpr' | 'badge' | 'badgeExpr' | 'markerColor' | 'markerStyle' | 'connectorColor' | 'connectorVariant'; type DecisionPackageStringField = 'title' | 'titleExpr' | 'subtitle' | 'subtitleExpr' | 'summary' | 'summaryExpr' | 'status' | 'statusExpr' | 'owner' | 'ownerExpr' | 'policySource' | 'policySourceExpr' | 'version' | 'versionExpr' | 'confidenceExpr' | 'risk' | 'riskExpr' | 'lastReviewed' | 'lastReviewedExpr' | 'supersedes' | 'supersedesExpr'; type DecisionPackageEvidence = NonNullable[number]; type DecisionPackageEvidenceField = 'id' | 'label' | 'labelExpr' | 'source' | 'sourceExpr'; type RichContentEditorPanel = 'guided' | 'preview' | 'json'; declare const ADVANCED_JSON_ONLY_NODE_FIELDS: readonly ["bindings", "disabledWhen", "loadWhen", "classWhen", "styleWhen"]; type AdvancedJsonOnlyNodeField = (typeof ADVANCED_JSON_ONLY_NODE_FIELDS)[number]; type DocumentContextField = 'scopes' | 'aliases'; interface PraxisRichContentEditorInputs { document?: RichContentDocument | null; layout?: 'block' | 'inline'; rootClassName?: string | null; [key: string]: unknown; } interface PraxisRichContentEditorValue { inputs: PraxisRichContentEditorInputs; } declare class PraxisRichContentConfigEditor implements SettingsValueProvider, OnChanges, OnInit { private readonly cdr; private readonly i18n; private readonly presetRegistry; private readonly injectedData; inputs: PraxisRichContentEditorInputs | null; readonly isDirty$: BehaviorSubject; readonly isValid$: BehaviorSubject; readonly isBusy$: BehaviorSubject; readonly editableNodeTypes: ("text" | "icon" | "image" | "link" | "badge" | "avatar" | "metric" | "progress" | "actionButton" | "compose" | "card" | "callout" | "ctaGroup" | "keyValueList" | "propertySheet" | "statGroup" | "tabs" | "emptyState" | "recordSummary" | "lookupResult" | "lookupCard" | "relatedRecord" | "actionCard" | "decisionPackage" | "formLauncher" | "collapsibleCard" | "disclosure" | "accordion" | "mediaBlock" | "timeline" | "preset")[]; readonly presenterNodeTypes: ("text" | "icon" | "image" | "link" | "badge" | "avatar" | "metric" | "progress" | "actionButton")[]; readonly cardContentNodeTypes: EditableCardContentNodeType[]; readonly advancedJsonOnlyNodeFields: readonly ["bindings", "disabledWhen", "loadWhen", "classWhen", "styleWhen"]; readonly presetOptions: _praxisui_rich_content.RichBlockPresetDefinition[]; documentJson: string; layout: 'block' | 'inline'; rootClassName: string; newNodeType: EditableTopLevelNodeType; errorMessage: string; valid: boolean; parsedDocument: RichContentDocument | null; validationIssues: RichContentValidationIssue[]; nodeCount: number; nodeTypeSummary: string; selectedNodeIndex: number; activeEditorPanel: RichContentEditorPanel; advancedRulesOpen: boolean; advancedJsonFieldErrors: Record; private initialInputs; private pendingRemoval; private advancedJsonFieldDrafts; ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; getSettingsValue(): PraxisRichContentEditorValue | null; onSave(): PraxisRichContentEditorValue | null; reset(): void; markDirty(): void; onDocumentJsonChange(): void; tx(key: string, fallback: string): string; useEmptyDocument(): void; selectTopLevelNode(index: number): void; selectEditorPanel(panel: RichContentEditorPanel): void; openAdvancedRules(): void; onAdvancedRulesToggle(event: Event): void; addTopLevelNode(): void; removeTopLevelNode(index: number): void; moveTopLevelNode(index: number, delta: number): void; changeTopLevelNodeType(index: number, nextType: EditableTopLevelNodeType): void; getStringField(node: RichBlockNode, field: string): string; setStringField(index: number, field: string, value: string): void; getNumberField(node: RichBlockNode, field: string): number | null; setNumberField(index: number, field: string, value: number | string | null): void; getActionButtonField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setActionButtonField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getObjectStringField(value: unknown, field: string): string; getBooleanField(node: RichBlockNode, field: string): boolean; setBooleanField(index: number, field: string, value: boolean): void; getCapabilityList(node: RichBlockNode): string; setCapabilityList(index: number, value: string): void; getCardSlotNodes(index: number, slot: 'header' | 'footer' | 'aside'): RichBlockNode[]; getCardContentNodes(index: number): Array; getCardMediaField(index: number, field: string): string; setCardMediaField(index: number, field: string, value: string): void; getCardInteractionField(index: number, field: string): string; setCardInteractionField(index: number, field: string, value: string): void; getCardInteractionBooleanField(index: number, field: string): boolean; setCardInteractionBooleanField(index: number, field: string, value: boolean): void; getCardInteractionActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setCardInteractionActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getCardAccessibilityField(index: number, field: string): string; setCardAccessibilityField(index: number, field: string, value: string): void; addCardSlotNode(index: number, slot: 'header' | 'footer' | 'aside'): void; addCardSlotNodeOfType(index: number, slot: 'header' | 'footer' | 'aside', type: EditablePresenterNodeType): void; setCardSlotStringField(index: number, slot: 'header' | 'footer' | 'aside', itemIndex: number, field: string, value: string): void; setCardSlotNumberField(index: number, slot: 'header' | 'footer' | 'aside', itemIndex: number, field: string, value: number | string | null): void; changeCardSlotType(index: number, slot: 'header' | 'footer' | 'aside', itemIndex: number, type: EditablePresenterNodeType): void; confirmCardSlotRemoval(index: number, slot: 'header' | 'footer' | 'aside', itemIndex: number): void; getCardActions(index: number): RichActionButtonNode[]; addCardAction(index: number): void; addCardActionPreset(index: number, preset: 'primary' | 'secondary'): void; setCardActionField(index: number, actionIndex: number, field: string, value: string): void; confirmCardActionRemoval(index: number, actionIndex: number): void; getNodeActions(index: number): RichActionButtonNode[]; addNodeAction(index: number): void; addNodeActionPreset(index: number, preset: 'primary' | 'secondary'): void; setNodeActionField(index: number, actionIndex: number, field: string, value: string): void; confirmNodeActionRemoval(index: number, actionIndex: number): void; getKeyValueItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr'): string; setKeyValueItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr', value: string): void; getRecordSummaryField(index: number, itemIndex: number, field: 'label' | 'valueExpr'): string; setRecordSummaryField(index: number, itemIndex: number, field: 'label' | 'valueExpr', value: string): void; getLookupResultField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint'): string; setLookupResultField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint', value: string): void; getLookupCardField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint'): string; setLookupCardField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint', value: string): void; getLookupCardActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setLookupCardActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getLookupCardSecondaryActions(index: number): RichActionButtonNode[]; addLookupCardSecondaryAction(index: number): void; addLookupCardSecondaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setLookupCardSecondaryActionField(index: number, actionIndex: number, field: string, value: string): void; confirmLookupCardSecondaryActionRemoval(index: number, actionIndex: number): void; getRelatedRecordField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint'): string; setRelatedRecordField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint', value: string): void; getRelatedRecordActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setRelatedRecordActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getRelatedRecordSecondaryActions(index: number): RichActionButtonNode[]; addRelatedRecordSecondaryAction(index: number): void; addRelatedRecordSecondaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setRelatedRecordSecondaryActionField(index: number, actionIndex: number, field: string, value: string): void; confirmRelatedRecordSecondaryActionRemoval(index: number, actionIndex: number): void; getPropertySheetItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint'): string; setPropertySheetItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'hint', value: string): void; getActionCardActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setActionCardActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getStatGroupItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'caption' | 'icon' | 'tone'): string; setStatGroupItemField(index: number, itemIndex: number, field: 'label' | 'valueExpr' | 'caption' | 'icon' | 'tone', value: string): void; getTabsItems(index: number): Array; addTabsItem(index: number): void; removeTabsItem(index: number, itemIndex: number): void; getTabsItemField(index: number, itemIndex: number, field: 'id' | 'label' | 'labelExpr' | 'icon' | 'badge' | 'badgeExpr' | 'capabilityMode'): string; setTabsItemField(index: number, itemIndex: number, field: 'id' | 'label' | 'labelExpr' | 'icon' | 'badge' | 'badgeExpr' | 'capabilityMode', value: string): void; getTabsItemCapabilityList(index: number, itemIndex: number): string; setTabsItemCapabilityList(index: number, itemIndex: number, value: string): void; getTabsItemVisibleWhenPath(index: number, itemIndex: number): string; getTabsItemVisibleWhenValue(index: number, itemIndex: number): string; setTabsItemVisibleWhenPath(index: number, itemIndex: number, path: string): void; setTabsItemVisibleWhenValue(index: number, itemIndex: number, value: string): void; private setTabsItemSimpleVisibleWhen; getActionCardSecondaryActions(index: number): RichActionButtonNode[]; addActionCardSecondaryAction(index: number): void; addActionCardSecondaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setActionCardSecondaryActionField(index: number, actionIndex: number, field: string, value: string): void; confirmActionCardSecondaryActionRemoval(index: number, actionIndex: number): void; setDecisionPackageField(index: number, field: DecisionPackageStringField, value: string): void; getDecisionPackageEvidence(index: number): DecisionPackageEvidence[]; addDecisionPackageEvidence(index: number): void; getDecisionPackageEvidenceField(index: number, evidenceIndex: number, field: DecisionPackageEvidenceField): string; setDecisionPackageEvidenceField(index: number, evidenceIndex: number, field: DecisionPackageEvidenceField, value: string): void; removeDecisionPackageEvidence(index: number, evidenceIndex: number): void; getDecisionPackagePrimaryAction(index: number): RichActionButtonNode | null; addDecisionPackagePrimaryAction(index: number): void; addDecisionPackagePrimaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setDecisionPackagePrimaryActionField(index: number, field: string, value: string): void; removeDecisionPackagePrimaryAction(index: number): void; getDecisionPackageSecondaryActions(index: number): RichActionButtonNode[]; addDecisionPackageSecondaryAction(index: number): void; addDecisionPackageSecondaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setDecisionPackageSecondaryActionField(index: number, actionIndex: number, field: string, value: string): void; confirmDecisionPackageSecondaryActionRemoval(index: number, actionIndex: number): void; getFormLauncherActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage'): string; setFormLauncherActionField(index: number, field: 'actionId' | 'payloadExpr' | 'availabilityExpr' | 'confirmMessage', value: string): void; getFormLauncherSecondaryActions(index: number): RichActionButtonNode[]; addFormLauncherSecondaryAction(index: number): void; addFormLauncherSecondaryActionPreset(index: number, preset: 'primary' | 'secondary'): void; setFormLauncherSecondaryActionField(index: number, actionIndex: number, field: string, value: string): void; confirmFormLauncherSecondaryActionRemoval(index: number, actionIndex: number): void; addAccordionItem(index: number): void; getAccordionItemField(index: number, itemIndex: number, field: 'title' | 'subtitle' | 'icon'): string; setAccordionItemField(index: number, itemIndex: number, field: 'title' | 'subtitle' | 'icon', value: string): void; getAccordionItemBooleanField(index: number, itemIndex: number, field: 'defaultExpanded'): boolean; setAccordionItemBooleanField(index: number, itemIndex: number, field: 'defaultExpanded', value: boolean): void; getAccordionItemActions(index: number, itemIndex: number): RichActionButtonNode[]; addAccordionItemAction(index: number, itemIndex: number): void; addAccordionItemActionPreset(index: number, itemIndex: number, preset: 'primary' | 'secondary'): void; setAccordionItemActionField(index: number, itemIndex: number, actionIndex: number, field: string, value: string): void; confirmAccordionItemActionRemoval(index: number, itemIndex: number, actionIndex: number): void; confirmAccordionItemRemoval(index: number, itemIndex: number): void; getVisibleWhenPath(node: RichBlockNode): string; getVisibleWhenValue(node: RichBlockNode): string; setVisibleWhenPath(index: number, path: string): void; setVisibleWhenValue(index: number, value: string): void; getFirstStyleName(node: RichBlockNode): string; getFirstStyleValue(node: RichBlockNode): string; setFirstStyleName(index: number, propertyName: string): void; setFirstStyleValue(index: number, propertyValue: string): void; hasDocumentContext(): boolean; getDocumentContextScopes(): string; setDocumentContextScopes(value: string): void; getDocumentContextAliasesValue(): string; setDocumentContextAliases(value: string): void; getDocumentContextFieldError(field: DocumentContextField): string; getDocumentContextAliasesPlaceholder(): string; getAdvancedJsonOnlyFields(node: RichBlockNode): string[]; getAdvancedJsonFieldValue(index: number, node: RichBlockNode, field: AdvancedJsonOnlyNodeField): string; setAdvancedJsonField(index: number, field: AdvancedJsonOnlyNodeField, value: string): void; getAdvancedJsonFieldError(index: number, field: AdvancedJsonOnlyNodeField): string; getAdvancedJsonFieldPlaceholder(field: AdvancedJsonOnlyNodeField): string; private getAdvancedJsonFieldKey; private getDocumentContextFieldKey; private updateDocumentContext; private setAdvancedJsonFieldInvalid; private clearAdvancedJsonFieldState; private hasAdvancedJsonFieldErrors; private isAdvancedJsonFieldShapeValid; private getAdvancedJsonFieldShapeError; requestTopLevelNodeRemoval(index: number): void; confirmTopLevelNodeRemoval(index: number): void; requestNestedRemoval(scope: string, index: number): void; cancelRemoval(): void; isRemovalPending(scope: string, index: number): boolean; addCardContentNode(cardIndex: number): void; setCardContentStringField(cardIndex: number, contentIndex: number, field: string, value: string): void; setCardContentNumberField(cardIndex: number, contentIndex: number, field: string, value: number | string | null): void; changeCardContentType(cardIndex: number, contentIndex: number, type: EditablePresenterNodeType): void; confirmCardContentRemoval(cardIndex: number, contentIndex: number): void; addComposeItem(composeIndex: number): void; setComposeItemStringField(composeIndex: number, itemIndex: number, field: string, value: string): void; setComposeItemNumberField(composeIndex: number, itemIndex: number, field: string, value: number | string | null): void; changeComposeItemType(composeIndex: number, itemIndex: number, type: EditablePresenterNodeType): void; confirmComposeItemRemoval(composeIndex: number, itemIndex: number): void; isPresenterNode(node: RichBlockNode): node is RichPresenterNode; isCardContentEditable(type: string): type is EditablePresenterNodeType; setMediaBlockAvatarField(index: number, field: string, value: string): void; getMediaBlockAvatarField(index: number, field: string): string; setMediaBlockTextField(index: number, field: 'title' | 'subtitle', value: string): void; getMediaBlockTextField(index: number, field: 'title' | 'subtitle'): string; addTimelineItem(index: number): void; setTimelineItemField(index: number, itemIndex: number, field: EditableTimelineItemField, value: string): void; getTimelineItemField(index: number, itemIndex: number, field: EditableTimelineItemField): string; confirmTimelineItemRemoval(index: number, itemIndex: number): void; setPresetSelection(index: number, optionValue: string): void; getPresetSelection(node: RichBlockNode): string; getPresetOptionValue(ref: CorePresetRef): string; getIssueMessages(path: string): string[]; getIssueCount(path: string): number; getSelectedNodeIssueCount(): number; isEditableNodeType(type: string): type is EditableTopLevelNodeType; private isPresenterNodeType; private load; private normalizeInputs; private ensureEditableDocument; private syncStructuredDocumentChange; private createDefaultNode; private getDefaultPresetRef; private ensureCardNode; private pruneEmptyCardInteraction; private ensureCardSlotNodes; private ensureCardContentNodes; private ensureCardActions; private ensureActionButtonNode; private ensureComposeNode; private ensureMediaBlockNode; private ensureKeyValueListNode; private ensureMediaBlockAvatar; private ensureRecordSummaryNode; private ensureLookupResultNode; private ensureLookupCardNode; private ensureRelatedRecordNode; private ensurePropertySheetNode; private ensureStatGroupNode; private ensureTabsNode; private ensureFormLauncherNode; private ensureActionCardNode; private ensureDecisionPackageNode; private ensureDecisionPackageEvidence; private ensureNodeActions; private ensureFormLauncherSecondaryActions; private ensureLookupCardSecondaryActions; private ensureRelatedRecordSecondaryActions; private ensureActionCardSecondaryActions; private ensureDecisionPackageSecondaryActions; private ensureAccordionNode; private ensureAccordionItemActions; private setActionNodeField; private createActionPreset; private ensureTimelineNode; private parseDocument; private setInvalidState; private reconcileSelectedNodeIndex; private updateDocumentOverview; private matchesInitialState; private cloneInputs; private cloneValue; private stringify; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface RichBlockPresetDefinition extends CorePresetDescriptor { ref: CorePresetRef & { kind: 'rich-block'; }; document: RichContentDocument; } declare const PRAXIS_RICH_BLOCK_PRESETS: InjectionToken; declare class RichContentPresetRegistryService { private readonly presetDefinitions; list(): RichBlockPresetDefinition[]; get(ref: CorePresetRef): RichBlockPresetDefinition | null; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵprov: _angular_core.ɵɵInjectableDeclaration; } declare function providePraxisDefaultRichBlockPresets(): Provider; declare const PRAXIS_RICH_CONTENT_COMPONENT_METADATA: ComponentDocMeta; declare function providePraxisRichContentMetadata(): Provider; declare module '@praxisui/core' { interface AiCapabilityCategoryMap { richContent: true; richNode: true; richRules: true; richHost: true; } } type RichContentCapabilityCategory = AiCapabilityCategory; type RichContentValueKind = AiValueKind; interface RichContentCapability extends AiCapability { category: RichContentCapabilityCategory; } interface RichContentCapabilityCatalog extends AiCapabilityCatalog { capabilities: RichContentCapability[]; } declare const RICH_CONTENT_AI_CAPABILITIES: RichContentCapabilityCatalog; declare const PRAXIS_RICH_CONTENT_AUTHORING_MANIFEST: ComponentAuthoringManifest; interface PraxisRichContentI18nOptions { locale?: string; fallbackLocale?: string; dictionaries?: Record; } declare function createPraxisRichContentI18nConfig(options?: PraxisRichContentI18nOptions): Partial; declare function providePraxisRichContentI18n(options?: PraxisRichContentI18nOptions): _angular_core.Provider[]; declare function resolvePraxisRichContentText(i18n: PraxisI18nService, key: string, fallback: string): string; export { PRAXIS_RICH_BLOCK_PRESETS, PRAXIS_RICH_CONTENT_AUTHORING_MANIFEST, PRAXIS_RICH_CONTENT_COMPONENT_METADATA, PraxisRichContent, PraxisRichContentConfigEditor, RICH_CONTENT_AI_CAPABILITIES, RichContentPresetRegistryService, createPraxisRichContentI18nConfig, isValidRichContentDocument, providePraxisDefaultRichBlockPresets, providePraxisRichContentI18n, providePraxisRichContentMetadata, resolvePraxisRichContentText, validateRichContentDocument }; export type { PraxisRichContentEditorInputs, PraxisRichContentEditorValue, PraxisRichContentI18nOptions, RichBlockPresetDefinition, RichContentCapability, RichContentCapabilityCatalog, RichContentCapabilityCategory, RichContentValidationIssue, RichContentValidationResult, RichContentValueKind };