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