# `Minga.RenderModel.UI.ExtensionPanel.Panel`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga/render_model/ui/extension_panel/panel.ex#L1)

One extension-owned panel in the GUI extension panel model.

# `content_block`

```elixir
@type content_block() :: Minga.RenderModel.UI.ExtensionPanel.Content.t()
```

One normalized semantic content block in an extension panel.

# `position`

```elixir
@type position() :: :bottom | :right | :float
```

Panel placement in the GUI layout.

# `size`

```elixir
@type size() :: {:percent, 1..100} | {:lines, pos_integer()}
```

Panel size requested by the render model.

# `t`

```elixir
@type t() :: %Minga.RenderModel.UI.ExtensionPanel.Panel{
  content: [content_block()],
  extension: String.t(),
  panel_id: String.t(),
  position: position(),
  size: size(),
  title: String.t(),
  visible?: boolean()
}
```

---

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