import { UseInViewOptions } from 'motion/react';
export type AnimatedTextRevealProps = {
    /**
     * Text content to display.
     *
     * Accepts a string or an array of phrases that are revealed and cycled through automatically.
     */
    text: string | string[];
    /**
     * Reveal animation duration in seconds.
     *
     * @default 0.4
     */
    duration?: number;
    /**
     * Reveal animation delay before starting, in seconds.
     *
     * @default 0
     */
    delay?: number;
    /**
     * Interval time between phrase transitions when multiple texts are provided, in seconds.
     *
     * @default 3
     */
    interval?: number;
    /**
     * Vertical offset in pixels from which the text reveals upward.
     *
     * @default 10
     */
    distance?: number;
    /**
     * Easing function applied to the reveal motion.
     *
     * @default 'easeOut'
     */
    ease?: 'linear' | 'easeIn' | 'easeOut' | 'easeInOut';
    /**
     * Whether the animation should only start once the component enters the viewport when scrolling.
     *
     * @default true
     */
    startOnView?: boolean;
    /**
     * If true, the reveal animation runs only once per mount when the component enters the viewport.
     *
     * @default false
     */
    once?: boolean;
    /**
     * Optional root margin passed to the intersection observer for in-view detection (e.g., "0px 0px -10% 0px").
     * @see motion/react for details
     */
    inViewMargin?: UseInViewOptions['margin'];
    /**
     * Enables or disables the shimmer highlight effect across the text.
     *
     * @default true
     */
    shimmer?: boolean;
    /**
     * Duration of one shimmer loop in seconds.
     *
     * @default 5
     */
    shimmerDuration?: number;
    /**
     * Delay before the shimmer effect starts, in seconds.
     *
     * @default 0
     */
    shimmerDelay?: number;
    /**
     * Multiplier controlling the width of the shimmer highlight band.
     *
     * @default 8
     */
    shimmerSpread?: number;
    /**
     * If true, the shimmer animation loops infinitely.
     *
     * @default true
     */
    shimmerRepeat?: boolean;
    /**
     * The color of the shimmer highlight band.
     *
     * @default 'lighter'
     */
    shimmerColor?: 'black' | 'darkest' | 'darker' | 'dark' | 'gray' | 'light' | 'lighter' | 'lightest' | 'white';
    /**
     * Base color of the text.
     *
     * @default 'darkest'
     */
    textColor?: 'black' | 'darkest' | 'darker' | 'dark' | 'gray' | 'light' | 'lighter' | 'lightest' | 'white' | 'primary' | 'secondary' | 'info' | 'warning' | 'danger' | 'success';
    /**
     * Additional classNames set on the inner element.
     */
    innerClassName?: string;
    /**
     * Additional classNames set on the wrapper element.
     */
    className?: string;
};
export declare const AnimatedTextReveal: (props: AnimatedTextRevealProps) => import("react/jsx-runtime").JSX.Element;
export default AnimatedTextReveal;
