import type { EasingType, IAnimate, IStep } from '@visactor/vrender-core';
import { ACustomAnimate } from './custom-animate';
export interface IScaleAnimationOptions {
    direction?: 'x' | 'y' | 'xy';
}
export declare class ScaleIn extends ACustomAnimate<Record<string, number>> {
    valid: boolean;
    constructor(from: null, to: null, duration: number, easing: EasingType, params?: IScaleAnimationOptions);
    _updateFunction: (ratio: number) => void;
    onBind(): void;
    onEnd(cb?: (animate: IAnimate, step: IStep) => void): void;
    updateX(ratio: number): void;
    updateY(ratio: number): void;
    updateXY(ratio: number): void;
    deleteSelfAttr(key: string): void;
    onUpdate(end: boolean, ratio: number, out: Record<string, any>): void;
}
export declare class ScaleOut extends ACustomAnimate<Record<string, number>> {
    valid: boolean;
    constructor(from: null, to: null, duration: number, easing: EasingType, params?: IScaleAnimationOptions);
    onBind(): void;
    onEnd(cb?: (animate: IAnimate, step: IStep) => void): void;
    onUpdate(end: boolean, ratio: number, out: Record<string, any>): void;
}
