import { DeepPartial } from "../types"; export type PaletteColor = { pure: string; ultraLight: string; highlight: string; softLight: string; lighter: string; light: string; base: string; dark: string; darker: string; deepDark: string; ultraDark: string; deepest: string; }; export type PaletteText = { /** 本文・見出しのデフォルト色 */ primary: string; /** ブランド/アクセントの強調色(従来 `text.primary` に相当していた青) */ accent: string; secondary: string; disabled: string; hint: string; white: string; }; export type PaletteBackground = { default: string; dark: string; active: string; hint: string; }; export type PaletteIcon = { active: string; fill: string; line: string; }; export type PaletteAction = { shadowOpacity: number; shadowBase: string; }; export type PaletteChartSeriesColors = { main: readonly string[]; sub: readonly string[]; }; export type PaletteChartAxis = { fontSize: number; color: string; }; export type PaletteChartLegend = { fontSize: number; /** チャート SVG 下端と凡例の間隔(px) */ gap: number; color: string; }; export type PaletteChartLine = { strokeWidth: number; pointRadius: number; /** データ点の枠線色(ラインとの境界) */ pointBorderColor: string; /** ホバー時の縦 crosshair 線の色 */ crosshairColor: string; /** ホバー時の縦 crosshair 線の太さ */ crosshairStrokeWidth: number; /** ホバー時の縦 crosshair 線の不透明度 */ crosshairOpacity: number; }; export type PaletteChartTooltip = { background: string; text: string; fontSize: number; shadow: string; }; export type PaletteChartReferenceLine = { color: string; strokeWidth: number; dasharray: string; fontSize: number; }; export type PaletteChartArea = { fillOpacity: number; }; export type PaletteChartPieLabel = { fontSize: number; color: string; }; export type PaletteChartPie = { /** donut の内半径 / 外半径。pie では使わない */ innerRadiusRatio: number; /** スライス外側ラベル。PieChart の sliceLabelStyle 未指定時に使う */ label: PaletteChartPieLabel; /** スライス内側ラベル。PieChart の innerLabelStyle 未指定時に使う */ innerLabel: PaletteChartPieLabel; /** donut 中央の合計。fontSize 未指定時は穴の大きさから自動 */ centerTotal: { color: string; }; }; export type PaletteChartLayout = { /** カテゴリ1スロットの最小幅(px)。合計幅がコンテナを超えると横スクロール */ minSlotSize: number; /** この幅未満のコンテナで padding 縮小・ラベル間引き */ narrowContainerBreakpoint: number; /** horizontal 時の値エリア最小幅(px) */ horizontalMinValueWidth: number; }; export type PaletteChartMotion = { /** 棒の表示/非表示アニメーション時間(ms) */ durationMs: number; /** 初回表示時の棒ごとの遅延(ms) */ staggerMs: number; }; export type PaletteChart = { /** デフォルトの系列色 */ series: PaletteChartSeriesColors; /** * 名前付きの代替カラースキーム。 * BarChart の colorScheme prop で参照する。 */ colorSchemes?: Record; layout: PaletteChartLayout; motion: PaletteChartMotion; axis: PaletteChartAxis; grid: string; line: PaletteChartLine; legend: PaletteChartLegend; tooltip: PaletteChartTooltip; referenceLine: PaletteChartReferenceLine; area: PaletteChartArea; pie: PaletteChartPie; }; export type Palette = { white: string; black: string; /** ロールトークン: 意味(役割)に基づく色。用途は限定しない */ primary: PaletteColor; success: PaletteColor; warning: PaletteColor; danger: PaletteColor; neutral: PaletteColor; /** コンテキストトークン: 使用箇所が明確な色。ロールトークンで表現しにくい定番の用途向け */ text: PaletteText; background: PaletteBackground; divider: string; icon: PaletteIcon; action: PaletteAction; chart: PaletteChart; }; export declare const palette: Palette; export declare function createPalette(paletteInput: DeepPartial): Palette;