import { AfterViewInit, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import Quill from 'quill';
import { DsfrI18nService, DsfrSeverity, DsfrSeverityConst } from '@edugouvfr/ngx-dsfr';
import * as i0 from "@angular/core";
export declare class EduEditorContentComponent implements AfterViewInit, OnDestroy, OnChanges {
    /**
     * L'identifiant du tag hôte pour le composant éditeur.
     *
     * Attention : cet input est statique et doit être connu à l'initialisation du composant.
     */
    editorId: string;
    /**
     * Renseigner cette proprité positionne un attribut aria-labelledby sur l'élément hôte de l'éditeur.
     */
    ariaLabelledBy: string;
    /**
     * Active la lecure seule.
     */
    readOnly: boolean;
    /**
     * Message d'information associé au composant.
     */
    message: string;
    /**
     * Représente la sévérité du message.
     */
    messageSeverity: DsfrSeverity;
    /**
     * Id de l'élément affichant les messages associé à l'éditeur. A renseigner si vous souhaitez positionner un attribut
     * `aria-describedby` référençant votre message au niveau de l'élément hôte de l'éditeur.
     */
    messagesGroupId: string;
    /**
     * Dev/debug : permet d'afficher le code HTML interne de l'éditeur (i.e. celui qui sert pour l'affichage WYSIWYG).
     */
    showEditorHtmlDebugPanel: boolean;
    /**
     * Dev/debug : permet d'afficher le code HTML qui sera récupéré en sortie.
     */
    showSemanticHtmlDebugPanel: boolean;
    /** @internal */
    i18n: DsfrI18nService;
    /**
     * Instance Quill.
     */
    protected _quill: Quill;
    /**
     * Pour pouvoir utiliser DsfrSeverityConst côté template.
     */
    protected readonly severityConst: typeof DsfrSeverityConst;
    /**
     * Options de configuration de l'éditeur Quill.
     */
    private _options;
    private _subscriptions;
    private _editorSelectionHandler;
    private _editorChangeHandler;
    private readonly editorService;
    constructor();
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    ngOnChanges({ ariaLabelledBy, message, messagesGroupId }: SimpleChanges): void;
    protected hasMessage(severity: DsfrSeverity): boolean;
    private setEditorContent;
    private isStringEmptyOrNull;
    private _onEditorSelectionChange;
    /**
     * Permet de se mettre à l'écoute du contenu de l'éditeur afin de reset la toolbar si l'éditeur est vidé.
     */
    private _onEditorChange;
    private _getCurrentFormatting;
    static ɵfac: i0.ɵɵFactoryDeclaration<EduEditorContentComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EduEditorContentComponent, "edu-editor-content", never, { "editorId": { "alias": "editorId"; "required": false; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; }; "readOnly": { "alias": "readOnly"; "required": false; }; "message": { "alias": "message"; "required": false; }; "messageSeverity": { "alias": "messageSeverity"; "required": false; }; "messagesGroupId": { "alias": "messagesGroupId"; "required": false; }; "showEditorHtmlDebugPanel": { "alias": "showEditorHtmlDebugPanel"; "required": false; }; "showSemanticHtmlDebugPanel": { "alias": "showSemanticHtmlDebugPanel"; "required": false; }; }, {}, never, never, true, never>;
}
