import { Placement } from "@floating-ui/dom";
export declare class EzTooltip {
  private _tooltipElement;
  private _arrowElement;
  private _opened;
  private _eventsRegistered;
  private _debouncingTimeout;
  private _cleanup;
  private _mouseEnterHandler;
  private _mouseLeaveHandler;
  _element: HTMLElement;
  /**
   * Mensagem que será apresentada no tooltip.
   */
  message: string;
  /**
   * Elemento HTML que será utilizado como ancoragem do tooltip.
   */
  anchoringElement: HTMLElement;
  /**
   * Define a posição do tooltip em relação ao elemento de ancoragem.
   */
  placement: Placement;
  /**
   * Define o espaçamento entre o tooltip e o elemento de ancoragem.
   */
  gapOptions: {
    horizontalGap: number;
    verticalGap: number;
  };
  /**
   * Define o tipo de tooltip a ser exibido.
   */
  type: 'default' | 'success' | 'error' | 'warning';
  /**
   * Tempo de espera para exibir o tooltip após o evento de mouseenter.
   */
  debouncingTime: number;
  /**
   * Define se o tooltip está ativo.
   */
  active: boolean;
  /**
   * Define a largura máxima do elemento.
   */
  maxWidth: number;
  /**
   * Define se o elemento manterá o mesmo tamanho do componente de ancora.
   */
  useAnchorSize: boolean;
  /**
   * Define a estratégia de posicionamento do tooltip.
   * Use 'fixed' quando o elemento estiver dentro de containers com position: relative.
   */
  strategy: 'absolute' | 'fixed';
  watchAnchoringElement(newValue: HTMLElement, oldValue: HTMLElement): void;
  watchMessage(newValue: string): void;
  private openTooltip;
  private closeTooltip;
  private updatePosition;
  private handleSlotChange;
  private setEvents;
  private removeEvents;
  private initializeTooltip;
  connectedCallback(): void;
  componentDidLoad(): void;
  private addInfoId;
  disconnectedCallback(): void;
  render(): any;
}
