Added typed json parser and component base