import { PropertyValues } from 'lit'; import { DDSElement } from "../../base/index.js"; import { MergeVariantProps } from "../../type-utils.js"; declare const cvaTooltip: (props?: ({ color?: "default" | "inverse" | null | undefined; } & import('class-variance-authority/types').ClassProp) | undefined) => string; type TooltipVariantProps = MergeVariantProps; /** * A tooltip component is used to show brief information when a user interacts with an element. * * @fires beforetoggle - _Cancellable._ A event emitted when the tooltip is about to be opened or closed by user interaction. * @fires toggle - A event emitted when the tooltip is opened or closed. * * @slot - A slot for the element to which the tooltip is attached (the trigger element). * @slot description - A slot for the tooltip description content. Tooltips don't have a prescribed maximum or minimum width. If you plan to use longer text, please note that you'll need to manually implement line breaks. * * @cssprop [--ddc-tooltip-spacing=20px] - Spacing between the tooltip and the trigger. * * @csspart tooltip - CSS styles applied to the `tooltip` part target the internal `` element wrapping the content. For instance, setting `max-width: 8rem;` on this part restricts the container's width, causing long text to wrap automatically. * * @example * * ```js * import "@daikin-oss/design-system-web-components/components/tooltip/index.js"; * ``` * * ```html * * Hover me * This is a message * * ``` * * ```html * * Hover me * * ``` */ export declare class DaikinTooltip extends DDSElement { static registerCSSCustomProperties(): void; static readonly styles: import('lit').CSSResult; /** * Specifies the position of the tooltip relative to the trigger. * * @default "bottom" */ placement: "top" | "bottom" | "left" | "right"; /** * Specifies the tooltip theme. * * @default "default" */ color: TooltipVariantProps["color"]; /** * Whether the tooltip is open. */ open: boolean; /** * Specifies the content of the tooltip. * Ignored if the `tooltip` slot exists. * Tooltips don't have a prescribed maximum or minimum width. If you plan to use longer text, please note that you'll need to manually implement line breaks. */ description: string; /** * Specify the value of the popover attribute in the Popover API. * - `auto`: Clicking on a trigger element will open a tooltip, and clicking again will close it. You can also close it using the Esc button. You cannot open multiple tooltips at the same time. * - `manual`: No click operation is specified for the trigger element. It will not close even if the Esc button is pressed. Multiple tooltips can be opened at once. * * @default "auto" */ popoverValue: "auto" | "manual"; /** * How the tooltip is controlled. * - `hover`: The tooltip is displayed when the mouse hovers over the trigger element, and hidden when the mouse is no longer hovering. (default) * - `click`: The tooltip is displayed when the mouse clicks on the trigger element, and hidden when you click on it again. * - `manual`: The tooltip does not respond to user interaction. Use this to control the tooltip programmatically. * * @default "hover" */ trigger: "hover" | "click" | "manual"; /** * Internal state to track whether the element will be focused by a press interaction. * In this case, the tooltip will not be open via focus to prevent it from disappearing immediately afterward. */ private _willBeFocusedByPress; private _autoUpdateController; private _hostStyles; private _handleClick; private _handleFocusIn; private _handleFocusOut; private _handlePointerEnter; private _handlePointerLeave; private _handlePointerDown; private _handlePointerUp; private _handleBeforeToggle; private _handleToggle; render(): import('lit-html').TemplateResult<1>; protected updated(changedProperties: PropertyValues): void; } declare global { interface HTMLElementTagNameMap { "daikin-tooltip": DaikinTooltip; } } export {};