# Empty Object

{ }

==>

JsonText(Object)

# One Property

{
  "foo": 123
}

==>

JsonText(Object(Property(PropertyName(Quote,PropertyIdentifier,Quote),Number)))

# Multiple Properties

{
  "foo": 123,
  "bar": "I'm a bar!",
  "obj": {},
  "arr": [1, 2, 3]
}

==>

JsonText(Object(
  Property(PropertyName(Quote,PropertyIdentifier,Quote),Number),
  Property(PropertyName(Quote,PropertyIdentifier,Quote),String(Quote,StringValue,Quote)),
  Property(PropertyName(Quote,PropertyIdentifier,Quote),Object),
  Property(PropertyName(Quote,PropertyIdentifier,Quote),Array(Number,Number,Number))))
