The Variable Group builder takes care of generating a pattern that we often see in dashboards: when you have e.g 3 variables A, B and C, it’s quite common to “bind” them together so that B depends on A, and C depends on B + A.
Technically the array could contain any kind of object, still it is meant to receive variables builder entries that are going to do something with the dependencies appended by the Variable Group builder. You can also pass to it variables for which the notion of dependencies don’t/can’t apply (like text variables or static lists) but that will still be used as dependencies for the following variables.