package ds

type Queue[T any] interface {
	Addable[T]
	Sized
	Clearable

	Enqueue(value T)
	Dequeue() T

	Peek() T
	PeekAt(index int) T
}