import { IAdaptable } from '../../AdaptableInterfaces/IAdaptable';
import { AdaptableApi, CellAddress } from '../../types';
import { IAdaptableService } from './Interface/IAdaptableService';
/**
 * This service controls the interaction between Notes & Comments
 * If there are active Notes or Comments it listens to Cell Selection and Mouse Enter events
 */
export declare class AnnotationsService implements IAdaptableService {
    private api;
    adaptable: IAdaptable;
    private isListeningToEvents;
    constructor(api: AdaptableApi);
    destroy(): void;
    private getAdaptableState;
    private dispatchAction;
    static isSameAddress(a: CellAddress, b: CellAddress): boolean;
    checkListenToEvents(): void;
    shouldListenToEvents(): boolean;
    setUpEventListeners(): void;
    private getCellPositionFromEvent;
    private handleMouseEnter;
    private handleCellSelected;
    getOpenCellAddress(): CellAddress | undefined;
    getEditMode(): boolean;
    hidePopup(): void;
    showPopup(cellAddress: CellAddress, editMode: boolean): void;
    editFocusedEntity(entity: 'Note' | 'Comment'): void;
    getNotePopupEditMode(): boolean;
}
