/**
 * @license
 * Copyright 2025 Vybestack LLC
 * SPDX-License-Identifier: Apache-2.0
 */
export declare const CSS_NAME_TO_HEX_MAP: Readonly<Record<string, string>>;
export declare const INK_SUPPORTED_NAMES: Set<string>;
/**
 * Checks if a color string is valid (hex, Ink-supported color name, or CSS color name).
 * This function uses the same validation logic as the Theme class's _resolveColor method
 * to ensure consistency between validation and resolution.
 * @param color The color string to validate.
 * @returns True if the color is valid.
 */
export declare function isValidColor(color: string): boolean;
/**
 * Resolves a CSS color value (name or hex) into an Ink-compatible color string.
 * @param colorValue The raw color string (e.g., 'blue', '#ff0000', 'darkkhaki').
 * @returns An Ink-compatible color string (hex or name), or undefined if not resolvable.
 */
export declare function resolveColor(colorValue: string): string | undefined;
export declare function interpolateColor(color1: string, color2: string, factor: number): string;
/**
 * Calculates relative luminance and returns 'light' or 'dark'
 * Uses W3C relative luminance formula (WCAG 2.0)
 * @param bgColor The background color in hex format (e.g., '#1E1E2E' or '1E1E2E')
 * @returns 'light' if luminance > 0.5, 'dark' if <= 0.5, undefined if invalid input
 */
export declare function getThemeTypeFromBackgroundColor(bgColor: string | undefined): 'light' | 'dark' | undefined;
/**
 * Detects terminal background color using OSC 11 escape sequence
 * Returns hex color string like '#1E1E2E' or undefined if detection fails
 *
 * ROBUSTNESS FEATURES (ALL TESTED):
 * 1. Handles split chunks: Response may arrive across multiple 'data' events
 * 2. Alternate terminators: Supports both ST (ESC \) and BEL (\x07) terminators
 * 3. Timeout protection: Returns undefined after 100ms if no valid response
 * 4. Malformed response handling: Ignores garbage data, times out gracefully
 * 5. Non-TTY detection: Returns undefined immediately if stdin is not a TTY
 * 6. Proper cleanup: Always removes listeners and restores terminal state
 */
export declare function detectTerminalBackgroundColor(): Promise<string | undefined>;
