import React from 'react'; import { FlintAnimation as FlintAnimationElement } from '@getufy/flint-ui/animation/flint-animation'; /** * flint-animation: a declarative wrapper that applies Web Animations API animations to its slotted content. * * @slot (default) - Content to animate. */ export interface FlintAnimationProps extends React.HTMLAttributes { /** Animation preset name (e.g., 'fade-in', 'slide-up', 'bounce') or */ name?: string; /** Duration in milliseconds. */ duration?: number; /** CSS easing function. */ easing?: string; /** Number of iterations. Use `Infinity` for infinite looping. */ iterations?: number; /** Delay before the animation starts, in milliseconds. */ delay?: number; /** * Animation fill mode. * Allowed values: 'auto' | 'backwards' | 'both' | 'forwards' | 'none' */ fill?: 'auto' | 'backwards' | 'both' | 'forwards' | 'none'; /** * Animation direction. * Allowed values: 'alternate' | 'alternate-reverse' | 'normal' | 'reverse' */ direction?: 'alternate' | 'alternate-reverse' | 'normal' | 'reverse'; /** Set to true to trigger/play the animation. */ play?: boolean; /** Whether to play the animation automatically on first render. */ playOnConnect?: boolean; /** * Custom keyframes. When provided, overrides the `name` preset. * Type: `Keyframe[] | null` */ keyframes?: FlintAnimationElement['keyframes']; /** * Dispatched when the animation finishes. * DOM event: `flint-animation-finish` */ onFlintAnimationFinish?: (event: CustomEvent) => void; /** * Dispatched when the animation is cancelled. * DOM event: `flint-animation-cancel` */ onFlintAnimationCancel?: (event: CustomEvent) => void; } export declare const FlintAnimation: React.ForwardRefExoticComponent>;