The satisfies operator (TypeScript 4.9+) validates that a value matches a type without widening the inferred type. It's the sweet spot between type annotations (which widen) and as assertions (which override).
This page covers the core use case. For a full reference with config patterns and decision rules, see the satisfies cheat sheet.
What You'll Practice: TypeScript satisfies Operator: Patterns & Examples
Use satisfies to validate object shapes without wideningDistinguish between satisfies, as, and type annotationsPreserve literal types in config objectsApply satisfies with Record for typed lookups
Quick Reference
TypeScript satisfies Operator: Patterns & Examples Cheat Sheet →Copy-ready syntax examples for quick lookup