import * as react_jsx_runtime from 'react/jsx-runtime'; import { Ref, ReactNode, FormEventHandler } from 'react'; import { H as HexColor, C as CvdType, S as SchemeKind, E as EasingKeyword, B as BrandArray, a as PaletteInput, b as PaletteOptions, P as PaletteConfig, R as Ramp, c as SemanticTokens } from '../types-CJu_XF-I.js'; declare function ConfigForm(): react_jsx_runtime.JSX.Element; interface FieldController { value: T; onChange: (value: T) => void; onBlur?: () => void; name?: string; ref?: Ref; } interface FieldState { invalid: boolean; error?: string; } interface FieldRenderProps { field: FieldController; fieldState: FieldState; } interface FieldWrapperPropsBase { label?: string; description?: string; error?: string; className?: string; id?: string; } interface FieldWrapperProps extends FieldWrapperPropsBase { value: T; onChange: (value: T) => void; render: (props: FieldRenderProps) => ReactNode; } interface Option { value: T; label: string; } declare function TextField({ value, onChange, label, description, error, className, id, render, }: FieldWrapperProps): react_jsx_runtime.JSX.Element; interface ColorFieldController { value: string; onChange: (hex: HexColor) => void; onTextChange?: (raw: string) => void; pickerValue: string; } interface ColorFieldRenderProps { field: ColorFieldController; fieldState: { invalid: boolean; error?: string; }; } interface ColorFieldProps extends FieldWrapperPropsBase { value: string; onChange: (hex: HexColor) => void; onTextChange?: (raw: string) => void; render: (props: ColorFieldRenderProps) => React.ReactNode; } declare function ColorField({ value, onChange, onTextChange, label, description, error, className, id, render, }: ColorFieldProps): react_jsx_runtime.JSX.Element; interface SelectFieldProps extends Omit, "render"> { options: Option[]; render: (props: FieldRenderProps & { options: Option[]; }) => React.ReactNode; } declare function SelectField({ value, onChange, label, description, error, className, id, options, render, }: SelectFieldProps): react_jsx_runtime.JSX.Element; interface RadioGroupFieldProps extends Omit, "render"> { options: Option[]; render: (props: FieldRenderProps & { options: Option[]; }) => React.ReactNode; } declare function RadioGroupField({ value, onChange, label, description, error, className, id, options, render, }: RadioGroupFieldProps): react_jsx_runtime.JSX.Element; interface CheckboxFieldProps extends Omit, "value" | "onChange"> { value: boolean; onChange: (checked: boolean) => void; } declare function CheckboxField({ value, onChange, label, description, error, className, id, render, }: CheckboxFieldProps): react_jsx_runtime.JSX.Element; interface CheckboxGroupFieldProps extends FieldWrapperPropsBase { values: T[]; toggle: (value: T) => void; options: Option[]; render: (props: { field: { values: T[]; toggle: (value: T) => void; }; fieldState: { invalid: boolean; error?: string; }; options: Option[]; }) => React.ReactNode; } declare function CheckboxGroupField({ values, toggle, label, description, error, className, id, options, render, }: CheckboxGroupFieldProps): react_jsx_runtime.JSX.Element; interface SliderFieldProps extends Omit, "render"> { min: number; max: number; step?: number; render: (props: FieldRenderProps & { min: number; max: number; step: number; }) => React.ReactNode; } declare function SliderField({ value, onChange, label, description, error, className, id, min, max, step, render, }: SliderFieldProps): react_jsx_runtime.JSX.Element; type PaletteConfigFormInputMode = "brand" | "scheme"; interface PaletteConfigFormValues { inputMode: PaletteConfigFormInputMode; brandColors: string[]; schemeKind: SchemeKind; schemeBase: string; schemeCount: 1 | 2 | 3 | 4; spreadDegrees: number; secondaryChromaScale: number; backgroundLight: string; backgroundDark: string; foregroundLight: string; foregroundDark: string; brandTint: boolean; neonChromaRolloff: boolean; stepDepth: number; easing: EasingKeyword; cvdVariants: CvdType[]; } type PaletteConfigFormInitialValues = Partial; declare const SCHEME_KINDS: SchemeKind[]; declare const CVD_OPTIONS: CvdType[]; /** Easing keyword presets (for dropdowns). */ declare const EASING_PRESET_OPTIONS: readonly EasingKeyword[]; declare const DEFAULT_PALETTE_CONFIG_FORM_VALUES: PaletteConfigFormValues; declare function parseHex(value: string): HexColor | null; declare function toBrandArray(colors: HexColor[]): BrandArray; declare function mergePaletteConfigFormValues(initialValues?: PaletteConfigFormInitialValues): PaletteConfigFormValues; declare function valuesToPaletteInput(values: PaletteConfigFormValues): PaletteInput | null; declare function valuesToPaletteOptions(values: PaletteConfigFormValues): PaletteOptions; interface PaletteConfigColorController { value: string; onChange: (hex: HexColor) => void; onTextChange: (raw: string) => void; } interface PaletteConfigCheckboxGroupController { values: T[]; toggle: (value: T) => void; } interface PaletteConfigFormFieldControllers { inputMode: FieldController; schemeKind: FieldController; schemeBase: PaletteConfigColorController; schemeCount: FieldController<1 | 2 | 3 | 4>; spreadDegrees: FieldController; secondaryChromaScale: FieldController; backgroundLight: PaletteConfigColorController; backgroundDark: PaletteConfigColorController; foregroundLight: PaletteConfigColorController; foregroundDark: PaletteConfigColorController; brandTint: FieldController; neonChromaRolloff: FieldController; stepDepth: FieldController; easing: FieldController; cvdVariants: PaletteConfigCheckboxGroupController; } interface PaletteConfigBrandColorField extends PaletteConfigColorController { index: number; } interface PaletteConfigBrandColorsController { values: string[]; fields: PaletteConfigBrandColorField[]; canAdd: boolean; canRemove: boolean; add: (value?: string) => void; remove: (index?: number) => void; set: (index: number, value: string) => void; } interface PaletteConfigFormSubmit { values: PaletteConfigFormValues; input: PaletteInput; options: PaletteOptions; palette: PaletteConfig | null; } interface PaletteConfigFormRenderProps { values: PaletteConfigFormValues; fields: PaletteConfigFormFieldControllers; brandColors: PaletteConfigBrandColorsController; paletteInput: PaletteInput | null; paletteOptions: PaletteOptions; palette: PaletteConfig | null; paletteError: Error | null; isValid: boolean; submit: () => void; handleSubmit: FormEventHandler; } interface PaletteConfigFormProps { initialValues?: PaletteConfigFormInitialValues; onSubmit?: (payload: PaletteConfigFormSubmit) => void; children?: (props: PaletteConfigFormRenderProps) => ReactNode; render?: (props: PaletteConfigFormRenderProps) => ReactNode; } declare function PaletteConfigForm({ initialValues, onSubmit, children, render, }: PaletteConfigFormProps): react_jsx_runtime.JSX.Element | null; interface ColorInputProps { value: string; onChange: (hex: HexColor) => void; onTextChange?: (raw: string) => void; label?: string; id?: string; className?: string; } declare function ColorInput({ value, onChange, onTextChange, label, id, className, }: ColorInputProps): react_jsx_runtime.JSX.Element; interface RampPreviewProps { ramp: Ramp; label: string; className?: string; } declare function RampPreview({ ramp, label, className }: RampPreviewProps): react_jsx_runtime.JSX.Element; interface SemanticPreviewProps { semantic: SemanticTokens; className?: string; } declare function SemanticPreview({ semantic, className, }: SemanticPreviewProps): react_jsx_runtime.JSX.Element; declare function HtmlTextField({ field, fieldState }: FieldRenderProps): react_jsx_runtime.JSX.Element; declare function HtmlColorField({ field, fieldState }: ColorFieldRenderProps): react_jsx_runtime.JSX.Element; declare function HtmlSelectField({ field, fieldState, options, }: FieldRenderProps & { options: Option[]; }): react_jsx_runtime.JSX.Element; declare function HtmlRadioGroupField({ field, fieldState, options, }: FieldRenderProps & { options: Option[]; }): react_jsx_runtime.JSX.Element; declare function HtmlCheckboxField({ field, fieldState }: FieldRenderProps): react_jsx_runtime.JSX.Element; interface HtmlCheckboxGroupFieldProps { field: { values: T[]; toggle: (value: T) => void; }; fieldState: { invalid: boolean; error?: string; }; options: Option[]; } declare function HtmlCheckboxGroupField({ field, fieldState, options, }: HtmlCheckboxGroupFieldProps): react_jsx_runtime.JSX.Element; interface HtmlSliderFieldProps extends FieldRenderProps { min: number; max: number; step: number; } declare function HtmlSliderField({ field, fieldState, min, max, step }: HtmlSliderFieldProps): react_jsx_runtime.JSX.Element; export { CVD_OPTIONS, CheckboxField, type CheckboxFieldProps, CheckboxGroupField, type CheckboxGroupFieldProps, ColorField, type ColorFieldController, type ColorFieldProps, type ColorFieldRenderProps, ColorInput, type ColorInputProps, ConfigForm, DEFAULT_PALETTE_CONFIG_FORM_VALUES, EASING_PRESET_OPTIONS, EasingKeyword, type FieldController, type FieldRenderProps, type FieldState, type FieldWrapperProps, type FieldWrapperPropsBase, HtmlCheckboxField, HtmlCheckboxGroupField, HtmlColorField, HtmlRadioGroupField, HtmlSelectField, HtmlSliderField, HtmlTextField, type Option, type PaletteConfigBrandColorField, type PaletteConfigBrandColorsController, type PaletteConfigCheckboxGroupController, type PaletteConfigColorController, PaletteConfigForm, type PaletteConfigFormFieldControllers, type PaletteConfigFormInitialValues, type PaletteConfigFormInputMode, type PaletteConfigFormProps, type PaletteConfigFormRenderProps, type PaletteConfigFormSubmit, type PaletteConfigFormValues, RadioGroupField, type RadioGroupFieldProps, RampPreview, type RampPreviewProps, SCHEME_KINDS, SelectField, type SelectFieldProps, SemanticPreview, type SemanticPreviewProps, SliderField, type SliderFieldProps, TextField, mergePaletteConfigFormValues, parseHex, toBrandArray, valuesToPaletteInput, valuesToPaletteOptions };