import type { EasingType } from '@visactor/vrender-core';
import { AbstractComponent } from '../core/base';
interface AnimateComponentAttribute {
    animation?: boolean | any;
    animationEnter?: boolean | any;
    animationExit?: boolean | any;
    animationUpdate?: boolean | any;
}
export interface ICommonAnimation {
    duration?: number;
    delay?: number;
    easing?: EasingType;
}
export declare abstract class AnimateComponent<T extends AnimateComponentAttribute> extends AbstractComponent<T> {
    protected _animationConfig?: {
        enter: ICommonAnimation | false;
        exit: ICommonAnimation | false;
        update: ICommonAnimation | false;
    };
    _prepareAnimate(defaultAnimation: ICommonAnimation): void;
}
export {};
