# `GeminiCliSdk.Types`
[🔗](https://github.com/nshkrdotcom/gemini_cli_sdk/blob/v0.2.0/lib/gemini_cli_sdk/types.ex#L1)

Type definitions and stream event parsing for the Gemini CLI SDK.

# `stream_event`

```elixir
@type stream_event() ::
  GeminiCliSdk.Types.InitEvent.t()
  | GeminiCliSdk.Types.MessageEvent.t()
  | GeminiCliSdk.Types.ToolUseEvent.t()
  | GeminiCliSdk.Types.ToolResultEvent.t()
  | GeminiCliSdk.Types.ErrorEvent.t()
  | GeminiCliSdk.Types.ResultEvent.t()
```

# `final_event?`

```elixir
@spec final_event?(stream_event()) :: boolean()
```

# `parse_event`

```elixir
@spec parse_event(String.t()) ::
  {:ok, stream_event()} | {:error, GeminiCliSdk.Error.t()}
```

---

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