import * as React$1 from 'react'; import React__default, { CSSProperties } from 'react'; import * as Icons from 'lucide-react'; import { LucideIcon } from 'lucide-react'; import * as class_variance_authority_types from 'class-variance-authority/types'; import { VariantProps } from 'class-variance-authority'; import * as LabelPrimitive from '@radix-ui/react-label'; import * as CheckboxPrimitive from '@radix-ui/react-checkbox'; import * as RadioGroupPrimitive from '@radix-ui/react-radio-group'; import * as SwitchPrimitives from '@radix-ui/react-switch'; import * as SliderPrimitive from '@radix-ui/react-slider'; import * as SelectPrimitive from '@radix-ui/react-select'; import * as input_otp from 'input-otp'; import * as _radix_ui_react_slot from '@radix-ui/react-slot'; import * as react_jsx_runtime from 'react/jsx-runtime'; import * as react_hook_form from 'react-hook-form'; import { FieldValues, FieldPath, ControllerProps } from 'react-hook-form'; import * as SeparatorPrimitive from '@radix-ui/react-separator'; import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area'; import * as AspectRatioPrimitive from '@radix-ui/react-aspect-ratio'; import * as ResizablePrimitive from 'react-resizable-panels'; import * as TabsPrimitive from '@radix-ui/react-tabs'; import * as AccordionPrimitive from '@radix-ui/react-accordion'; import * as CollapsiblePrimitive from '@radix-ui/react-collapsible'; import * as DialogPrimitive from '@radix-ui/react-dialog'; import { DialogProps } from '@radix-ui/react-dialog'; import { Drawer as Drawer$1 } from 'vaul'; import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog'; import * as PopoverPrimitive from '@radix-ui/react-popover'; import * as HoverCardPrimitive from '@radix-ui/react-hover-card'; import * as TooltipPrimitive from '@radix-ui/react-tooltip'; import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu'; import * as ContextMenuPrimitive from '@radix-ui/react-context-menu'; import * as MenubarPrimitive from '@radix-ui/react-menubar'; import * as NavigationMenuPrimitive from '@radix-ui/react-navigation-menu'; import * as AvatarPrimitive from '@radix-ui/react-avatar'; import * as ProgressPrimitive from '@radix-ui/react-progress'; import { DayPicker } from 'react-day-picker'; import useEmblaCarousel, { UseEmblaCarouselType } from 'embla-carousel-react'; import { ClassValue } from 'clsx'; interface FormInputAtomType { type: "FormInput"; name: string; label?: string; placeholder?: string; description?: string; defaultValue?: string; required?: boolean; inputType?: "text" | "email" | "password" | "number" | "tel" | "url" | "date" | "time"; className?: string; id?: string; } interface FormInputAtomProps extends Omit { renderComponent?: any; children?: any; } /** * FormInputAtom * * Self-contained form input component that properly wraps FormField, FormItem, FormLabel, and FormControl. * This component provides the necessary React Context for form components to work correctly. * * Features: * - Handles all form context requirements internally * - Supports various input types (text, email, password, etc.) * - Includes validation support through react-hook-form * - Schema-safe for dynamic rendering via PXEngineRenderer */ declare const FormInputAtom: React__default.FC; interface SelectOption { value: string; label: string; } interface FormSelectAtomType { type: "FormSelect"; name: string; label?: string; placeholder?: string; description?: string; defaultValue?: string; required?: boolean; options: SelectOption[]; className?: string; id?: string; } interface FormSelectAtomProps extends Omit { renderComponent?: any; children?: any; } /** * FormSelectAtom * * Self-contained form select component that properly wraps FormField, FormItem, FormLabel, FormControl, and Select. * This component provides the necessary React Context for both form and select components to work correctly. * * Features: * - Handles all form and select context requirements internally * - Supports dynamic options list * - Includes validation support through react-hook-form * - Schema-safe for dynamic rendering via PXEngineRenderer */ declare const FormSelectAtom: React__default.FC; interface FormTextareaAtomType { type: "FormTextarea"; name: string; label?: string; placeholder?: string; description?: string; defaultValue?: string; required?: boolean; rows?: number; className?: string; id?: string; } interface FormTextareaAtomProps extends Omit { renderComponent?: any; children?: any; } /** * FormTextareaAtom * * Self-contained form textarea component that properly wraps FormField, FormItem, FormLabel, and FormControl. * This component provides the necessary React Context for form components to work correctly. * * Features: * - Handles all form context requirements internally * - Supports configurable rows * - Includes validation support through react-hook-form * - Schema-safe for dynamic rendering via PXEngineRenderer */ declare const FormTextareaAtom: React__default.FC; type LayoutDirection = "vertical" | "horizontal" | "grid"; type GapSize = "none" | "sm" | "md" | "lg" | "xl"; type TextVariant = "h1" | "h2" | "h3" | "h4" | "p" | "small" | "muted" | "label"; type ButtonVariant$1 = "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | "purple" | "gradient"; type ButtonSize$1 = "default" | "sm" | "lg" | "icon" | "xl"; type InputType = "text" | "email" | "password" | "number" | "search" | "tel" | "url" | "textarea" | "select" | "slider" | "checkbox" | "switch" | "radio" | "otp" | "date" | "time" | "datetime-local" | "color" | "file" | "dropdown"; type ButtonAction = "submit" | "reset" | "cancel" | "next" | "back" | "custom"; interface BaseAtom { id: string; type: string; className?: string; style?: React.CSSProperties; } interface ButtonAtomType extends BaseAtom { type: "button"; label: string; variant?: ButtonVariant$1; size?: ButtonSize$1; /** * REQUIRED — Submission handler action. * - "submit": Collects all sibling inputs and sends them as Q/A pairs to the agent via Run SSE * - "reset": Clears all input values * - "cancel": Closes/cancels the widget * - "next" / "back": Multi-step navigation * - "custom": User-defined handler via onAction prop */ action: ButtonAction | string; /** Optional payload key sent alongside Q/A pairs (e.g. agent name, custom intent) */ actionPayload?: Record; disabled?: boolean; isLoading?: boolean; icon?: IconName; iconPosition?: "left" | "right"; } interface InputAtomType extends BaseAtom { type: "input"; inputType: InputType; /** Visible label for the field — auto-used as the Q in Q/A submission if `question` is unset */ label?: string; /** Explicit Q text used when serializing this input for agent submission. Falls back to `label`. */ question?: string; placeholder?: string; defaultValue?: any; required?: boolean; disabled?: boolean; options?: Array<{ label: string; value: string; }>; config?: Record; labelColor?: string; /** Stable key for the answer in Q/A submission. Defaults to id. */ fieldKey?: string; /** * When provided, the atom renders as a live interactive input (not readOnly). * Called with (fieldKey | id, newValue) on every change. */ onValueChange?: (key: string, value: any) => void; } interface ToggleAtomType extends BaseAtom { type: "toggle"; label: string; pressed?: boolean; disabled?: boolean; size?: "sm" | "md" | "lg"; variant?: "default" | "outline"; } interface CheckboxAtomType extends BaseAtom { type: "checkbox"; label?: string; question?: string; fieldKey?: string; checked?: boolean; disabled?: boolean; } interface SwitchAtomType extends BaseAtom { type: "switch"; label?: string; question?: string; fieldKey?: string; checked?: boolean; disabled?: boolean; } interface LabelAtomType extends BaseAtom { type: "label"; content: string; htmlFor?: string; } interface SliderAtomType extends BaseAtom { type: "slider"; label?: string; question?: string; fieldKey?: string; defaultValue?: number[]; max?: number; min?: number; step?: number; disabled?: boolean; } interface RadioGroupAtomType extends BaseAtom { type: "radio-group"; label?: string; question?: string; fieldKey?: string; options: Array<{ label: string; value: string; }>; defaultValue?: string; disabled?: boolean; } interface RadioAtomType extends BaseAtom { type: "radio"; label?: string; value?: string; checked?: boolean; disabled?: boolean; } interface DropdownMenuAtomType extends BaseAtom { type: "dropdown-menu"; trigger: any; items: Array<{ label: string; value: string; icon?: string; action?: string; disabled?: boolean; isDestructive?: boolean; }>; } interface TextAtomType extends BaseAtom { type: "text"; content: string; variant: TextVariant; backgroundColor?: string; markdown?: boolean; } interface LayoutAtomType extends BaseAtom { type: "layout"; direction: LayoutDirection; gap?: GapSize; children: any[]; } interface CardAtomType extends BaseAtom { type: "card"; title?: string; description?: string; children: any[]; footer?: any[]; } interface TabsAtomType extends BaseAtom { type: "tabs"; defaultValue: string; tabs: Array<{ value: string; label: string; content: any[]; }>; } interface AccordionAtomType extends BaseAtom { type: "accordion"; items: Array<{ value: string; trigger: string; content: any[]; }>; } interface SeparatorAtomType extends BaseAtom { type: "separator"; orientation?: "horizontal" | "vertical"; } interface KbdAtomType extends BaseAtom { type: "kbd"; keys: string[]; } interface RatingAtomType extends BaseAtom { type: "rating"; label?: string; question?: string; fieldKey?: string; value: number; max?: number; readonly?: boolean; } interface ScrollAreaAtomType extends BaseAtom { type: "scroll-area"; maxHeight?: string; children: any[]; } type IconName = { [K in keyof typeof Icons]: typeof Icons[K] extends LucideIcon ? K : never; }[keyof typeof Icons]; interface IconAtomType extends BaseAtom { type: "icon"; icon: IconName; size?: number; color?: string; strokeWidth?: number; textColor?: string; className?: string; style?: CSSProperties; } interface ArrowToggleAtomType extends BaseAtom { type: "arrow-toggle"; isExpanded?: boolean; onToggle?: (isExpanded: boolean) => void; size?: number | string; } interface AvatarAtomType extends BaseAtom { type: "avatar"; src?: string; fallback: string; alt?: string; } interface BadgeAtomType extends BaseAtom { type: "badge"; label: string; variant?: "default" | "secondary" | "destructive" | "outline" | "purple" | "green"; } interface ProgressAtomType extends BaseAtom { type: "progress"; value: number; } interface TableAtomType extends BaseAtom { type: "table"; headers: string[]; rows: any[][]; headerTextColor?: string; headerBgColor?: string; rowTextColor?: string; rowBgColor?: string; hoverBgColor?: string; borderColor?: string; } interface CarouselAtomType extends BaseAtom { type: "carousel"; items: any[][]; } interface AlertAtomType extends BaseAtom { type: "alert"; title: string; description?: string; variant?: "default" | "destructive" | "warning" | "info" | "success"; } interface TooltipAtomType extends BaseAtom { type: "tooltip"; content: string; children: any[]; } interface PopoverAtomType extends BaseAtom { type: "popover"; trigger: any[]; content: any[]; } interface DialogAtomType extends BaseAtom { type: "dialog"; title: string; description?: string; trigger: any[]; children: any[]; footer?: any[]; } interface AspectRatioAtomType extends BaseAtom { type: "aspect-ratio"; ratio: number; children: any[]; } interface CollapsibleAtomType extends BaseAtom { type: "collapsible"; trigger: any[]; content: any[]; defaultOpen?: boolean; } interface SheetAtomType extends BaseAtom { type: "sheet"; side?: "top" | "bottom" | "left" | "right"; title?: string; description?: string; trigger: any[]; children: any[]; footer?: any[]; } interface AlertDialogAtomType extends BaseAtom { type: "alert-dialog"; title: string; description?: string; trigger: any[]; confirmLabel?: string; cancelLabel?: string; action?: string; } interface DrawerAtomType extends BaseAtom { type: "drawer"; side?: "top" | "bottom" | "left" | "right"; title?: string; description?: string; trigger: any[]; children: any[]; } interface ContextMenuAtomType extends BaseAtom { type: "context-menu"; trigger: any[]; items: Array<{ label: string; value: string; icon?: string; action?: string; disabled?: boolean; isDestructive?: boolean; }>; } interface TimelineAtomType extends BaseAtom { type: "timeline"; items: Array<{ title: string; description?: string; timestamp?: string; status?: "completed" | "active" | "upcoming"; icon?: string; }>; } interface BreadcrumbAtomType extends BaseAtom { type: "breadcrumb"; items: Array<{ label: string; href?: string; isCurrent?: boolean; }>; } interface SkeletonAtomType extends BaseAtom { type: "skeleton"; shape?: "rect" | "circle"; width?: string | number; height?: string | number; } interface SpinnerAtomType extends BaseAtom { type: "spinner"; size?: "sm" | "md" | "lg" | "xl"; } interface CommandAtomType extends BaseAtom { type: "command"; placeholder?: string; groups: Array<{ heading?: string; items: Array<{ label: string; value: string; icon?: string; action?: string; }>; }>; } interface PaginationAtomType extends BaseAtom { type: "pagination"; currentPage: number; totalPages: number; hasNext?: boolean; hasPrev?: boolean; } interface CalendarAtomType extends BaseAtom { type: "calendar"; label?: string; question?: string; fieldKey?: string; mode?: "single" | "range" | "multiple"; selectedDate?: string | string[]; } interface InputOTPAtomType extends BaseAtom { type: "input-otp"; label?: string; question?: string; fieldKey?: string; length: number; placeholder?: string; } interface ResizableAtomType extends BaseAtom { type: "resizable"; direction: "horizontal" | "vertical"; panels: Array<{ defaultSize: number; children: any[]; }>; } interface VideoAtomType extends BaseAtom { type: "video"; src: string; poster?: string; autoplay?: boolean; controls?: boolean; muted?: boolean; loop?: boolean; } interface ChartAtomType extends BaseAtom { type: "chart"; chartType: "bar" | "line" | "area" | "pie" | "radar" | "radial"; data: any[]; config: Record; XAxisKey?: string; YAxisKey?: string; showTooltip?: boolean; showLegend?: boolean; stacked?: boolean; seriesColors?: string[]; } type UIAtom = ButtonAtomType | InputAtomType | ToggleAtomType | TextAtomType | LayoutAtomType | CardAtomType | TabsAtomType | AccordionAtomType | SeparatorAtomType | ScrollAreaAtomType | AspectRatioAtomType | CollapsibleAtomType | AvatarAtomType | BadgeAtomType | ProgressAtomType | TableAtomType | CarouselAtomType | AlertAtomType | TooltipAtomType | PopoverAtomType | DialogAtomType | SheetAtomType | AlertDialogAtomType | SkeletonAtomType | SpinnerAtomType | BreadcrumbAtomType | CalendarAtomType | PaginationAtomType | CommandAtomType | FormInputAtomType | FormSelectAtomType | FormTextareaAtomType | CheckboxAtomType | SwitchAtomType | LabelAtomType | SliderAtomType | RadioGroupAtomType | RadioAtomType | DropdownMenuAtomType | ContextMenuAtomType | DrawerAtomType | InputOTPAtomType | KbdAtomType | ResizableAtomType | RatingAtomType | TimelineAtomType | VideoAtomType | ChartAtomType | IconAtomType | ArrowToggleAtomType; type ButtonVariant = "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | "purple"; type ButtonSize = "default" | "sm" | "lg" | "icon"; /** * Field types for EditableField molecule */ type FieldType = "text" | "textarea" | "number" | "slider" | "checkbox" | "select" | "custom"; /** * Field configuration for forms */ interface FieldConfig { key: string; label: string; type: FieldType; placeholder?: string; required?: boolean; options?: string[] | Array<{ label: string; value: string; }>; sliderConfig?: SliderConfig; numberConfig?: NumberConfig; rows?: number; renderDisplay?: (value: any) => React.ReactNode; renderEdit?: (value: any, onChange: (value: any) => void) => React.ReactNode; } /** * Slider configuration */ interface SliderConfig { min: number; max: number; step: number; marks?: Record; formatValue?: (value: any) => string; } /** * Number input configuration */ interface NumberConfig { min?: number; max?: number; step?: number; formatValue?: (value: any) => string; } /** * Editable organism prop definition — mirrors admin PropDefinition with editable metadata. * Used by generateFieldsFromPropDefinitions() to create FieldConfig arrays. */ interface EditableOrganismPropDef { name: string; type: "string" | "number" | "boolean" | "object" | "array"; defaultValue?: any; description?: string; required?: boolean; editable?: boolean; editConfig?: { editFieldType: FieldType; placeholder?: string; options?: string[] | Array<{ label: string; value: string; }>; sliderConfig?: { min: number; max: number; step: number; }; numberConfig?: { min?: number; max?: number; step?: number; }; }; } interface WidgetTheme { /** Card / container background. Replaces `cardSurface`. */ background?: string; /** Inner surface background (rows, cells, option blocks). Replaces `black/20`. */ surface?: string; /** Border color. Replaces `gray400`. */ border?: string; /** Primary text. Replaces `cardText`. */ text?: string; /** Secondary / muted text. Replaces `cardText/50`. */ textMuted?: string; /** Accent / highlight color. Replaces `gold` (#BFAD82). Used for selected states, stars, progress, active steps. */ accent?: string; /** Readable text color to place ON the accent (auto-contrast: white or near-black). */ accentForeground?: string; /** Border width in px for cards/containers (default: keep existing 1px border). */ borderWidth?: number; /** Corner radius in px for cards/containers. */ radius?: number; /** Font family applied to widget text. */ fontFamily?: string; /** Box-shadow / elevation CSS value (e.g. "0 1px 2px rgba(0,0,0,.4)"). */ shadow?: string; /** Semantic success color (positive states, confirmations). */ success?: string; /** Semantic warning color (caution states). */ warning?: string; /** Semantic danger color (errors, destructive actions). */ danger?: string; /** Optional brand gradient for hero/accent surfaces (e.g. "linear-gradient(135deg,#a,#b)"). */ gradient?: string; } /** * React context that carries the active WidgetTheme down the render tree, so * deeply-nested molecules can pick it up even when they aren't passed `theme` * directly. An explicit `theme` prop always wins over the context value. */ declare const WidgetThemeContext: React$1.Context; /** Resolve the effective theme: explicit prop first, else the nearest context. */ declare function useWidgetTheme(explicit?: WidgetTheme): WidgetTheme | undefined; /** Convert a hex color to rgba with the given alpha (0–1). Falls back to the original string for non-hex values. */ declare function withAlpha(color: string, alpha: number): string; /** * Resolves a WidgetTheme into ready-to-use CSSProperties objects. * Every property is undefined when no theme value is set, so Tailwind * CSS-variable classes remain in effect as the default. */ declare function th(theme?: WidgetTheme): { root: CSSProperties; surface: CSSProperties; text: CSSProperties; muted: CSSProperties; accent: CSSProperties; accentBg: CSSProperties; accentBorder: CSSProperties; accentText: CSSProperties; accentSubtle: (alpha?: number) => CSSProperties; semantic: (kind: "success" | "warning" | "danger") => CSSProperties; gradientBg: CSSProperties; }; /** * Engine-agnostic analytics chart contract. * * Analytics modules (and the server's chart_decider output) describe charts * declaratively via this config. The UI Library owns the translation into the * concrete charting engine (Highcharts), so frontends never write chart code. */ type AnalyticsChartType = "line" | "spline" | "area" | "areaspline" | "bar" | "column" | "pie" | "donut" | "funnel" | "heatmap" | "scatter"; /** A single data point. Supports scalar, tuple, and rich-object forms. */ type AnalyticsPoint = number | [string | number, number] | { name?: string; x?: string | number; y?: number; /** Used by heatmap (3rd dim) / treemap-style series. */ value?: number; color?: string; [key: string]: unknown; }; interface AnalyticsSeries { /** Series label shown in legend/tooltip. */ name: string; data: AnalyticsPoint[]; /** Per-series override of the chart-level type (mixed charts). */ type?: AnalyticsChartType; color?: string; /** Stack bucket name — series sharing a stack are stacked together. */ stack?: string; /** Plot on the secondary (opposite) y-axis. */ yAxis?: number; } interface AnalyticsAxisConfig { title?: string; type?: "linear" | "datetime" | "category" | "logarithmic"; categories?: (string | number)[]; /** Highcharts label format string, e.g. "${value:,.1f}M". */ format?: string; min?: number; max?: number; /** Render on the opposite side (secondary axis). */ opposite?: boolean; } interface AnalyticsTooltipConfig { shared?: boolean; valuePrefix?: string; valueSuffix?: string; /** Highcharts pointFormat override. */ pointFormat?: string; } /** Stacking mode for bar/column/area families. */ type StackingMode = boolean | "normal" | "percent"; /** Time bucket hint for time-series grouping (consumed by data-mapping layer). */ type TimeGrouping = "day" | "week" | "month" | "quarter" | "year"; /** * The full declarative chart config. Either pass this (`chartConfig`) or the * flattened props on the molecule, or a raw Highcharts `config` for passthrough * of server chart_decider output. */ interface AnalyticsChartConfig { type: AnalyticsChartType; title?: string; subtitle?: string; series: AnalyticsSeries[]; /** Shared x categories (bar/column/line over labels). */ categories?: (string | number)[]; xAxis?: AnalyticsAxisConfig; yAxis?: AnalyticsAxisConfig | AnalyticsAxisConfig[]; /** Series color overrides (falls back to the PXEngine analytics palette). */ colors?: string[]; stacked?: StackingMode; legend?: boolean; tooltip?: AnalyticsTooltipConfig; dataLabels?: boolean | { format?: string; }; timeGrouping?: TimeGrouping; height?: number; } interface BaseMolecule extends BaseAtom { } /** Shared schema for the configurable analytics chart family. */ interface BaseAnalyticsChartMolecule extends BaseMolecule { title?: string; subtitle?: string; series?: AnalyticsSeries[]; categories?: (string | number)[]; xAxis?: AnalyticsAxisConfig; yAxis?: AnalyticsAxisConfig | AnalyticsAxisConfig[]; colors?: string[]; stacked?: StackingMode; legend?: boolean; tooltip?: AnalyticsTooltipConfig; dataLabels?: boolean | { format?: string; }; mode?: "light" | "dark" | "auto"; height?: number; loading?: boolean; error?: string | null; emptyMessage?: string; /** Full declarative config (alternative to flattened props). */ chartConfig?: AnalyticsChartConfig; /** Raw Highcharts options passthrough (server chart_decider output). */ config?: Record; } interface AnalyticsChartMolecule extends BaseAnalyticsChartMolecule { type: "analytics-chart"; chartType?: AnalyticsChartConfig["type"]; } interface LineChartMolecule extends BaseAnalyticsChartMolecule { type: "line-chart"; } interface AreaChartMolecule extends BaseAnalyticsChartMolecule { type: "area-chart"; } interface BarChartMolecule extends BaseAnalyticsChartMolecule { type: "bar-chart"; } interface StackedBarChartMolecule extends BaseAnalyticsChartMolecule { type: "stacked-bar-chart"; } interface ColumnChartMolecule extends BaseAnalyticsChartMolecule { type: "column-chart"; } interface StackedColumnChartMolecule extends BaseAnalyticsChartMolecule { type: "stacked-column-chart"; } interface PieChartMolecule extends BaseAnalyticsChartMolecule { type: "pie-chart"; } interface DonutChartMolecule extends BaseAnalyticsChartMolecule { type: "donut-chart"; } interface FunnelChartMolecule extends BaseAnalyticsChartMolecule { type: "funnel-chart"; } interface HeatmapChartMolecule extends BaseAnalyticsChartMolecule { type: "heatmap-chart"; } interface TimeSeriesChartMolecule extends BaseAnalyticsChartMolecule { type: "time-series-chart"; } interface ComparativeChartMolecule extends BaseAnalyticsChartMolecule { type: "comparative-chart"; } interface TrendIndicatorMolecule extends BaseMolecule { type: "trend-indicator"; value: string | number; trend?: "up" | "down" | "neutral"; invertColors?: boolean; label?: string; } interface KPIMetricCardMolecule extends BaseMolecule { type: "kpi-metric-card"; label: string; value: string | number; unit?: string; delta?: string; trend?: "up" | "down" | "neutral"; invertTrendColors?: boolean; icon?: string; sparkline?: number[]; sparklineColor?: string; mode?: "light" | "dark" | "auto"; loading?: boolean; } interface AnalyticsSummaryCardMolecule extends BaseMolecule { type: "analytics-summary-card"; title?: string; subtitle?: string; metrics: Array<{ label: string; value: string | number; unit?: string; delta?: string; trend?: "up" | "down" | "neutral"; invertTrendColors?: boolean; icon?: string; sparkline?: number[]; }>; chart?: AnalyticsChartConfig; columns?: 2 | 3 | 4; mode?: "light" | "dark" | "auto"; loading?: boolean; } interface DynamicFormCardMolecule extends BaseMolecule { type: "dynamic-form-card"; data?: Record; fields?: FieldConfig[]; title?: string; proceedLabel?: string; showTimeline?: boolean; isLatestMessage?: boolean; } interface CampaignSeedCardAtom extends BaseMolecule { type: "campaign-seed"; data: Record; title?: string; isLatestMessage?: boolean; selectionStatus?: "user" | "agent"; countdown?: number; isPaused?: boolean; proceedAction?: string; } interface SearchSpecCardAtom extends BaseMolecule { type: "search-spec"; data: Record; title?: string; version?: number; isLatestMessage?: boolean; selectionStatus?: "user" | "agent"; countdown?: number; isPaused?: boolean; proceedAction?: string; } interface MCQCardAtom extends BaseMolecule { type: "mcq"; question: string; options: Record; recommended?: string; selectedOption?: string; /** * Pre-selected option keys for multi-select / historical view. */ selectedOptions?: string[]; /** * Maximum number of options the user may pick. Defaults to 1 (single-select). * Set to >= 2 to enable multi-select (e.g. "Choose any 2 options"). */ maxSelections?: number; /** * Minimum number of options required before the user can continue. * Defaults to `maxSelections` when multi-select (exact-N), otherwise 1. */ minSelections?: number; isLatestMessage?: boolean; countdown?: number; isPaused?: boolean; selectionStatus?: "user" | "agent"; proceedAction?: string; } interface RecommendationCardMolecule extends BaseMolecule { type: "recommendation"; question: string; recommended: string; recommended_reason?: string; isLatestMessage?: boolean; } interface ConfirmationCardMolecule extends BaseMolecule { type: "confirmation"; title: string; description: string; question?: string; confirm_label?: string; cancel_label?: string; isLatestMessage?: boolean; } interface ActionButtonAtom extends BaseMolecule { type: "action-button"; label: string; countdown?: number; isPaused?: boolean; secondaryLabel?: string; action?: string; } interface StatsGridMolecule extends BaseMolecule { type: "stats-grid"; items: Array<{ label: string; value: string | number; trend?: string; trendDirection?: "up" | "down" | "neutral"; icon?: string; }>; } interface EmptyStateMolecule extends BaseMolecule { type: "empty-state"; title: string; description: string; icon?: string; actionLabel?: string; action?: string; } interface LoadingOverlayMolecule extends BaseMolecule { type: "loading-overlay"; message?: string; } interface InsightSummaryCardMolecule extends BaseMolecule { type: "insight-summary-card"; title: string; summary?: string; insights: Array<{ label: string; value: string; confidence?: "High" | "Medium" | "Low"; }>; } interface ResearchBriefCardMolecule extends BaseMolecule { type: "research-brief-card"; title: string; objective: string; constraints?: string[]; requiredData?: Array<{ label: string; value: string; }>; owner?: string; dueDate?: string; } interface PriorityActionsCardMolecule extends BaseMolecule { type: "priority-actions-card"; title: string; summary?: string; actions: Array<{ title: string; owner?: string; timeline?: string; rationale?: string; priority?: "High" | "Medium" | "Low"; }>; } interface KPIStatsCardMolecule extends BaseMolecule { type: "kpi-stats-card"; title?: string; subtitle?: string; stats?: Array<{ label: string; value: string | number; delta?: string; trend?: "up" | "down" | "neutral"; unit?: string; icon?: string; }>; items?: Array<{ label: string; value: string | number; delta?: string; trend?: "up" | "down" | "neutral"; unit?: string; icon?: string; }>; } interface ApprovalCardMolecule extends BaseMolecule { type: "approval-card"; title: string; description?: string; details?: Array<{ label: string; value: string; }>; status?: "pending" | "approved" | "rejected" | "changes_requested"; approve_label?: string; reject_label?: string; changes_label?: string; show_changes_button?: boolean; isLatestMessage?: boolean; } interface TimelineCardMolecule extends BaseMolecule { type: "timeline-card"; title?: string; steps?: Array<{ label: string; description?: string; status: "completed" | "active" | "pending"; timestamp?: string; }>; milestones?: Array<{ label: string; description?: string; status: "completed" | "active" | "pending"; timestamp?: string; }>; } interface FeedbackRatingCardMolecule extends BaseMolecule { type: "feedback-rating-card"; question: string; max_rating?: number; rating_label?: string; comment_placeholder?: string; show_comment?: boolean; submit_label?: string; isLatestMessage?: boolean; } interface DataTableCardMolecule extends BaseMolecule { type: "data-table-card"; title?: string; caption?: string; columns: string[]; rows: Array>; highlight_column?: string; } interface ChecklistCardMolecule extends BaseMolecule { type: "checklist-card"; title?: string; description?: string; items?: Array<{ id: string; label: string; description?: string; checked?: boolean; required?: boolean; }>; tasks?: Array<{ id: string; label: string; description?: string; checked?: boolean; required?: boolean; }>; submit_label?: string; require_all?: boolean; isLatestMessage?: boolean; } interface PollCardMolecule extends BaseMolecule { type: "poll-card"; question: string; options?: Array<{ id: string; label: string; votes?: number; }>; choices?: Array<{ id: string; label: string; votes?: number; }>; total_votes?: number; allow_multiple?: boolean; vote_label?: string; isLatestMessage?: boolean; } interface CampaignBriefCardMolecule extends BaseMolecule { type: "campaign-brief-card"; title: string; objective: string; audience?: string; budget?: string; timeline?: string; constraints?: string[]; } interface DataSourceChecklistCardMolecule extends BaseMolecule { type: "data-source-checklist-card"; title: string; items: Array<{ id: string; source: string; connected?: boolean; note?: string; }>; submit_label?: string; isLatestMessage?: boolean; } interface GoalAlignmentCardMolecule extends BaseMolecule { type: "goal-alignment-card"; title: string; goals: Array<{ goal: string; status?: "Aligned" | "Partial" | "Misaligned"; note?: string; }>; } interface AudiencePersonaCardMolecule extends BaseMolecule { type: "audience-persona-card"; title: string; segments: Array<{ name: string; percentage?: number; interest?: string; }>; } interface ChannelPlanCardMolecule extends BaseMolecule { type: "channel-plan-card"; title: string; plans: Array<{ channel: string; objective?: string; cadence?: string; }>; } interface InsightDigestCardMolecule extends BaseMolecule { type: "insight-digest-card"; title: string; summary?: string; insights: Array<{ label: string; detail: string; confidence?: "High" | "Medium" | "Low"; }>; } interface ActionPriorityCardMolecule extends BaseMolecule { type: "action-priority-card"; title: string; actions: Array<{ title: string; owner?: string; timeline?: string; priority?: "High" | "Medium" | "Low"; }>; } interface RiskSignalCardMolecule extends BaseMolecule { type: "risk-signal-card"; title: string; risks: Array<{ signal: string; severity?: "High" | "Medium" | "Low"; impact?: string; }>; } interface ScoreBreakdownCardMolecule extends BaseMolecule { type: "score-breakdown-card"; title: string; totalScore?: number; outOf?: number; items: Array<{ label: string; score: number; outOf?: number; }>; } interface NextStepCardMolecule extends BaseMolecule { type: "next-step-card"; title: string; steps: Array<{ step: string; owner?: string; due?: string; }>; ctaLabel?: string; } interface PlatformIconGroupMolecule extends BaseMolecule { type: "platform-icon-group"; platforms: Array<{ platform: "instagram" | "tiktok" | "youtube" | "twitter"; url?: string; handle?: string; }>; } interface CreatorProfileSummaryMolecule extends BaseMolecule { type: "creator-profile-summary"; avatarSrc?: string; name: string; followerCount?: string | number; engagementRate?: string | number; } interface AudienceMetricCardMolecule extends BaseMolecule { type: "audience-metric-card"; title: string; metrics: Array<{ label: string; value: string | number; percentage?: number; }>; } interface FilterBarMolecule extends BaseMolecule { type: "filter-bar"; filters: Array<{ label: string; value: string; active?: boolean; }>; showSearch?: boolean; } interface FileUploadMolecule extends BaseMolecule { type: "file-upload"; title: string; accept?: string; multiple?: boolean; } interface TagCloudMolecule extends BaseMolecule { type: "tag-cloud"; tags: Array<{ label: string; value: string; count?: number; }>; } interface CreatorGridCardMolecule extends BaseMolecule { type: "creator-grid-card"; bannerSrc?: string; avatarSrc?: string; name: string; handle: string; metrics: Array<{ label: string; value: string | number; }>; platforms: string[]; } interface BrandAffinityGroupMolecule extends BaseMolecule { type: "brand-affinity-group"; brands: Array<{ name: string; logoSrc: string; }>; } interface ContentPreviewGalleryMolecule extends BaseMolecule { type: "content-preview-gallery"; items: Array<{ thumbnail: string; type: "video" | "image"; url?: string; }>; } interface DataGridMolecule extends BaseMolecule { type: "data-grid"; columns: Array<{ header: string; accessorKey: string; type?: "text" | "number" | "badge" | "date" | "avatar"; }>; data: any[]; pageSize?: number; } interface StepWizardMolecule extends BaseMolecule { type: "step-wizard"; steps: Array<{ title: string; description?: string; }>; currentStep: number; } interface NotificationListMolecule extends BaseMolecule { type: "notification-list"; notifications: Array<{ id: string; title: string; description?: string; timestamp: string; type: "info" | "success" | "warning" | "error"; read?: boolean; }>; } interface AudienceDemographicsCardMolecule extends BaseMolecule { type: "audience-demographics-card"; title: string; data: any[]; config: Record; demographicType: "age" | "gender" | "location"; } interface GrowthChartCardMolecule extends BaseMolecule { type: "growth-chart-card"; title: string; data: any[]; config: Record; metric: string; period: string; } interface TopPostsGridMolecule extends BaseMolecule { type: "top-posts-grid"; posts: Array<{ thumbnail: string; url: string; engagement: string; likes: string; comments: string; date: string; }>; } interface CreatorActionHeaderMolecule extends BaseMolecule { type: "creator-action-header"; bannerSrc?: string; avatarSrc?: string; name: string; handle: string; actions: Array<{ label: string; variant?: string; action?: string; }>; } interface SocialPostMolecule extends BaseMolecule { type: "social-post"; topic: string; posts: Array<{ platform: "twitter" | "linkedin" | "instagram"; caption: string; hashtags: string[]; character_count: number; character_limit: number; image?: { url: string; thumb_url: string; alt: string; photographer: string; photographer_url: string; }; }>; } interface CreatorWidgetMolecule extends BaseMolecule { type: "creator-widget"; sessionId: string; currentVersion?: number; isAgentOutput?: boolean; } interface GitHubConnectMolecule extends BaseMolecule { type: "github-connect"; message: string; context?: { owner?: string; repo?: string; tool?: string; }; } interface GitHubRepoHealthMolecule extends BaseMolecule { type: "github-repo-health"; owner: string; repo: string; branches: Array<{ branch: string; status: "passing" | "failing" | "running" | "pending" | "none"; }>; pull_requests: Array<{ number: number; title: string; author: string; review_status: "needs_review" | "approved" | "changes_requested" | "draft"; labels: string[]; }>; } interface GitHubIssueTrackerMolecule extends BaseMolecule { type: "github-issue-tracker"; owner: string; repo: string; open_bugs: number; velocity_per_week: number; stale_issues: Array<{ number: number; title: string; labels: string[]; days_stale: number; }>; } type UIMolecule = CampaignSeedCardAtom | SearchSpecCardAtom | MCQCardAtom | ActionButtonAtom | StatsGridMolecule | EmptyStateMolecule | LoadingOverlayMolecule | InsightSummaryCardMolecule | ResearchBriefCardMolecule | PriorityActionsCardMolecule | KPIStatsCardMolecule | ApprovalCardMolecule | TimelineCardMolecule | FeedbackRatingCardMolecule | DataTableCardMolecule | ChecklistCardMolecule | PollCardMolecule | CampaignBriefCardMolecule | DataSourceChecklistCardMolecule | GoalAlignmentCardMolecule | AudiencePersonaCardMolecule | ChannelPlanCardMolecule | InsightDigestCardMolecule | ActionPriorityCardMolecule | RiskSignalCardMolecule | ScoreBreakdownCardMolecule | NextStepCardMolecule | PlatformIconGroupMolecule | CreatorProfileSummaryMolecule | AudienceMetricCardMolecule | FilterBarMolecule | FileUploadMolecule | TagCloudMolecule | CreatorGridCardMolecule | BrandAffinityGroupMolecule | ContentPreviewGalleryMolecule | DataGridMolecule | StepWizardMolecule | NotificationListMolecule | AudienceDemographicsCardMolecule | GrowthChartCardMolecule | TopPostsGridMolecule | CreatorActionHeaderMolecule | SocialPostMolecule | CreatorWidgetMolecule | GitHubConnectMolecule | GitHubRepoHealthMolecule | GitHubIssueTrackerMolecule | RecommendationCardMolecule | ConfirmationCardMolecule | AnalyticsChartMolecule | LineChartMolecule | AreaChartMolecule | BarChartMolecule | StackedBarChartMolecule | ColumnChartMolecule | StackedColumnChartMolecule | PieChartMolecule | DonutChartMolecule | FunnelChartMolecule | HeatmapChartMolecule | TimeSeriesChartMolecule | ComparativeChartMolecule | TrendIndicatorMolecule | KPIMetricCardMolecule | AnalyticsSummaryCardMolecule | DynamicFormCardMolecule; type UIComponent = UIAtom | UIMolecule; interface UISchema { version: string; root: UIComponent; } declare const REGISTERED_COMPONENTS: Set; /** * PXEngineRenderer * * Handles both the full schema { version, root } and individual components. */ interface PXEngineRendererProps { schema: UISchema | UIComponent; onAction?: (action: any, payload?: any) => void; disabled?: boolean; /** * Organization brand theme for rendered widgets. Injected into every molecule * (cards/widgets) and provided via context to nested molecules. A `theme` set * explicitly in the schema props wins over this value. */ theme?: WidgetTheme; /** * Called when a submit ButtonAtom inside the composition is clicked. * Receives the Q/A formatted text string (ready to send to the agent) and * a map of { fieldKey → value } for structured access. * * When provided, InputAtom nodes become live-editable (not readOnly). */ onFormSubmit?: (qaText: string, values: Record) => void; } declare const PXEngineRenderer: React__default.FC; declare const buttonVariants: (props?: ({ variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | "purple" | null | undefined; size?: "sm" | "lg" | "default" | "icon" | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string; interface ButtonProps extends React$1.ButtonHTMLAttributes, VariantProps { asChild?: boolean; } declare const Button: React$1.ForwardRefExoticComponent>; declare const Input: React$1.ForwardRefExoticComponent, HTMLInputElement>, "ref"> & React$1.RefAttributes>; declare const Label: React$1.ForwardRefExoticComponent, "ref"> & VariantProps<(props?: class_variance_authority_types.ClassProp | undefined) => string> & React$1.RefAttributes>; declare const Checkbox: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const RadioGroup: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const RadioGroupItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Switch: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Slider: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Textarea: React$1.ForwardRefExoticComponent, HTMLTextAreaElement>, "ref"> & React$1.RefAttributes>; declare const Select: React$1.FC; declare const SelectGroup: React$1.ForwardRefExoticComponent>; declare const SelectValue: React$1.ForwardRefExoticComponent>; declare const SelectTrigger: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectScrollUpButton: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectScrollDownButton: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectLabel: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SelectSeparator: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const InputOTP: React$1.ForwardRefExoticComponent<(Omit, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & { value?: string; onChange?: (newValue: string) => unknown; maxLength: number; textAlign?: "left" | "center" | "right"; onComplete?: (...args: any[]) => unknown; pushPasswordManagerStrategy?: "increase-width" | "none"; pasteTransformer?: (pasted: string) => string; containerClassName?: string; noScriptCSSFallback?: string | null; } & { render: (props: input_otp.RenderProps) => React$1.ReactNode; children?: never; } & React$1.RefAttributes, "ref"> | Omit, "onChange" | "value" | "maxLength" | "textAlign" | "onComplete" | "pushPasswordManagerStrategy" | "pasteTransformer" | "containerClassName" | "noScriptCSSFallback"> & { value?: string; onChange?: (newValue: string) => unknown; maxLength: number; textAlign?: "left" | "center" | "right"; onComplete?: (...args: any[]) => unknown; pushPasswordManagerStrategy?: "increase-width" | "none"; pasteTransformer?: (pasted: string) => string; containerClassName?: string; noScriptCSSFallback?: string | null; } & { render?: never; children: React$1.ReactNode; } & React$1.RefAttributes, "ref">) & React$1.RefAttributes>; declare const InputOTPGroup: React$1.ForwardRefExoticComponent, HTMLDivElement>, "ref"> & React$1.RefAttributes>; declare const InputOTPSlot: React$1.ForwardRefExoticComponent, HTMLDivElement>, "ref"> & { index: number; } & React$1.RefAttributes>; declare const InputOTPSeparator: React$1.ForwardRefExoticComponent, HTMLDivElement>, "ref"> & React$1.RefAttributes>; declare const Form: (props: react_hook_form.FormProviderProps) => React$1.JSX.Element; declare const FormField: = FieldPath>({ ...props }: ControllerProps) => react_jsx_runtime.JSX.Element; declare const FormItem: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const FormLabel: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const FormControl: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const FormDescription: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const FormMessage: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const Card: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CardHeader: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CardTitle: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CardDescription: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CardContent: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CardFooter: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const Separator: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ScrollArea: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ScrollBar: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AspectRatio: React$1.ForwardRefExoticComponent>; declare const ResizablePanelGroup: (props: React.ComponentProps) => react_jsx_runtime.JSX.Element; declare const ResizablePanel: typeof ResizablePrimitive.Panel; declare const Tabs: React$1.ForwardRefExoticComponent>; declare const TabsList: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const TabsTrigger: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const TabsContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Accordion: React$1.ForwardRefExoticComponent<(AccordionPrimitive.AccordionSingleProps | AccordionPrimitive.AccordionMultipleProps) & React$1.RefAttributes>; declare const AccordionItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AccordionTrigger: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AccordionContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Collapsible: React$1.ForwardRefExoticComponent>; declare const CollapsibleTrigger: React$1.ForwardRefExoticComponent>; declare const CollapsibleContent: React$1.ForwardRefExoticComponent>; declare const Dialog: React$1.FC; declare const DialogTrigger: React$1.ForwardRefExoticComponent>; declare const DialogClose: React$1.ForwardRefExoticComponent>; declare const DialogContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DialogHeader: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const DialogFooter: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const DialogTitle: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DialogDescription: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Sheet: React$1.FC; declare const SheetTrigger: React$1.ForwardRefExoticComponent>; declare const SheetClose: React$1.ForwardRefExoticComponent>; declare const sheetVariants: (props?: ({ side?: "top" | "right" | "bottom" | "left" | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string; interface SheetContentProps extends React$1.ComponentPropsWithoutRef, VariantProps { } declare const SheetContent: React$1.ForwardRefExoticComponent>; declare const SheetHeader: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const SheetFooter: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const SheetTitle: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const SheetDescription: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Drawer: { ({ shouldScaleBackground, ...props }: React$1.ComponentProps): react_jsx_runtime.JSX.Element; displayName: string; }; declare const DrawerTrigger: React$1.ForwardRefExoticComponent>; declare const DrawerClose: React$1.ForwardRefExoticComponent>; declare const DrawerContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const DrawerHeader: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const DrawerFooter: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const DrawerTitle: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DrawerDescription: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AlertDialog: React$1.FC; declare const AlertDialogTrigger: React$1.ForwardRefExoticComponent>; declare const AlertDialogContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AlertDialogHeader: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const AlertDialogFooter: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const AlertDialogTitle: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AlertDialogDescription: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AlertDialogAction: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AlertDialogCancel: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const Popover: React$1.FC; declare const PopoverTrigger: React$1.ForwardRefExoticComponent>; declare const PopoverContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const HoverCard: React$1.FC; declare const HoverCardTrigger: React$1.ForwardRefExoticComponent>; declare const HoverCardContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const TooltipProvider: React$1.FC; declare const Tooltip: React$1.FC; declare const TooltipTrigger: React$1.ForwardRefExoticComponent>; declare const TooltipContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DropdownMenu: React$1.FC; declare const DropdownMenuTrigger: React$1.ForwardRefExoticComponent>; declare const DropdownMenuPortal: React$1.FC; declare const DropdownMenuRadioGroup: React$1.ForwardRefExoticComponent>; declare const DropdownMenuContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DropdownMenuItem: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const DropdownMenuCheckboxItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DropdownMenuRadioItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DropdownMenuLabel: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const DropdownMenuSeparator: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const DropdownMenuShortcut: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const ContextMenu: React$1.FC; declare const ContextMenuTrigger: React$1.ForwardRefExoticComponent>; declare const ContextMenuContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ContextMenuItem: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const ContextMenuCheckboxItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ContextMenuRadioItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ContextMenuLabel: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const ContextMenuSeparator: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const ContextMenuShortcut: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const Menubar: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarTrigger: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarItem: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const MenubarCheckboxItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarRadioItem: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarLabel: React$1.ForwardRefExoticComponent, "ref"> & { inset?: boolean; } & React$1.RefAttributes>; declare const MenubarSeparator: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const MenubarShortcut: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayname: string; }; declare const NavigationMenu: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const NavigationMenuList: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const NavigationMenuItem: React$1.ForwardRefExoticComponent>; declare const NavigationMenuTrigger: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const NavigationMenuContent: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const NavigationMenuLink: React$1.ForwardRefExoticComponent>; declare const Breadcrumb: React$1.ForwardRefExoticComponent, HTMLElement>, "ref"> & { separator?: React$1.ReactNode; } & React$1.RefAttributes>; declare const BreadcrumbList: React$1.ForwardRefExoticComponent, HTMLOListElement>, "ref"> & React$1.RefAttributes>; declare const BreadcrumbItem: React$1.ForwardRefExoticComponent, HTMLLIElement>, "ref"> & React$1.RefAttributes>; declare const BreadcrumbLink: React$1.ForwardRefExoticComponent, HTMLAnchorElement>, "ref"> & { asChild?: boolean; } & React$1.RefAttributes>; declare const BreadcrumbPage: React$1.ForwardRefExoticComponent, HTMLSpanElement>, "ref"> & React$1.RefAttributes>; declare const BreadcrumbSeparator: { ({ children, className, ...props }: React$1.ComponentProps<"li">): react_jsx_runtime.JSX.Element; displayName: string; }; declare const Pagination: { ({ className, ...props }: React$1.ComponentProps<"nav">): react_jsx_runtime.JSX.Element; displayName: string; }; declare const PaginationContent: React$1.ForwardRefExoticComponent, HTMLUListElement>, "ref"> & React$1.RefAttributes>; declare const PaginationItem: React$1.ForwardRefExoticComponent, HTMLLIElement>, "ref"> & React$1.RefAttributes>; type PaginationLinkProps = { isActive?: boolean; } & Pick & React$1.ComponentProps<"a">; declare const PaginationLink: { ({ className, isActive, size, ...props }: PaginationLinkProps): react_jsx_runtime.JSX.Element; displayName: string; }; declare const PaginationPrevious: { ({ className, ...props }: React$1.ComponentProps): react_jsx_runtime.JSX.Element; displayName: string; }; declare const PaginationNext: { ({ className, ...props }: React$1.ComponentProps): react_jsx_runtime.JSX.Element; displayName: string; }; declare const PaginationEllipsis: { ({ className, ...props }: React$1.ComponentProps<"span">): react_jsx_runtime.JSX.Element; displayName: string; }; declare const Command: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes> & { label?: string; shouldFilter?: boolean; filter?: (value: string, search: string, keywords?: string[]) => number; defaultValue?: string; value?: string; onValueChange?: (value: string) => void; loop?: boolean; disablePointerSelection?: boolean; vimBindings?: boolean; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandDialog: ({ children, ...props }: DialogProps) => react_jsx_runtime.JSX.Element; declare const CommandInput: React$1.ForwardRefExoticComponent, HTMLInputElement>, "key" | keyof React$1.InputHTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.InputHTMLAttributes>, "onChange" | "value" | "type"> & { value?: string; onValueChange?: (search: string) => void; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandList: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes> & { label?: string; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandEmpty: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes> & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandGroup: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes>, "heading" | "value"> & { heading?: React$1.ReactNode; value?: string; forceMount?: boolean; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandSeparator: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes> & { alwaysRender?: boolean; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandItem: React$1.ForwardRefExoticComponent, HTMLDivElement>, "key" | keyof React$1.HTMLAttributes> & { ref?: React$1.Ref; } & { asChild?: boolean; }, "key" | "asChild" | keyof React$1.HTMLAttributes>, "onSelect" | "disabled" | "value"> & { disabled?: boolean; onSelect?: (value: string) => void; value?: string; keywords?: string[]; forceMount?: boolean; } & React$1.RefAttributes, "ref"> & React$1.RefAttributes>; declare const CommandShortcut: { ({ className, ...props }: React$1.HTMLAttributes): react_jsx_runtime.JSX.Element; displayName: string; }; declare const Table: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableHeader: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableBody: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableRow: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableHead: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableCell: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const TableCaption: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const Avatar: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AvatarImage: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const AvatarFallback: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const badgeVariants: (props?: ({ variant?: "default" | "destructive" | "outline" | "secondary" | "purple" | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string; interface BadgeProps extends React$1.HTMLAttributes, VariantProps { } declare function Badge({ className, variant, ...props }: BadgeProps): react_jsx_runtime.JSX.Element; declare const Alert: React$1.ForwardRefExoticComponent & VariantProps<(props?: ({ variant?: "default" | "destructive" | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string> & React$1.RefAttributes>; declare const AlertTitle: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const AlertDescription: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const Progress: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare function Skeleton({ className, ...props }: React.HTMLAttributes): react_jsx_runtime.JSX.Element; declare function Calendar({ className, classNames, showOutsideDays, captionLayout, buttonVariant, formatters, components, ...props }: React$1.ComponentProps & { buttonVariant?: React$1.ComponentProps["variant"]; }): react_jsx_runtime.JSX.Element; type CarouselApi = UseEmblaCarouselType[1]; type UseCarouselParameters = Parameters; type CarouselOptions = UseCarouselParameters[0]; type CarouselPlugin = UseCarouselParameters[1]; type CarouselProps = { opts?: CarouselOptions; plugins?: CarouselPlugin; orientation?: "horizontal" | "vertical"; setApi?: (api: CarouselApi) => void; }; declare const Carousel: React$1.ForwardRefExoticComponent & CarouselProps & React$1.RefAttributes>; declare const CarouselContent: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CarouselItem: React$1.ForwardRefExoticComponent & React$1.RefAttributes>; declare const CarouselPrevious: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare const CarouselNext: React$1.ForwardRefExoticComponent, "ref"> & React$1.RefAttributes>; declare function Spinner({ className, ...props }: React.ComponentProps<"svg">): react_jsx_runtime.JSX.Element; /** * Utility function to merge Tailwind CSS classes * Combines clsx for conditional classes and tailwind-merge for deduplication * * @example * ```tsx * cn("px-4 py-2", isActive && "bg-purple500", className) * ``` */ declare function cn(...inputs: ClassValue[]): string; /** * Generates an array of FieldConfig from a data object * Useful for dynamic molecules that render whatever the server sends. */ declare function generateFieldsFromData(data: Record): FieldConfig[]; /** * Generates an array of FieldConfig from organism propDefinitions. * Only includes props marked as editable, using editConfig for field type and config. */ declare function generateFieldsFromPropDefinitions(propDefs: EditableOrganismPropDef[], data: Record): FieldConfig[]; /** * Run SSE submission helpers for input widgets. * * The Q/A submission format is the contract between widget inputs and the agent: * * Q: * A: * * Example payload sent to the agent: * * Q: What type of freelancing services do you offer? * A: Web/App Development * * Q: How many years of experience? * A: 5 */ interface CollectedField { /** Stable field id (defaults to atom id). */ key: string; /** Question text — derived from `question` prop, falling back to `label`. */ question: string; /** User's current answer in the most human-readable form. */ answer: string; /** Atom name (e.g. "InputAtom", "RatingAtom"). Useful for debugging. */ atomName?: string; } interface InputElementLike { id?: string; atomName?: string; props: Record; /** Optional in-memory user value captured by the runtime. */ value?: any; } declare function isInputAtom(atomName: string | undefined): boolean; /** * Format a single input element into a Q/A field. * Returns null when the element isn't an input or has no question/label to anchor on. */ declare function elementToQAField(element: InputElementLike): CollectedField | null; /** * Build a Q/A formatted string from a list of input elements. * Used as the body of the message sent to the agent via Run SSE. */ declare function formatQAMessage(elements: InputElementLike[]): string; interface RunSseConfig { /** Backend base URL, e.g. https://api.pxengine.com */ backendUrl: string; /** App identifier registered in ADK */ appName: string; /** Authenticated user id */ userId: string; /** Existing session id, or undefined to let the caller create one upstream */ sessionId: string; /** Bearer token; omitted if your backend uses cookies */ authToken?: string; /** Streaming on/off (default true) */ streaming?: boolean; /** AbortSignal to cancel the stream */ signal?: AbortSignal; /** Optional message override — if provided, replaces the auto-formatted Q/A body */ messageOverride?: string; /** Extra payload merged into the request body (e.g. button.actionPayload) */ extraPayload?: Record; } /** * Submit a widget's collected inputs to an agent via the Run SSE endpoint. * * Returns the Response object — caller is responsible for reading the SSE stream * (e.g. via @microsoft/fetch-event-source on the consuming side). This keeps * @pxengine-ui dependency-free. */ declare function submitWidgetToAgent(elements: InputElementLike[], config: RunSseConfig): Promise; /** * TextAtom * Renders standardized text styles from UISchema * Supports markdown rendering when markdown prop is true */ declare const TextAtom: React__default.FC; interface Props$e extends ButtonAtomType { onAction?: (action: string) => void; } /** * ButtonAtom * Wraps shadcn Button with schema support and premium variants */ declare const ButtonAtom: React__default.FC; interface Props$d extends LayoutAtomType { renderComponent: (component: UIComponent, index?: number) => React__default.ReactNode; } /** * LayoutAtom * Standardized container with flex/grid support from schema */ declare const LayoutAtom: React__default.FC; interface Props$c extends CardAtomType { renderComponent: (component: UIComponent, index?: number) => React__default.ReactNode; } /** * CardAtom * Standardized Card wrapper for the Universal Renderer */ declare const CardAtom: React__default.FC; declare const InputAtom: React__default.FC; declare const BadgeAtom: React__default.FC; declare const AvatarAtom: React__default.FC; interface Props$b extends TabsAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const TabsAtom: React__default.FC; interface Props$a extends AccordionAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const AccordionAtom: React__default.FC; declare const ProgressAtom: React__default.FC; declare const SkeletonAtom: React__default.FC; declare const AlertAtom: React__default.FC; declare const SeparatorAtom: React__default.FC; declare const TableAtom: React__default.FC; interface Props$9 extends ScrollAreaAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const ScrollAreaAtom: React__default.FC; interface Props$8 extends CarouselAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const CarouselAtom: React__default.FC; interface Props$7 extends AspectRatioAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const AspectRatioAtom: React__default.FC; interface Props$6 extends CollapsibleAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const CollapsibleAtom: React__default.FC; interface Props$5 extends TooltipAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const TooltipAtom: React__default.FC; interface Props$4 extends PopoverAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const PopoverAtom: React__default.FC; interface Props$3 extends DialogAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const DialogAtom: React__default.FC; interface Props$2 extends SheetAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; } declare const SheetAtom: React__default.FC; interface Props$1 extends AlertDialogAtomType { renderComponent: (component: UIComponent) => React__default.ReactNode; onAction?: (action: string) => void; } declare const AlertDialogAtom: React__default.FC; declare const BreadcrumbAtom: React__default.FC; declare const SpinnerAtom: React__default.FC; declare const CalendarAtom: React__default.FC; declare const PaginationAtom: React__default.FC; declare const CommandAtom: React__default.FC; /** * CheckboxAtom * Wraps shadcn Checkbox with label support */ declare const CheckboxAtom: React__default.FC void; }>; /** * SwitchAtom * Wraps shadcn Switch with label support */ declare const SwitchAtom: React__default.FC void; }>; /** * LabelAtom * Wraps shadcn Label */ declare const LabelAtom: React__default.FC; /** * TextareaAtom * Standalone textarea atom */ declare const TextareaAtom: React__default.FC void; }>; /** * ToggleAtom * Wraps shadcn Toggle */ declare const ToggleAtom: React__default.FC void; }>; /** * SliderAtom * Wraps shadcn Slider with optional label */ declare const SliderAtom: React__default.FC void; }>; /** * RadioGroupAtom * Wraps shadcn RadioGroup */ declare const RadioGroupAtom: React__default.FC void; }>; /** * RadioAtom * Wraps shadcn RadioGroupItem as a standalone radio button * Note: Still uses RadioGroup wrapper internally for compatibility */ declare const RadioAtom: React__default.FC void; }>; /** * DropdownMenuAtom * Wraps shadcn DropdownMenu */ declare const DropdownMenuAtom: React__default.FC void; }>; /** * ContextMenuAtom * Wraps shadcn ContextMenu */ declare const ContextMenuAtom: React__default.FC void; }>; /** * DrawerAtom * Wraps shadcn Drawer for mobile-first views */ declare const DrawerAtom: React__default.FC; /** * InputOTPAtom * Wraps shadcn InputOTP for code verification */ declare const InputOTPAtom: React__default.FC void; }>; /** * KbdAtom * Visual representation of a keyboard shortcut */ declare const KbdAtom: React__default.FC; interface Props extends ResizableAtomType { renderComponent: (component: UIComponent, index?: number) => React__default.ReactNode; } /** * ResizableAtom * Wraps shadcn Resizable panels for complex layouts */ declare const ResizableAtom: React__default.FC; /** * ChartAtom * A versatile chart component wrapping Shadcn Chart primitives and Recharts. */ declare const ChartAtom: React__default.FC; /** * VideoAtom * A simple, styled video player for content previews. */ declare const VideoAtom: React__default.FC; /** * RatingAtom * A star rating component for display or user input, with optional label. */ declare const RatingAtom: React__default.FC void; }>; /** * TimelineAtom * A vertical timeline primitive for processes and steps. */ declare const TimelineAtom: React__default.FC; /** * IconAtom * Dynamically renders a Lucide React icon by name. * * @param icon - Icon name from lucide-react * @param size - Icon size in pixels (default: 20) * @param color - Inline color (overrides textColor) * @param strokeWidth - Stroke width of the icon * @param textColor - Tailwind text color class (default: 'text-dark') * @param className - Additional CSS classes * @param style - Inline styles */ declare const IconAtom: React__default.FC; /** * ArrowToggleAtom * A specialized button-like component that toggles between * Right and Down arrows when clicked. */ declare const ArrowToggleAtom: React__default.FC; interface EditableFieldProps { /** * Unique identifier */ id?: string; /** * Field label */ label: string; /** * Field value */ value: any; /** * Input type (text, textarea, number, slider, etc.) */ type: FieldType; /** * Current editing state */ isEditing?: boolean; /** * Triggered when the user wants to start editing */ onEdit?: () => void; /** * Triggered when the user saves the new value */ onSave?: (newValue: any) => void; /** * Triggered when the user cancels editing */ onCancel?: () => void; /** * Loading state during save */ isSaving?: boolean; /** * Indicates if the value has been changed but not saved */ isChanged?: boolean; /** * Configuration for the specific field type */ config?: Partial; /** * Custom className for the container */ className?: string; /** * Custom renderer for the display state */ renderDisplay?: (value: any) => React.ReactNode; /** * Custom renderer for the edit state */ renderEdit?: (value: any, onChange: (v: any) => void) => React.ReactNode; /** * Whether this is the latest message */ isLatestMessage?: boolean; /** * Whether to stop event propagation when the edit icon is clicked. * Useful to prevent parents (like cards) from collapsing. */ shouldStopPropagation?: boolean; /** * Whether to show the index number */ showIndex?: boolean; /** * Index of this field in the form */ index?: number; /** * Total number of fields in the form */ totalFields?: number; } /** * EditableField * * A generic field that toggles between display and edit modes. * Styled with purple labels and green "Suggested by an Agent" badge. */ declare const EditableField: React__default.NamedExoticComponent; interface ActionButtonProps { /** * Unique identifier */ id?: string; /** * Main button label */ label: string; /** * Secondary label (e.g. for sub-actions or state changes) */ secondaryLabel?: string; /** * Countdown in seconds. If provided, the button will show a timer. */ countdown?: number; /** * Whether the auto-proceed is paused */ isPaused?: boolean; /** * Triggered when the user pauses/resumes the timer */ onPause?: () => void; /** * Triggered when the user clicks the button or timer expires */ onProceed?: () => void; /** * Button variant (from shadcn) */ variant?: ButtonVariant; /** * Button size (from shadcn) */ size?: ButtonSize; /** * Whether the button is disabled */ disabled?: boolean; /** * Loading state */ isLoading?: boolean; /** * Custom className */ className?: string; /** * Whether to show the countdown visually */ showCountdown?: boolean; } /** * ActionButton * * A powerful button molecule that supports: * - Auto-countdown for agent workflows * - Pause/Resume toggle * - Loading and Disabled states * - Custom themes */ declare const ActionButton: React__default.NamedExoticComponent; interface FormCardProps { /** * Unique identifier */ id?: string; /** * Title of the form card */ title: string; /** * Map of fields to render */ fields: FieldConfig[]; /** * Initial data for the form */ data: Record; /** * Current editing states for each field */ editingFields?: Record; /** * Fields that have been modified */ changedFields?: Record; /** * Fields currently being saved */ savingFields?: Record; /** * Triggered when a field starts editing */ onFieldEdit?: (key: string) => void; /** * Triggered when a field value is saved */ onFieldSave?: (key: string, newValue: any) => void; /** * Triggered when a field edit is cancelled */ onFieldCancel?: (key: string) => void; /** * Show a dotted timeline visual on the left */ showTimeline?: boolean; /** * Label for the "Proceed" button */ proceedLabel?: string; /** * Proceed handler */ onProceed?: () => void; /** * Custom className */ className?: string; /** * Footer content (optional) */ footer?: React.ReactNode; /** * Whether to hide the title */ hideTitle?: boolean; /** * Whether to hide the copy button */ hideCopyButton?: boolean; /** * Whether this is the latest message */ isLatestMessage?: boolean; /** * Whether to stop event propagation when the edit icon is clicked in child fields. */ shouldStopPropagation?: boolean; } /** * FormCard * * High-level molecule that assembles multiple EditableFields * into a cohesive card unit. * Styled with purple labels and green badges. */ declare const FormCard: React__default.NamedExoticComponent; interface DynamicFormCardProps extends Omit { /** * Field values — keys become labels automatically when no `fields` override is given. */ data?: Record; /** * Explicit field configs. When omitted, fields are auto-generated from `data` keys. */ fields?: FieldConfig[]; /** * Callback fired after proceed/submit. Receives the current data snapshot. */ onAction?: (action: { type: string; data: Record; }) => void; /** * Send a plain-text message back to the agent on submit. * When provided, the form serialises all field values into a human-readable * string and calls this instead of (or in addition to) onAction. */ sendMessage?: (text: string) => void; } /** * DynamicFormCard * * A thin wrapper around FormCard that removes the requirement to supply an * explicit `fields` array. When `fields` is omitted, field configs are * auto-generated from the keys of `data` using generateFieldsFromData, giving * agents a zero-config path to render any structured form payload. * * Schema usage (composition.root): * { "name": "DynamicFormCard", "props": { "title": "…", "data": { … } } } * * Alternatively the agent may supply "dynamic-form-card" (kebab) or * "dynamicformcard" (lower) — the renderer normalises all of these to * "DynamicFormCard" before lookup. */ declare const DynamicFormCard: React__default.NamedExoticComponent; /** * StatsGrid * A grid of statistical cards with icons and trends. */ declare const StatsGrid: React__default.FC; /** * EmptyState * A placeholder for empty lists or results. */ declare const EmptyState: React__default.FC void; }>; /** * LoadingOverlay * A full-container overlay with a spinner and message. */ declare const LoadingOverlay: React__default.FC; /** * FilterBar * A horizontal bar with active filter chips and search. */ declare const FilterBar: React__default.FC void; onSearch?: (val: string) => void; }>; /** * FileUpload * Drag-and-drop file upload zone. */ declare const FileUpload: React__default.FC void; style?: React__default.CSSProperties; }>; /** * TagCloud * A cluster of clickable tags. */ declare const TagCloud: React__default.FC void; }>; /** * DataGrid * A premium table component with typed cells and responsive design. */ declare const DataGrid: React__default.FC; /** * StepWizard * Horizontal step indicator for multi-part workflows. */ declare const StepWizard: React__default.FC; /** * NotificationList * A list of actionable notifications and activity logs. */ declare const NotificationList: React__default.FC; interface SocialPost { platform: "twitter" | "linkedin" | "instagram"; caption: string; hashtags: string[]; character_count: number; character_limit: number; image?: { url: string; thumb_url: string; alt: string; photographer: string; photographer_url: string; }; } interface SocialPostCardProps { topic: string; posts: SocialPost[]; loading?: boolean; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } /** * SocialPostCard * Renders AI-generated social media posts for multiple platforms. * Users can toggle which platforms to include via clickable badges. */ declare const SocialPostCard: React__default.FC; interface GitHubConnectCardProps { message: string; context?: { owner?: string; repo?: string; tool?: string; }; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GitHubConnectCard: React__default.FC; interface BranchCI { branch: string; status: "passing" | "failing" | "running" | "pending" | "none"; } interface PullRequest { number: number; title: string; author: string; review_status: "needs_review" | "approved" | "changes_requested" | "draft"; labels: string[]; } interface GitHubRepoHealthCardProps { owner: string; repo: string; branches: BranchCI[]; pull_requests: PullRequest[]; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GitHubRepoHealthCard: React__default.FC; interface StaleIssue { number: number; title: string; labels: string[]; days_stale: number; } interface GitHubIssueTrackerCardProps { owner: string; repo: string; open_bugs: number; velocity_per_week: number; stale_issues: StaleIssue[]; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GitHubIssueTrackerCard: React__default.FC; interface SheetColumn { key: string; label: string; type?: "text" | "currency" | "number" | "percentage"; } interface SheetRow { [key: string]: string | number; } interface ChartDataPoint { label: string; value: number; color?: string; } interface GoogleSheetsCardProps { title: string; spreadsheet_id?: string; sheet_name?: string; columns: SheetColumn[]; rows: SheetRow[]; chart?: { title: string; data: ChartDataPoint[]; type?: "bar" | "horizontal-bar"; }; summary?: string; loading?: boolean; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } /** * GoogleSheetsCard * Renders spreadsheet data as interactive tables with optional auto-generated charts. * Displays Google Sheets data in a dark-themed card with table + bar chart layout. */ declare const GoogleSheetsCard: React__default.FC; interface GoogleSheetsConnectCardProps { message: string; context?: { spreadsheet_id?: string; tool?: string; }; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GoogleSheetsConnectCard: React__default.FC; interface RepoItem { name: string; full_name: string; owner: string; description?: string | null; language?: string | null; stars: number; updated_at: string; visibility: string; } interface GitHubReposListCardProps { repos: RepoItem[]; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GitHubReposListCard: React__default.FC; interface SheetTabItem { title: string; sheet_id: number; } interface SpreadsheetItem { id: string; name: string; modified_time: string; owner: string; sheets: SheetTabItem[]; } interface GoogleSheetsListCardProps { spreadsheets: SpreadsheetItem[]; className?: string; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; } declare const GoogleSheetsListCard: React__default.FC; interface RecommendationCardProps { /** * The question being asked */ question: string; /** * The recommended answer/option */ recommended: string; /** * Why this option is recommended (optional) */ recommended_reason?: string; /** * Callback to send a message to the agent. * Called when user clicks Continue. */ sendMessage?: (text: string) => void; /** * Whether this message is the latest (controls interactivity) */ isLatestMessage?: boolean; /** * Whether the interaction is disabled externally */ disabled?: boolean; /** * Loading state during submission */ isLoading?: boolean; /** * Custom wrapper class name */ className?: string; /** * Optional action callback for external state management (e.g. PXEngine) */ onAction?: (action: any) => void; } /** * RecommendationCard * * A molecule for single-question recommendations. * Shows one recommended option (pre-selected) with a text input for custom answers. * User clicks Continue to submit their choice. */ declare const RecommendationCard: React__default.NamedExoticComponent; interface ConfirmationCardProps { /** * Bold title at the top of the card (e.g. "Brand Summary") */ title: string; /** * Description / body text explaining what will happen */ description: string; /** * The confirmation question (e.g. "Shall I proceed to the research?") */ question?: string; /** * Label for the confirm button (default: "Yes, go ahead") */ confirm_label?: string; /** * Label for the cancel button (default: "Cancel") */ cancel_label?: string; /** * Callback to send a message to the agent. * Called when user clicks Confirm or Cancel. */ sendMessage?: (text: string) => void; /** * Whether this message is the latest (controls interactivity) */ isLatestMessage?: boolean; /** * Whether the interaction is disabled externally */ disabled?: boolean; /** * Custom wrapper class name */ className?: string; /** * Optional action callback for external state management */ onAction?: (action: any) => void; } /** * ConfirmationCard * * A molecule for yes/no confirmation prompts. * Shows a title, description, optional question, and Cancel / Confirm buttons. */ declare const ConfirmationCard: React__default.NamedExoticComponent; type InputWidgetFieldKind = "text" | "email" | "password" | "number" | "search" | "tel" | "url" | "textarea" | "select" | "checkbox" | "switch" | "slider" | "radio" | "rating" | "date" | "time" | "datetime-local" | "color" | "file" | "otp"; interface InputWidgetField { /** Stable key for this field — used as the answer key in Q/A submission. */ key: string; /** Visible label rendered above the input. */ label: string; /** Question used as the "Q:" line when serializing for the agent. Falls back to `label`. */ question?: string; kind: InputWidgetFieldKind; placeholder?: string; defaultValue?: any; required?: boolean; disabled?: boolean; options?: Array<{ label: string; value: string; }>; min?: number; max?: number; step?: number; /** OTP length, slider step config, etc. */ config?: Record; } interface InputWidgetType { id: string; type: "input-widget"; /** Heading shown above the field (optional — falls back to field label). */ title?: string; /** Description / helper text shown under the title (optional). */ description?: string; /** The fields that make up this input widget — at least one is required. */ fields: InputWidgetField[]; /** Submit button config — auto-included with action: "submit" by default. */ submitButton?: { label?: string; action: ButtonAction | string; actionPayload?: Record; variant?: "default" | "purple" | "gradient" | "outline" | "secondary"; }; /** Optional secondary button (cancel/reset/back). */ secondaryButton?: { label?: string; action: ButtonAction | string; }; className?: string; style?: React.CSSProperties; } interface InputWidgetProps extends InputWidgetType { /** * Called when the submit button is pressed. * Receives the formatted Q/A message string AND the structured field list. * Caller wires this to a Run SSE sendMessage handler. */ onSubmit?: (qaMessage: string, fields: CollectedField[]) => void; /** Called for any non-submit button action (cancel, reset, custom). */ onAction?: (action: string, payload?: Record) => void; isSubmitting?: boolean; } /** * InputWidget * * A self-contained input molecule that *guarantees*: * 1. Every field has a label (no headless inputs) * 2. A submit button is always rendered * 3. On submit, all field values are formatted as Q/A pairs and handed * back to the caller for transmission via Run SSE. * * This is the canonical wrapper for any user-facing input widget built in * the widget builder. */ declare const InputWidget: React__default.FC; interface KPIStatItem { label: string; value: string | number; delta?: string; trend?: "up" | "down" | "neutral"; unit?: string; icon?: string; } interface KPIStatsCardProps { title?: string; subtitle?: string; stats?: KPIStatItem[]; items?: KPIStatItem[]; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const KPIStatsCard: React__default.NamedExoticComponent; type ApprovalStatus = "pending" | "approved" | "rejected" | "changes_requested"; interface ApprovalDetail { label: string; value: string; } interface ApprovalCardProps { title: string; description?: string; details?: ApprovalDetail[]; status?: ApprovalStatus; approve_label?: string; reject_label?: string; changes_label?: string; show_changes_button?: boolean; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; sendMessage?: (text: string) => void; onAction?: (action: any) => void; } declare const ApprovalCard: React__default.NamedExoticComponent; type TimelineStepStatus = "completed" | "active" | "pending"; interface TimelineStep { label: string; description?: string; status: TimelineStepStatus; timestamp?: string; } interface TimelineCardProps { title?: string; steps?: TimelineStep[]; milestones?: TimelineStep[]; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const TimelineCard: React__default.NamedExoticComponent; interface FeedbackRatingCardProps { question: string; max_rating?: number; rating_label?: string; comment_placeholder?: string; show_comment?: boolean; submit_label?: string; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; sendMessage?: (text: string) => void; onAction?: (action: any) => void; } declare const FeedbackRatingCard: React__default.NamedExoticComponent; /** A column may be a plain header string OR a {key,label} object. */ interface DataTableColumn { key?: string; label?: string; } interface DataTableCardProps { title?: string; caption?: string; /** Header strings OR {key,label} column objects (both accepted). */ columns: Array; /** Row objects keyed by column key (or label). */ rows: Array>; /** snake_case preferred; camelCase `highlightColumn` also accepted. */ highlight_column?: string; highlightColumn?: string; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const DataTableCard: React__default.NamedExoticComponent; interface ChecklistItem { id: string; label: string; description?: string; checked?: boolean; required?: boolean; } interface ChecklistCardProps { title?: string; description?: string; items?: ChecklistItem[]; tasks?: ChecklistItem[]; submit_label?: string; require_all?: boolean; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; sendMessage?: (text: string) => void; onAction?: (action: any) => void; } declare const ChecklistCard: React__default.NamedExoticComponent; interface PollOption { id: string; label: string; votes?: number; } interface PollCardProps { question: string; options?: PollOption[]; choices?: PollOption[]; total_votes?: number; allow_multiple?: boolean; vote_label?: string; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; sendMessage?: (text: string) => void; onAction?: (action: any) => void; } declare const PollCard: React__default.NamedExoticComponent; type CalendarEventStatus = "upcoming" | "live" | "ended" | "cancelled"; interface CalendarEventAttendee { name: string; role?: string; } interface CalendarEventCardProps { title: string; date: string; time?: string; duration?: string; location?: string; description?: string; attendees?: CalendarEventAttendee[]; status?: CalendarEventStatus; join_label?: string; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const CalendarEventCard: React__default.NamedExoticComponent; interface BudgetAllocItem { label: string; amount: number; color?: string; note?: string; } interface BudgetAllocCardProps { title?: string; currency?: string; total?: number; items?: BudgetAllocItem[]; allocations?: BudgetAllocItem[]; show_total?: boolean; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const BudgetAllocCard: React__default.NamedExoticComponent; interface ComparisonAttribute { key: string; value: string; highlight?: boolean; } interface ComparisonOption { id: string; label: string; badge?: string; badge_color?: "gold" | "blue" | "emerald" | "violet"; attributes: ComparisonAttribute[]; } interface ComparisonCardProps { title?: string; description?: string; attribute_labels: string[]; options: ComparisonOption[]; select_label?: string; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; sendMessage?: (text: string) => void; onAction?: (action: any) => void; } declare const ComparisonCard: React__default.NamedExoticComponent; interface InsightSummaryItem { label: string; value: string; confidence?: "High" | "Medium" | "Low"; } /** A richer finding shape some analytics agents emit (key_findings[]). */ interface InsightFinding { finding?: string; data_point?: string; label?: string; value?: string; confidence?: string; chart_ref?: string; } /** An insight item may be a {label,value} object, a richer finding, or a plain string. */ type InsightItemLike = InsightSummaryItem | InsightFinding | string; interface InsightSummaryCardProps { title: string; /** Summary line. Agents have used `summary`, `executive_summary`, `thesis`, * or `subtitle` — all accepted. */ summary?: string; executive_summary?: string; thesis?: string; subtitle?: string; /** Item list. Agents have used `insights`, `key_findings`, `key_insights`, * `findings`, or `items`, with items as objects OR plain strings. */ insights?: InsightItemLike[]; key_findings?: InsightItemLike[]; key_insights?: InsightItemLike[]; findings?: InsightItemLike[]; items?: InsightItemLike[]; /** Card-level confidence used as a fallback for items that omit their own. */ confidence?: string; className?: string; } /** * InsightSummaryCard * Compact result widget for summary + key insights. */ declare const InsightSummaryCard: React__default.FC; interface ResearchBriefItem { label: string; value: string; } interface ResearchBriefCardProps { title: string; objective: string; constraints?: string[]; requiredData?: ResearchBriefItem[]; owner?: string; dueDate?: string; className?: string; } /** * ResearchBriefCard * Intake widget for capturing research scope and required inputs. */ declare const ResearchBriefCard: React__default.FC; type ActionPriority = "High" | "Medium" | "Low"; interface PriorityActionItem { title: string; owner?: string; timeline?: string; rationale?: string; priority?: ActionPriority; } interface PriorityActionsCardProps { title: string; summary?: string; actions: PriorityActionItem[]; className?: string; } /** * PriorityActionsCard * Output widget that presents ranked next actions. */ declare const PriorityActionsCard: React__default.FC; interface CampaignBriefCardProps { title: string; objective: string; audience?: string; budget?: string; timeline?: string; constraints?: string[]; theme?: WidgetTheme; className?: string; } declare const CampaignBriefCard: React__default.FC; interface DataSourceItem { id: string; source: string; connected?: boolean; note?: string; } interface DataSourceChecklistCardProps { title: string; items: DataSourceItem[]; submit_label?: string; isLatestMessage?: boolean; disabled?: boolean; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const DataSourceChecklistCard: React__default.FC; interface GoalAlignmentItem { goal: string; status?: "Aligned" | "Partial" | "Misaligned"; note?: string; } interface GoalAlignmentCardProps { title: string; goals: GoalAlignmentItem[]; theme?: WidgetTheme; className?: string; } declare const GoalAlignmentCard: React__default.FC; interface PersonaSegment { name: string; percentage?: number; interest?: string; } interface AudiencePersonaCardProps { title: string; segments: PersonaSegment[]; theme?: WidgetTheme; className?: string; } declare const AudiencePersonaCard: React__default.FC; interface ChannelPlanItem { channel: string; objective?: string; cadence?: string; } interface ChannelPlanCardProps { title: string; plans: ChannelPlanItem[]; theme?: WidgetTheme; className?: string; } declare const ChannelPlanCard: React__default.FC; interface InsightDigestItem { label: string; detail: string; confidence?: "High" | "Medium" | "Low"; } interface InsightDigestCardProps { title: string; summary?: string; insights: InsightDigestItem[]; theme?: WidgetTheme; className?: string; } declare const InsightDigestCard: React__default.FC; interface ActionPriorityItem { title: string; owner?: string; timeline?: string; priority?: "High" | "Medium" | "Low"; } interface ActionPriorityCardProps { title: string; actions: ActionPriorityItem[]; theme?: WidgetTheme; className?: string; } declare const ActionPriorityCard: React__default.FC; interface RiskSignalItem { signal: string; severity?: "High" | "Medium" | "Low"; impact?: string; } interface RiskSignalCardProps { title: string; risks: RiskSignalItem[]; theme?: WidgetTheme; className?: string; } declare const RiskSignalCard: React__default.FC; interface ScoreBreakdownItem { label: string; score: number; outOf?: number; } interface ScoreBreakdownCardProps { title: string; totalScore?: number; outOf?: number; items: ScoreBreakdownItem[]; theme?: WidgetTheme; className?: string; } declare const ScoreBreakdownCard: React__default.FC; interface NextStepItem { step: string; owner?: string; due?: string; } interface NextStepCardProps { title: string; steps: NextStepItem[]; ctaLabel?: string; theme?: WidgetTheme; className?: string; onAction?: (action: any) => void; } declare const NextStepCard: React__default.FC; interface PresentationFormats { html_url?: string; pptx_url?: string; pdf_url?: string; } interface PresentationJobOutput { title: string; slide_count: number; formats: PresentationFormats; } /** * Real-time progress information for long-running jobs. * Updated during AI generation, PDF/PPTX creation, and upload phases. */ interface JobProgress$2 { /** Progress percentage (0-100) */ percentage: number; /** Human-readable description of current step */ current_step: string; /** Category of current work: "ai_generation" | "processing" | "uploading" */ step_type?: string; /** Additional step-specific details */ details?: { slides_completed?: number; slides_total?: number; phase?: string; }; /** ISO timestamp of last progress update */ updated_at?: string; } interface PresentationJobCardProps { job_id: string; title: string; /** Current job status — the card auto-updates via pollUrl when pending/running. */ status: "pending" | "running" | "complete" | "failed"; slide_count?: number; formats?: PresentationFormats; error?: string; /** Real-time progress information (populated during pending/running) */ progress?: JobProgress$2; /** * URL polled every 3 s while status is pending/running. * Expected response shape: { status, output: { slide_count, formats }, progress: { ... } } * e.g. /api/agents-proxy/jobs/{job_id}/status */ pollUrl?: string; /** * Bearer token for authenticated polling requests. * If provided, will be sent as Authorization header. */ authToken?: string; /** * Shareable link copied when the user clicks Share. * Falls back to formats.html_url if not provided. * Pass a /p/{id} permanent URL once that route exists. */ shareUrl?: string; className?: string; /** Organization brand theme — when provided, the card adopts its colors. */ theme?: WidgetTheme; onAction?: (action: string, payload?: any) => void; sendMessage?: (message: string) => void; /** * Called when the job completes successfully via polling. * Use this to persist the job result to session state. */ onComplete?: (output: PresentationJobOutput) => void; /** * Called when the job fails via polling. */ onFailed?: (error: string) => void; } declare const PresentationJobCard: React__default.FC; /** * Type definitions for ResearchReportJobCard component. */ interface ReportTheme { primary?: string; secondary?: string; accent?: string; } /** * Real-time progress information for long-running research jobs. * Updated during web search, content generation, and upload phases. */ interface JobProgress$1 { /** Progress percentage (0-100) */ percentage: number; /** Human-readable description of current step */ current_step: string; /** Category of current work: "ai_generation" | "processing" | "uploading" */ step_type?: string; /** Additional step-specific details */ details?: { searches_completed?: number; searches_total?: number; chars_generated?: number; phase?: string; }; /** ISO timestamp of last progress update */ updated_at?: string; } interface ResearchReportJobCardProps { /** Unique job identifier */ job_id: string; /** Report title */ title: string; /** Current job status */ status?: "pending" | "running" | "complete" | "failed"; /** Research topic */ topic?: string; /** Research depth (executive, detailed, comprehensive) */ depth?: string; /** Number of sections in the report */ section_count?: number; /** Number of sources cited */ source_count?: number; /** Total word count */ word_count?: number; /** Brief executive summary */ executive_summary?: string; /** Key findings (first 5) */ key_findings?: string[]; /** HTML report URL */ html_url?: string; /** Dynamic theme colors generated based on topic */ theme?: ReportTheme; /** Error message if job failed */ error?: string; /** Real-time progress information (populated during pending/running) */ progress?: JobProgress$1; /** URL to poll for status updates */ pollUrl?: string; /** Auth token for polling requests */ authToken?: string; /** Additional CSS classes */ className?: string; /** Callback when job completes */ onComplete?: (output: ResearchReportJobOutput) => void; /** Callback when job fails */ onFailed?: (error: string) => void; /** * Compact mode - only shows title and action buttons. * The embedded iframe preview is hidden; use Preview button to view full report. * @default false */ compact?: boolean; } interface ResearchReportJobOutput { title: string; topic?: string; depth?: string; section_count?: number; source_count?: number; word_count?: number; executive_summary?: string; key_findings?: string[]; theme?: ReportTheme; html_url?: string; } declare const ResearchReportJobCard: React__default.FC; /** * Type definitions for WebSearchJobCard component. */ interface WebSearchResult { /** Page title */ title: string; /** Full URL of the result */ url: string; /** 150-200 character description of the page content */ snippet: string; /** Domain only, e.g. "techcrunch.com" */ source: string; } interface JobProgress { /** Progress percentage (0-100) */ percentage: number; /** Human-readable description of current step */ current_step: string; /** Category of current work: "ai_generation" | "processing" | "uploading" */ step_type?: string; /** Additional step-specific details */ details?: { searches_completed?: number; searches_total?: number; phase?: string; }; /** ISO timestamp of last progress update */ updated_at?: string; } interface WebSearchJobCardProps { /** Unique job identifier */ job_id: string; /** Card title — typically the search query */ title?: string; /** Current job status */ status: "pending" | "running" | "complete" | "failed"; /** The search query string */ query?: string; /** Total number of results returned */ result_count?: number; /** Number of web searches performed */ search_count?: number; /** 2-3 sentence summary of findings */ summary?: string; /** Structured search results */ results?: WebSearchResult[]; /** Error message if job failed */ error?: string; /** Real-time progress information (populated during pending/running) */ progress?: JobProgress; /** URL to poll for status updates */ pollUrl?: string; /** Auth token for polling requests */ authToken?: string; /** Additional CSS classes */ className?: string; /** Callback when job completes */ onComplete?: (output: WebSearchJobOutput) => void; /** Callback when job fails */ onFailed?: (error: string) => void; /** * Compact mode — hides the results list, shows only header and summary. * @default false */ compact?: boolean; } interface WebSearchJobOutput { query: string; result_count: number; search_count: number; summary: string; results: WebSearchResult[]; } declare const WebSearchJobCard: React__default.FC; interface CampaignSeedCardProps extends Omit { /** * Status of the selection (done by user or agent) */ selectionStatus?: "user" | "agent"; /** * Whether the message is the latest (to show countdown/actions) */ isLatestMessage?: boolean; /** * Whether the user has already responded to this card */ hasUserResponded?: boolean; /** * Optional field configuration to override dynamic generation */ fields?: FieldConfig[]; /** * Optional action handler */ onAction?: (action: any) => void; /** * Optional callback to send a message to the agent directly. * When provided, the proceed button calls this instead of relying on onAction. */ sendMessage?: (text: string) => void; } /** * CampaignSeedCard * * A domain-specific molecule for the Creator Discovery workflow. * Encapsulates the specific brand info fields and selection status. * Uses smart field generation with proper renderers for all nested data types. */ declare const CampaignSeedCard: React__default.NamedExoticComponent; interface SearchSpecCardProps extends Omit { /** * Version of the search specification */ version?: number; /** * Status of the selection */ selectionStatus?: "user" | "agent"; /** * Whether the message is the latest */ isLatestMessage?: boolean; /** * Whether the user has already responded to this card */ hasUserResponded?: boolean; /** * Optional field configuration to override dynamic generation */ fields?: FieldConfig[]; /** * Alias for data — the agent schema uses specData as the prop name */ specData?: Record; /** * Optional action handler */ onAction?: (action: any) => void; /** * Optional callback to send a message to the agent directly. * When provided, the proceed button calls this instead of relying on onAction. */ sendMessage?: (text: string) => void; } /** * SearchSpecCard * * A domain-specific molecule for the Creator Discovery workflow. * Encapsulates search settings like platforms, ranges, and custom keyword bundles. * Uses smart field generation with proper renderers for all nested data types. */ declare const SearchSpecCard: React__default.NamedExoticComponent; declare const CountrySelectEdit: ({ value, onChange, }: { value: any; onChange: (value: any) => void; }) => react_jsx_runtime.JSX.Element; declare const CountrySelectDisplay: ({ value }: { value: any; }) => react_jsx_runtime.JSX.Element; declare const KeywordBundlesEdit: ({ value, onChange, }: { value: any; onChange: (value: any) => void; }) => react_jsx_runtime.JSX.Element; declare const KeywordBundlesDisplay: ({ value }: { value: any; }) => react_jsx_runtime.JSX.Element; declare const PlatformSelectEdit: ({ value, onChange, }: { value: any; onChange: (value: any) => void; }) => react_jsx_runtime.JSX.Element; declare const PlatformSelectDisplay: ({ value }: { value: any; }) => react_jsx_runtime.JSX.Element; interface MCQOption { key: string; label: string; } interface MCQCardProps { /** * The question being asked */ question: string; /** * The options to choose from */ options: Record; /** * The key of the recommended option */ recommended?: string; /** * The currently selected option key (single-select / historical view) */ selectedOption?: string; /** * Pre-selected option keys (multi-select / historical view). */ selectedOptions?: string[]; /** * Maximum number of options the user may pick. * Defaults to 1 (single-select). >= 2 enables multi-select. */ maxSelections?: number; /** * Minimum number of options required before Continue is enabled. * Defaults to `maxSelections` when multi-select, otherwise 1. */ minSelections?: number; /** * Triggered when an option is selected (fires with the last-toggled key) */ onSelect?: (key: string) => void; /** * Triggered on every selection change in multi-select mode with the full set. */ onSelectMultiple?: (keys: string[]) => void; /** * Triggered when the user clicks Continue */ onProceed?: (key: string) => void; /** * Whether this message is the latest (controls interactivity) */ isLatestMessage?: boolean; /** * Loading state during submission */ isLoading?: boolean; /** * Custom wrapper class name */ className?: string; /** * Who made the final selection (used for historical view) */ selectionStatus?: "user" | "agent"; /** * Optional action callback for external state management (e.g. PXEngine) */ onAction?: (action: any) => void; /** * Whether the interaction is disabled externally */ disabled?: boolean; /** * Session ID for self-contained persistence. * When provided with sendMessage, MCQCard handles its own state. */ sessionId?: string; /** * Callback to send a message to the agent. * Called after user confirms selection. */ sendMessage?: (text: string) => void; /** * Custom fetcher for loading existing selections. * Defaults to hitting /api/agents-proxy/custom-agents/sessions/{sessionId}/mcq-selections/get */ fetchSelections?: (sessionId: string) => Promise>; /** * Custom fetcher for persisting a selection. * Defaults to hitting /api/agents-proxy/custom-agents/sessions/{sessionId}/mcq-selections */ persistSelection?: (sessionId: string, questionKey: string, value: string) => Promise; } /** * MCQCard * * A molecule for Multiple Choice Questions. * Self-contained: when `sessionId` + `sendMessage` are provided, * it manages its own persistence and agent communication. * * Supports single- and multi-select. When `maxSelections >= 2` the card * becomes multi-select (checkboxes); with no count it stays single-select * (radios) — fully backward compatible. Multiple selections are persisted as * a comma-joined key string so the existing string-based storage is unchanged. * * Honors an optional `theme` (WidgetTheme): when provided, the card adopts the * organization's brand colors via inline styles that override the default * Tailwind palette. With no theme it renders exactly as before. */ declare const MCQCard: React__default.NamedExoticComponent; /** * Default fetchers for MCQCard self-contained mode. * * Uses localStorage as an instant cache layer: * - persist: writes to localStorage (sync) + backend (async) in parallel * - fetch: reads localStorage instantly, then backfills from backend * * This eliminates the delay where the component remounts after an agent * response and has to wait for the GET API before showing the selection. */ declare function defaultFetchSelections(sessionId: string): Promise>; declare function defaultPersistSelection(sessionId: string, questionKey: string, value: string): Promise; /** * PlatformIconGroup * Displays a horizontal list of active social platform icons. */ declare const PlatformIconGroup: React__default.FC; /** * CreatorProfileSummary * A compact row showing avatar, name, and key metrics. */ declare const CreatorProfileSummary: React__default.FC; /** * AudienceMetricCard * A card displaying specific audience metrics with progress bars. */ declare const AudienceMetricCard: React__default.FC; /** * CreatorGridCard * A visually rich card for discovery grids. */ declare const CreatorGridCard: React__default.FC; /** * BrandAffinityGroup * Visual group of associated brand logos. */ declare const BrandAffinityGroup: React__default.FC; /** * ContentPreviewGallery * Grid/Gallery of thumbnail previews. */ declare const ContentPreviewGallery: React__default.FC; /** * AudienceDemographicsCard * Visualizes audience data using appropriate chart types. */ declare const AudienceDemographicsCard: React__default.FC; /** * GrowthChartCard * Visualizes time-series growth data for follower and engagement metrics. */ declare const GrowthChartCard: React__default.FC; /** * TopPostsGrid * Displays a grid of the creator's best-performing content pieces. */ declare const TopPostsGrid: React__default.FC; /** * CreatorActionHeader * A premium header for profile views with banner and sticky actions. */ declare const CreatorActionHeader: React__default.FC; interface CreatorSearchProps extends Omit { /** * Status of the selection */ selectionStatus?: "user" | "agent"; /** * Whether the message is the latest */ isLatestMessage?: boolean; /** * Optional field configuration to override dynamic generation */ fields?: FieldConfig[]; } /** * CreatorSearch * * A domain-specific molecule for the Creator Discovery workflow. * Encapsulates creator search settings like platforms, range, geography, keywords, etc. * Designed to match the MCQCard theme with premium dark aesthetics. */ declare const CreatorSearch: React__default.NamedExoticComponent; interface CampaignConceptCardProps extends Omit { /** * Title of the concept */ title?: string; index?: number; /** * Whether this concept is recommended */ isRecommended?: boolean; /** * Whether the card is expanded */ isOpen?: boolean; /** * Callback for toggling the card */ onToggle?: () => void; /** * Dynamic field data */ data: Record; /** * Optional field configuration to override dynamic generation */ fields?: FieldConfig[]; /** * Selection status for the footer */ selectionStatus?: "user" | "agent"; /** * Whether this is the latest message */ isLatestMessage?: boolean; /** * Whether the user has already responded to this card */ hasUserResponded?: boolean; /** * Optional action handler */ onAction?: (action: any) => void; } /** * CampaignConceptCard * * A domain-specific molecule for displaying a campaign concept. * Styled to match the creator-search CampaignConceptsRenderer layout. * No proceed button — includes a copy-all icon in the header. */ declare const CampaignConceptCard: React__default.NamedExoticComponent; type CreatorWidgetStatus = "checking" | "in-progress" | "completed" | "complete" | "failed"; interface CreatorVersionData { success: boolean; ids: number[]; images: string[]; length: number; totalVersions: number; currentVersion: number; versionStatus: string; searchSpec: Record; } interface StatusDetails { overall_percentage: number; social_fetch_percentage: number; status: string; thinking_message: string; completed_at: string; } interface PollingConfig { /** Poll interval in ms (default: 5000) */ pollInterval?: number; /** Max polling duration in ms (default: 15 min) */ maxDuration?: number; /** Max consecutive errors before stopping (default: 10) */ maxErrors?: number; /** Seconds per creator for time estimate (default: 13) */ secondsPerCreator?: number; } interface FetchVersionsParams { sessionId: string; version?: number; validated: boolean; } interface FetchStatusParams { sessionId: string; versionNo: number; } interface FetchCreatorDetailsParams { creatorIds: number[]; sessionId: string; versionNo?: number; } interface CreatorDetailData { success: boolean; creatorData: any[]; } interface CreatorWidgetProps { sessionId: string; currentVersion?: number; isAgentOutput?: boolean; fetchVersions?: (params: FetchVersionsParams) => Promise; fetchStatus?: (params: FetchStatusParams) => Promise<{ status: StatusDetails; }>; fetchCreatorDetails?: (params: FetchCreatorDetailsParams) => Promise; pollingConfig?: PollingConfig; onStatusChange?: (status: CreatorWidgetStatus) => void; onAction?: (action: CreatorWidgetAction) => void; className?: string; } interface CreatorWidgetAction { type: "view-creators"; sessionId: string; creatorIds: number[]; version: number | undefined; searchSpec: Record; } interface CreatorCompactViewProps { versions: number[]; selectedVersion?: number; creatorImages: string[]; creatorLength: number; isAgentOutput: boolean; onVersionSelect: (versionNo: number) => void; onViewCreators: () => void; versionStatus: CreatorWidgetStatus; statusDetails?: StatusDetails; timeDisplay: string; isLoading: boolean; } interface CreatorImageListProps { creatorImages: string[]; creatorLength: number; isAgentOutput: boolean; initialCreatorsPercentage?: number; } interface CreatorProgressBarProps { statusDetails?: StatusDetails; timeRemaining?: string; } declare function CreatorWidgetInner({ sessionId, currentVersion, isAgentOutput, fetchVersions, fetchStatus, fetchCreatorDetails, pollingConfig, onStatusChange, onAction, className, }: CreatorWidgetProps): react_jsx_runtime.JSX.Element; declare const CreatorWidget: React$1.MemoExoticComponent; declare function CreatorWidgetSkeleton(): react_jsx_runtime.JSX.Element; interface CreatorExpandedPanelProps { isOpen: boolean; onClose: () => void; sessionId: string; creatorIds: number[]; version?: number; searchSpec: Record; fetchCreatorDetails?: (params: FetchCreatorDetailsParams) => Promise; } declare function CreatorExpandedPanel({ isOpen, onClose, sessionId, creatorIds, version, searchSpec, fetchCreatorDetails, }: CreatorExpandedPanelProps): React$1.ReactPortal | null; interface UseCreatorWidgetPollingParams { sessionId: string; currentVersion?: number; fetchVersions?: (params: FetchVersionsParams) => Promise; fetchStatus?: (params: FetchStatusParams) => Promise<{ status: StatusDetails; }>; pollingConfig?: PollingConfig; onStatusChange?: (status: CreatorWidgetStatus) => void; } declare function useCreatorWidgetPolling({ sessionId, currentVersion, fetchVersions: fetchVersionsProp, fetchStatus: fetchStatusProp, pollingConfig, onStatusChange, }: UseCreatorWidgetPollingParams): { versionData: CreatorVersionData | null; versionNumbers: number[]; selectedVersion: number | undefined; setSelectedVersion: React$1.Dispatch>; creatorImages: string[]; creatorLength: number; creatorIds: number[]; searchSpec: Record; versionStatus: CreatorWidgetStatus; statusDetails: StatusDetails | undefined; timeDisplay: string; isLoading: boolean; isValidationComplete: boolean; }; declare function CreatorCompactView({ versions, selectedVersion, creatorImages, creatorLength, isAgentOutput, onVersionSelect, onViewCreators, versionStatus, statusDetails, timeDisplay, isLoading, }: CreatorCompactViewProps): react_jsx_runtime.JSX.Element; declare function CreatorImageList({ creatorImages, creatorLength, isAgentOutput, initialCreatorsPercentage, }: CreatorImageListProps): react_jsx_runtime.JSX.Element; declare function CreatorProgressBar({ statusDetails, timeRemaining: _timeRemaining, }: CreatorProgressBarProps): react_jsx_runtime.JSX.Element; interface AnalyticsChartProps { config?: Record; chartId?: string; apiBase?: string; authToken?: string; height?: number; className?: string; loading?: boolean; error?: string; } declare function AnalyticsChart({ config: configProp, chartId, apiBase, authToken, height, className, loading: loadingProp, error: errorProp, }: AnalyticsChartProps): react_jsx_runtime.JSX.Element; export { Accordion, AccordionAtom, type AccordionAtomType, AccordionContent, AccordionItem, AccordionTrigger, ActionButton, type ActionButtonAtom, type ActionButtonProps, type ActionPriority, ActionPriorityCard, type ActionPriorityCardMolecule, type ActionPriorityCardProps, type ActionPriorityItem, Alert, AlertAtom, type AlertAtomType, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogAtom, type AlertDialogAtomType, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AnalyticsChart, type AnalyticsChartMolecule, type AnalyticsChartProps, type AnalyticsSummaryCardMolecule, ApprovalCard, type ApprovalCardMolecule, type ApprovalCardProps, type ApprovalDetail, type ApprovalStatus, type AreaChartMolecule, ArrowToggleAtom, type ArrowToggleAtomType, AspectRatio, AspectRatioAtom, type AspectRatioAtomType, AudienceDemographicsCard, type AudienceDemographicsCardMolecule, AudienceMetricCard, type AudienceMetricCardMolecule, AudiencePersonaCard, type AudiencePersonaCardMolecule, type AudiencePersonaCardProps, Avatar, AvatarAtom, type AvatarAtomType, AvatarFallback, AvatarImage, Badge, BadgeAtom, type BadgeAtomType, type BarChartMolecule, type BaseAnalyticsChartMolecule, type BaseAtom, type BaseMolecule, type BranchCI, BrandAffinityGroup, type BrandAffinityGroupMolecule, Breadcrumb, BreadcrumbAtom, type BreadcrumbAtomType, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, BudgetAllocCard, type BudgetAllocCardProps, type BudgetAllocItem, Button, type ButtonAction, ButtonAtom, type ButtonAtomType, type ButtonSize$1 as ButtonSize, type ButtonVariant$1 as ButtonVariant, Calendar, CalendarAtom, type CalendarAtomType, type CalendarEventAttendee, CalendarEventCard, type CalendarEventCardProps, type CalendarEventStatus, CampaignBriefCard, type CampaignBriefCardMolecule, type CampaignBriefCardProps, CampaignConceptCard, type CampaignConceptCardProps, CampaignSeedCard, type CampaignSeedCardAtom, type CampaignSeedCardProps, Card, CardAtom, type CardAtomType, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Carousel, CarouselAtom, type CarouselAtomType, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, ChannelPlanCard, type ChannelPlanCardMolecule, type ChannelPlanCardProps, type ChannelPlanItem, ChartAtom, type ChartAtomType, type ChartDataPoint, Checkbox, CheckboxAtom, type CheckboxAtomType, ChecklistCard, type ChecklistCardMolecule, type ChecklistCardProps, type ChecklistItem, Collapsible, CollapsibleAtom, type CollapsibleAtomType, CollapsibleContent, CollapsibleTrigger, type CollectedField, type ColumnChartMolecule, Command, CommandAtom, type CommandAtomType, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, type ComparativeChartMolecule, type ComparisonAttribute, ComparisonCard, type ComparisonCardProps, type ComparisonOption, ConfirmationCard, type ConfirmationCardMolecule, type ConfirmationCardProps, ContentPreviewGallery, type ContentPreviewGalleryMolecule, ContextMenu, ContextMenuAtom, type ContextMenuAtomType, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuItem, ContextMenuLabel, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuTrigger, CountrySelectDisplay, CountrySelectEdit, CreatorActionHeader, type CreatorActionHeaderMolecule, CreatorCompactView, type CreatorCompactViewProps, type CreatorDetailData, CreatorExpandedPanel, CreatorGridCard, type CreatorGridCardMolecule, CreatorImageList, type CreatorImageListProps, CreatorProfileSummary, type CreatorProfileSummaryMolecule, CreatorProgressBar, type CreatorProgressBarProps, CreatorSearch, type CreatorSearchProps, type CreatorVersionData, CreatorWidget, type CreatorWidgetAction, type CreatorWidgetMolecule, type CreatorWidgetProps, CreatorWidgetSkeleton, type CreatorWidgetStatus, DataGrid, type DataGridMolecule, DataSourceChecklistCard, type DataSourceChecklistCardMolecule, type DataSourceChecklistCardProps, type DataSourceItem, DataTableCard, type DataTableCardMolecule, type DataTableCardProps, type DataTableColumn, Dialog, DialogAtom, type DialogAtomType, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, type DonutChartMolecule, Drawer, DrawerAtom, type DrawerAtomType, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, DropdownMenu, DropdownMenuAtom, type DropdownMenuAtomType, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuTrigger, DynamicFormCard, type DynamicFormCardMolecule, type DynamicFormCardProps, EditableField, type EditableFieldProps, EmptyState, type EmptyStateMolecule, FeedbackRatingCard, type FeedbackRatingCardMolecule, type FeedbackRatingCardProps, type FetchCreatorDetailsParams, type FetchStatusParams, type FetchVersionsParams, FileUpload, type FileUploadMolecule, FilterBar, type FilterBarMolecule, Form, FormCard, type FormCardProps, FormControl, FormDescription, FormField, FormInputAtom, type FormInputAtomType, FormItem, FormLabel, FormMessage, FormSelectAtom, type FormSelectAtomType, FormTextareaAtom, type FormTextareaAtomType, type FunnelChartMolecule, type GapSize, GitHubConnectCard, type GitHubConnectCardProps, type GitHubConnectMolecule, GitHubIssueTrackerCard, type GitHubIssueTrackerCardProps, type GitHubIssueTrackerMolecule, GitHubRepoHealthCard, type GitHubRepoHealthCardProps, type GitHubRepoHealthMolecule, GitHubReposListCard, type GitHubReposListCardProps, GoalAlignmentCard, type GoalAlignmentCardMolecule, type GoalAlignmentCardProps, type GoalAlignmentItem, GoogleSheetsCard, type GoogleSheetsCardProps, GoogleSheetsConnectCard, type GoogleSheetsConnectCardProps, GoogleSheetsListCard, type GoogleSheetsListCardProps, GrowthChartCard, type GrowthChartCardMolecule, type HeatmapChartMolecule, HoverCard, HoverCardContent, HoverCardTrigger, IconAtom, type IconAtomType, type IconName, Input, InputAtom, type InputAtomType, type InputElementLike, InputOTP, InputOTPAtom, type InputOTPAtomType, InputOTPGroup, InputOTPSeparator, InputOTPSlot, type InputType, InputWidget, type InputWidgetField, type InputWidgetFieldKind, type InputWidgetType, InsightDigestCard, type InsightDigestCardMolecule, type InsightDigestCardProps, type InsightDigestItem, type InsightFinding, type InsightItemLike, InsightSummaryCard, type InsightSummaryCardMolecule, type InsightSummaryCardProps, type InsightSummaryItem, type JobProgress$2 as JobProgress, type KPIMetricCardMolecule, type KPIStatItem, KPIStatsCard, type KPIStatsCardMolecule, type KPIStatsCardProps, KbdAtom, type KbdAtomType, KeywordBundlesDisplay, KeywordBundlesEdit, Label, LabelAtom, type LabelAtomType, LayoutAtom, type LayoutAtomType, type LayoutDirection, type LineChartMolecule, LoadingOverlay, type LoadingOverlayMolecule, MCQCard, type MCQCardAtom, type MCQCardProps, type MCQOption, Menubar, MenubarCheckboxItem, MenubarContent, MenubarItem, MenubarLabel, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NextStepCard, type NextStepCardMolecule, type NextStepCardProps, type NextStepItem, NotificationList, type NotificationListMolecule, PXEngineRenderer, Pagination, PaginationAtom, type PaginationAtomType, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, type PersonaSegment, type PieChartMolecule, PlatformIconGroup, type PlatformIconGroupMolecule, PlatformSelectDisplay, PlatformSelectEdit, PollCard, type PollCardMolecule, type PollCardProps, type PollOption, type PollingConfig, Popover, PopoverAtom, type PopoverAtomType, PopoverContent, PopoverTrigger, type PresentationFormats, PresentationJobCard, type PresentationJobCardProps, type PresentationJobOutput, type PriorityActionItem, PriorityActionsCard, type PriorityActionsCardMolecule, type PriorityActionsCardProps, Progress, ProgressAtom, type ProgressAtomType, type PullRequest, REGISTERED_COMPONENTS, RadioAtom, type RadioAtomType, RadioGroup, RadioGroupAtom, type RadioGroupAtomType, RadioGroupItem, RatingAtom, type RatingAtomType, RecommendationCard, type RecommendationCardMolecule, type RecommendationCardProps, type RepoItem, type ReportTheme, ResearchBriefCard, type ResearchBriefCardMolecule, type ResearchBriefCardProps, type ResearchBriefItem, type JobProgress$1 as ResearchJobProgress, ResearchReportJobCard, type ResearchReportJobCardProps, type ResearchReportJobOutput, ResizableAtom, type ResizableAtomType, ResizablePanel, ResizablePanelGroup, RiskSignalCard, type RiskSignalCardMolecule, type RiskSignalCardProps, type RiskSignalItem, type RunSseConfig, ScoreBreakdownCard, type ScoreBreakdownCardMolecule, type ScoreBreakdownCardProps, type ScoreBreakdownItem, ScrollArea, ScrollAreaAtom, type ScrollAreaAtomType, ScrollBar, SearchSpecCard, type SearchSpecCardAtom, type SearchSpecCardProps, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, type SelectOption, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SeparatorAtom, type SeparatorAtomType, Sheet, SheetAtom, type SheetAtomType, SheetClose, type SheetColumn, SheetContent, SheetDescription, SheetFooter, SheetHeader, type SheetRow, type SheetTabItem, SheetTitle, SheetTrigger, Skeleton, SkeletonAtom, type SkeletonAtomType, Slider, SliderAtom, type SliderAtomType, type SocialPost, SocialPostCard, type SocialPostCardProps, type SocialPostMolecule, Spinner, SpinnerAtom, type SpinnerAtomType, type SpreadsheetItem, type StackedBarChartMolecule, type StackedColumnChartMolecule, type StaleIssue, StatsGrid, type StatsGridMolecule, type StatusDetails, StepWizard, type StepWizardMolecule, Switch, SwitchAtom, type SwitchAtomType, Table, TableAtom, type TableAtomType, TableBody, TableCaption, TableCell, TableHead, TableHeader, TableRow, Tabs, TabsAtom, type TabsAtomType, TabsContent, TabsList, TabsTrigger, TagCloud, type TagCloudMolecule, TextAtom, type TextAtomType, type TextVariant, Textarea, TextareaAtom, type TimeSeriesChartMolecule, TimelineAtom, type TimelineAtomType, TimelineCard, type TimelineCardMolecule, type TimelineCardProps, type TimelineStep, type TimelineStepStatus, ToggleAtom, type ToggleAtomType, Tooltip, TooltipAtom, type TooltipAtomType, TooltipContent, TooltipProvider, TooltipTrigger, TopPostsGrid, type TopPostsGridMolecule, type TrendIndicatorMolecule, type UIAtom, type UIComponent, type UIMolecule, type UISchema, VideoAtom, type VideoAtomType, WebSearchJobCard, type WebSearchJobCardProps, type WebSearchJobOutput, type WebSearchResult, type WidgetTheme, WidgetThemeContext, cn, defaultFetchSelections, defaultPersistSelection, elementToQAField, formatQAMessage, generateFieldsFromData, generateFieldsFromPropDefinitions, isInputAtom, submitWidgetToAgent, th, useCreatorWidgetPolling, useWidgetTheme, withAlpha };