@visactor/vrender-animate
Version:
This module provides a graph-based animation system for VRender.
45 lines (44 loc) • 1.75 kB
TypeScript
import type { IGraphic } from '@visactor/vrender-core';
import type { IAnimationState } from './types';
import type { IAnimationConfig } from '../executor/executor';
import { AnimateExecutor } from '../executor/animate-executor';
export declare const AnimationStates: {
APPEAR: string;
DISAPPEAR: string;
UPDATE: string;
HIGHLIGHT: string;
UNHIGHLIGHT: string;
SELECT: string;
UNSELECT: string;
HOVER: string;
UNHOVER: string;
ACTIVE: string;
INACTIVE: string;
};
export declare class AnimationStateStore {
graphic: IGraphic;
constructor(graphic: IGraphic);
states?: Map<string, IAnimationState>;
registerState(state: IAnimationState): void;
clearStates(): void;
}
interface IStateInfo {
state: string;
animationConfig: IAnimationConfig | IAnimationConfig[];
executor: AnimateExecutor;
}
export declare class AnimationStateManager {
protected graphic: IGraphic;
stateList: IStateInfo[] | null;
constructor(graphic: IGraphic);
applyState(nextState: string[], animationConfig: (IAnimationState | IAnimationState[])[], callback?: (empty?: boolean) => void): void;
applyAppearState(animationConfig: IAnimationConfig, callback?: () => void): void;
applyDisappearState(animationConfig: IAnimationConfig, callback?: () => void): void;
applyUpdateState(animationConfig: IAnimationConfig, callback?: () => void): void;
applyHighlightState(animationConfig: IAnimationConfig, callback?: () => void): void;
applyUnhighlightState(animationConfig: IAnimationConfig, callback?: () => void): void;
stopState(state: string, type?: 'start' | 'end' | Record<string, any>): void;
clearState(): void;
reApplyState(state: string): void;
}
export {};