import type { API, InlineToolConstructorOptions } from '@editorjs/editorjs'; import type { CuiAngularElement } from '../interfaces'; import type { MarkerModalComponent } from '../components/marker-modal/marker-modal.component'; export declare enum RangeContainer { start = "startContainer", end = "endContainer" } export declare class CuiMarkerTool { private readonly LIST_CLASS; protected readonly DEFAULT_CLASS = "marker"; protected readonly DIV = "div"; protected readonly TAG: string; protected readonly api: API; protected CLASS: string; protected _state: boolean; protected button: HTMLButtonElement; protected dropdown: HTMLElement; protected range: Range; protected markerModal: CuiAngularElement; static get isInline(): boolean; get state(): boolean; set state(state: boolean); constructor(data: InlineToolConstructorOptions); render(): HTMLButtonElement; surround(): void; wrap(range: Range): void; unwrap(): void; createElement(text?: string): HTMLElement; addMarkerToDOM(range: Range, mark: HTMLElement, startBlock: Node, endBlock: Node): void; removeEmptyMarkers(range: Range): void; removeExternalMarkers(range: Range, className: string): void; removeNestedMarkers(element: HTMLElement, selector: string): void; private getElementFromContainerNode; private removeAllParentsFromMarker; private getClosestParentWithClass; }