¿Cómo implementar correctamente constantes de clase en TypeScript?
¡Hola a todos! Estoy aprendiendo TypeScript y me encontré con un problema al intentar definir constantes dentro de una clase.
Necesito crear una clase que almacene algunos valores fijos relacionados con esta clase. Por ejemplo, quiero definir el número máximo de intentos de inicio de sesión (MAX_LOGIN_ATTEMPTS = 5) o estados de pedido (STATUS_PENDING = 'pending', STATUS_APPROVED = 'approved').
He probado diferentes formas, pero ninguna funciona como espero:
```typescript
class UserManager {
// Intento 1: simplemente una propiedad
MAX_LOGIN_ATTEMPTS = 5; // Esto es una propiedad de instancia, no de clase
// Intento 2: static con const
static const MAX_LOGIN_ATTEMPTS = 5; // Error de sintaxis
// Intento 3: readonly
static readonly MAX_LOGIN_ATTEMPTS = 5; // Funciona, pero se puede modificar a través del prototipo
}
```
El problema es que:
1. Si uso una propiedad normal, se crea para cada instancia de la clase, lo que no es eficiente.
2. `static const` no funciona en TypeScript.
3.