/**
 * ColorPicker Types
 *
 * Defines the type system for the ColorPicker component used for brand configuration.
 */
/**
 * Translations interface for ColorPicker
 * All text strings that can be customized by the consumer
 */
export interface ColorPickerTranslations {
    label?: string;
    placeholder?: string;
    customColorLabel?: string;
    predefinedColorsLabel?: string;
    recentColorsLabel?: string;
    noRecentColors?: string;
    invalidColorFormat?: string;
    colorPreview?: string;
}
/**
 * Predefined color option
 */
export interface PredefinedColor {
    /** Unique identifier */
    key: string;
    /** Display name */
    name: string;
    /** Hex color value (e.g., "#FF5733") */
    value: string;
    /** Optional tooltip */
    tooltip?: string;
}
/**
 * Imperative handle exposed via `ref` so a parent (typically the "Save" /
 * "Continue" button handler of a form) can force the hex input to re-validate
 * synchronously and decide whether to proceed.
 *
 * `validate()` returns `true` when the current input is acceptable and
 * `false` when it is not. As a side effect it updates the visible error
 * state, so the user sees what is blocking submission.
 */
export interface ColorPickerHandle {
    validate: () => boolean;
}
/**
 * ColorPicker component props
 */
export interface ColorPickerProps {
    /** Current selected color (hex format: #RRGGBB) */
    value: string;
    /** Callback when color changes */
    onChange: (color: string) => void;
    /** Label text */
    label?: string;
    /** Whether the field is required */
    required?: boolean;
    /** Whether the field is disabled */
    disabled?: boolean;
    /** Error state */
    error?: boolean;
    /** Error message text */
    errorText?: string;
    /** Predefined color palette */
    predefinedColors?: PredefinedColor[];
    /** Enable recent colors feature */
    enableRecentColors?: boolean;
    /** Maximum number of recent colors to store */
    maxRecentColors?: number;
    /** LocalStorage key for recent colors */
    recentColorsStorageKey?: string;
    /** Show predefined colors palette */
    showPredefinedColors?: boolean;
    /** Translations for i18n */
    translations?: ColorPickerTranslations;
    /** Custom className */
    className?: string;
    /** Input HTML id */
    id?: string;
    /** Name attribute for forms */
    name?: string;
}
/**
 * Default predefined colors (Brand-safe palette)
 */
export declare const DEFAULT_PREDEFINED_COLORS: PredefinedColor[];
//# sourceMappingURL=ColorPicker.types.d.ts.map