I'm writing a plugin for a home automation app. The plugin is a dll, and I define a register function that is called with a parameter that is an object I can use to call functions in the parent app. I'm trying to figure out how to define this object so I don't have to do late binding. Basically I want to define a class that has all the interfaces, but doesn't implement them, then assign the object I'm passed to that class and be able to call the interfaces without late binding. Can this be done?