import type { MarkAnimationSpec, IAnimationState, IAnimationConfig } from './interface'; import type { IStateAnimateSpec, IAnimationSpec } from './spec'; import type { SeriesMarkNameEnum } from '../series/interface/type'; import type { ISeries } from '../series'; import type { ISeriesSpec } from '../typings'; import type { IModelMarkAttributeContext } from '../compile/mark'; export declare const AnimationStates: string[]; export declare function animationConfig(defaultConfig?: MarkAnimationSpec, userConfig?: Partial | IAnimationConfig | IAnimationConfig[]>>, params?: { dataIndex: (datum: any, params: any) => number; dataCount: () => number; }): MarkAnimationSpec; export declare function userAnimationConfig(markName: SeriesMarkNameEnum | string, spec: IAnimationSpec, ctx: IModelMarkAttributeContext): Partial>>; export declare function shouldMarkDoMorph(spec: ISeriesSpec & IAnimationSpec, markName: string): boolean; export declare function isTimeLineAnimation(animationConfig: IAnimationConfig): boolean; export declare function isChannelAnimation(animationConfig: IAnimationConfig): boolean; export declare function uniformAnimationConfig(config: Partial | IAnimationConfig | IAnimationConfig[]>>, ctx: IModelMarkAttributeContext): Partial>>; export declare function isAnimationEnabledForSeries(series: ISeries): boolean;