Tipo personalizado com função em TypeScript

Às vezes é mais conveniente declarar um tipo separado, que conterá a descrição dos parâmetros e do valor de retorno da função:

typescripttype Func = (x: number, y: number) => number;

Em seguida, você pode declarar funções com esse tipo.

Vamos, por exemplo, declarar uma função que soma dois números:

typescriptlet func1: Func = function(a: number, b: number): number {
  return a + b;
};

Agora vamos declarar uma função que multiplica dois números:

typescriptlet func2: Func = function(a: number, b: number): number {
  return a * b;
};
Задание 1

Dado o seguinte tipo:

typescripttype Func = (x: number, y: number, z: number) => number;

Crie uma função deste tipo. Deixe a função receber três números como parâmetro, e retorne a soma desses números como resultado.

Задание 2

Declare um tipo de função que receba como parâmetro um número e um array de números, e retorne um array de números como resultado.