I believe the viewBox : Int -> Int -> Int -> Int -> Attribute msg type signature would be more intutive than viewBox : String -> Attribute msg.
Html.Attributes has adaptations like this, such as Html.Attributes.spellcheck, which uses the Bool -> Attribute msm signature instead of the traditional String -> Attribute msg.