import type React from "react";
import type { PopoverContent } from "src/primitives/Popover";
export type ColorPickerSize = "small" | "medium" | "large";
export interface ColorValue {
    hex: string;
    rgb: {
        r: number;
        g: number;
        b: number;
        a: number;
    };
}
export interface PaletteColor {
    hex?: string;
    rgb?: string | {
        r: number;
        g: number;
        b: number;
        a?: number;
    };
}
export interface ColorPickerProps {
    /** Current color value (hex string). */
    color?: string;
    /** Size of the trigger target. */
    size?: ColorPickerSize;
    /** Callback when color changes. */
    onChange?: (value: ColorValue) => void;
    /** Custom palette colors. */
    colorPalette?: PaletteColor[];
    /** Show eye dropper button. */
    showEyeDropper?: boolean;
    /** Show hex value text in the trigger. */
    showHexValue?: boolean;
    /** Enable alpha/transparency control. */
    showTransparencyControl?: boolean;
    /** Show the color picker (gradient area + input). */
    showPicker?: boolean;
    /** Show the hex gradient picker area. */
    showHexPicker?: boolean;
    /** Show recently used colors section. */
    showRecentlyUsedColors?: boolean;
    /** Props forwarded to the Popover content. */
    dropdownProps?: Omit<React.ComponentProps<typeof PopoverContent>, "children">;
    /** Additional CSS class names. */
    className?: string;
}
