Internal types used to represent Elm Html in pure Elm
Text tags just contain text
A node contains the tag as a string, the children, the facts (e.g attributes) and descendantsCount
Custom nodes contain facts (e.g attributes) and a json value for the model
A markdown node contains facts (e.g attributes) and the model used by markdown
Facts contain various dictionaries and values for a node
decode a json object into ElmHtml
Just empty facts
Type tree for representing Elm's Html