Object.Property
type ('M, 'T) key =
| Literal of 'M * 'M Literal.t
| Identifier of ('M, 'T) Identifier.t
| Computed of ('M, 'T) ComputedKey.t
and ('M, 'T) t = 'M * ('M, 'T) t'
and ('M, 'T) t' = {
key : ('M, 'T) key;
pattern : ('M, 'T) Pattern.t;
default : ('M, 'T) Expression.t option;
shorthand : bool;
}