import React from 'react';
export type RevealTrigger = 'scroll' | 'hover' | 'manual';
export type RevealAnimation = 'fade-up' | 'fade-down' | 'fade-in' | 'fade-left' | 'fade-right' | 'scale' | 'scale-up' | 'none';
export interface AnimatedRevealProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'children'> {
    /** What triggers the animation */
    trigger?: RevealTrigger;
    /** Built-in animation preset */
    animation?: RevealAnimation;
    /** Animation duration in ms (default: 600) */
    duration?: number;
    /** Delay before animation starts in ms (default: 0) */
    delay?: number;
    /** How much of the element must be visible before triggering, 0-1 (default: 0.15) */
    threshold?: number;
    /** Animate only the first time the element enters the viewport (default: true) */
    once?: boolean;
    /** Manual control: when trigger='manual', set this to true to animate */
    animate?: boolean;
    /** Easing function (default: cubic-bezier(0.16, 1, 0.3, 1)) */
    easing?: string;
    /** Children: ReactNode or render function receiving animated state */
    children: React.ReactNode | ((animated: boolean) => React.ReactNode);
}
export declare const AnimatedReveal: React.ForwardRefExoticComponent<AnimatedRevealProps & React.RefAttributes<HTMLDivElement>>;
