GitHub

Reference headless

tooltip

interface 3 type 4 function 1
interface Interfaces 3

# CreateTooltipOptions

Members

closeDelay?
optional closeDelay?: number

Default 300 ms (short, but enough for trigger → content pointer transit).

###### Inherited from

CreateTooltipInput.closeDelay

defaultOpen?
optional defaultOpen?: boolean

###### Inherited from

CreateTooltipInput.defaultOpen

disableHoverableContent?
optional disableHoverableContent?: boolean

###### Inherited from

CreateTooltipInput.disableHoverableContent

id?
optional id?: string
onOpenChange?
optional onOpenChange?: (open) => void

###### Parameters

###### open

boolean

###### Returns

void

openDelay?
optional openDelay?: number

Default 700 ms (matches macOS / Chrome devtools default tooltip lag).

###### Inherited from

CreateTooltipInput.openDelay

interface

# TooltipContext

Members

closeDelay
closeDelay: number

Milliseconds before the tooltip disappears after pointer-leave / blur.

disableHoverableContent
disableHoverableContent: boolean

When 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.

openDelay
openDelay: number

Milliseconds before the tooltip appears after pointer-enter / focus.

# TooltipController

Members

content
readonly content: Attachment
contentId
readonly contentId: string
context
readonly context: Readonly<TooltipContext>
id
readonly id: string
machine
readonly machine: TooltipMachine
open
readonly open: boolean
state
readonly state: TooltipState
trigger
readonly trigger: Attachment
triggerId
readonly triggerId: string
hide()
hide(): void

###### Returns

void

setCloseDelay()
setCloseDelay(ms): void

###### Parameters

###### ms

number

###### Returns

void

setDisableHoverableContent()
setDisableHoverableContent(value): void

###### Parameters

###### value

boolean

###### Returns

void

setOpen()
setOpen(open): void

###### Parameters

###### open

boolean

###### Returns

void

setOpenDelay()
setOpenDelay(ms): void

###### Parameters

###### ms

number

###### Returns

void

show()
show(): void

###### Returns

void

subscribe()
subscribe(listener): () => void

###### Parameters

###### listener

(snapshot) => void

###### Returns

() => void

toggle()
toggle(): void

###### Returns

void

type Type Aliases 4

# Attachment

Attachment = (node) => void | (() => void)

Parameters

node
HTMLElement

Returns

void | (() => void)
type

# 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; }
type

# TooltipState

TooltipState = "closed" | "open"
function Functions 1