import { AfterViewInit, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { PoRichTextToolbarActions } from './enum/po-rich-text-toolbar-actions.enum';
import { PoRichTextBaseComponent } from './po-rich-text-base.component';
import { PoRichTextBodyComponent } from './po-rich-text-body/po-rich-text-body.component';
import { PoRichTextToolbarComponent } from './po-rich-text-toolbar/po-rich-text-toolbar.component';
import { PoHelperComponent } from '../../po-helper';
/**
 * @docsExtends PoRichTextBaseComponent
 *
 * @example
 *
 * <example name="po-rich-text-basic" title="PO Rich Text Basic">
 *   <file name="sample-po-rich-text-basic/sample-po-rich-text-basic.component.html"> </file>
 *   <file name="sample-po-rich-text-basic/sample-po-rich-text-basic.component.ts"> </file>
 * </example>
 *
 * <example name="po-rich-text-labs" title="PO Rich Text Labs">
 *   <file name="sample-po-rich-text-labs/sample-po-rich-text-labs.component.html"> </file>
 *   <file name="sample-po-rich-text-labs/sample-po-rich-text-labs.component.ts"> </file>
 * </example>
 *
 * <example name="po-rich-text-recipe" title="PO Rich Text Recipe">
 *   <file name="sample-po-rich-text-recipe/sample-po-rich-text-recipe-image-base-64.ts"> </file>
 *   <file name="sample-po-rich-text-recipe/sample-po-rich-text-recipe.component.html"> </file>
 *   <file name="sample-po-rich-text-recipe/sample-po-rich-text-recipe.component.ts"> </file>
 * </example>
 */
export declare class PoRichTextComponent extends PoRichTextBaseComponent implements AfterViewInit, OnDestroy, OnInit, OnChanges {
    private readonly element;
    bodyElement: PoRichTextBodyComponent;
    richTextToolbar: PoRichTextToolbarComponent;
    helperEl?: PoHelperComponent;
    private readonly listener;
    private modelLastUpdate;
    toolbarActions: Array<PoRichTextToolbarActions>;
    get errorMsg(): string;
    constructor();
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    /**
     * Função que atribui foco ao componente.
     *
     * Para utilizá-la é necessário ter a instância do componente no DOM, podendo ser utilizado o ViewChild da seguinte forma:
     *
     * ```
     * import { PoRichTextComponent } from '@po-ui/ng-components';
     *
     * ...
     *
     * @ViewChild(PoRichTextComponent, { static: true }) richText: PoRichTextComponent;
     *
     * focusRichText() {
     *   this.richText.focus();
     * }
     * ```
     */
    focus(): void;
    onBlur(): void;
    onChangeValue(value: any): void;
    onKeyDown(event: KeyboardEvent): void;
    /**
     * Método que exibe `p-helper` ou executa a ação definida em `p-helper{eventOnClick}` ou em `p-additionalHelp`.
     * Para isso, será necessário configurar uma tecla de atalho utilizando o evento `p-keydown`.
     *
     * > Exibe ou oculta o conteúdo do componente `po-helper` quando o componente estiver com foco.
     *
     * ```
     * // Exemplo com p-label e p-helper
     * <po-rich-text
     *  #richtext
     *  ...
     *  p-label="Label do richtext"
     *  [p-helper]="helperOptions"
     *  (p-keydown)="onKeyDown($event, richtext)"
     * ></po-rich-text>
     * ```
     * ```
     * ...
     * onKeyDown(event: KeyboardEvent, inp: PoRichTextComponent): void {
     *  if (event.code === 'F9') {
     *    inp.showAdditionalHelp();
     *  }
     * }
     * ```
     */
    showAdditionalHelp(): boolean;
    updateValue(value: string): void;
    private addKeyListeners;
    private controlChangeModelEmitter;
    private verifyAutoFocus;
    private validateClassesForRequired;
    isAllActionsHidden(): boolean;
    updateAlignOnHideToolbarActionsList(): void;
    setHelper(label?: string, additionalHelpTooltip?: string): {
        hideAdditionalHelp: boolean;
        helperSettings?: any;
    };
}
