No TypeScript, posso declarar um parâmetro de uma função como um tipo Function. Existe uma maneira "segura de digitar" de fazer isso que estou perdendo? Por exemplo, considere isso:
class Foo {
save(callback: Function) : void {
//Do the save
var result : number = 42; //We get a number from the save operation
//Can I at compile-time ensure the callback accepts a single parameter of type number somehow?
callback(result);
}
}
var foo = new Foo();
var callback = (result: string) : void => {
alert(result);
}
foo.save(callback);
O retorno de chamada para salvar não é do tipo seguro; estou fornecendo uma função de retorno de chamada em que o parâmetro da função é uma cadeia de caracteres, mas estou passando um número para ele e compilando sem erros. Posso definir o parâmetro result em salvar uma função de segurança de tipo?
Versão TL; DR: existe o equivalente a um delegado .NET no TypeScript?
(n: number) => any
significa alguma assinatura de função?