import type React from 'react'; import type { IAnimObject as Anim, IMode, ITimelineCallBack as TimelineCallBack } from 'tween-one'; export declare type IObject = Record; export declare type ITimelineCallBack = TimelineCallBack; export interface ICallBack { mode?: IMode; moment?: number; ratio?: number; index: number; repeat?: number; timelineMoment?: number; vars?: IObject | IObject[]; targets?: IObject | IObject[]; } interface AnimObject extends Anim { Children?: { value?: number; floatLength?: number; formatMoney?: true | { thousand?: string; decimal?: string; }; }; } export declare type AnimObjectOrArray = AnimObject | AnimObject[]; export declare type IAnimObject = AnimObjectOrArray | ((e: { key: string; index: number; }) => AnimObject); interface AllHTMLAttributes extends Omit, 'crossOrigin'>, React.AllHTMLAttributes { } export interface IAnimProps extends Omit { style?: React.CSSProperties; children?: any; animation?: AnimObjectOrArray; paused?: boolean; delay?: number; reverse?: boolean; repeatDelay?: number; repeat?: number; yoyo?: boolean; ref?: React.Ref; onChange?: (v: ICallBack) => void; onChangeTimeline?: (v: ITimelineCallBack) => void; moment?: number; attr?: boolean; resetStyle?: boolean; component?: string | null | React.FC | React.ComponentClass; componentProps?: IObject; forcedJudg?: IObject; killPrevAnim?: boolean; regionStartTime?: number; regionEndTime?: number; } export interface IEndCallback { key?: string | React.ReactText; type?: string; target?: HTMLElement | HTMLElement[]; } export interface IGroupProps extends Omit { ref?: React.Ref; appear?: boolean; enter?: IAnimObject; leave?: IAnimObject; animatingClassName?: string[]; exclusive?: boolean; resetStyle?: boolean; onEnd?: (e: IEndCallback) => void; component?: string | null | React.FC | React.ComponentClass; componentProps?: IObject; } export interface TweenOneRef extends React.ForwardRefExoticComponent { isTweenOne?: boolean; plugins?: any; ticker?: any; easing?: any; } export interface TweenOneGroupRef extends React.ForwardRefExoticComponent { isTweenOneGroup?: boolean; } export {};