struct Recruiter { type: "Recruiter" Name: String emails: [3]?String recruiter: ?*Recruiter created: U64 } union GetSearchesFilter { SearchesByQueryLike: String SearchesByResultLike: String NoSearchesFilter } struct SearchesParameters { filters: []GetSearchesFilter } enum StillSize { w92 = "w92" w185 = "w185" w300 = "w300" h632 = "h632" original = "original" } struct LogInData { username: String password: String } struct UserId { value: String } struct Channel { name: String private: Boolean } struct Email { value: String } union Event { LogIn: LogInData LogOut: UserId JoinChannels: []Channel SetEmails: [5]Email } union Maybe { Nothing Just: T } union Either { Left: L Right: R } struct Person { name: String age: U8 efficiency: F32 on_vacation: Boolean hobbies: []String last_fifteen_comments: [15]String recruiter: Recruiter spouse: Maybe } union(embedded) EmbeddedEvent { EmbeddedLogIn: LogInData SystemImploded }