UNPKG

@sanity/desk-tool

Version:

Tool for managing all sorts of content in a structured manner

25 lines 756 B
export declare type Merger<T> = (left: T, right: T) => T | [T, T]; /** * The two ended array supports pushing both at the beginning and * at the end while preserving indicies. */ export declare class TwoEndedArray<T extends { index: number; }> { private _postive; private _negative; addToEnd(elem: T): void; addToBeginning(elem: T): void; mergeAtEnd(value: T, merger: Merger<T>): void; mergeAtBeginning(value: T, merger: Merger<T>): void; removeFromEnd(): void; has(idx: number): boolean; get(idx: number): T; set(idx: number, value: T): void; get lastIdx(): number; get last(): T; get firstIdx(): number; get first(): T; get length(): number; } //# sourceMappingURL=TwoEndedArray.d.ts.map