Estensione dei tipi
È possibile estendere un’interfaccia (copiare membri da un altro tipo):
interface X { a: string;}interface Y extends X { b: string;}È anche possibile estendere da più tipi:
interface A { a: string;}interface B { b: string;}interface Y extends A, B { y: string;}La parola chiave extends funziona solo su interfacce e classi; per i tipi utilizzare un’intersezione:
type A = { a: number;};type B = { b: number;};type C = A & B;È possibile estendere un tipo utilizzando un’inferenza, ma non viceversa:
type A = { a: string;};interface B extends A { b: string;}