import { TimelineEngine } from "../engine/engine"; import { TimelineAction } from "./action"; export interface TimelineEffect { id: string; name?: string; source?: TimeLineEffectSource; } export interface EffectSourceParam { time: number; isPlaying: boolean; action: TimelineAction; effect: TimelineEffect; engine: TimelineEngine; } /** * 效果执行回调 * @export * @interface TimeLineEffectSource */ export interface TimeLineEffectSource { start?: (param: EffectSourceParam) => void; enter?: (param: EffectSourceParam) => void; update?: (param: EffectSourceParam) => void; leave?: (param: EffectSourceParam) => void; stop?: (param: EffectSourceParam) => void; }