import { type EasingType, type IAnimate, type IStep } from '@visactor/vrender-core';
import { ACustomAnimate } from './custom-animate';
export interface IUpdateAnimationOptions {
    diffAttrs: Record<string, any>;
    animationState: string;
    diffState: string;
    data: Record<string, any>[];
}
export declare class Update extends ACustomAnimate<Record<string, number>> {
    valid: boolean;
    private updateFromAttrs;
    private clipPathSyncKeys;
    private clipPathSyncParent;
    private clipPathSyncChildIndex;
    private clipPathSyncDisabled;
    constructor(from: null, to: null, duration: number, easing: EasingType, params?: IUpdateAnimationOptions);
    onBind(): void;
    trySyncStartProps(): void;
    onEnd(cb?: (animate: IAnimate, step: IStep) => void): void;
    update(end: boolean, ratio: number, out: Record<string, any>): void;
    private syncParentClipPathToTarget;
    private getClipPathSyncChildIndex;
    private isClipPathStaticTarget;
    private getTargetFinalAttrs;
    private isSameClipPathValue;
    private buildClipPathTransientAttrs;
}
