import { EventEmitter } from '../../stencil-public-runtime';
import { IAction } from '../../utils';
export declare class EzActionsButton {
  private _actionsList;
  private _listContainer;
  private _button;
  private _floatingID;
  private _arrowOffset;
  private _element;
  private _selectedAction;
  /**
   * Se false o usuário não pode interagir com o componente.
   */
  enabled: boolean;
  /**
   * Define a lista de ações. Os elementos devem obedecer
   * o formato: `{value: string, label: string}`.
   */
  actions: Array<IAction>;
  /**
  * Determina o tamanho do ez-action-button.
  */
  size: "small" | "medium" | "large";
  /**
  * Se true o label será apresentado.
  */
  showLabel: boolean;
  /**
  * Define o ícone do componente.
  */
  displayIcon: string;
  /**
  * Se true o check será apresentado para os itens.
  */
  checkOption: boolean;
  /**
  * Define o valor do componente.
  */
  value: string;
  /**
  * Se true o background será transparent.
  */
  isTransparent: boolean;
  /**
  * Se true a seta de ordenação será apresentada.
  */
  arrowActive: boolean;
  /**
   * Emitido ao acionar uma ação.
   */
  ezAction: EventEmitter<IAction>;
  /**
  * Emitido ao mostrar a lista de ações
  */
  ezPopoverOpen: EventEmitter<HTMLElement>;
  /**
   * Emitido quando componente é desconectado da DOM
   */
  ezDisconnectedActionButtons: EventEmitter<void>;
  /**
   * Oculta a lista de ações.
   */
  hideActions(): Promise<void>;
  /**
   * Apresenta a lista de ações.
   */
  showActions(): Promise<void>;
  /**
   * Verifica se a lista de ações está aberta.
   */
  isOpened(): Promise<boolean>;
  innerClickCheck: (floatingContainer: HTMLElement, node: HTMLElement) => boolean;
  private getFloatOptions;
  private getSideLimit;
  private updatePosition;
  private getPositionTop;
  private getBoundingLeft;
  private getPositionLeft;
  private hasLabelOrCheckOption;
  private hasIconName;
  private controlScrollPage;
  private handlerButtonClick;
  private actionClick;
  componentWillLoad(): void;
  disconnectedCallback(): void;
  componentDidLoad(): void;
  componentDidRender(): void;
  buildActionElement(action: IAction): HTMLElement;
  render(): any;
}
