import type { IAppearanceableProps } from '../../../Behaviors/Appearanceable';
import type { IClearableProps } from '../../../Behaviors/Clearable';
import type { IDisableableProps } from '../../../Behaviors/Disableable';
import type { IDropDownableProps } from '../../../Behaviors/DropDownable';
import type { IInvalidableProps } from '../../../Behaviors/Invalidable';
import type { ILabelableProps } from '../../../Behaviors/Labelable';
import type { IValueableProps } from '../../../Behaviors/Valueable';
import type { IVariantableProps } from '../../../Behaviors/Variantable';
import type { ColorEditorFormat } from '../../../Types/ColorEditorFormat';
import type { ColorFormat } from '../../../Types/ColorFormat';
import type { ColorPosition } from '../../../Types/ColorPosition';
import type { TextAlignment } from '../../../Types/TextAlignment';
import type { IColorPalette } from '../../Media/ColorEditor/IColorPalette';
import type { IInputBaseProps } from '../Abstracts/InputBase';
/**
 * Represents the `{@link IColorBoxElementProps}` interface.
 *
 * @public
 */
export interface IColorBoxElementProps extends IValueableProps, IDisableableProps, IVariantableProps, IAppearanceableProps, IDropDownableProps, IInputBaseProps, ILabelableProps, IInvalidableProps, IClearableProps {
    value: string;
    readonly: boolean;
    required: boolean;
    autofocus: boolean;
    name: string;
    pattern: string;
    placeholder: string;
    autocomplete: boolean;
    invalid: boolean;
    /**
     * The color format to use for input and output.
     * Supported formats: hex, hex8, rgb, rgba, hsl, hsla, hsv, hsva, oklch, oklab, lch, lab
     */
    format: ColorFormat;
    swatches: Array<string>;
    textAlign: TextAlignment;
    /**
     * The position of the color preview relative to the input field.
     * Use 'before' to place it before the input, 'after' to place it after (default).
     */
    colorPosition: ColorPosition;
    /**
     * Gets or sets the color format for the editor inputs.
     *
     * @default 'hex'
     */
    editorFormat: ColorEditorFormat;
    /**
     * Gets or sets whether to show the alpha slider in the editor.
     *
     * @default true
     */
    showAlpha: boolean;
    /**
     * Gets or sets whether to show the color inputs in the editor.
     *
     * @default true
     */
    showInputs: boolean;
    /**
     * Gets or sets whether to show the palette section in the editor.
     *
     * @default true
     */
    showPalette: boolean;
    /**
     * Gets or sets whether to show the eye dropper button in the editor.
     *
     * @default false
     */
    showEyeDropper: boolean;
    /**
     * Gets or sets whether to show the color swatch preview in the editor.
     *
     * @default true
     */
    showSwatch: boolean;
    /**
     * Gets or sets the available color palettes for the editor.
     */
    palettes: Array<IColorPalette>;
    /**
     * Gets or sets the currently selected palette name in the editor.
     */
    selectedPalette: string;
}
//# sourceMappingURL=IColorBoxElementProps.d.ts.map