typescript
Installation
SKILL.md
A type earns its place by making a wrong program fail to compile. Three biases decide most calls:
- Make the invalid state unrepresentable, then let inference carry the rest. An annotation that restates what the compiler already infers is noise; a type that admits a state the domain forbids is a defect that will be found at runtime.
- Every escape hatch is a defect report against a type.
any,as,!, and@ts-ignoreeach move a failure from the compiler to production. Reaching for one means the declaration is wrong, and that is where the fix belongs. - The
tsconfig.jsondecides what the compiler catches; the pinned release decides what may be written. Read both before writing code.