import Element from 'zrender/lib/Element.js'; import Model from '../model/Model.js'; import { AnimationOption, AnimationOptionMixin } from '../util/types.js'; import { Dictionary } from 'zrender/lib/core/types.js'; import { PathStyleProps } from 'zrender/lib/graphic/Path.js'; import { TransformProp } from 'zrender/lib/core/Transformable.js'; export declare const ELEMENT_ANIMATABLE_PROPS: readonly ["", "style", "shape", "extra"]; export declare type TransitionProps = string | string[]; export declare type ElementRootTransitionProp = TransformProp | 'shape' | 'extra' | 'style'; export interface TransitionOptionMixin> { transition?: (keyof T & string) | ((keyof T & string)[]) | 'all'; enterFrom?: T; leaveTo?: T; enterAnimation?: AnimationOption; updateAnimation?: AnimationOption; leaveAnimation?: AnimationOption; } declare type TransitionElementOption = Partial> & { shape?: Dictionary & TransitionOptionMixin; style?: PathStyleProps & TransitionOptionMixin; extra?: Dictionary & TransitionOptionMixin; invisible?: boolean; silent?: boolean; autoBatch?: boolean; ignore?: boolean; during?: (params: TransitionDuringAPI) => void; } & TransitionOptionMixin; export interface TransitionBaseDuringAPI { setTransform(key: TransformProp, val: number): this; getTransform(key: TransformProp): number; setExtra(key: string, val: unknown): this; getExtra(key: string): unknown; } export interface TransitionDuringAPI extends TransitionBaseDuringAPI { setShape(key: T, val: ShapeOpt[T]): this; getShape(key: T): ShapeOpt[T]; setStyle(key: T, val: StyleOpt[T]): this; getStyle(key: T): StyleOpt[T]; } export declare function applyUpdateTransition(el: Element, elOption: TransitionElementOption, animatableModel?: Model, opts?: { dataIndex?: number; isInit?: boolean; clearStyle?: boolean; }): void; export declare function updateLeaveTo(el: Element, elOption: TransitionElementOption): void; export declare function applyLeaveTransition(el: Element, elOption: TransitionElementOption, animatableModel: Model, onRemove?: () => void): void; export declare function isTransitionAll(transition: TransitionProps): transition is 'all'; export {};