Hmm, yeah there seems to be inconsistencies around the object being passed around.
I personally would like to see typeKey strings being used for all public APIs.