import { n as MicroDatum } from "../../interactive-C4bxY0ip.js"; import { t as ScalarStrings } from "../../strings-scalar-C_B3azW6.js"; import { r as StatusDotProps } from "../../index-DmGF_S3i2.js"; //#region src/charts/status-dot/client.d.ts interface InteractiveStatusDotProps extends StatusDotProps { /** Announce when the status changes (default true). */ live?: boolean; strings?: ScalarStrings; /** * Opt-in entrance motion (default `false`): the dot fades and scales in * when the chart first mounts client-side. Independent of the optional * `pulse` halo (a continuous CSS animation on a child `.mc-status-halo` * circle, not the root svg the entrance drives) — different element, no * property collision. Inert on the server and on hydrated server HTML; * `prefers-reduced-motion` always wins. */ animate?: boolean; /** * The active (hovered / keyboard-focused) unit changed. One state mark = one * unit, so this fires once with `{ index: 0, … }` on pointer enter or focus and * once with `null` when that clears — never repeatedly while the pointer moves * inside the dot, and never twice when hover and focus overlap. */ onActive?: ((datum: MicroDatum | null) => void) | undefined; /** Click/tap or Enter/Space on the dot — `{ index: 0, value: null, label: state }`. */ onSelect?: ((datum: MicroDatum | null) => void) | undefined; } declare function StatusDot(props: InteractiveStatusDotProps): React.ReactNode; //#endregion export { InteractiveStatusDotProps, StatusDot };