Validation:
| ""
| "int"
| "float"
| "string"
| "path"
| "ip"
| "hostname"
| "url"
| "port"
| "email"
| "uuid"
| "bool"
| "date:YYYY-MM-DD"
| "file:exists"
| "file:readable"
| "file:writable"
| "dir:exists"
| "dir:writable"
| `int:${string}`
| `float:${string}`
| `string:${string}`
| `choice:${string}`
| `regex:${string}`
| "secret"
| `secret:${string}`
Validation rule. See spec/SPEC.md section 5. Template types give editor completion for the fixed rules while still accepting parameterized ones.