package com.l7tech.server.solutionkit;

import com.l7tech.gateway.common.solutionkit.SolutionKit;
import com.l7tech.gateway.common.solutionkit.SolutionKitHeader;
import com.l7tech.gateway.common.solutionkit.SolutionKitImportInfo;
import com.l7tech.objectmodel.EntityManager;
import com.l7tech.objectmodel.FindException;
import com.l7tech.objectmodel.Goid;
import com.l7tech.objectmodel.UpdateException;
import java.util.Collection;
import java.util.List;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

public interface SolutionKitManager extends EntityManager<SolutionKit, SolutionKitHeader> {
   @NotNull
   String importBundle(@NotNull String var1, @NotNull SolutionKit var2, boolean var3) throws Exception;

   @NotNull
   String importBundles(@NotNull SolutionKitImportInfo var1, boolean var2) throws Exception;

   List<SolutionKit> findBySolutionKitGuid(@NotNull String var1) throws FindException;

   SolutionKit findBySolutionKitNameAndIM(@NotNull String var1, @Nullable String var2) throws FindException;

   SolutionKit findBySolutionKitGuidAndIM(@NotNull String var1, @Nullable String var2) throws FindException;

   List<SolutionKitHeader> findAllChildrenHeadersByParentGoid(@NotNull Goid var1) throws FindException;

   @NotNull
   Collection<SolutionKit> findAllChildrenByParentGoid(@NotNull Goid var1) throws FindException;

   void decrementEntitiesVersionStamp(@NotNull Collection<String> var1, @NotNull Goid var2) throws UpdateException;
}
