react-typescript
Installation
SKILL.md
Quick Reference
| Type | Usage | Example |
|---|---|---|
| Props interface | Component props | interface ButtonProps { variant: 'primary' } |
ReactNode |
Children | children: ReactNode |
ChangeEvent |
Input change | (e: ChangeEvent<HTMLInputElement>) |
FormEvent |
Form submit | (e: FormEvent<HTMLFormElement>) |
MouseEvent |
Click | (e: MouseEvent<HTMLButtonElement>) |
| Pattern | Example |
|---|---|
| Extend HTML props | extends ButtonHTMLAttributes<HTMLButtonElement> |
| Generic component | function List<T>({ items }: { items: T[] }) |
| forwardRef | forwardRef<HTMLInputElement, Props> |
| Discriminated union | { status: 'success'; data: T } | { status: 'error'; error: Error } |