import { IDesignItem } from '../../../../item/IDesignItem.js';
import { IDesignerCanvas } from '../../IDesignerCanvas.js';
import { AbstractExtension } from "../AbstractExtension.js";
import { IExtensionManager } from '../IExtensionManger.js';
export type handlesPointerEvent = {
    handlesPointerEvent(designerCanvas: IDesignerCanvas, event: PointerEvent, currentElement: Element): boolean;
};
export declare class EditTextExtension extends AbstractExtension implements handlesPointerEvent {
    private static template;
    private _path;
    private _toolbar;
    private _selectionChangedListener?;
    private _toolbarStateAnimationFrame?;
    constructor(extensionManager: IExtensionManager, designerView: IDesignerCanvas, extendedItem: IDesignItem);
    private _keyDown;
    extend(): void;
    refresh(): void;
    dispose(): void;
    commitchanges(): void;
    private _cleanupFormattingMarkup;
    private _cleanupFormattingNode;
    private _mergeAdjacentSpans;
    private _isRedundantSpan;
    private _haveSameAttributes;
    private _getAttributeSignature;
    private _unwrapElement;
    handlesPointerEvent(designerCanvas: IDesignerCanvas, event: PointerEvent, currentElement: Element): boolean;
    _formatSelection(type: string, value?: string): void;
    private _scheduleToolbarStateRefresh;
    private _refreshToolbarState;
    private _getToolbarStateElement;
    private _isComputedFormatApplied;
    private _getToolbarSelect;
    private _setToolbarButtonState;
    private _setToolbarSelectValue;
    private _setToolbarFontFamilyValue;
    private _removeTemporarySelectOptions;
    private _getPrimaryFontFamily;
    private _restoreSelection;
    private _getEditableSelection;
    private _isFormatApplied;
    private _getFirstSelectedElement;
    private _getSelectionRange;
    private _findFormatTargets;
    private _hasInlineFormat;
    private _setFormat;
    private _unsetFormat;
    private _getTextDecorationValues;
    private _normalizeFontFamily;
}
