--- /dev/null
+Forum.Models.Post
+ +glyphs <Array<String>>
+ -id <UUID>
+ -created_at <Date>
+ -parent_id <UUID>
+ -text <String>
+ -author <Author>
+ // Comments are also
+ // Allowed in the middle
+ ~>textUpdated(text <String>)
+ ->authorUpdated(author <Author>)
+ <~textWillUpdate(text <String>)
+ <-postWillRender(post <Forum.Models.Post>)
+ +>authorUpdated(author <Author>)
+ <+textWillUpdate(text <String>)
+ ::getAll(parent_id <UUID>) => Promise<Array<Forum.Models.Post>> #> NotFoundError,DisplayError
+ ::get(id <UUID>) => Promise<Forum.Models.Post>
+ #update(text <String>) => Promise<void>
+ #transform([transformer] <Function<T>(T) => boolean>)