# `CorvoNfse.Types.Common`
[🔗](https://github.com/corvo-technology/corvo-nfse-elixir/blob/main/lib/corvo_nfse/types/common.ex#L1)

Shared wire types.

## Envelopes

Every JSON success is `{data: ...}`. Lists add a pagination object:

    {data: T[], pagination: {limit, hasMore, nextCursor}}

`nextCursor` is an opaque base64url cursor and is `null` when `hasMore` is
`false`. Server field names are never re-cased.

## Maps vs structs

The SDK returns plain maps with **string keys** exactly as the server sent
them; response structs such as `CorvoNfse.Types.Company` mirror the same
fields for documentation, construction and typed wrappers.

# `environment`

```elixir
@type environment() :: String.t()
```

# `page`

```elixir
@type page() :: %{data: [map()], pagination: pagination() | nil}
```

A list page as returned by every `list`/`iterate` operation.

# `pagination`

```elixir
@type pagination() :: %{optional(String.t()) =&gt; term()}
```

---

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