I'm trying to make an API for random stuff that I might find useful in future plugins. I have my abstract interface, class implementing abstract interface, and all of the things set up in both. In the abstract interface, I have the methods without a body, however they are the exact same . I also have a class which is not implementing the abstract interface. Do I define them in the class not implementing AI or the class implementing AI? Thanks. If this is too confusing to understand, I'm happy to give code examples.