// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.blackboard.view;

import java.util.function.Consumer;
import com.hypixel.hytale.math.vector.Vector3d;
import com.hypixel.hytale.component.ComponentAccessor;
import com.hypixel.hytale.server.npc.blackboard.Blackboard;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.component.Ref;

public interface IBlackboardViewManager<View extends IBlackboardView<View>>
{
    View get(final Ref<EntityStore> p0, final Blackboard p1, final ComponentAccessor<EntityStore> p2);
    
    View get(final Vector3d p0, final Blackboard p1);
    
    View get(final int p0, final int p1, final Blackboard p2);
    
    View get(final long p0, final Blackboard p1);
    
    View getIfExists(final long p0);
    
    void cleanup();
    
    void onWorldRemoved();
    
    void forEachView(final Consumer<View> p0);
    
    void clear();
}
