Eu tenho tentado descobrir um problema muito estranho que eu encontrei com o texto datilografado. Tratava uma expressão booleana embutida como qualquer que fosse o tipo do primeiro valor, em vez da expressão completa.
Portanto, se você tentar algo simples como o seguinte:
var numericArray:Array<number> = [2,3,4,1,5,8,11];
var sorrtedArray:Array<number> = numericArray.sort((n1,n2)=> n1 > n2);
Você receberá um erro no seu método de classificação dizendo que os parâmetros não correspondem a nenhuma assinatura do destino da chamada, porque seu resultado é numérico e não booleano. Acho que estou perdendo alguma coisa, porque tenho certeza de que n1> n2 é uma instrução booleana.