import { CSSProperties, PropType, VNode } from 'vue'; import { CombineProps, VueJsxNode } from '../interface'; interface AnimationEventsNeedBind { onAnimationStart?: (e: AnimationEvent) => void; onAnimationEnd?: (e: AnimationEvent) => void; [key: string]: (e: any) => void; } interface AnimationProps { startClassName?: string; endClassName?: string; children: ({}: { animationClassName: string; animationStyle: CSSProperties; animationEventsNeedBind: AnimationEventsNeedBind; isAnimating: boolean; }) => VueJsxNode; animationState: 'enter' | 'leave'; onAnimationEnd?: (stoppedByAnother: boolean) => void; onAnimationStart?: () => void; motion?: boolean; replayKey?: string; fillMode?: 'backwards' | 'both' | 'forwards' | 'none'; } export declare const vuePropsType: CombineProps; declare const CSSAnimation: import("vue").DefineComponent | { type: PropType; default?: any; required?: false; }; endClassName: PropType | { type: PropType; default?: any; required?: false; }; children: { type: PropType<({}: { animationClassName: string; animationStyle: CSSProperties; animationEventsNeedBind: AnimationEventsNeedBind; isAnimating: boolean; }) => VueJsxNode>; default?: any; required: true; }; animationState: { type: PropType<"enter" | "leave">; default?: any; required: true; }; onAnimationEnd: PropType<(stoppedByAnother: boolean) => void> | { type: PropType<(stoppedByAnother: boolean) => void>; default?: any; required?: false; }; onAnimationStart: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; motion: PropType | { type: PropType; default?: any; required?: false; }; replayKey: PropType | { type: PropType; default?: any; required?: false; }; fillMode: PropType<"none" | "both" | "backwards" | "forwards"> | { type: PropType<"none" | "both" | "backwards" | "forwards">; default?: any; required?: false; }; }>, () => VNode, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly | { type: PropType; default?: any; required?: false; }; endClassName: PropType | { type: PropType; default?: any; required?: false; }; children: { type: PropType<({}: { animationClassName: string; animationStyle: CSSProperties; animationEventsNeedBind: AnimationEventsNeedBind; isAnimating: boolean; }) => VueJsxNode>; default?: any; required: true; }; animationState: { type: PropType<"enter" | "leave">; default?: any; required: true; }; onAnimationEnd: PropType<(stoppedByAnother: boolean) => void> | { type: PropType<(stoppedByAnother: boolean) => void>; default?: any; required?: false; }; onAnimationStart: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; motion: PropType | { type: PropType; default?: any; required?: false; }; replayKey: PropType | { type: PropType; default?: any; required?: false; }; fillMode: PropType<"none" | "both" | "backwards" | "forwards"> | { type: PropType<"none" | "both" | "backwards" | "forwards">; default?: any; required?: false; }; }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default CSSAnimation;