/// import { IStylableProps } from '../Generic.types'; export interface IFormFieldProps extends IStylableProps { /** * Label element or string to be used */ label: React.ReactNode; /** * ID to be used in htmlFor/for and on input fields */ id: string; /** * Hidden label. If enabled, hides the label but keeps it accessible to screen readers * @default false */ hiddenLabel?: boolean; /** * is valid * @default true */ isValid?: boolean; /** * Validation message to display * @default This field is invalid. */ validationMessage?: React.ReactNode; /** * Info message to be displayed */ infoMessage?: React.ReactNode; /** * Children is a single JSX element, should be either input, textarea or a component. */ children: JSX.Element; /** * Any additional props are passed through to the underlying element. */ [key: string]: any; } export default IFormFieldProps;