import { ThemeColorDefinition } from '.'; /** * Options for defining a theme system. * * CSS variables are generated based on the color definitions: * - Each additional color creates `--lab-x-${colorName}` in CSS. * - `primary` overwrites the default primary color variable: `--lab-primary`. * * @example * const themeOptions: ThemeSystemOptions = { * primary: '#FF0000', * accent: ['#00FF00', '#008800'], // additional color * } */ export type ThemeSystemOptions = { /** Optional primary color for the theme. Overrides default primary CSS variable. */ primary?: ThemeColorDefinition; } & { /** Additional theme colors; keys map to `--lab-x-${key}` CSS variables. */ [colorName: string]: ThemeColorDefinition; };