# `TigerBeetlex.Types`
[🔗](https://github.com/rbino/tigerbeetlex/blob/0.16.78/lib/tigerbeetlex/types.ex#L1)

Common typespecs.

This module provides common types that can be used in any part of the TigerBeetlex library.

# `client`

```elixir
@type client() :: reference()
```

# `event_type`

```elixir
@type event_type() ::
  :single_phase
  | :two_phase_pending
  | :two_phase_posted
  | :two_phase_voided
  | :two_phase_expired
```

# `id_128`

```elixir
@type id_128() :: &lt;&lt;_::128&gt;&gt;
```

# `init_client_error`

```elixir
@type init_client_error() ::
  :unexpected
  | :out_of_memory
  | :invalid_address
  | :address_limit_exceeded
  | :system_resources
  | :network_subsystem
```

# `partition_supervisor_start_option`

```elixir
@type partition_supervisor_start_option() :: {atom(), any()}
```

# `request_error`

```elixir
@type request_error() :: :client_closed | :out_of_memory
```

# `start_option`

```elixir
@type start_option() ::
  tigerbeetlex_connection_start_option() | partition_supervisor_start_option()
```

# `start_options`

```elixir
@type start_options() :: [start_option()]
```

# `tigerbeetlex_connection_start_option`

```elixir
@type tigerbeetlex_connection_start_option() ::
  {:cluster_id, non_neg_integer()} | {:addresses, [String.t()]}
```

---

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