import type { EasingType } from '@visactor/vtable/es/vrender';
import type { BaseTableAPI } from '@visactor/vtable/es/ts-types/base-table';
import type { pluginsDefinition } from '@visactor/vtable';
export interface ITableCarouselAnimationPluginOptions {
    id?: string;
    rowCount?: number;
    colCount?: number;
    animationDuration?: number;
    animationDelay?: number;
    animationEasing?: EasingType;
    autoPlay?: boolean;
    autoPlayDelay?: number;
    customDistRowFunction?: (row: number, table: BaseTableAPI) => {
        distRow: number;
        animation?: boolean;
    } | undefined;
    customDistColFunction?: (col: number, table: BaseTableAPI) => {
        distCol: number;
        animation?: boolean;
    } | undefined;
}
export declare class TableCarouselAnimationPlugin implements pluginsDefinition.IVTablePlugin {
    id: string;
    name: string;
    runTime: "initialized"[];
    table: BaseTableAPI;
    rowCount: number;
    colCount: number;
    animationDuration: number;
    animationDelay: number;
    animationEasing: EasingType;
    playing: boolean;
    row: number;
    col: number;
    willUpdateRow: boolean;
    willUpdateCol: boolean;
    autoPlay: boolean;
    autoPlayDelay: number;
    customDistRowFunction?: (row: number, table: BaseTableAPI) => {
        distRow: number;
        animation?: boolean;
    } | undefined;
    customDistColFunction?: (col: number, table: BaseTableAPI) => {
        distCol: number;
        animation?: boolean;
    } | undefined;
    constructor(options?: ITableCarouselAnimationPluginOptions);
    run(...args: any[]): void;
    reset(): void;
    play(): void;
    pause(): void;
    updateRow(): void;
    updateCol(): void;
    release(): void;
}
