¿Es posible hacer cumplir que un Registro respeta a algunos invariantes?
Supongamos que quisiera crear un tipo de registro que represente los límites mínimo / máximo aceptables:
type Bounds = { Min: float; Max: float }
¿Hay una manera de hacer cumplir ese Min <Max? Es fácil escribir una función validateBounds, me preguntaba si había una mejor manera de hacerlo.
Edit: Me di cuenta de que para este ejemplo específico probablemente podría salirme con la idea de exponer dos propiedades y reordenar los argumentos, así que digamos que tratamos de hacerlo
type Person = { Name: string }
y el nombre debe tener al menos un carácter.