<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Type-Transformations on Dev &amp; Platform Engineering Hub</title><link>https://rhidayat.work/topics/type-transformations/</link><description>Recent content in Type-Transformations on Dev &amp; Platform Engineering Hub</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>© 2026 Rachmat Hidayat</copyright><lastBuildDate>Sun, 09 Aug 2026 13:00:00 +0000</lastBuildDate><atom:link href="https://rhidayat.work/topics/type-transformations/index.xml" rel="self" type="application/rss+xml"/><item><title>TS Ep 2: Intermediate TypeScript — Generics, Type Helpers, and Mapped Types</title><link>https://rhidayat.work/series/typescript/intermediate/02-type-transformations-and-generics/</link><pubDate>Sun, 09 Aug 2026 13:00:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/02-type-transformations-and-generics/</guid><description>An in-depth guide to intermediate TypeScript type transformations. Master generic functions and constraints (extends), indexed access types, keyof/typeof operators, built-in helpers (Pick, Omit, Record, ReturnType), and mapped type transformations.</description></item><item><title>TS Ep 39: Mapped Type Modifiers (`+`, `-`, `?`, `readonly`)</title><link>https://rhidayat.work/series/typescript/intermediate/15-mapped-types-modifiers/</link><pubDate>Sun, 09 Aug 2026 12:25:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/15-mapped-types-modifiers/</guid><description>An in-depth guide to Mapped Type Modifiers in TypeScript. Learn how to preserve, add (&lt;code&gt;+&lt;/code&gt;), or strip (&lt;code&gt;-&lt;/code&gt;) property modifiers like &lt;code&gt;readonly&lt;/code&gt; and &lt;code&gt;?&lt;/code&gt;. We explore how these mapping modifiers power TypeScript&amp;rsquo;s built-in &lt;code&gt;Partial&lt;/code&gt;, &lt;code&gt;Required&lt;/code&gt;, and &lt;code&gt;Readonly&lt;/code&gt; utility types.</description></item><item><title>TS Ep 38: Mapped Types (Basics)</title><link>https://rhidayat.work/series/typescript/intermediate/14-mapped-types-basics/</link><pubDate>Sun, 09 Aug 2026 12:20:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/14-mapped-types-basics/</guid><description>An in-depth guide to Mapped Types in TypeScript. Learn how to use the &lt;code&gt;[K in Union]&lt;/code&gt; syntax to iterate over literal unions, transform existing object properties using &lt;code&gt;keyof&lt;/code&gt; and Indexed Access, and build strict state validation maps that perfectly mirror domain models.</description></item><item><title>TS Ep 36: Built-in Utility Types (`Extract` and `Exclude`)</title><link>https://rhidayat.work/series/typescript/intermediate/12-utility-type-extract-exclude/</link><pubDate>Sun, 09 Aug 2026 12:10:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/12-utility-type-extract-exclude/</guid><description>An in-depth guide to the &lt;code&gt;Extract&lt;/code&gt; and &lt;code&gt;Exclude&lt;/code&gt; utility types. Understand the fundamental difference between Object manipulation (&lt;code&gt;Pick&lt;/code&gt;/&lt;code&gt;Omit&lt;/code&gt;) and Union manipulation (&lt;code&gt;Extract&lt;/code&gt;/&lt;code&gt;Exclude&lt;/code&gt;), extracting by object signature in discriminated unions, and their underlying distributive conditional type mechanics.</description></item><item><title>TS Ep 35: Built-in Utility Types (`Record&lt;K, V&gt;`)</title><link>https://rhidayat.work/series/typescript/intermediate/11-utility-type-record/</link><pubDate>Sun, 09 Aug 2026 12:05:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/11-utility-type-record/</guid><description>An in-depth look at the &lt;code&gt;Record&amp;lt;K, V&amp;gt;&lt;/code&gt; utility type. Learn how to type arbitrary string dictionaries, enforce exhaustive key mapping using Unions, and combine &lt;code&gt;Record&lt;/code&gt; with other utilities to model complex domain configurations.</description></item><item><title>TS Ep 34: Built-in Utility Types (`Pick` and `Omit`)</title><link>https://rhidayat.work/series/typescript/intermediate/10-utility-type-pick-omit/</link><pubDate>Sun, 09 Aug 2026 12:00:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/10-utility-type-pick-omit/</guid><description>An in-depth guide to &lt;code&gt;Pick&lt;/code&gt; and &lt;code&gt;Omit&lt;/code&gt; utility types in TypeScript. Learn under-the-hood mapped type implementations (&lt;code&gt;Pick&lt;/code&gt; via mapped types, &lt;code&gt;Omit&lt;/code&gt; via &lt;code&gt;Exclude&lt;/code&gt;), key constraints differences, building public API DTOs, and the selection decision matrix.</description></item><item><title>TS Ep 33: Built-in Utility Types (`Partial`, `Required`, `Readonly`)</title><link>https://rhidayat.work/series/typescript/intermediate/09-utility-type-partial-required-readonly/</link><pubDate>Sun, 09 Aug 2026 11:55:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/09-utility-type-partial-required-readonly/</guid><description>An in-depth analysis of TypeScript&amp;rsquo;s foundational object utility types. Learn how &lt;code&gt;Partial&amp;lt;T&amp;gt;&lt;/code&gt;, &lt;code&gt;Required&amp;lt;T&amp;gt;&lt;/code&gt;, and &lt;code&gt;Readonly&amp;lt;T&amp;gt;&lt;/code&gt; transform property modifiers, their under-the-hood mapped type implementations (&lt;code&gt;?&lt;/code&gt;, &lt;code&gt;-?&lt;/code&gt;, &lt;code&gt;readonly&lt;/code&gt;), and shallow immutability limits.</description></item><item><title>TS Ep 26: Indexed Access Types (`T[K]`)</title><link>https://rhidayat.work/series/typescript/intermediate/02-indexed-access-types/</link><pubDate>Sun, 09 Aug 2026 11:20:00 +0000</pubDate><guid>https://rhidayat.work/series/typescript/intermediate/02-indexed-access-types/</guid><description>An in-depth guide to Indexed Access Types (&lt;code&gt;T[K]&lt;/code&gt;). Learn how to look up specific property types from object shapes, perform nested indexing, index with unions &lt;code&gt;T['a' | 'b']&lt;/code&gt;, extract array element types using &lt;code&gt;[number]&lt;/code&gt;, and enforce DRY type architectures.</description></item></channel></rss>