import { OverrideColor, VegaThemeOverrideColors } from '../theme';
/**
 * Vega components color override controller
 */
declare class ColorSchemaOverridingController {
  /**
   * It takes a color and generates a bunch of other colors based on that color
   *
   * @param {VegaThemeOverrideColors} overrideColors - OverrideColors - This is the object that is passed in from the user.
   * @returns {OverrideColor[]} Parsed action colors
   */
  generateOverrideThemes(overrideColors: VegaThemeOverrideColors): OverrideColor[];
  /**
   * Set the custom override theme colors to customOverrideThemeStyleContainer
   *
   * @param {OverrideColor[]} overrideThemes Parsed custom override colors
   */
  applyTheme(overrideThemes: OverrideColor[]): void;
  /**
   * It creates a customOverrideTheme style tag in the head of the document if it doesn't exist, and returns it
   *
   * @returns {Element} The customOverrideThemeStyleContainer is being returned.
   */
  getOverrideThemeContainer(): Element;
  /**
   * Get the overridable color tokens from design token
   *
   * @returns {OverridableToken[]} overridable action color token array
   */
  private getOverridableTokens;
  /**
   * Calculate and parse color to css var value
   *
   * @param {OverridableToken} overrideColorToken The token will be overridden
   * @param {VegaThemeOverrideColors} overrideColors the payload of override colors
   * @returns {Nullable<string>} The css var value
   */
  private parseCssVarValue;
}
export declare const VegaColorSchemaOverridingController: ColorSchemaOverridingController;
export {};
