You can subclass Gtk.Widget not builtin to behave like AGS widgets.
Custom Subclassing
Usually in GTK custom widgets are achieved by subclassing.
The idea behind AGS is to use functions that create widgets
and utilize closures.
This approach comes with the limitation that parameters passed to these
functions are that, just parameters and not GObject properties.
If you still want to subclass, you can do so by subclassing
a Gtk.WIdget and registering it Widget.register.
You can now construct it like any other Gtk.Widget with the new keyword.