import type { ComponentAnimator } from '../component';
import type { EasingType, IAnimateStepType, ICustomAnimate } from '@visactor/vrender-core';
import { Step } from '../step';
export declare abstract class ACustomAnimate<T> extends Step implements ICustomAnimate {
    type: IAnimateStepType;
    customFrom: T;
    params?: any;
    props?: T;
    from?: T;
    to?: T;
    constructor(customFrom: T, customTo: T, duration: number, easing: EasingType, params?: any);
    update(end: boolean, ratio: number, out: Record<string, any>): void;
    protected setProps(props: T): void;
}
export declare abstract class AComponentAnimate<T> extends ACustomAnimate<T> {
    protected _animator: ComponentAnimator;
    completeBind(animator: ComponentAnimator): void;
    stop(): void;
}
