import { IAnimObject } from './IAnimObject'; export * from './IAnimObject'; export interface IObject { [key: string]: any; } export declare type IFunc = (v: any) => void; export interface IProps extends IObject { attr?: boolean; animation?: IAnimObject | IAnimObject[]; paused?: boolean; reverse?: boolean; repeat?: number; repeatDelay?: number; yoyo?: boolean; moment?: null | number; regionStartTime?: number; regionEndTime?: number; onChange?: (v: ICallBack) => void; onChangeTimeline?: (v: ITimelineCallBack) => void; } export declare type IMode = 'onUpdate' | 'onStart' | 'onComplete' | 'onRepeat'; export declare type ITimeLineMode = 'onTimelineUpdate' | 'onTimelineStart' | 'onTimelineComplete' | 'onTimelineRepeat'; export interface ICallBack { mode?: IMode; moment?: number; ratio?: number; vars: IObject | IObject[]; index: number; repeat?: number; timelineMoment?: number; targets?: IObject[] | IObject; } export interface ICallBackChange extends ICallBack { silence?: boolean; render?: boolean; } export interface ITimelineCallBack { mode: ITimeLineMode; moment: number; repeat: number; vars?: IObject[] | IObject; totalTime: number; targets?: IObject[] | IObject; }