import 'server-only'; import { type ReactNode, type ComponentType } from 'react'; import { type PropsWithContext, type PropsWithOptionalContext } from '../context/types.js'; import { type CmsContentAreaComponent } from './cms-content-area/index.js'; import { type CmsEditableComponent } from './cms-editable/index.js'; import { type CmsContentComponent } from './cms-content/rsc.js'; import { type OptimizelyCompositionComponent } from './visual-builder/index.js'; import { type RichTextComponent } from './rich-text/index.js'; export type { BaseStyleDefinition, ElementStyleDefinition, LayoutProps, LayoutPropsSetting, LayoutPropsSettingChoices, LayoutPropsSettingKeys, LayoutPropsSettingValues, NodeStyleDefinition, StyleDefinition, StyleSetting, } from './cms-styles/index.js'; export { extractSettings, readSetting } from './cms-styles/index.js'; export * from './cms-styles/index.js'; export { isNode, isComponentNode, isComponentNodeOfType, isStructureNode, isElementNode, } from './visual-builder/functions.js'; /** * Fallback while RSC hasn't been moved from Canary to Main */ type ReactServerComponentType

= ComponentType

| ((props: P) => Promise); /** * Wrapper function to turn context dependant components into easy to use * server components * * @param component The component where the `ctx` parameter must be fulfilled * @returns The component, without CTX parameter */ export declare function serverContextAware

(component: ReactServerComponentType

): ComponentType>>; /** * Client side Optimizely CMS Editable */ export declare const CmsEditable: CmsEditableComponent; /** * Client side Optimizely CMS Content, leveraging the CMS Context to load the * content type and content data when needed */ export declare const CmsContent: CmsContentComponent; export type { CmsContentComponent, CmsContentProps } from './cms-content/rsc.js'; /** * Client side Optimizely CMS Content Area, leveraging the CMS Context to infer * the connection to Optimizely Graph and component dictionary. */ export declare const CmsContentArea: CmsContentAreaComponent; export type { CmsContentAreaClassMapper, CmsContentAreaComponent, CmsContentAreaProps, ContentAreaItemDefinition, } from './cms-content-area/index.js'; /** * Client side Optimizely Composition (e.g. Visual Builder), leveraging the CMS * Context to infer the connection to Optimizely Graph and component * dictionary. */ export declare const OptimizelyComposition: OptimizelyCompositionComponent; /** * Client side renderer for Rich Text */ export declare const RichText: RichTextComponent; export type { RichTextComponent, RichTextProps, RichTextNode, StringNode, TypedNode, NodeInput, } from './rich-text/index.js'; export { DefaultComponents as RichTextComponentDictionary, createHtmlComponent, } from './rich-text/components.js'; export { isNodeInput, isNonEmptyString, isRichTextNode, isStringNode, isText, isTypedNode, } from './rich-text/utils.js';