import { APPLY_TYPE } from './types';
import type { CellRange } from '@visactor/vtable/es/ts-types/table-engine';
import type { ListTable } from '@visactor/vtable';
import type { IAutoFillPluginOptions } from '.';
export declare class AutoFillManager {
    private sourceData;
    private autoFillService;
    private tableInstance;
    private sourceRange;
    private targetRange;
    private direction;
    private headers;
    private options?;
    constructor(options?: IAutoFillPluginOptions);
    setTable(table: ListTable): void;
    handleStartDrag(selectedRange: CellRange): void;
    handleEndDrag(endSelectCellRange: CellRange, direction: string): void;
    handleDbClick(): void;
    fillData(applyType: APPLY_TYPE): void;
    private getSourceData;
    private getEmptySourceDataPiece;
    private _detectFillRange;
    private _fillData;
    private getApplyData;
    private applyFunctions;
}
