/**
 * Color validation utilities for BeatUI color inputs
 */
/**
 * Validates if a string is a valid hex color
 * @param color - The color string to validate
 * @returns true if valid hex color, false otherwise
 */
export declare function isValidHexColor(color: string): boolean;
/**
 * Validates if a string is a valid RGB color
 * @param color - The color string to validate (e.g., "rgb(255, 0, 0)")
 * @returns true if valid RGB color, false otherwise
 */
export declare function isValidRgbColor(color: string): boolean;
/**
 * Validates if a string is a valid RGBA color
 * @param color - The color string to validate (e.g., "rgba(255, 0, 0, 0.5)")
 * @returns true if valid RGBA color, false otherwise
 */
export declare function isValidRgbaColor(color: string): boolean;
/**
 * Validates if a string is a valid HSL color
 * @param color - The color string to validate (e.g., "hsl(120, 100%, 50%)")
 * @returns true if valid HSL color, false otherwise
 */
export declare function isValidHslColor(color: string): boolean;
/**
 * Validates if a string is any valid color format
 * @param color - The color string to validate
 * @returns true if valid color in any supported format, false otherwise
 */
export declare function isValidColor(color: string): boolean;
/**
 * Normalizes a hex color to always include the # prefix and be 6 characters
 * @param color - The hex color to normalize
 * @returns normalized hex color or null if invalid
 */
export declare function normalizeHexColor(color: string): string | null;
/**
 * Converts RGB values to hex color
 * @param r - Red value (0-255)
 * @param g - Green value (0-255)
 * @param b - Blue value (0-255)
 * @returns hex color string
 */
export declare function rgbToHex(r: number, g: number, b: number): string;
/**
 * Converts hex color to RGB values
 * @param hex - Hex color string (with or without #)
 * @returns RGB values object or null if invalid
 */
export declare function hexToRgb(hex: string): {
    r: number;
    g: number;
    b: number;
} | null;
/**
 * Gets the contrast ratio between two colors
 * @param color1 - First color (hex format)
 * @param color2 - Second color (hex format)
 * @returns contrast ratio or null if invalid colors
 */
export declare function getContrastRatio(color1: string, color2: string): number | null;
export declare function parseAnyColor(v: string): [number, number, number, number];
export declare function toRgbaString(r: number, g: number, b: number, a: number): string;
export declare function mulberry32(seed: number): () => number;
export declare function hslToRgb(h: number, s: number, l: number): [number, number, number];
export declare function hwbToRgb(h: number, w: number, bl: number): [number, number, number];
export declare function rgbToHsl(r: number, g: number, b: number): [number, number, number];
export declare function rgbToHwb(r: number, g: number, b: number): [number, number, number];
export declare function srgbToLinear(u: number): number;
export declare function linearToSrgb(u: number): number;
export declare function oklchToRgb(L: number, C: number, hDeg: number): [number, number, number];
export declare function rgbToOklch(r: number, g: number, b: number): [number, number, number];
export declare function formatColor(r: number, g: number, b: number, a: number, fmt: 'hex' | 'rgb' | 'rgba' | 'hsl' | 'hsla' | 'hwb' | 'oklch', alphaEnabled?: boolean): string;
export declare function resolveEffectiveFormat(fmt: 'hex' | 'rgb' | 'rgba' | 'hsl' | 'hsla' | 'hwb' | 'oklch', alphaEnabled: boolean): 'hex' | 'rgb' | 'rgba' | 'hsl' | 'hsla' | 'hwb' | 'oklch';
