A field declared in a DSL option schema.
@type t() :: %DSL.Option{ default: term(), name: atom(), required?: boolean(), type: term(), values: [term()] | nil }