¿Cómo crear un array vacío tipado en TypeScript?
¡Hola a todos! Acabo de empezar a aprender TypeScript después de JavaScript y me encontré con un problema al crear arrays vacíos. En JavaScript solía hacer esto:
```javascript
let items = [];
```
Y luego simplemente agregaba elementos con push. Pero en TypeScript obtengo un error cuando intento hacer lo mismo:
```typescript
let items = [];
items.push('hello'); // Error: Argument of type 'string' is not assignable to parameter of type 'never'
```
Entiendo que TypeScript infiere el tipo `never[]` porque el array está vacío y el compilador no sabe qué elementos contendrá. Pero, ¿cómo declarar correctamente un array vacío que luego contendrá, por ejemplo, strings u objetos de un tipo específico?
He probado varias opciones:
```typescript
let items: string[] = []; // Funciona, pero para strings
let items: Array = []; // También funciona
```
Pero, ¿qué pasa si tengo un tipo complejo? Por ejemplo, un array de objetos con una interfaz User. ¿O un array que contendrá diferentes tipos (union)? ¿Cómo