@visactor/vrender-animate
Version:
This module provides a graph-based animation system for VRender.
97 lines (96 loc) • 2.08 kB
TypeScript
import type { EasingType, IGraphic, IGroup } from '@visactor/vrender-core';
import { ACustomAnimate } from './custom-animate';
export type FunctionCallback<T> = (...args: any[]) => T;
export interface IMoveAnimationOptions {
direction?: 'x' | 'y' | 'xy';
orient?: 'positive' | 'negative';
offset?: number;
point?: {
x?: number;
y?: number;
} | FunctionCallback<{
x?: number;
y?: number;
}>;
excludeChannels?: string[];
layoutRect?: {
width: number;
height: number;
};
}
interface IAnimationParameters {
width: number;
height: number;
group: IGroup;
elementIndex: number;
elementCount: number;
view: any;
}
export declare const moveIn: (graphic: IGraphic, options: IMoveAnimationOptions, animationParameters: IAnimationParameters) => {
from: {
x: any;
y?: undefined;
};
to: {
x: any;
y?: undefined;
};
} | {
from: {
y: any;
x?: undefined;
};
to: {
y: any;
x?: undefined;
};
} | {
from: {
x: any;
y: any;
};
to: {
x: any;
y: any;
};
};
export declare const moveOut: (graphic: IGraphic, options: IMoveAnimationOptions, animationParameters: IAnimationParameters) => {
from: {
x: any;
y?: undefined;
};
to: {
x: any;
y?: undefined;
};
} | {
from: {
y: any;
x?: undefined;
};
to: {
y: any;
x?: undefined;
};
} | {
from: {
x: any;
y: any;
};
to: {
x: any;
y: any;
};
};
export declare class MoveBase extends ACustomAnimate<Record<string, number>> {
valid: boolean;
constructor(from: null, to: null, duration: number, easing: EasingType, params?: any);
onUpdate(end: boolean, ratio: number, out: Record<string, any>): void;
}
export declare class MoveIn extends MoveBase {
onBind(): void;
}
export declare class MoveOut extends MoveBase {
onBind(): void;
}
export {};