import { Field, FieldConfig, FieldInstance } from "./Field"; import type { RenderingContext } from "../../ui/RenderingContext"; import type { Instance } from "../../ui/Instance"; import { StringProp } from "../../ui/Prop"; declare global { class EyeDropper { open(): Promise<{ sRGBHex: string; }>; } interface Window { EyeDropper: typeof EyeDropper; } } interface ColorState { r: number; g: number; b: number; h: number; s: number; l: number; a: number; } export interface ColorPickerConfig extends FieldConfig { /** Either `rgba`, `hsla` or `hex` value of the selected color. */ value?: StringProp; /** Format of the color representation. Either `rgba`, `hsla` or `hex`. */ format?: "rgba" | "hsla" | "hex"; /** * A string containing the list of all events that cause that selected value is written to the store. * Default value is `blur change` which means that changes are propagated immediately. */ reportOn?: string; /** Callback function invoked when the color preview is clicked. */ onColorClick?: (e: React.MouseEvent, instance: Instance) => void; } export declare class ColorPicker extends Field> { format: string; reportOn: string; onColorClick?: (e: React.MouseEvent, instance: FieldInstance) => void; constructor(config?: ColorPickerConfig); declareData(...args: Record[]): void; renderInput(context: RenderingContext, instance: FieldInstance, key: string): React.ReactNode; handleEvent(eventType: string, instance: FieldInstance, color: ColorState): void; } export {}; //# sourceMappingURL=ColorPicker.d.ts.map