/** * @fileoverview Staggered blur + fade entrance animation wrapper. * @author Saasflareâ„¢ * Combines a blur filter with opacity and vertical offset for a polished * entrance effect. Supports stagger delay for list items. * @module packages/ui/components/ui/blur-fade * @package ui * * @component * @example * import { BlurFade } from '@saasflare/ui'; * * Fades in with blur * * * @example * // Staggered list * {items.map((item, i) => ( * * * * ))} */ import * as React from "react"; import { type ReactNode } from "react"; import { type SaasflareComponentProps } from "../../providers"; /** Motion event overrides that conflict with React HTML events. */ type MotionConflicts = "onDrag" | "onDragStart" | "onDragEnd" | "onAnimationStart" | "onAnimationEnd"; /** Props for the BlurFade component. */ export interface BlurFadeProps extends Omit, MotionConflicts | keyof SaasflareComponentProps>, SaasflareComponentProps { /** Content to animate. */ children: ReactNode; /** Animation delay in seconds (use for staggering). Default: `0` */ delay?: number; /** Initial blur amount in pixels. Default: `8` */ blur?: number; /** Vertical offset in pixels. Default: `12` */ yOffset?: number; /** Animation duration in seconds. Default: `0.5` */ duration?: number; /** Whether animation triggers only once. Default: `true` */ once?: boolean; /** Additional class names. */ className?: string; } /** * Entrance animation that combines blur, opacity, and vertical slide. * * - Great for staggered reveals: pass incrementing `delay` values * - Blur clears simultaneously with the fade for a cohesive effect * - Renders children statically when reduced motion is preferred or the * design-system `animated` axis is disabled (prop or provider) * - Uses Intersection Observer to trigger on viewport entry * * @component * @package ui */ export declare function BlurFade({ children, delay, blur, yOffset, duration, once, className, surface, radius, animated, iconWeight, ...props }: BlurFadeProps): import("react/jsx-runtime").JSX.Element; export {};