/** * Brand-aligned style configuration. * Exported so consumers can reference the same palette when building options externally. */ export declare const WIDGET_CHART_V2_STYLES: { readonly colors: { readonly primary: "#3b82f6"; /** Default data palette — monotone blue ramp (dark → light) */ readonly data: readonly ["#1d4ed8", "#2563eb", "#3b82f6", "#4e92f7", "#60a5fa", "#79b5fc", "#93c5fd", "#a9d3fe", "#bfdbfe", "#dbeafe"]; /** Severity palette — ONLY for alert/threat data */ readonly severity: Record; /** Heatmap gradient (low → high intensity) */ readonly heatmapRamp: readonly ["#dbeafe", "#93c5fd", "#60a5fa", "#3b82f6", "#1d4ed8"]; }; readonly typography: { readonly fontSize: { readonly title: 32; readonly subtitle: 13; readonly label: 13; readonly axis: 11; readonly tooltip: 12; }; readonly fontWeight: { readonly title: 400; readonly subtitle: 400; readonly label: 400; readonly axis: 400; readonly tooltip: 400; }; }; readonly animation: { readonly duration: 300; readonly easing: "cubicOut"; }; /** Donut / pie chart styling */ readonly donut: { readonly outerRadius: 86; readonly ringThicknessPx: 12; readonly padAngle: 0.5; readonly borderRadius: 1; readonly borderWidth: 0; readonly centerPosition: { readonly right: readonly [string, string]; readonly center: readonly [string, string]; }; readonly legendPosition: "57%"; readonly legendItemGap: 12; readonly legendIconTextGap: 8; readonly emphasis: { readonly scaleSize: 8; readonly shadowBlur: 10; }; }; /** Line / area chart styling */ readonly line: { readonly lineWidth: 2.5; readonly symbolSize: 6; readonly areaOpacity: { readonly start: 0.35; readonly end: 0.05; }; }; /** Bar chart styling */ readonly bar: { readonly barWidth: "40%"; readonly borderRadius: 2; }; /** Tooltip defaults per theme */ readonly tooltip: { readonly light: { readonly backgroundColor: "#ffffff"; readonly borderColor: "#d4d4d8"; readonly textColor: "#0f172a"; }; readonly dark: { readonly backgroundColor: "#1c1917"; readonly borderColor: "#57534e"; readonly textColor: "#fafaf9"; }; readonly borderWidth: 1; readonly padding: readonly [number, number]; readonly fontSize: 10.5; }; /** Theme-aware text palette (fallbacks when CSS vars unavailable) */ readonly textColors: { readonly light: { readonly text: "#1e293b"; readonly sub: "#475569"; readonly tertiary: "#64748b"; readonly quartiary: "#94a3b8"; readonly label: "#64748b"; readonly barLabel: "#94a3b8"; readonly axis: "#cbd5e1"; readonly split: "#f1f5f9"; }; readonly dark: { readonly text: "#e2e8f0"; readonly sub: "#cbd5e1"; readonly tertiary: "#94a3b8"; readonly quartiary: "#64748b"; readonly label: "#94a3b8"; readonly barLabel: "#cbd5e1"; readonly axis: "#475569"; readonly split: "#334155"; }; }; }; /** * Generate a blue ramp of exactly `n` colors evenly spaced between * blue-700 and blue-100. Never repeats; each value gets a unique shade. * * - n <= 10: returns the hand-tuned palette from WIDGET_CHART_V2_STYLES.colors.data * - n > 10: interpolates `n` evenly-spaced stops between the ramp endpoints */ export declare function generateBlueRamp(n: number): string[]; /** * Alert severity color overrides. * Use for charts grouping data by alert severity (Critical, Major, Minor, Notice). */ export declare const SEVERITY_COLOR_OVERRIDES: Record; /** * Fidelity level color overrides. * Use for charts grouping data by detection fidelity. */ export declare const FIDELITY_COLOR_OVERRIDES: Record; /** * Risk level color overrides. * Use for charts grouping data by risk score buckets. */ export declare const RISK_COLOR_OVERRIDES: Record; /** * Status indicator color overrides. * Use for charts showing health/connection status. */ export declare const STATUS_COLOR_OVERRIDES: Record;