Digitando uma matriz com um tipo de união no TypeScript?

Eu só queria saber se é possível digitar matriz com um tipo de união, para que uma matriz possa conter maçãs e laranjas, mas nada mais.

Algo como

var arr : (Apple|Orange)[] = [];

arr.push(apple); //ok
arr.push(orange); //ok
arr.push(1); //error
arr.push("abc"); // error

Agulhas para dizer o exemplo acima não funciona, então isso pode não ser possível ou estou faltando alguma coisa?

questionAnswers(1)

yourAnswerToTheQuestion