diff options
Diffstat (limited to 'catapult/third_party/polymer/components/web-animations-js/externs/web-animations-next.js')
-rw-r--r-- | catapult/third_party/polymer/components/web-animations-js/externs/web-animations-next.js | 113 |
1 files changed, 113 insertions, 0 deletions
diff --git a/catapult/third_party/polymer/components/web-animations-js/externs/web-animations-next.js b/catapult/third_party/polymer/components/web-animations-js/externs/web-animations-next.js new file mode 100644 index 00000000..743a3ba5 --- /dev/null +++ b/catapult/third_party/polymer/components/web-animations-js/externs/web-animations-next.js @@ -0,0 +1,113 @@ +/* + * Copyright 2016 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + + +/** + * @fileoverview Basic externs for the Web Animations API (Level 2 / Groups). + * This is not intended to be exhaustive, and requires the base externs from + * web-animations.js. + * @externs + */ + + +/** + * @interface + */ +var AnimationEffectReadOnly = function() {}; + +/** @type {!AnimationEffectTiming} */ +AnimationEffectReadOnly.prototype.timing; + + +/** + * @param {Element} target + * @param {!Array<!Object>} frames + * @param {(number|AnimationEffectTimingProperties)=} opt_options + * @constructor + * @implements {AnimationEffectReadOnly} + */ +var KeyframeEffect = function(target, frames, opt_options) {}; + +/** + * @return {!Array<!Object>} + */ +KeyframeEffect.prototype.getFrames = function() {}; + +/** @type {!AnimationEffectTiming} */ +KeyframeEffect.prototype.timing; + +/** @type {Element} */ +KeyframeEffect.prototype.target; + +/** @type {?function(number, !KeyframeEffect, !Animation)} */ +KeyframeEffect.prototype.onsample; + + +/** + * @param {!Array<!AnimationEffectReadOnly>} children + * @param {AnimationEffectTimingProperties=} opt_timing + * @constructor + * @implements {AnimationEffectReadOnly} + */ +var SequenceEffect = function(children, opt_timing) {}; + +/** @type {!AnimationEffectTiming} */ +SequenceEffect.prototype.timing; + +/** @type {!Array<!AnimationEffectReadOnly>} */ +SequenceEffect.prototype.children; + + +/** + * @param {!Array<!AnimationEffectReadOnly>} children + * @param {AnimationEffectTimingProperties=} opt_timing + * @constructor + * @implements {AnimationEffectReadOnly} + */ +var GroupEffect = function(children, opt_timing) {}; + +/** @type {!AnimationEffectTiming} */ +GroupEffect.prototype.timing; + +/** @type {!Array<!AnimationEffectReadOnly>} */ +GroupEffect.prototype.children; + + +/** + * @interface + */ +var AnimationTimeline = function() {}; + +/** @type {?number} */ +AnimationTimeline.prototype.currentTime; + +/** + * @param {!AnimationEffectReadOnly} effect + * @return {!Animation} + */ +AnimationTimeline.prototype.play = function(effect) {}; + +/** + * @interface + * @extends {AnimationTimeline} + */ +var DocumentTimeline = function() {}; + +/** @type {AnimationEffectReadOnly|undefined} */ +Animation.prototype.effect; + +/** @type {!DocumentTimeline} */ +Document.prototype.timeline; |