export class Queue { constructor(elements?: T[]); isEmpty(): boolean; size(): number; enqueue(element: T): Queue; push(element: T): Queue; dequeue(): T | null; pop(): T | null; front(): T | null; back(): T | null; contains(elementOrCallback: T | ((element: T) => boolean)): boolean; toArray(): T[]; clear(): void; clone(): Queue; static fromArray(elements: T[]): Queue; }