馃敟 TYPE MANIPULATION, MAPPED TYPES (TIPOS BASADOS EN MAPAS)

Un mapped type (tipo basado en mapas) es un tipo generic que utiliza una uni贸n generada a partir de keyof para iterar a trav茅s de las propiedades de un tipo y crear as铆 otro.

type Persona = {
    trabaja: boolean;
    estudia: boolean;
    edad: number;
};

type Opciones<T> = {
    [key in keyof T]: boolean;
};

const o: Opciones<Persona> = {
    estudia: true,
    trabaja: true,
    edad: 200, // <- esta l铆nea genera un error ya que todos deben ser boolean
};

En este ejemplo Opciones tomar谩 el nombre de todas las propiedades de T y cambiar谩 los valores a boolean.