# `OpenUI.JSON.Object`
[🔗](https://github.com/ideia4it/openui/blob/v0.1.1/lib/openui/json/object.ex#L1)

A JSON object that keeps the order of its keys.

A LibrarySpec gives meaning to key order: the keys of a component's
`properties` are its positional arguments. Elixir maps do not keep order, so
`OpenUI.JSON.decode/1` returns objects as this struct.

# `t`

```elixir
@type t() :: %OpenUI.JSON.Object{pairs: [{String.t(), term()}]}
```

# `get`

```elixir
@spec get(t(), String.t(), term()) :: term()
```

Returns the value of `key`, or `default` when the object has no such key.

# `keys`

```elixir
@spec keys(t()) :: [String.t()]
```

Returns the keys in their order.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
