# Creating a Config Class

```java
@Config(name = "modid")
class ModConfig implements ConfigData {
    boolean toggleA = true;
    boolean toggleB = false;
    
    @ConfigEntry.Gui.CollapsibleObject
    InnerStuff stuff = new InnerStuff();
    
    @ConfigEntry.Gui.Excluded
    InnerStuff invisibleStuff = new InnerStuff();
    
    static class InnerStuff {
        int a = 0;
        int b = 1;
    }
}
```

{% hint style="success" %}
The Gui generator works with `boolean`, `int`, `long`, `double`, `float`, `String`, and `enum` types by default.
{% endhint %}

You can also use it with nested objects by adding the `@CollapsibleObject` annotation to the object's field. You can register your own providers if those default ones aren't sufficient for you.
