JSON Deserialization in RhinoCommon

Exactly. I can write a thing that repeatedly tries to deserialize it to a bunch of diff geometry (is it a curve? is it a brep? is it a mesh? etc) but it seems like there must be a more elegant way.