TODO: Can ViewDOM was be parameterized while keeping Shape unparameterized? This would allow us to avoid casting.
A runtime typesafe assertion that the element has the type required.
TODO: Can ViewDOM was be parameterized while keeping Shape unparameterized? This would allow us to avoid casting.