/**
 * semiotic/utils — Shared utilities, ThemeProvider, and data helpers.
 *
 * Lightweight entry point for consumers that need the theme system,
 * format utilities, data transforms, or color constants without pulling
 * in any chart type bundles. Import from "semiotic/utils" instead of
 * "semiotic" to keep bundle size minimal.
 */
export { ThemeProvider, useTheme } from "./components/ThemeProvider";
export type { SemioticTheme } from "./components/store/ThemeStore";
export { LIGHT_THEME, DARK_THEME, HIGH_CONTRAST_THEME, COLOR_BLIND_SAFE_CATEGORICAL, } from "./components/store/ThemeStore";
export { themeToCSS, themeToTokens, resolveThemePreset, THEME_PRESETS, CARBON_CATEGORICAL_14, CARBON_ALERT, } from "./components/semiotic-themes";
export type { ThemePresetName } from "./components/semiotic-themes";
export { adaptiveTimeTicks, smartTickFormat } from "./components/charts/shared/formatUtils";
export { darkenColor, lightenColor } from "./components/charts/shared/colorManipulation";
export { createHatchPattern } from "./components/charts/shared/hatchPattern";
export type { HatchPatternOptions } from "./components/charts/shared/hatchPattern";
export { validateProps } from "./components/charts/shared/validateProps";
export { diagnoseConfig } from "./components/charts/shared/diagnoseConfig";
export { auditAccessibility, formatAccessibilityAudit, accessibilityCaveats } from "./components/charts/shared/auditAccessibility";
export { describeChart, resolveCommunicativeAct, communicativeActForIntent } from "./components/ai/describeChart";
export type { DescribeChartResult, DescribeChartOptions, DescribeLevel, CommunicativeAct, DescribeCapabilityContext } from "./components/ai/describeChart";
export { buildNavigationTree, flattenVisible, countNodes } from "./components/ai/navigationTree";
export type { NavTreeNode, NavTreeRole, BuildNavigationTreeOptions } from "./components/ai/navigationTree";
export { buildReaderGrounding } from "./components/ai/readerGrounding";
export type { ChartReaderGrounding, ChartReaderGroundingOptions, ChartReaderGroundingIntent } from "./components/ai/readerGrounding";
export type { A11yPrinciple, A11yStatus, A11yFinding, AccessibilityAuditResult, AuditAccessibilityOptions } from "./components/charts/shared/auditAccessibility";
export { getHitRadius } from "./components/stream/hitTestUtils";
export { toConfig, fromConfig, toURL, fromURL, copyConfig, configToJSX } from "./components/export/chartConfig";
export type { ChartConfig, ToConfigOptions, CopyFormat } from "./components/export/chartConfig";
export { serializeSelections, deserializeSelections } from "./components/export/selectionSerializer";
export type { SerializedSelections, SerializedSelection, SerializedFieldSelection } from "./components/export/selectionSerializer";
export { exportChart } from "./components/export/exportChart";
export { fromVegaLite } from "./components/data/fromVegaLite";
export type { VegaLiteSpec, VegaLiteEncoding } from "./components/data/fromVegaLite";
export { RingBuffer } from "./components/realtime/RingBuffer";
export { IncrementalExtent } from "./components/realtime/IncrementalExtent";
export { normalizeTooltip, MultiPointTooltip } from "./components/Tooltip/Tooltip";
export { useReducedMotion, useHighContrast } from "./components/stream/useMediaPreferences";
export { sweepToAngles, valueToAngle, computeArcBoundingBox, } from "./components/charts/shared/radialGeometry";
export type { SweepAngles, ArcBoundingBox } from "./components/charts/shared/radialGeometry";
export { useStreamStatus } from "./components/charts/shared/useStreamStatus";
export type { StreamStatus, StreamStatusOptions, StreamStatusResult, } from "./components/charts/shared/useStreamStatus";
