import type { IGraphic, IGroup } from '@visactor/vrender-core';
import { type EasingType } from '@visactor/vrender-core';
import { ACustomAnimate } from './custom-animate';
export declare class ClipGraphicAnimate extends ACustomAnimate<any> {
    private _group?;
    private _clipGraphic?;
    protected clipFromAttribute?: any;
    protected clipToAttribute?: any;
    private _lastClip?;
    private _lastPath?;
    constructor(from: any, to: any, duration: number, easing: EasingType, params: {
        group: IGroup;
        clipGraphic: IGraphic;
    });
    onBind(): void;
    onEnd(): void;
    onUpdate(end: boolean, ratio: number, out: Record<string, any>): void;
}
export declare class ClipAngleAnimate extends ClipGraphicAnimate {
    constructor(from: any, to: any, duration: number, easing: EasingType, params: {
        group: IGroup;
        center?: {
            x: number;
            y: number;
        };
        startAngle?: number;
        radius?: number;
        orient?: 'clockwise' | 'anticlockwise';
        animationType?: 'in' | 'out';
    });
}
export declare class ClipRadiusAnimate extends ClipGraphicAnimate {
    constructor(from: any, to: any, duration: number, easing: EasingType, params: {
        group: IGroup;
        center?: {
            x: number;
            y: number;
        };
        startRadius?: number;
        endRadius?: number;
        animationType?: 'in' | 'out';
    });
}
export declare class ClipDirectionAnimate extends ClipGraphicAnimate {
    constructor(from: any, to: any, duration: number, easing: EasingType, params: {
        group: IGroup;
        direction?: 'x' | 'y';
        orient?: 'positive' | 'negative';
        width?: number;
        height?: number;
        animationType?: 'in' | 'out';
    });
}
