Interface para função em TypeScript

É possível criar uma interface não apenas para um objeto, mas também para uma função. Para isso, é especificada uma assinatura de chamada no corpo da interface: os parâmetros para a função e seus tipos, bem como o tipo de retorno da função.

Vamos considerar o seguinte exemplo. Vamos criar um tipo usando a interface IMathFunc. Entre parênteses, especificamos dois parâmetros numéricos. Para o valor de retorno, especificamos o tipo booleano:

typescriptinterface IMathFunc {
  (num1: number, num2: number): boolean;
}

Agora vamos criar uma função myFunc com base na nossa interface:

typescriptlet myFunc: IMathFunc = function(num1: number, num2: number): boolean {
  if(num1 == num2) {
    return true;
  } else {
    return false;
  }
}

console.log(myFunc(2, 2));
Задание 1

Crie uma interface para uma função que recebe duas strings como parâmetro e retorna essas strings concatenadas com um espaço.

Задание 2

Crie uma interface para uma função que recebe um número como parâmetro e retorna um array de divisores desse número.

Задание 3

Crie uma interface para uma função que recebe uma string como parâmetro e retorna um array de palavras dessa string.