import { InlineTool, SanitizerConfig } from '@editorjs/editorjs'; import { InlineTextTool } from './tool-type/text-tool.component'; import { TextSize } from '../utils/texts.component'; /** * Text Size formatting tool for EditorJS * Allows applying different text sizes to selected text or entire blocks */ export declare class textSizeTool extends InlineTextTool implements InlineTool { static title: string; private readonly commandName; tag: string; hasSeparatorBefore: boolean; CSS: { button: string; buttonActive: string; buttonModifier: string; arrowButtonModifier: string; textSelectionModifier: string; }; textSizes: Array; classToApply: string; classes: string; modifies: { tag: boolean; style: boolean; class: boolean; attribute: boolean; }; nodes: { button: HTMLButtonElement | null; }; private selectedBlocksService; api: any; private _state; static get isInline(): boolean; static get sanitize(): SanitizerConfig; get state(): boolean; set state(state: boolean); get shortcut(): string; constructor({ api }: { api: any; }); /** * Initializes the classes string for all text sizes */ private initializeClasses; /** * Creates and configures the tool button with dropdown functionality */ render(): HTMLElement; /** * Creates the dropdown actions menu */ renderActions(): HTMLElement; /** * Applies text size formatting to selected text or selected blocks */ surround(range: Range | null, applyStyle?: boolean): Promise; /** * Applies text size formatting to all selected blocks */ private applyTextSizeToSelectedBlocks; /** * Applies text size formatting to a specific block */ private applyTextSizeToBlock; /** * Applies text size formatting to a text element */ private applyTextSizeToTextElement; /** * Removes existing text size elements */ private removeExistingTextSizeElements; /** * Creates and applies a new text size element */ private createAndApplyTextSizeElement; /** * Applies text size to block elements by wrapping only the text */ private applyTextSizeToBlockElements; /** * Applies text size to the content of a block element */ private applyTextSizeToBlockContent; /** * Handles text style application from dropdown */ applyTextStyle(event: MouseEvent, classToApply: string): Promise; /** * Shows actions dropdown */ showActions(mark: HTMLElement): void; /** * Hides actions dropdown */ hideActions(): void; /** * Gets tools dictionary for internationalization */ private getToolsDictionary; /** * Gets a block by its ID */ private getBlockById; /** * Gets the editable text element of a block */ private getTextElement; /** * Focuses the paragraph element */ private focusParagraph; /** * Checks the tool state based on selection */ checkState(selection: Selection | null): boolean; }