İçeriğe geç

Türleri Genişletme

Bir interface’i genişletmek (üyeleri başka bir türden kopyalamak) mümkündür:

interface X {
a: string;
}
interface Y extends X {
b: string;
}

Birden fazla türü genişletmek de mümkündür:

interface A {
a: string;
}
interface B {
b: string;
}
interface Y extends A, B {
y: string;
}

extends anahtar sözcüğü yalnızca arayüzlerde ve sınıflarda çalışır; türler için kesişim kullanın:

type A = {
a: number;
};
type B = {
b: number;
};
type C = A & B;

Bir türü arayüz kullanarak genişletmek mümkündür, ancak bunun tersi mümkün değildir:

type A = {
a: string;
};
interface B extends A {
b: string;
}