Take a look at the "xf_content_type_field" table.
The xf_content_type.fields field contains a serialized array of all the available fields for a particular addon.
As a developer, there are various handlers available to you: Like, Search, Alert, Attachment, News Feed, Abuse Reporting, Spam Cleaner, etc. A total of 10 handlers in all. You can add each of these features for your content type by implementing a handler class for it.
Whatever class you create as a handler, you need to add its name to the xf_content_type_field table, and rebuild the fields cache. This would update the serialized info in the xf_content_type table.