He estado tratando de resolver un problema muy extraño que encontré con el mecanografiado. Trataba una expresión booleana en línea como el tipo del primer valor en lugar de la expresión completa.
Entonces, si intentas algo simple como lo siguiente:
var numericArray:Array<number> = [2,3,4,1,5,8,11];
var sorrtedArray:Array<number> = numericArray.sort((n1,n2)=> n1 > n2);
Recibirá un error en su método de clasificación que indica que los parámetros no coinciden con ninguna firma del destino de la llamada, porque su resultado es numérico y no booleano. Supongo que me falta algo porque estoy bastante seguro de que n1> n2 es una declaración booleana.