Propiedades de interfaces en TypeScript

Supongamos que tenemos una interfaz que describe un usuario:

typescriptinterface IUser {
  
}

Agreguemos a esta interfaz propiedades y su tipo:

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

Ahora creamos un objeto de la interfaz. Para esto declaramos una variable, en la que indicamos como tipo la interfaz seleccionada:

typescriptlet user: IUser;

Ahora podemos asignar valores para las propiedades definidas en la interfaz:

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

Si ahora intentamos crear un usuario sin asignarle las propiedades necesarias, veremos un error:

typescriptlet user: IUser = {
  name: 'john',  // error
}

También habrá error si intentamos agregar una propiedad extra:

typescriptlet user: IUser = {
  name: 'john',
  surn: 'smit', // error
  age: 30
}
Задание 1

Cree una interfaz IMath con propiedades num1 y num2.

Задание 2

Implemente un objeto calc de la interfaz creada anteriormente.