Уласцівасці інтэрфейсаў у TypeScript

Няхай у нас ёсць інтэрфейс, які апісвае юзера:

typescriptinterface IUser {
  
}

Дадаймо ў гэты інтэрфейс уласцівасці і іх тып:

typescriptinterface IUser {
  name: string;
  age: number;
}

Цяпер ствараем аб'ект інтэрфейса. Для гэтага аб'яўляем зменную, у якой паказваем у якасці тыпу абраны інтэрфейс:

typescriptlet user: IUser;

Цяпер мы можам прапісаць значэнні для ўласцівасцей, зададзеных у інтэрфейсе:

typescriptlet user: IUser = {
  name: 'john',
  age: 30
}

Калі цяпер паспрабаваць стварыць юзера, не задаўшы яму неабходных уласцівасцей, то мы ўбачым памылку:

typescriptlet user: IUser = {
  name: 'john',  // памылка
}

Таксама памылка будзе, калі паспрабаваць зрабіць лішнюю ўласцівасць:

typescriptlet user: IUser = {
  name: 'john',
  surn: 'smit', // памылка
  age: 30
}
Задание 1

Стварыце інтэрфейс IMath з уласцівасцямі num1 і num2.

Задание 2

Рэалізуйце аб'ект calc створанага вышэй інтэрфейса.