#import #import #import // https://www.w3.org/TR/web-animations-1/#the-animation-interface [Exposed=Window] interface Animation : EventTarget { constructor(optional AnimationEffect? effect = null, optional AnimationTimeline? timeline); attribute DOMString id; attribute AnimationEffect? effect; attribute AnimationTimeline? timeline; attribute double? startTime; attribute double? currentTime; attribute double playbackRate; readonly attribute AnimationPlayState playState; readonly attribute AnimationReplaceState replaceState; readonly attribute boolean pending; readonly attribute Promise ready; readonly attribute Promise finished; // FIXME: // attribute EventHandler onfinish; // attribute EventHandler oncancel; // attribute EventHandler onremove; // undefined cancel(); // undefined finish(); // undefined play(); // undefined pause(); // undefined updatePlaybackRate(double playbackRate); // undefined reverse(); // undefined persist(); // [CEReactions] // undefined commitStyles(); }; // https://www.w3.org/TR/web-animations-1/#the-animationplaystate-enumeration enum AnimationPlayState { "idle", "running", "paused", "finished" }; // https://www.w3.org/TR/web-animations-1/#the-animationreplacestate-enumeration enum AnimationReplaceState { "active", "removed", "persisted" };