--- /dev/null
+package org.simantics.fileimport;\r
+\r
+import java.nio.file.Path;\r
+import java.util.Map;\r
+import java.util.Optional;\r
+\r
+/**\r
+ * @author Jani Simomaa\r
+ *\r
+ */\r
+public interface IGenericFileImport {\r
+\r
+ /**\r
+ * Performs the import procedure for the given file\r
+ * \r
+ * @param file\r
+ * file to import\r
+ */\r
+ Optional<String> perform(Path file) throws Exception;\r
+\r
+ /**\r
+ * @param resource\r
+ */\r
+ void remove(String resource) throws Exception;\r
+ \r
+ /**\r
+ * Returns a key-value map for file extensions this importer can handle\r
+ * \r
+ * @return\r
+ */\r
+ Map<String, String> allowedExtensionsWithFilters();\r
+\r
+}\r