Generate a well-structured React component with TypeScript, proper types, and best practices.
Create a React functional component with the following specifications:
Component Name: {{ComponentName}}
Purpose: {{Description}}
Requirements:
1. Use TypeScript with proper interface definitions
2. Include JSDoc comments for the component and its props
3. Implement proper error boundaries if needed
4. Use React.memo() if the component is a candidate for memoization
5. Follow the single responsibility principle
6. Include proper accessibility attributes (aria-labels, roles)
7. Use semantic HTML elements
8. Implement proper loading and error states
The component should be:
- Fully typed with no 'any' types
- Optimized for performance
- Following React 19 best practices
- Compatible with Server Components where applicableNo add-ons yet.