import { type ReactNode } from "react"; export type FormShape = "slab" | "tiles" | "rows" | "pill" | "chart" | "control" | "line"; /** * The shimmer bar every silhouette below is built from. V4 (one component * family) took `Skeleton` off the component vocabulary and the public * `@vendoai/vendo/ui/tree` surface — a loading placeholder is renderer chrome, not * something a model names. It lives here, with its only two consumers (this * module and frames.tsx), and is NOT re-exported from tree/index.ts. * * `data-skeleton` is the stable hook tests select on (it replaced * `data-primitive="Skeleton"`, which died with the primitive family). */ export declare function Skeleton(props: { width?: string | number; height?: string | number; }): import("react").JSX.Element; /** * Is a build still painting this surface? `StatefulTreeView` publishes the * tree's own `streaming` flag here — the same one that holds the skeletons * above — so a Kit component nested anywhere under it can read it without a * prop threaded through the whole vocabulary. */ export declare const FormingContext: import("react").Context; /** * A Kit empty state's copy, held back while the build is still in flight: a * component handed no rows YET does not know whether it is empty, and "No data" * on a table that is about to be full is a lie. Settled, the copy is the truth * and shows exactly as before. */ export declare function EmptyOrForming({ children }: { children: ReactNode; }): import("react").JSX.Element; /** * The tree streams before generated component SOURCES arrive, so a forming * node's silhouette can only come from what its name says the component is. * Anything unrecognized keeps the plain 72px slab. */ export declare function deriveFormShape(componentName: string): FormShape; /** The shape-aware streaming placeholder: shimmer silhouettes of the final * geometry, so arrival is a crossfade instead of a slab popping into a view. */ export declare function FormingSkeleton({ name }: { name: string; }): import("react").JSX.Element; /** * One PLAN LEAF that has not been filled yet (generation pipeline rebuild, * Task 5). A leaf is exactly one component, so a stat-shaped leaf is one tile — * the three-tile band above is the silhouette of a whole forming REGION, and * repeating it per leaf would show nine tiles for three stats. */ export declare function PendingLeaf({ name }: { name: string; }): import("react").JSX.Element;