11 Punkte von kakasoo 2025-03-13 | 10 Kommentare | Auf WhatsApp teilen

DeepStrictTypes ist eine Sammlung von TypeScript-Utility-Typen, die entwickelt wurde, um mit verschachtelten Objekten sicherer und komfortabler zu arbeiten.

Mit herkömmlichem Omit oder Pick ist es schwierig, tief verschachtelte Eigenschaften sauber zu verarbeiten. Mit DeepStrictOmit und DeepStrictPick kann man dagegen gezielt genau die gewünschten Teile herausgreifen.

Zum Beispiel wird bei einem Typ wie { user: { name: string; age: number } } mit DeepStrictOmit<Example, 'user.name'> eine präzise Umformung zu { user: { age: number } } erreicht. Umgekehrt lässt sich mit DeepStrictPick<Example, 'user.name'> nur der benötigte Teil behalten, also { user: { name: string } }.

Warum das nützlich ist:
✔️ wenn in API-Antworten nur bestimmte Felder gefiltert werden sollen
✔️ wenn in verschachtelten Objekten nur gewünschte Teile erhalten bleiben sollen

Experimentell wurden außerdem Runtime-Utilities wie deepStrictObjectKeys und deepStrictAssert hinzugefügt.

Probiert es gern aus und gebt Feedback! Interesse an Open Source motiviert die Entwickler sehr.

10 Kommentare

 
metis041 2025-03-14

TypeScript ist einfach immer der Hammer

 
kakasoo 2025-03-14

Danke, dass Sie die Großartigkeit von TypeScript zu schätzen wissen.

 
kakasoo 2025-03-14

Vielen Dank!

 
softer 2025-03-14

Gefällt mir

 
kakasoo 2025-03-14

Vielen Dank für den Daumen hoch und die Empfehlung.

 
sunrabbit 2025-03-13

Ich frage mich, ob es überhaupt jemanden gibt, der Typen derart exzessiv verwendet.
Mich würde ein praktischer Anwendungsfall interessieren.

 
kakasoo 2025-03-13

Ich habe das oft verwendet, als ich im Werbeumfeld gearbeitet habe... :)
Facebook, Google ... wie auch immer, letztlich lassen sich die Ad-Domains mit nur kleinen Unterschieden durch nahezu ähnliche Typen abstrahieren, sodass ich es genutzt habe, wenn unterschiedliche Services zu einer Domain zusammengefasst werden sollten.

 
wogns3623 2025-03-14

Ich glaube, auf dem Server wird so etwas häufig verwendet, wenn man Typen von DB-Datensätzen auf verschiedene Weise verarbeitet.

 
kakasoo 2025-03-14

Stimmt. Tatsächlich findet das bei Frontend-Leuten oft nicht so viel Anklang.