import { BeanStub } from 'ag-grid-community';
import type { Column } from 'ag-grid-community';
import type { AgFormulaInputField } from './agFormulaInputField';
export declare class FormulaInputRangeSyncFeature extends BeanStub {
    private readonly field;
    private rangeSelectionEnabled;
    private editingCellRef?;
    private editingColumn?;
    private editingRowIndex?;
    private readonly trackedRangeRefs;
    private readonly trackedRanges;
    private suppressRangeEvents;
    private ignoreNextRangeEvent;
    private skipNextValueUpdate;
    private suppressSelectionChangeHandling;
    private readonly handleEditorDeactivated;
    constructor(field: AgFormulaInputField);
    postConstruct(): void;
    onValueUpdated(value: string, hasFormulaPrefix: boolean): void;
    setEditingCellRef(column: Column | undefined, rowIndex: number | null | undefined, editingCellRef?: string): void;
    setEditorActive(active: boolean): void;
    withSelectionChangeHandlingSuppressed(action: () => void): void;
    deactivateForFocusLoss(): void;
    private registerActiveEditor;
    private unregisterActiveEditor;
    private isActiveEditor;
    private getTrackedRefCount;
    private hasTrackedRef;
    private addTrackedRef;
    private removeTrackedRef;
    private enableRangeSelectionWhileEditing;
    private disableRangeSelectionWhileEditing;
    private clearTrackedRanges;
    private getLiveRanges;
    private withSuppressedRangeEvents;
    private setCellRangesSilently;
    private getColorIndexForTokenOrRef;
    private normaliseRefForComparison;
    private tagRangeColor;
    private trackRange;
    private getUntrackedFormulaRangesByRef;
    private syncRangesFromFormula;
    private onCellSelectionChanged;
    private keepLatestSelectionOnly;
    private isSpecialOnlyRange;
    private handleRangeTokenUpdate;
    private addRangeForRef;
    private findLatestRangeForRef;
    private tagLatestRangeForRef;
    private discardLatestRangeForRef;
    private ensureTrackedRangeColors;
    private handleRemovedRangeTokens;
    private refreshRangeStyling;
    private refocusEditingCell;
    private removeTrackedRange;
    private removeRangeForRef;
    private updateTrackedRangeTokens;
}
