Перейти к основному содержимому

Пересечение типов (Intersection Types)

Для пересечения типов используется оператор & и требует, чтобы переменная имела свойства всех указанных типов.

interface Common {
id: number;
name: string;
}

interface User {
login: string;
password: string;
}

type Person = Common & User;

Валидный вариант

const person: Person = {
id: 4,
name: 'Michael',
login: 'michael',
password: 'qwerty',
}

Невалидные варианты

const common: Person = {
id: 4,
name: 'Michael',
}

const user: Person = {
login: 'michael',
password: 'qwerty',
}