--- title: "Extending HTML Element Types in React 18" date: "2025-06-03" tags: [] --- React 18 removed the `children` prop from `React.FC` and must be defined explicitly in your component's type. When creating new React components that extend HTML elements (eg Button), you will need to specify the `children` prop in React 18: ```tsx type ButtonProps = React.ButtonHTMLAttributes & { children: React.ReactNode; }; const Button: React.FC = ({ children, disabled, name, type, value }) => { return ( ); }; ```