/**
 * This interface provides a promise in order to wait or being notified of an animation completion.
 * Additionally, it provides a "cancel" method allowing to stop the animation when called.
 */
export interface AnimationPromise extends Promise<void> {
    /**
     * This flag will be set to true when the "cancel" method is called.
     */
    isCanceled: boolean;
    /**
     * When this method is called the animation is stopped.
     * The animation target will be put in its final state and the completion will occur.
     * Note that the "isCanceled" flag will be set to true.
     */
    cancel(): void;
}
