Valida los argumentos antes de ejecutar el método: si el guard no devuelve true, lanza TypeError con el motivo y el método NO se ejecuta (precondiciones, diseño por contrato).
true
TypeError
class Account { @Validate((amount: number) => amount > 0 || 'el importe debe ser positivo') deposit(amount: number): void { ... }} Copy
class Account { @Validate((amount: number) => amount > 0 || 'el importe debe ser positivo') deposit(amount: number): void { ... }}
Valida los argumentos antes de ejecutar el método: si el guard no devuelve
true, lanzaTypeErrorcon el motivo y el método NO se ejecuta (precondiciones, diseño por contrato).