Project: typescript
Task (challenging): In BaseSetter, add optional prop `visible`
  - a SetterMaybeExpression with ExpressionValue constrained to boolean and FormValue depends on BaseSetter's FormValue.
FormSchema needs to pass FormValue to the Setter to populate the visible property of BaseSetter, and omitting the Setter will not cause errors.