/** * @copyright Sister Software * @license AGPL-3.0 * @author Teffen Ellis, et al. */ /** * A set-like collection that maintains the order of its elements. */ export declare class Sequence extends Set { #private; /** * The first node in the sequence. */ get first(): T | null; /** * The last node in the sequence. */ get last(): T | null; constructor(nodes?: T[]); /** * Clear the sequence. */ clear(): void; /** * Add a node to the sequence. */ add(...nodes: T[]): this; /** * Delete a node from the sequence. */ delete(node: T): boolean; /** * Sort the sequence in place. */ sort(callback: (a: T, b: T) => number): this; /** * Serialize the sequence to JSON. */ toJSON(): T[]; /** * Given a property key of the items in the sequence, return an iterator of the values of that property. * * This is useful when building nested maps of properties. */ pluck

(property: P): IteratorObject; toString(): string; } export declare function disposeOf(set: Pick, "clear" | typeof Symbol.iterator>): void; /** * A set that cleans up its elements when disposed. */ export declare class DisposableSet extends Set implements Disposable { [Symbol.dispose](): void; } /** * A set that asynchronously cleans up its elements when disposed. */ export declare class AsyncDisposableSet extends Set implements AsyncDisposable { [Symbol.asyncDispose](): Promise; } //# sourceMappingURL=set.d.ts.map