import { EventEmitter } from "../../stencil-public-runtime";
export declare class EzCollapsibleBox {
  private _refLabel;
  private _refTextEdit;
  private i18n;
  private _hostElement;
  private _activeEditText;
  /**
   * Define o valor do componente.
   */
  value: boolean;
  /**
  * Define seu o componente deve ter borda
  */
  boxBordered: boolean;
  /**
   * Texto a ser apresentado como título do componente.
   */
  label: string;
  /**
   * Texto a ser apresentado como subtítulo do componente.
   */
  subtitle: string;
  /**
   * Define o tamanho do texto e do ícone.
   */
  headerSize: "x-small" | "small" | "medium" | "large" | "x-large" | undefined;
  /**
   * Define o posicionamento do ícone.
   */
  iconPlacement: "left" | "right";
  /**
   * Define a posição do conteúdo do cabeçalho do componente.
   */
  headerAlign: "center" | "left" | "right" | "stretch" | undefined;
  /**
   * Se true mostra o ícone para remoção do componente.
   */
  removable: boolean;
  /**
   * Se true mostra o ícone para edição do componente.
   */
  editable: boolean;
  /**
   * Define uma condição para salvar ou não uma alteração.
   */
  conditionalSave: Function;
  /**
   * Emitido quando acontece a alteração de valor do componente.
   */
  ezChange: EventEmitter<boolean>;
  /**
   * Emitido ao remover o componente (onEzRemove).
   */
  ezRemove: EventEmitter<EzCollapsibleBox>;
  /**
   * Emitido ao concluir edição da label (onEzSaveEditLabel).
   */
  ezSaveEditLabel: EventEmitter<CustomEvent>;
  /**
   * Emitido quando o modo de edição da label for aberto e fechado (onEzEditLabelMode).
   */
  ezEditLabelMode: EventEmitter<boolean>;
  /**
   * Oculta/mostra o conteúdo do ez-collapsible-box.
   */
  showHide(): Promise<void>;
  /**
   * Aplica o foco no campo de edição de título.
   */
  applyFocusTextEdit(): Promise<void>;
  /**
   * Cancela a edição de título.
   */
  cancelEdition(): Promise<void>;
  observeCollapsedValue(): void;
  /**
   * Retorna o tamanho configurado do texto e do ícone.
   */
  getHeaderSize(): string;
  private removeElement;
  private editLabel;
  private confirmRemove;
  private saveEditionText;
  getStyledLabel(): {
    fontSize: string;
    fontWeight: string;
    fontFamily: string;
  };
  componentWillLoad(): Promise<void>;
  componentDidLoad(): void;
  render(): any;
}
