import { BASE_COLORS } from "./colors"; import { type BaseTheme } from "./theme.types"; export declare const buildTheme: (baseTheme: BaseTheme, activeColorScheme: "light" | "dark") => { colorScheme: "dark" | "light"; colors: { /** * Returns theme background for a given color scheme. * @param colorScheme "light" | "dark", "auto" refers to current/active color scheme. * @param level increases background brightness by {level} shades. * @returns theme background color. */ background: (colorScheme: "light" | "dark" | "auto", level?: 0 | 1) => string | undefined; /** * Returns theme foreground for a given color scheme. * @param colorScheme "light" | "dark", "auto" refers to current/active color scheme. * @param level decreases foreground brightness by {level} shades. * @returns theme foreground color. */ foreground: (colorScheme: "light" | "dark" | "auto", level?: 0 | 1) => string | undefined; /** * Given a color key and an optional shade, returns a color. * @param key color key or "primary", defaults to "primary". * @param shade shade can be: * number (0 to 9), * "background" primary shade for current color scheme, * "foreground" primary shade for current color scheme (default), * [lightShade: number, darkShade: number] for specific shades for each color scheme. * @returns returns a color string from theme colors. */ get: (key: keyof typeof BASE_COLORS | "primary", shade?: number | "background" | "foreground" | [lightShade: number, darkShade: number]) => string | undefined; /** * Select between two different colors based on current color scheme. * @param lightColor Color to use when color scheme is "light". * @param darkColor Color to use when color scheme is "dark". * @returns Selected color based on current color scheme. */ select: (lightColor: string, darkColor: string) => string; }; /** * Converts a radius key to a numeric radius. * @param key standardized radius key. * @returns numeric radius. */ radius: (key: keyof BaseTheme["radius"] | "default" | "none") => number; /** * Converts a spacing key to a numeric spacing. * @param key standardized spacing key. * @returns numeric spacing. */ spacing: (key: keyof BaseTheme["spacing"] | "default") => number; /** * Converts a size key to a numeric fontSize. * @param size standardized size key. * @returns numeric fontSize. */ fontSize: (size: "xs" | "sm" | "md" | "lg" | "xl" | "default") => number; fontFamily: string; }; //# sourceMappingURL=build-theme.d.ts.map