);
}
```
**Constrained generics** for required properties:
```typescript
type HasId = { id: string | number };
function List({ items }: { items: T[] }) {
return
{items.map(item =>
...
)}
;
}
```
See [generic-components.md](examples/generic-components.md) for Select, List, Modal, FormField patterns.
React 19 Server Components run on server, can be async.
**Async data fetching**:
```typescript
export default async function UserPage({ params }: { params: { id: string } }) {
const user = await fetchUser(params.id);
return