How does \Magento\Framework\Data\Form\Element\Fieldset::addField() work?

As you can see, a form element should be an instance of the \Magento\Framework\Data\Form\Element\AbstractElement class.

For the standard elements you can use a short string name.
Magento 2 standard form field types

You can also define some element names for a particular form:

See also What means «type» attribute for a backend configuration’s form field?