# `MishkaGervaz.Table.Entities.FilterGroup`
[🔗](https://github.com/mishka-group/mishka_gervaz/blob/v0.0.1-alpha.3/lib/mishka_gervaz/table/entities/filter_group.ex#L1)

Entity struct for table filter group configuration.

Groups organize filters into collapsible sections within the filter layout.
Follows the same pattern as `MishkaGervaz.Form.Entities.Group`.

## Example

    filter_groups do
      group :primary do
        filters [:search]
        collapsible false
      end

      group :advanced do
        filters [:status, :issue_type, :site_id]
        collapsible true
        collapsed true
        columns 3

        ui do
          label fn -> dgettext("mishka_gervaz", "Advanced Search") end
          icon "hero-funnel"
        end
      end
    end

See `MishkaGervaz.Table.Dsl.FilterGroups`,
`MishkaGervaz.Table.Entities.FilterGroup.Ui`,
`MishkaGervaz.Table.Entities.Filter`, and
`MishkaGervaz.Form.Entities.Group` (the form-side counterpart).

# `t`

```elixir
@type t() :: %MishkaGervaz.Table.Entities.FilterGroup{
  __identifier__: term(),
  __spark_metadata__: map() | nil,
  collapsed: boolean(),
  collapsible: boolean(),
  columns: 1 | 2 | 3 | 4 | 5 | 6 | nil,
  filters: [atom()],
  name: atom(),
  position: integer() | :first | :last | nil,
  restricted: boolean() | (map() -&gt; boolean()),
  ui: MishkaGervaz.Table.Entities.FilterGroup.Ui.t() | nil,
  visible: boolean() | (map() -&gt; boolean())
}
```

# `transform`

Transform the group after DSL compilation.

---

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