chromium/third_party/blink/renderer/core/animation/keyframe_animation_options.idl

// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://w3.org/TR/web-animations-1/#dictdef-keyframeanimationoptions

// TODO(kevers): Add scroll-animations-1 link once range(Start|End) are fully
// speced.

enum TimelineRange {
  "none",
  "cover",
  "contain",
  "entry",
  "entry-crossing",
  "exit",
  "exit-crossing" };

dictionary TimelineRangeOffset {
    TimelineRange rangeName;
    CSSNumericValue offset;
};

dictionary KeyframeAnimationOptions : KeyframeEffectOptions {
    DOMString id = "";
    AnimationTimeline? timeline;
    (DOMString or TimelineRangeOffset) rangeStart = "normal";
    (DOMString or TimelineRangeOffset) rangeEnd =  "normal";
};