Determines the order to lay children out vertically and how to interpret
end in the vertical direction.
Defaults to VerticalDirection.down.
If the direction is Axis.vertical, this controls which order children are painted in (down or up), the meaning of the mainAxisAlignment property's MainAxisAlignment.start and MainAxisAlignment.end values.
If the direction is Axis.vertical, and either the mainAxisAlignment is either MainAxisAlignment.start or MainAxisAlignment.end, or there's more than one child, then the verticalDirection must not be null.
If the direction is Axis.horizontal, this controls the meaning of the crossAxisAlignment property's CrossAxisAlignment.start and CrossAxisAlignment.end values.
If the direction is Axis.horizontal, and the crossAxisAlignment is either CrossAxisAlignment.start or CrossAxisAlignment.end, then the verticalDirection must not be null.
final VerticalDirection verticalDirection;