11 puntos por kakasoo 2025-03-13 | 10 comentarios | Compartir por WhatsApp

DeepStrictTypes es una colección de tipos utilitarios de TypeScript creada para manejar objetos anidados de forma más segura y práctica.

Cuando usas Omit o Pick tradicionales, es difícil procesar limpiamente propiedades muy anidadas, pero con DeepStrictOmit y DeepStrictPick puedes seleccionar exactamente las partes que quieres.

Por ejemplo, en el tipo { user: { name: string; age: number } }, si usas DeepStrictOmit<Example, 'user.name'>, se transforma con precisión en algo como { user: { age: number } }. En cambio, si usas DeepStrictPick<Example, 'user.name'>, puedes dejar solo la parte necesaria, como { user: { name: string } }.

¿Y por qué hace falta esto?
✔️ Cuando quieres filtrar solo ciertos campos en una respuesta de API
✔️ Cuando quieres conservar solo las partes que te interesan dentro de un objeto anidado

También se añadieron de forma experimental utilidades de runtime como deepStrictObjectKeys y deepStrictAssert.

¡Pruébenlo y compártanme su feedback! ¡El interés por el open source les da fuerza a quienes lo crean!

10 comentarios

 
metis041 2025-03-14

TypeScript siempre es una joya.

 
kakasoo 2025-03-14

Gracias a ti, que conoces lo genial que es TypeScript.

 
kakasoo 2025-03-14

¡Gracias!

 
softer 2025-03-14

Buenísimo

 
kakasoo 2025-03-14

Gracias por el pulgar arriba y la recomendación.

 
sunrabbit 2025-03-13

No sé si habrá alguien que use los tipos tan intensamente hasta este nivel,
pero me da curiosidad ver casos de uso reales.

 
kakasoo 2025-03-13

Yo lo usé mucho cuando trabajaba en el dominio de publicidad... :)
Facebook, Google... en fin, al final el dominio de publicidad solo tiene pequeñas diferencias y se puede abstraer con tipos casi iguales, así que lo usábamos cuando agrupábamos distintos servicios en un mismo dominio.

 
wogns3623 2025-03-14

Parece que se usa bastante de esa forma cuando se procesan y transforman de distintas maneras los tipos de registros de datos de la base de datos en el servidor

 
kakasoo 2025-03-14

Así es. De hecho, no suele generar mucha identificación entre quienes trabajan en frontend.