/** * Value → color mapping for gauges, meters, and charts. * * Stops are evaluated in order; first matching `upTo` wins. * The last stop may omit `upTo` (catch-all). * * @example * colorStops: [ * { upTo: 40, color: 'success' }, * { upTo: 75, color: 'warning' }, * { color: 'danger' }, * ] */ export interface ValueColorStop { /** Inclusive upper bound. Omit on the final stop for “everything else”. */ upTo?: number; /** Any CSS color (`#22c55e`, `rgb()`, `hsl()`, named) or semantic: primary | success | warning | danger | secondary */ color: string; } /** Arc zones on dials — `from`/`to` are 0–1 fractions of max (or absolute if > 1). */ export interface DialZoneInput { from: number; to: number; color: string; } /** Resolve semantic color names against the active dashboard palette. */ export declare function resolveSemanticColor(color: string, fallback?: string): string; /** * Pick a color for `value` from ordered stops. * Falls back to `fallback` (or theme primary) when stops are empty. */ export declare function resolveValueColor(value: number, stops: ValueColorStop[] | undefined, fallback?: string): string; /** Normalize dial zone inputs to 0–1 fractions with resolved colors. */ export declare function normalizeDialZones(zones: DialZoneInput[] | undefined, max: number): { from: number; to: number; color: string; }[]; /** Read colorStops from widget props (supports alias `thresholds`). */ export declare function readColorStops(props: Record): ValueColorStop[] | undefined; export declare function readDialZones(props: Record): DialZoneInput[] | undefined;