I think, it can be very interesting to have the possibility to extend the tables (I compare them as classes in OOP).
I'm impinging to have a kind of super table (super class) , and the other tables that need to inherit the attributes (sub-classes) are linked to the super table through a settings inside the "table settings".
For example, I have 8 different tables inside my app that have 10 attributes in common.
It is a pity to have these 10 columns 8 times.
This can be useful in many ways: performance, KPIs on the common data, Reusability and so reliability, reducing the "code" necessary to manage the things..
If someone doesn't know about OOP and inheritance -> https://en.wikipedia.org/wiki/Inheritance_(object-oriented_programming)