import React from 'react'; import { BoundSubtreeLens } from '../lens'; import type { EntitySchemaData } from '../schema-types/types'; import type { EntityType, Subtree } from '../types'; declare type TreeContextProps = { tree: Subtree; onUpdate(next: Subtree): void; onEntityRender?: (entityData: EntityType, schemaData: EntitySchemaData) => void; }; export declare const TreeContext: import("../../index.js").VendorContext; export declare const useTreeContextRef: () => Readonly<{ current: TreeContextProps; }>; /** * NOTE: this hook relies on `value.tree.entities[entityId]` to change in order to trigger a re-render * of the component even though the result of this call is static. */ export declare const useEntity: (entityId: string) => { lens: BoundSubtreeLens; id: string; /** * Set the current tree */ componentTypeId: string; contentTypeId: string; version: number; data: unknown; overrides: import("../types").Overrides; path: string[]; semanticContext: import("../types").SemanticContext; globalContentContext?: import("../types").GlobalContentContext | undefined; htmlTag?: import("..").HtmlTag | undefined; }; export declare const TreeContextProvider: (props: React.PropsWithChildren) => React.ReactElement<{ value: typeof import("./hooks/use-required-context").REQUIRED_CONTEXT_MISSING | TreeContextProps; }, string | React.JSXElementConstructor>; export {};