package com.l7tech.policy.assertion;

import com.l7tech.objectmodel.Entity;
import com.l7tech.objectmodel.EntityHeader;
import com.l7tech.objectmodel.FindException;
import com.l7tech.util.Functions.BinaryVoid;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;

public interface UsesEntitiesAtDesignTime extends UsesEntities {
   EntityHeader[] getEntitiesUsedAtDesignTime();

   boolean needsProvideEntity(@NotNull EntityHeader var1);

   void provideEntity(@NotNull EntityHeader var1, @NotNull Entity var2);

   @Nullable
   BinaryVoid<EntityHeader, FindException> getProvideEntitiesErrorHandler();
}
