import type { MapTheme } from "../../core/types"; import type { MarkerState } from "../model/markerDomTypes"; /** * Optional layer-level overrides for pill chrome. Indicator fill always comes from the * per-marker `color` prop (`fillColor` argument to `resolveMarkerColors`). */ export type MarkerColorConfig = { selectedBackground?: string; hoveredBackground?: string; expandedBackground?: string; pillBorderColor?: string; }; /** * CSS custom properties for spreading onto the marker root. Indicator stroke uses CSS * `color-mix()` on `--marker-color` in stylesheets — not resolved here. */ export type MarkerColorCssVars = Readonly<{ "--marker-color": string; "--marker-pill-bg": string; "--marker-text-color": string; "--marker-pill-border": string; }>; export type ResolvedMarkerColors = Readonly<{ /** Per-marker indicator fill (same as `fillColor`). */ indicatorFill: string; /** Background for the pill when shown; `transparent` when `state` is `default`. */ pillBackground: string; /** Pill label text color. */ textColor: string; /** Pill outline color. */ pillBorderColor: string; cssVars: MarkerColorCssVars; }>; /** Light basemap pill surfaces — neutral-100 / white / neutral-800. */ export declare const MARKER_LIGHT_PILL: { readonly hovered: string; readonly expanded: "#ffffff"; readonly selected: string; }; /** Dark basemap pill surfaces — neutral-700 / neutral-800 / white (inverted brightness from light). */ export declare const MARKER_DARK_PILL: { readonly hovered: string; readonly expanded: string; readonly selected: "#ffffff"; }; /** * Default pill color config for a given theme. Pass as `colorConfig` on `MapMarker` to * override individual values while keeping the rest as theme defaults. */ export declare const defaultMarkerColorConfig: (theme: MapTheme) => Required; /** * Single source of truth for JS-resolved marker colors. Pill colors default to the theme * palette via `defaultMarkerColorConfig`; pass `config` to override any subset. */ export declare const resolveMarkerColors: (fillColor: string, state: MarkerState, theme: MapTheme, config?: MarkerColorConfig) => ResolvedMarkerColors;