import type { ComponentPropsWithoutRef } from 'react'; import type { DataTestId } from '../../core/types/data-props.js'; import type { FormControlStateProps } from '../../core/types/form-control-state.js'; import type { MaskingProps } from '../../core/types/masking-props.js'; import type { StylingProps } from '../../core/types/styling-props.js'; import type { WithChildren } from '../../core/types/with-children.js'; /** * Props used by all input components. * @public */ export interface BaseInputProps extends ComponentPropsWithoutRef<'input'>, FormControlStateProps, WithChildren, StylingProps, DataTestId, MaskingProps { /** * Variant defining the visual representation of the input field (default or minimal). * @defaultValue 'default' */ variant?: 'default' | 'minimal'; /** * Sets the value of the input field to an empty string. */ onClear?: () => void; }