import { MultiThemeColors, StormWorkspaceConfig, Colors } from '@storm-software/config/types';

/**
 * Storm theme config values used for styling various workspace elements
 */
declare const DEFAULT_COLOR_CONFIG: MultiThemeColors;
/**
 * Get the color configuration from the Storm workspace configuration.
 *
 * @param config - An optional, partial color configuration for the Storm workspace.
 * @returns The color configuration, or the default color configuration if not defined.
 */
declare function getColors(config?: Partial<Pick<StormWorkspaceConfig, "colors">>): Colors;
/**
 * Get a specific color from the Storm workspace configuration.
 *
 * @param key - The key of the color to retrieve.
 * @param config - An optional, partial color configuration for the Storm workspace.
 * @returns The color value for the specified key, or a default value if not defined.
 */
declare function getColor(key: "background" | "foreground" | "brand" | "help" | "success" | "info" | "debug" | "warning" | "danger" | "positive" | "negative" | "alternate" | "accent" | "link" | "fatal", config?: Partial<Pick<StormWorkspaceConfig, "colors">>): string;
/**
 * Get a specific color from the Storm workspace configuration.
 *
 * @param key - The key of the color to retrieve.
 * @param config - An optional, partial color configuration for the Storm workspace.
 * @returns The color value for the specified key, or a default value if not defined.
 */
declare function getGradient(config?: Partial<Pick<StormWorkspaceConfig, "colors">>): string[] | undefined;

export { DEFAULT_COLOR_CONFIG, getColor, getColors, getGradient };
