import { ColorAreaProps, parseColor } from 'react-aria-components'; import type { ColorPickerProps as ColorPickerRAProps, ColorFormat, Color } from 'react-aria-components'; import './ColorPicker.scss'; import React from 'react'; export { parseColor, type Color }; export interface ColorPickerProps extends Omit { value?: string; onChange?: (v: string, color?: Color) => void; children?: React.ReactNode; format?: ColorFormat; title?: string; name?: string; isRequired?: boolean; colorFieldTitle?: string; supportTitle?: string; errorMessage?: string; style?: React.CSSProperties; colorAreaWidth?: number; colorAreaHeight?: number; thumbSize?: number; } export declare function MyColorArea(props: ColorAreaProps): import("react/jsx-runtime").JSX.Element; /** * Aria will throw an err if the input is invalid, so we need to validate it first * @param input * @returns validated color */ export declare const validateColor: (input: string) => Color; /** * ColorPicker component that provides a UI for selecting a color using a color area and a hue slider. * * @param {Object} props - The properties passed to the component. * @param {string} props.value - The current color value, typically in a string format (e.g., hex, RGB, etc.). * @param {string} props.title - The title of the color picker. * @param {string} props.colorFieldTitle - The title of the color field. * @param {React.CSSProperties} props.style - The style of the color picker. * @param {number} props.colorAreaWidth - The width of the color area. Defaults to 120. * @param {number} props.colorAreaHeight - The height of the color area. Defaults to 92. * @param {number} props.thumbSize - The size of the color thumb. Defaults to 10. * @param {function(string, Color): void} props.onChange - Callback function to update the selected color string value and the color object. Please use the first argument to update the state. The second one is mainly for testing purposes. * @param {ColorFormat} props.format - The format of the color value. Defaults to 'hex'. The options include "hex" | "hexa" | "rgb" | "rgba" | "hsl" | "hsla" | "hsb" | "hsba" * @param {React.ReactNode} [props.children] - Optional child components or elements to be rendered within the color picker. * @param {string} [props.name] - The name of the color picker, used for form validation. * @returns {JSX.Element} The rendered ColorPicker component, including a color area for saturation/lightness and a hue slider. * * @example * // Example usage of ColorPicker * const [color, setColor] = useState('#ff0000'); * * setColor(v)}> *
Selected Color: {color}
*
*/ export declare const ColorPicker: ({ value, onChange, style, children, format, name, isRequired, title, colorFieldTitle, supportTitle, errorMessage, thumbSize, colorAreaWidth, colorAreaHeight, ...props }: ColorPickerProps) => import("react/jsx-runtime").JSX.Element; export default ColorPicker;