How to add "Add Component" like field in custom inspector?

I want to select a component type from inspector and would be looking for adding something selecting your component. Ideally it would also have the support for base classes unlike this field.
I just want to know a type that would be selected in inspector. I do not need an instance of an object.

I am aware it could be done using string and checking if the component exists or just defining a list of custom enums but I am hoping for a more clean method.

Are you looking for a way to add your own components to that menu? To do that, you can add them like this:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[AddComponentMenu("Aaron Assets/Destroyable")]
public class Destroyable : MonoBehaviour

    void OnCollisionEnter(Collision col)
        if (col.gameObject.tag == "projectile")