Properties and some behavior of this TextArea is based on the Text Field of MUI: https://mui.com/material-ui/react-text-field/

interface TextAreaProps {
    autoFocus?: boolean;
    defaultValue?: string;
    disabled?: boolean;
    fullHeight?: boolean;
    maxLength?: number;
    minLength?: number;
    name?: string;
    noAutoGrow?: boolean;
    onChange?: (value: string) => void;
    placeholder?: string;
    ref?: Ref<{ focus: () => void }>;
    required?: boolean;
    title?: string;
    value?: string;
}

Properties

autoFocus?: boolean
defaultValue?: string
disabled?: boolean
fullHeight?: boolean

If set, height will be 100%

maxLength?: number
minLength?: number
name?: string
noAutoGrow?: boolean

Auto-grow is default. However, it is only best-effort (only works in browsers that support field-sizing). This prop turns it off completely.

onChange?: (value: string) => void
placeholder?: string
ref?: Ref<{ focus: () => void }>
required?: boolean
title?: string
value?: string

value and onChange are optional because we want to be able to use the control in an uncontrolled manner as well (for example, in forms)