Restoring PluginInterface away from Promises