Der satisfies-Operator von TypeScript: Typsicherheit ohne Inferenzverlust

Der satisfies-Operator kam mit TypeScript 4.9 und gehört bis heute zu den am wenigsten genutzten Funktionen der Sprache. In den meisten Codebasen, die davon profitieren könnten, greift man stattdessen zu Typannotationen – die den Typ aufweiten – oder zu as-Assertions – die den Compiler anlügen. satisfies löst dieses Dilemma: Es prüft, ob ein Wert einem Typ entspricht, ohne zu verändern, was der Compiler über die konkrete Form dieses Werts weiß.

Wer den Unterschied zwischen Validierung und Aufweitung versteht, erschließt sich eine ganze Klasse von Mustern, die Konfigurationsobjekte, Lookup-Tabellen und Registries wirklich sicherer und ausdrucksstärker machen.