package jetbrains.mps.internal.collections.runtime;
/*Generated by MPS */
import java.util.Queue;
import jetbrains.mps.baseLanguage.closures.runtime.AdapterClass;
import jetbrains.mps.baseLanguage.closures.runtime._FunctionTypes;
public interface IQueueSequence<T> extends ICollectionSequence<T>, Queue<T> {
T addLastElement(T t);
T removeFirstElement();
IQueueSequence<T> addSequence(ISequence<? extends T> seq);
IQueueSequence<T> removeSequence(ISequence<? extends T> seq);
IQueueSequence<T> removeWhere(@AdapterClass(value = "IWhereFilter") _FunctionTypes._return_P1_E0<? extends Boolean, ? super T> filter);
Queue<T> toQueue();
IQueueSequence<T> asUnmodifiable();
IQueueSequence<T> asSynchronized();
}