Reference headless
tooltip
# CreateTooltipOptions
Members
closeDelay?optional closeDelay?: numberDefault 300 ms (short, but enough for trigger → content pointer transit).
###### Inherited from
CreateTooltipInput.closeDelaydefaultOpen?optional defaultOpen?: boolean###### Inherited from
CreateTooltipInput.defaultOpendisableHoverableContent?optional disableHoverableContent?: boolean###### Inherited from
CreateTooltipInput.disableHoverableContentid?optional id?: stringonOpenChange?optional onOpenChange?: (open) => void###### Parameters
###### open
boolean###### Returns
voidopenDelay?optional openDelay?: numberDefault 700 ms (matches macOS / Chrome devtools default tooltip lag).
###### Inherited from
CreateTooltipInput.openDelay
# TooltipContext
Members
closeDelaycloseDelay: numberMilliseconds before the tooltip disappears after pointer-leave / blur.
disableHoverableContentdisableHoverableContent: booleanWhen true, leaving the trigger always closes — pointer-entering the tooltip content does NOT keep it open. Useful when the content is decorative-only and shouldn't be a hit target.
openDelayopenDelay: numberMilliseconds before the tooltip appears after pointer-enter / focus.
# TooltipController
Members
contentreadonly content: AttachmentcontentIdreadonly contentId: stringcontextreadonly context: Readonly<TooltipContext>idreadonly id: stringmachinereadonly machine: TooltipMachineopenreadonly open: booleanstatereadonly state: TooltipStatetriggerreadonly trigger: AttachmenttriggerIdreadonly triggerId: stringhide()hide(): void###### Returns
voidsetCloseDelay()setCloseDelay(ms): void###### Parameters
###### ms
number###### Returns
voidsetDisableHoverableContent()setDisableHoverableContent(value): void###### Parameters
###### value
boolean###### Returns
voidsetOpen()setOpen(open): void###### Parameters
###### open
boolean###### Returns
voidsetOpenDelay()setOpenDelay(ms): void###### Parameters
###### ms
number###### Returns
voidshow()show(): void###### Returns
voidsubscribe()subscribe(listener): () => void###### Parameters
###### listener
(
snapshot) =>void###### Returns
() =>
voidtoggle()toggle(): void###### Returns
void
# Attachment
Attachment = (node) => void | (() => void)Parameters
nodeHTMLElement
Returns
void | (() => void)# TooltipEvent
TooltipEvent = { type: "OPEN"; } | { type: "CLOSE"; } | { type: "TOGGLE"; } | { open: boolean; type: "SET.OPEN"; } | { type: "ESCAPE"; } | { ms: number; type: "SET.OPEN_DELAY"; } | { ms: number; type: "SET.CLOSE_DELAY"; } | { type: "SET.DISABLE_HOVERABLE_CONTENT"; value: boolean; }# TooltipMachine
TooltipMachine = Machine<TooltipContext, TooltipEvent, TooltipState># TooltipState
TooltipState = "closed" | "open"# createTooltip ( )
createTooltip(options?): TooltipControllerParameters
options?CreateTooltipOptions = {}
Returns
TooltipController