import { TemplateResult } from 'lit'; import { RichTextManager } from '../helpers'; import { ArenaCursorText, ArenaFormating, ArenaFormatings, ArenaInlineInterface, ArenaInterval, ArenaNodeInline, ArenaNodeText, ArenaTextInterface, NodeAttributes } from '../interfaces'; import { AbstractNode } from './AbstractNode'; export declare class TextNode extends AbstractNode implements ArenaNodeText { readonly hasParent: true; readonly hasChildren: false; readonly hasText: true; readonly inline: false; readonly single: false; private richTextManager; constructor(arena: ArenaTextInterface, id: string, attributes?: NodeAttributes, text?: string | RichTextManager); getTemplate(frms: ArenaFormatings): TemplateResult | string; getOutput(type: string, frms: ArenaFormatings): string; getDataHtml(frms: ArenaFormatings, start?: number, end?: number): string; getPlainText(start?: number, end?: number): string; getTextCursor(index: number): ArenaCursorText; insertText(text: string | RichTextManager, offset: number, keepFormatings?: boolean): ArenaCursorText; insertFormating(name: string, start: number, end: number): void; togglePromiseFormating(formating: ArenaFormating, offset: number): void; ltrim(): void; rtrim(): void; clearSpaces(): void; delBeforeDot(): void; toggleFormating(name: string, start: number, end: number): void; hasFormating(name: string, start: number, end: number): boolean; removeFormating(name: string, start: number, end: number): void; clearFormatings(start: number, end: number): void; getText(): RichTextManager; getRawText(): string; setRawText(text: string): void; cutText(start: number, end?: number): RichTextManager; removeText(start: number, end?: number): void; clearText(): void; getTextLength(): number; isEmpty(): boolean; getInlineInterval(start: number, end: number): ArenaInterval | undefined; addInlineNode(node: ArenaNodeInline, start: number, end: number): ArenaNodeInline | undefined; getInlineNode(arena: ArenaInlineInterface, start: number, end: number): ArenaNodeInline | undefined; removeInlineNode(node: ArenaNodeInline): void; updateInlineNode(node: ArenaNodeInline, start: number, end: number): void; clone(): TextNode; }