fix dependency on ExtensionInterface over implementation