TypeScript do zero — parte 3 de 3
Interfaces, types e generics
Modelando dados com interfaces e types, e criando abstrações com generics.
1 min de leituraatualizado
Interfaces vs Types#
As duas formas de descrever objetos:
shapes.tsts
interface Usuario {
id: string;
nome: string;
}
type Admin = Usuario & {
permissoes: string[];
};Generics#
O superpoder do TypeScript — funções que preservam tipos:
generics.tsts
function primeiro<T>(lista: T[]): T | undefined {
return lista[0];
}
const n = primeiro([1, 2, 3]); // number | undefined
const s = primeiro(["a", "b"]); // string | undefined