Custom "Can't add due to conflicting component"

I would like to have a similar popup to the “Can’t add due to a conflicting component” you receive when trying to add a BoxCollider2D to a GameObject with a Rigidbody already attached or any similar scenario.

I was hoping there was a decorator for this but if there is I can’t find it. I’m guessing I would have to use a custom PropertyAttribute but there doesn’t seem to be any sort of addcomponent callback in place that could be used to trigger the check and accompanying message.

Any idea of where to root around for a solution?

You can perform the check and accompanying dialog message in the OnEnable of the component’s CustomEditor script.