Create a React functional component with the following specifications:
Component Name: {{ComponentName}}
Purpose: {{Description}}
Requirements:
- Use TypeScript with proper interface definitions
- Include JSDoc comments for the component and its props
- Implement proper error boundaries if needed
- Use React.memo() if the component is a candidate for memoization
- Follow the single responsibility principle
- Include proper accessibility attributes (aria-labels, roles)
- Use semantic HTML elements
- 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 applicable