import * as React from 'react'; import { HTMLAttributes, ReactNode, Ref } from 'react'; import { RenderNode, RenderActivation, RenderLayout, RenderStyle, RenderResponsiveRule } from '@inf-monkeys-tech/monkeys'; type RenderNodeHostElement = 'article' | 'aside' | 'div' | 'main' | 'nav' | 'section'; interface RenderNodeScrollPosition { x: number; y: number; } interface RenderNodeScrollRestoration { read(key: string): RenderNodeScrollPosition | undefined; write(key: string, position: RenderNodeScrollPosition): void; remove?(key: string): void; } interface RenderNodePolicyState { active: boolean; visible: boolean; mounted: boolean; queryEnabled: boolean; } interface RenderNodeRuntimeState extends RenderNodePolicyState { elementProps?: HTMLAttributes & { ref?: Ref; }; activate(): void; setManualQueryEnabled(enabled: boolean): void; } interface RenderNodeHostProps extends Omit, 'children'> { node: RenderNode; as?: RenderNodeHostElement; asChild?: boolean; unframed?: boolean; active?: boolean; visible?: boolean; manualQueryEnabled?: boolean; children?: ((runtime: RenderNodeRuntimeState) => ReactNode) | ReactNode; loading?: ReactNode; empty?: ReactNode; error?: ReactNode; elementRef?: Ref; scrollRestoration?: false | RenderNodeScrollRestoration; onActivate?: (activation: RenderActivation, node: RenderNode) => void; onManualQueryEnabledChange?: (enabled: boolean, node: RenderNode) => void; onRuntimeStateChange?: (state: RenderNodePolicyState, node: RenderNode) => void; } declare const getRenderNodeDataAttributes: (node: RenderNode) => { 'data-monkeys-node-id': string; 'data-monkeys-node-kind': "action" | "control" | "detail" | "navigation" | "overlay" | "page" | "professional-provider" | "record" | "shell" | "view"; 'data-monkeys-node-version': number; 'data-monkeys-owner': string; 'data-monkeys-parent-node': string | undefined; 'data-monkeys-slot': string | undefined; 'data-monkeys-page-id': string | undefined; 'data-monkeys-semantic-id': string | undefined; 'data-monkeys-data-context-id': string | undefined; 'data-monkeys-capability-id': string | undefined; 'data-monkeys-provider-id': string | undefined; 'data-monkeys-state-id': string | undefined; 'data-monkeys-frame-owner': "host" | "none" | "provider"; 'data-monkeys-surface-tone': string | undefined; 'data-monkeys-density': "comfortable" | "compact" | "default"; 'data-monkeys-scroll-owner': "page" | "provider" | "surface"; 'data-monkeys-scroll-axis': "both" | "none" | "x" | "y"; 'data-monkeys-scroll-restore-key': string | undefined; 'data-monkeys-virtualization-boundary': boolean; 'data-monkeys-activation-id': string; 'data-monkeys-activation-mode': "drawer" | "fullscreen" | "inline" | "modal" | "navigate" | "select"; 'data-monkeys-mount-policy': "always" | "when-active" | "when-visible"; 'data-monkeys-query-policy': "always" | "manual" | "when-active" | "when-visible"; 'data-monkeys-deep-link': boolean; 'data-monkeys-focus-return': boolean; 'data-monkeys-layout-mode': "absolute" | "block" | "contents" | "flex" | "grid"; 'data-monkeys-responsive-rules': number; 'data-monkeys-child-count': number; 'data-monkeys-access-id': string | undefined; 'data-monkeys-evidence-id': string | undefined; 'data-monkeys-render-state': "disabled" | "empty" | "error" | "idle" | "loading" | "selected" | "success"; }; declare const sessionRenderNodeScrollRestoration: RenderNodeScrollRestoration; declare const resolveRenderNodeLayout: (node: RenderNode, viewportWidth?: number) => RenderLayout; declare const resolveRenderNodeResponsiveStyle: (style: RenderStyle | undefined, responsive: readonly (RenderResponsiveRule & { style?: RenderStyle; })[], viewportWidth?: number) => RenderStyle | undefined; declare const resolveRenderNodePolicyState: (node: RenderNode, input: { active: boolean; visible: boolean; manualQueryEnabled?: boolean; previouslyMounted?: boolean; }) => RenderNodePolicyState; declare const RenderNodeHost: React.ForwardRefExoticComponent>; export { RenderNodeHost as R, type RenderNodeHostElement as a, type RenderNodeHostProps as b, type RenderNodePolicyState as c, type RenderNodeRuntimeState as d, type RenderNodeScrollPosition as e, type RenderNodeScrollRestoration as f, getRenderNodeDataAttributes as g, resolveRenderNodeLayout as h, resolveRenderNodeResponsiveStyle as i, resolveRenderNodePolicyState as r, sessionRenderNodeScrollRestoration as s };