Defines the type model for go-away - a set of structs that describe types and can be used to generate copies of them in other languages.
A type alias (e.g.
type SomeType = HashMap<String, String>;)
An enum - note that in go-away these do not contain data.
An enum variant - note that these are just names and are serialized as strings.
A field within a struct
A newtype struct (e.g.
A reference to a given named type
A union type - any rust enum that’s variants contain data.
A variant of a union type