import { InlineTool, SanitizerConfig } from '@editorjs/editorjs'; import { InlineStyleTool } from './tool-type/inline-style-tool.component'; /** * Subscript formatting tool for EditorJS * Allows applying subscript formatting to selected text or entire blocks */ export declare class SubscriptTool extends InlineStyleTool implements InlineTool { static title: string; private readonly commandName; tag: string; hasSeparatorBefore: boolean; private readonly CSS; modifies: { tag: boolean; style: boolean; class: boolean; attribute: boolean; }; private nodes; 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; }); /** * Creates and configures the tool button */ render(): HTMLElement; /** * Applies subscript formatting to selected text or selected blocks */ surround(range: Range): Promise; /** * Applies subscript formatting to all selected blocks */ private applySubscriptToSelectedBlocks; /** * Applies subscript formatting to a specific block */ private applySubscriptToBlock; /** * Applies subscript formatting to a text element */ private applySubscriptToTextElement; /** * Removes existing subscript elements */ private removeExistingSubscriptElements; /** * Creates and applies a new subscript element */ private createAndApplySubscriptElement; /** * Applies subscript to block elements by wrapping only the text */ private applySubscriptToBlockElements; /** * Applies subscript to the content of a block element */ private applySubscriptToBlockContent; /** * Gets a block by its ID */ private getBlockById; /** * Gets the editable text element of a block */ private getTextElement; /** * Checks the tool state based on selection */ checkState(selection: Selection | null): boolean; }