A developer would need to write a new class for the new type of custom field.
For user profiles fields the current ones are in /user/profile/field/ or for totara hierarchy fields they are in /totara/customfield/field/.
There are a number of functions that need to be defined but it would be fairly straightforward for a developer to do it.
Simon