Determines the order to lay children out vertically and how to interpret
end in the vertical direction.
If the direction is Axis.horizontal, this controls the order in which runs are positioned, the meaning of the runAlignment property's WrapAlignment.start and WrapAlignment.end values, as well as the crossAxisAlignment property's WrapCrossAlignment.start and WrapCrossAlignment.end values.
If the direction is Axis.horizontal, and either the runAlignment is either WrapAlignment.start or WrapAlignment.end, the crossAxisAlignment is either WrapCrossAlignment.start or WrapCrossAlignment.end, or there's more than one child, then the verticalDirection must not be null.
final VerticalDirection verticalDirection;