can you please call this typeVersion and typeReference? i think the array syntax for this makes it confusing to read.