I know plugins can define dependencies but is it possible to define a dependency where a plugin won't enable if another plugin is installed and active?
Nope. You could put some detection logic in the setup or enable methods, returning an error message to prevent activation (docs coming soon.) Feel free to create an issue and I'll consider putting it in, needs more thought though.
Thanks, Ill create an issue.