# `Selecto.Advanced.CaseExpression.Spec`

Specification for CASE expression definitions.

# `case_type`

```elixir
@type case_type() :: :simple | :searched
```

# `t`

```elixir
@type t() :: %Selecto.Advanced.CaseExpression.Spec{
  alias: String.t() | nil,
  column: String.t() | nil,
  else_clause: any() | nil,
  id: String.t(),
  type: case_type(),
  validated: boolean(),
  when_clauses: [when_clause()]
}
```

# `when_clause`

```elixir
@type when_clause() :: {any(), any()} | {[{String.t(), any()}], any()}
```

---

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