Introducción

En TypeScript, los alias de tipos permiten crear un nombre personalizado para un tipo existente. Esto puede ser útil para simplificar tipos complejos, mejorar la legibilidad del código y facilitar el mantenimiento. Los alias de tipos se crean utilizando la palabra clave type.

Creación de Alias de Tipos

Sintaxis Básica

La sintaxis básica para crear un alias de tipo es la siguiente:

type NombreDelAlias = TipoExistente;

Ejemplo Práctico

Supongamos que tenemos un tipo complejo que representa un objeto de usuario:

type Usuario = {
  nombre: string;
  edad: number;
  email: string;
};

Ahora podemos usar Usuario como un tipo en lugar de repetir la definición del objeto cada vez:

const usuario1: Usuario = {
  nombre: "Juan",
  edad: 30,
  email: "[email protected]"
};

const usuario2: Usuario = {
  nombre: "María",
  edad: 25,
  email: "[email protected]"
};

Alias de Tipos para Tipos Complejos

Los alias de tipos no se limitan a objetos simples. También pueden ser utilizados para tipos más complejos, como uniones, intersecciones, y tipos genéricos.

Alias para Tipos Unión

Un tipo unión permite que una variable sea de uno de varios tipos. Aquí hay un ejemplo de un alias de tipo unión:

type ID = number | string;

let id1: ID = 123;
let id2: ID = "abc123";

Alias para Tipos Intersección

Un tipo intersección combina múltiples tipos en uno solo. Aquí hay un ejemplo de un alias de tipo intersección:

type A = { a: number };
type B = { b: string };

type C = A & B;

const objeto: C = {
  a: 1,
  b: "texto"
};

Alias para Tipos Genéricos

Los alias de tipos también pueden ser genéricos. Aquí hay un ejemplo:

type Respuesta<T> = {
  data: T;
  error: string | null;
};

const respuesta1: Respuesta<string> = {
  data: "Éxito",
  error: null
};

const respuesta2: Respuesta<number> = {
  data: 42,
  error: null
};

Ejercicios Prácticos

Ejercicio 1

Crea un alias de tipo para representar un producto en una tienda en línea. El producto debe tener las siguientes propiedades: id (número), nombre (cadena), precio (número) y enStock (booleano).

Solución

type Producto = {
  id: number;
  nombre: string;
  precio: number;
  enStock: boolean;
};

const producto1: Producto = {
  id: 1,
  nombre: "Laptop",
  precio: 999.99,
  enStock: true
};

const producto2: Producto = {
  id: 2,
  nombre: "Teléfono",
  precio: 499.99,
  enStock: false
};

Ejercicio 2

Crea un alias de tipo para representar una respuesta de API que puede ser exitosa o fallida. La respuesta exitosa debe tener una propiedad data (cadena) y la respuesta fallida debe tener una propiedad error (cadena).

Solución

type RespuestaAPI = 
  | { data: string; error?: never }
  | { data?: never; error: string };

const respuestaExitosa: RespuestaAPI = {
  data: "Datos recibidos correctamente"
};

const respuestaFallida: RespuestaAPI = {
  error: "Error al recibir los datos"
};

Conclusión

Los alias de tipos en TypeScript son una herramienta poderosa para mejorar la legibilidad y mantenibilidad del código. Permiten crear nombres personalizados para tipos complejos, simplificando su uso y comprensión. En este módulo, hemos aprendido cómo crear alias de tipos básicos, uniones, intersecciones y genéricos, y hemos practicado con algunos ejercicios.

En el próximo tema, exploraremos los Guardias de Tipo, que nos ayudarán a manejar de manera segura los tipos en tiempo de ejecución.

© Copyright 2024. Todos los derechos reservados