import type { FormulaManager } from '../managers/formula-manager';
import type { TableEventHandlersEventArgumentMap } from '@visactor/vtable/es/ts-types';
export interface FunctionParamPosition {
    start: number;
    end: number;
}
export declare class FormulaRangeSelector {
    private formulaManager;
    constructor(formulaManager: FormulaManager);
    selectionsToA1Notation(selections: any[], addressFromCoord: (row: number, col: number) => string): string;
    insertA1ReferenceInFunction(formulaInput: HTMLInputElement, a1Notation: string, isCtrlAddSelection: boolean): void;
    private findCurrentArgumentPosition;
    private handleSelectionChanged;
    handleCellValueChanged(event: TableEventHandlersEventArgumentMap['change_cell_value']): void;
    handleSelectionChangedForRangeMode(): void;
    private hasFormulaDependents;
    private updateDependentCellsCascade;
    private getAllDependentsRecursive;
    private sortCellsByDependencyOrder;
    private ensureCursorVisible;
    release(): void;
}
