/** * @interface AbstractTween * Defines the interface expected by `Runner` for tween-like things. */ export default class AbstractTween { /** * @abstract * For a given elapsed time relative to the start of the tween, calculates the value at that time and calls the * `callback` function with that value. If the given time is during the `delay` period, the callback will not be * invoked. * @param {number} time */ gotoElapsedTime(time: number): void; /** * @abstract * Like `gotoElapsedTime` but goes to the very end of the tween. */ gotoEnd(): void; /** * @abstract * For a given elapsed time relative to the start of the tween, determines if the tween is in its completed end state. * @param {number} time * @return {boolean} */ isDoneAtElapsedTime(time: number): boolean; }