import { type ReactNode } from "react"; import { type RevealEffect } from "./variants.js"; export * from "./variants.js"; export type RevealProps = { /** Entrance pose to transition from. */ effect?: RevealEffect; /** Extra transition delay in milliseconds — the staggering hook used by RevealGroup. */ delayMs?: number; /** Fraction of the element that must be visible before the entrance runs. */ threshold?: number; children: ReactNode; className?: string; }; /** * Reveal — plays a one-time entrance (fade/slide/zoom on the motion tokens) * when the wrapped content first scrolls into view. * * Communicates arrival, not decoration: use it to introduce sections and * grouped content as the reader reaches them. Content is never hidden for * users the entrance cannot serve — server markup, reduced-motion users, and * browsers without IntersectionObserver all render the resting state * directly. */ export declare function Reveal({ effect, delayMs, threshold, children, className, }: RevealProps): import("react").JSX.Element; export type RevealGroupProps = { /** Entrance pose shared by every child. */ effect?: RevealEffect; /** Stagger between consecutive children in milliseconds. */ intervalMs?: number; /** Fraction of each child that must be visible before its entrance runs. */ threshold?: number; /** Class applied to each generated wrapper (e.g. `h-full` inside an equal-height grid). */ itemClassName?: string; children: ReactNode; }; /** * RevealGroup — wraps each direct child in a `Reveal` with an incrementing * delay, so lists and card grids cascade in reading order instead of popping * in at once. Renders no wrapper of its own: place it inside the layout * container (Grid, Stack, …) that arranges the children. */ export declare function RevealGroup({ effect, intervalMs, threshold, itemClassName, children, }: RevealGroupProps): import("react").JSX.Element; //# sourceMappingURL=index.d.ts.map