import { EventEmitter } from '../../stencil-public-runtime';
import { RichToolbarCommand } from './ez-rich-toolbar/RichToolbarHelper';
export declare class EzRichText {
  private _keyboardManager;
  private textAreaRef;
  private linkBuilderRef;
  private imageUploaderRef;
  private historyStack;
  private historyIndex;
  private i18n;
  element: HTMLElement;
  previewMode: boolean;
  /**
   * Informa se as opções a opção de pré-visualização deve ser apresentada.
   */
  showPreview: boolean;
  /**
   * Define o valor HTML do campo.
   */
  value: string;
  /**
   * Texto a ser apresentado como título do campo.
   */
  label: string;
  /**
   * Define o tamanho do campo.
   */
  mode: "slim" | "regular";
  /**
   * Se false o usuário não pode interagir com o campo.
   */
  enabled: boolean;
  /**
   * Define o número de linhas.
   */
  rows: number;
  /**
   * Define uma mensagem de orientação ao usuário, colocando o campo em modo inválido.
   */
  errorMessage: string;
  /**
   * Se false deixa de exibir a mensagem de erro dentro do campo.
   */
  canShowError: boolean;
  /**
   * Informa se as opções de configurações (lista, imagem e link) devem ser apresentadas
   */
  showConfigs: boolean;
  /**
   * Informa se as opções de formatação de texto (itálico, sublinhado e negrito) devem ser apresentadas
   */
  showTextFormat: boolean;
  /**
   * Informa se as opções de desfazer e refazer devem ser habilitadas.
   */
  showUndoRedo: boolean;
  /**
   * Emitido quando acontece a alteração de valor do campo.
   */
  ezChange: EventEmitter<string>;
  observeValue(newValue: string, oldValue: string): void;
  observeErrorMessage(newValue: string): void;
  handleExecuteToolbarCommand(event: CustomEvent<RichToolbarCommand>): Promise<void>;
  /**
   * Aplica o foco no campo.
   */
  setFocus(): Promise<void>;
  /**
   * Remove o foco do campo.
   */
  setBlur(): Promise<void>;
  /**
   * Retorna se o conteúdo é inválido.
   */
  isInvalid(): Promise<boolean>;
  private bindPreview;
  private bindConfigs;
  private bindTextFormat;
  private initKeyboardManager;
  private executeCommand;
  private handleFocus;
  private handleLink;
  private handleImage;
  private handleRedo;
  private handleUndo;
  private handleFormatSelection;
  private togglePreview;
  private getSelectedText;
  private getTextAreaElement;
  private formatSelection;
  private addToHistory;
  private undo;
  private canExecuteUndo;
  private redo;
  private canExecuteRedo;
  private getValueFromHistory;
  handleTextAreaChanged(event: CustomEvent<string>): void;
  private removeShortcuts;
  componentWillLoad(): Promise<void>;
  componentDidLoad(): void;
  disconnectedCallback(): Promise<void>;
  private getSanitizedValue;
  private renderContent;
  render(): any;
}
