import type { pluginsDefinition, ListTable, BaseTableAPI } from '@visactor/vtable';
import type { TableEvents } from '@visactor/vtable/src/core/TABLE_EVENT_TYPE';
export * from './formula-integration';
export * from './types';
export * from './rules';
export interface IAutoFillPluginOptions {
    fillMode?: 'copy' | 'series';
    fastFillMode?: 'copy' | 'series';
    isFormulaCell?: (col: number, row: number, cellData: any, table: ListTable) => boolean;
    getCellFormula?: (col: number, row: number, cellData: any, table: ListTable) => string | undefined;
    setCellFormula?: (col: number, row: number, formula: string, table: ListTable) => void;
}
export declare class AutoFillPlugin implements pluginsDefinition.IVTablePlugin {
    id: string;
    name: string;
    runTime: ("mousedown_fill_handle" | "drag_fill_handle_end" | "dblclick_fill_handle")[];
    table: ListTable;
    private autoFillManager;
    constructor(options?: IAutoFillPluginOptions);
    run(...args: [{
        direction: string;
    }, TableEvents[keyof TableEvents] | TableEvents[keyof TableEvents][], BaseTableAPI]): void;
}
