import { LitElement, PropertyValues } from 'lit';
import './nile-rte-toolbar';
import './nile-rte-toolbar-item';
import './nile-rte-select';
import './nile-rte-color';
import './nile-rte-divider';
import './nile-rte-preview';
import './nile-rte-mentions';
import './nile-rte-link';
type MentionsConfig = Record<string, {
    key: string;
    label: string;
}[]>;
export declare class NileRichTextEditor extends LitElement {
    protected createRenderRoot(): this;
    value: string;
    noStyles: boolean;
    disabled: boolean;
    singleLineEditor: boolean;
    placeholder: string;
    mentions: MentionsConfig;
    whitelist: string[];
    private content;
    private editorEl;
    private previewEl;
    private toolbarEl;
    private lastRange;
    private buttonMap;
    private headingSelect;
    private fontSelect;
    private colorInput;
    private bgColorInput;
    private colorSwatchEl;
    private bgSwatchEl;
    private containerEl;
    private linkEl;
    private mentionsEl;
    private injectCss;
    connectedCallback(): void;
    private ensureStructure;
    protected firstUpdated(_changedProperties: PropertyValues): void;
    private updateContentWithMention;
    disconnectedCallback(): void;
    protected updated(changed: Map<string, any>): void;
    private ensureEditor;
    private unwrapMention;
    private scrubBrokenMentions;
    private onEditorClick;
    private onEditorPaste;
    private onEditorDrop;
    private onEditorInput;
    private onEditorMouseup;
    private onEditorKeyup;
    private wireEditor;
    private unwireEditor;
    private onEditorKeydown;
    private wireAuthoredToolbar;
    private onSelectionChange;
    private saveSelection;
    private restoreSelection;
    private focusAndRestore;
    private getCleanContent;
    private insertList;
    private afterListEdit;
    private ensureAtLeastOneParagraph;
    private onToolbarCommand;
    private setBtnActive;
    private updateToolbarState;
    private syncPreview;
    private getComputedImportantProps;
    private updateContent;
}
declare global {
    interface HTMLElementTagNameMap {
        'nile-rich-text-editor': NileRichTextEditor;
    }
}
export {};
