import { AnimationEasing } from 'zrender/lib/animation/easing.js';
|
import Element from 'zrender/lib/Element.js';
|
import { AnimationOption, AnimationOptionMixin } from '../util/types.js';
|
import type Model from '../model/Model.js';
|
declare type AnimationKeyframe<T extends Record<string, any>> = T & {
|
easing?: AnimationEasing;
|
percent?: number;
|
};
|
export interface ElementKeyframeAnimationOption<Props extends Record<string, any>> extends AnimationOption {
|
loop?: boolean;
|
keyframes?: AnimationKeyframe<Props>[];
|
}
|
/**
|
* Stop previous keyframe animation and restore the attributes.
|
* Avoid new keyframe animation starts with wrong internal state when the percent: 0 is not set.
|
*/
|
export declare function stopPreviousKeyframeAnimationAndRestore(el: Element): void;
|
export declare function applyKeyframeAnimation<T extends Record<string, any>>(el: Element, animationOpts: ElementKeyframeAnimationOption<T> | ElementKeyframeAnimationOption<T>[], animatableModel: Model<AnimationOptionMixin>): void;
|
export {};
|