import { LitElement, PropertyValues } from "lit";
export type TooltipPlacement = "top" | "bottom" | "left" | "right";
/**
* A tooltip is a message box that is displayed when a user hovers over or gives focus to a UI element.
*
* Tooltips should be used sparingly and contain succinct, supplementary information.
*
* @example
* ```html
* Hover over me
* I am a tooltip
* ```
*/
export declare class WarpTooltip extends LitElement {
#private;
static styles: import("lit").CSSResult[];
/**
* ID of the element that triggers the tooltip on hover or focus.
*/
for: string;
/**
* Hide the arrow pointing toward the tooltip target.
*/
noArrow: boolean;
/**
* Indicates whether the tooltip is visible or not.
*/
open: boolean;
/**
* Sets the placement of the tooltip relative to its target.
*
* The tooltip will try to position itself at the given placement. If there is no room it will flip to the opposite side automatically.
*
* @default "top"
*/
placement: TooltipPlacement;
/**
* Milliseconds to wait before showing the tooltip on hover.
*
* Keep at a non-zero value to avoid flickering the tooltip on and off when cursors move quickly past the target element.
*
* Focusing the target element shows the tooltip immediately.
*/
showDelay: number;
/**
* Milliseconds to wait before hiding the tooltip on mouseout.
*/
hideDelay: number;
private target;
private tooltip;
private hoverBridge;
private arrow;
private beak;
constructor();
connectedCallback(): void;
disconnectedCallback(): void;
protected updated(_changedProperties: PropertyValues): void;
firstUpdated(): void;
private handleBlur;
private handleFocus;
private handleMouseOver;
private handleKeydown;
private handleMouseOut;
hide(): Promise;
show(): Promise;
render(): import("lit").TemplateResult<1>;
}
declare global {
interface HTMLElementTagNameMap {
"w-tooltip": WarpTooltip;
}
}