import { LitElement } from 'lit'; import type { EditorToolbarItem } from './toolbar'; import type { ContentTransform, ImageUploadHandler, QxsBlocksuiteEditorContentFormat, QxsBlocksuiteEditorContentSnapshot, QxsBlocksuiteEditorHeaderToolbarLabels, QxsBlocksuiteEditorToolbarPreset, ToolbarMode, ToolbarPosition } from './types'; declare module '@tiptap/core' { interface Commands { taskList: { toggleTaskList: () => ReturnType; }; } } export declare class QxsBlocksuiteEditor extends LitElement { static styles: import("lit").CSSResult; content: string; 'model-value': string; placeholder: string; 'toolbar-mode': ToolbarMode; toolbar: string | EditorToolbarItem[]; 'toolbar-preset': QxsBlocksuiteEditorToolbarPreset; 'header-toolbar-labels': string | QxsBlocksuiteEditorHeaderToolbarLabels; private _lastInvalidHeaderToolbarLabelsSource; 'header-always-visible': boolean | string; 'use-model': boolean | string; readonly: boolean | string; preview: boolean | string; editable: boolean | string | null; 'min-height': string; 'max-height': string; 'show-character-count': boolean | string; 'toolbar-position': ToolbarPosition; 'custom-styles': string; 'content-format': QxsBlocksuiteEditorContentFormat; 'deserialize-content': ContentTransform | null; 'serialize-content': ContentTransform | null; private _injectedStyleEl; private _injectCustomStyles; private get _useModelValue(); private get _readonlyValue(); private get _previewValue(); private get _editableValue(); private get _isEditable(); private get _toolbarModeValue(); private get _headerAlwaysVisibleValue(); private get _toolbarPositionValue(); private get _toolbarPresetValue(); private get _contentFormatValue(); private get _showCharacterCountValue(); private get _resolvedMinHeight(); private get _resolvedMaxHeight(); private get _wrapperStyleValue(); private get _resolvedPlaceholder(); private get _toolbarItemsValue(); private _hasToolbarItem; private get _headerToolbarLabelsValue(); private _warnInvalidHeaderToolbarLabels; private _getHeaderToolbarLabel; private _renderToolbarButton; private _transformIncomingContent; private _transformOutgoingContent; private _getEditorCharacterCount; 'upload-image': ImageUploadHandler; private _editor; private _pendingContent; private _tableRows; private _tableCols; private _hoverRow; private _hoverCol; private _tableDropdownOpen; private _tableCellToolbar; private _imageToolbar; private _linkEditor; private _isEditorFocused; private _selectedImage; private _hasSlashCommand; private _slashCommandRange; private _slashInlineMarkState; private _isComposingText; private _isUpdating; private _pendingImageInsertPos; private _linkSelection; private _preserveFocusOnInternalClick; private _initEditor; private _tableEdgeDetectionSetup; private _toggleTaskItemChecked; private _emitContentChange; private _setupTableEdgeDetection; private _handleWrapperFocusIn; private _handleHeaderToolbarMouseDown; private _handleWrapperMouseDown; private _handleWrapperFocusOut; private _isHeaderVisible; private _getImageSelection; private _getImageMaxWidth; private _getImageNaturalWidth; private _syncImageSelectionState; private _clearSlashCommandText; private _checkSlashCommand; firstUpdated(): void; updated(changed: Map): void; disconnectedCallback(): void; getContent(): string; getContentSnapshot(): QxsBlocksuiteEditorContentSnapshot; forceUpdate(): void; private _applyFormat; private _getCurrentLineStart; private _handleCompositionStart; private _handleCompositionEnd; private _getSlashCommandContext; private _clearSlashInlineMarkState; private _runInlineMarkAction; private _syncSlashInlineMarkState; private _shouldEndSlashInlineMarkAtCursor; private _hasInlineMarkAtCursor; private _restoreSlashInlineMarkIfNeeded; private _setInlineMarkState; private _applyInlineMarkToCurrentLine; private _toggleToolbarInlineMark; private _applySlashInlineMark; private _applySlashLineBlock; private _toggleBold; private _toggleItalic; private _toggleUnderline; private _toggleStrike; private _toggleCode; private _setHeading; private _setParagraph; private _toggleBulletList; private _toggleOrderedList; private _toggleTaskList; private _toggleBlockquote; private _setTextAlign; private _normalizeLinkUrl; private _getLinkLabelFromRange; private _getLinkTargetRange; private _setLink; private _closeLinkEditor; private _handleLinkEditorInput; private _applyLink; private _removeLink; private _handleLinkEditorKeydown; private _insertTable; private _handleImageUpload; private _triggerImageUpload; private _insertTableByClick; private _showTableCellToolbar; private _getTableCellRow; private _getTableCellCol; private _hideTableCellToolbar; private _addTableRowAbove; private _addTableRowBelow; private _addTableColumnLeft; private _addTableColumnRight; private _deleteTableRow; private _deleteTableColumn; private _deleteTable; private _showImageToolbar; private _hideImageToolbar; private _deleteImage; private _insertImageAfter; private _getSelectedImageNode; private _insertImageAt; private _updateSelectedImageAttributes; private _setImageWidth; private _handleImageWidthInput; private _setImageAlignLeft; private _setImageAlignCenter; private _setImageAlignRight; private _getTextLabel; private _getAlignLabel; private _renderImageControls; private _joinToolbarGroups; private _renderFormatToolbarGroup; private _renderHeadingToolbarGroup; private _renderAlignToolbarGroup; private _renderCodeLinkImageToolbarGroup; private _renderCodeToolbarButton; private _renderLinkToolbarButton; private _renderImageToolbarButton; private _renderListToolbarGroup; private _renderBlockquoteToolbarGroup; private _renderTableToolbarGroup; private _getToolbarMergeKey; private _renderToolbarItemByKey; private _renderTextToolbar; private _updateBubbleMenuPosition; render(): import("lit").TemplateResult<1>; private _renderTableGrid; } export declare function register(): void; declare global { interface HTMLElementTagNameMap { 'qxs-blocksuite-editor': QxsBlocksuiteEditor; } }