circularr
Version:
Circular fixed size array
17 lines (16 loc) • 503 B
TypeScript
export default class Circularr<T> {
private _data;
private _index;
static from<T>(source: T[]): Circularr<T>;
constructor(length: number);
[Symbol.iterator](): Generator<T, void, unknown>;
get length(): number;
fill(value: T): this;
clear(): this;
shift(value: T): T;
unshift(value: T): T;
slice(startIndex?: number, endIndex?: number): Circularr<T>;
trim(): Circularr<T>;
at(index: number): T | undefined;
wrapAt(index: number): T | undefined;
}