@erosnicolau/animated-text
Version:
Advanced React animated text component with comprehensive animation effects
53 lines • 1.81 kB
TypeScript
import './AnimatedText.css';
import { AnimationEasing, AnimationType, ComposableEffect, FontPreset, PhraseStyle } from './types';
export interface AnimatedTextProps {
content: string;
phraseStyles?: PhraseStyle[];
allowHtml?: boolean;
animation?: AnimationType;
startDelay?: number;
itemSpacing?: number;
blockEffect?: ComposableEffect;
blockDuration?: number;
blockEasing?: AnimationEasing;
wordEffect?: ComposableEffect;
wordDuration?: number;
wordSpacing?: number;
wordEasing?: AnimationEasing;
wordStyles?: Array<{
word: number;
className: string;
}>;
typewriterEffect?: ComposableEffect;
typewriterDuration?: number;
typewriterDelay?: number;
typewriterEasing?: AnimationEasing;
wordTypewriterEffect?: ComposableEffect;
wordTypewriterDuration?: number;
wordTypewriterLetterDelay?: number;
wordTypewriterWordDelay?: number;
wordTypewriterEasing?: AnimationEasing;
transformOrigin?: string;
textShadow?: string;
width?: string;
minWidth?: string;
maxWidth?: string;
height?: string;
minHeight?: string;
maxHeight?: string;
as?: 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'p' | 'div' | 'span';
fontPreset?: FontPreset;
fontScale?: number;
subtitle?: string;
align?: 'left' | 'right' | 'center';
verticalAlign?: 'top' | 'middle' | 'bottom' | 'baseline' | 'text-top' | 'text-bottom';
className?: string;
wrapperClassName?: string;
showReplay?: boolean;
showConfig?: boolean;
virtualizationMargin?: string;
virtualPlaceholder?: React.ReactNode;
}
declare const AnimatedText: (props: AnimatedTextProps) => import("react/jsx-runtime").JSX.Element;
export default AnimatedText;
//# sourceMappingURL=AnimatedText.d.ts.map