/** * @module * * MeekSet data collection. */ /** * Like WeakSet. * * @template T Value type. */ export declare class MeekSet { /** * Type string. */ readonly [Symbol.toStringTag]: string; /** * Create a new MeekSet. * * @param iterable Initial values. */ constructor(iterable?: Iterable | null); /** * Iterator for values in this set. * * @returns Set iterator. */ [Symbol.iterator](): SetIterator; /** * Add a value to this set. * * @param value Value to add. * @returns This set. */ add(value: T): this; /** * Clear this set. */ clear(): void; /** * Delete a value from this set. * * @param value Value to delete. * @returns Whether the value was deleted. */ delete(value: T): boolean; /** * New MeekSet containing the values in this set not in other set. * * @param other Other set. * @returns New MeekSet. */ difference(other: ReadonlySetLike): MeekSet; /** * Iterator for key-value pairs in this set. * * @returns Key-value iterator. */ entries(): SetIterator<[T, T]>; /** * Call a function for each value in this set. * * @param callbackfn Callback function. * @param thisArg This argument. */ forEach(callbackfn: (value: T, value2: T, set: MeekSet) => void, thisArg?: any): void; /** * Has a value in this set. * * @param value Value to check. * @returns Whether the value is in this set. */ has(value: T): boolean; /** * New MeekSet containing the values in both sets. * * @param other Other set. * @returns New MeekSet. */ intersection(other: ReadonlySetLike): MeekSet; /** * Is every value in this set not in other set. * * @param other Other set. * @returns Whether every value in this set is not in other set. */ isDisjointFrom(other: ReadonlySetLike): boolean; /** * Is every value in this set in other set. * * @param other Other set. * @returns Whether every value in this set is in other set. */ isSubsetOf(other: ReadonlySetLike): boolean; /** * Is every value in other set in this set. * * @param other Other set. * @returns Whether every value in other set is in this set. */ isSupersetOf(other: ReadonlySetLike): boolean; /** * Iterator for keys in this set. * * @returns Key iterator. */ keys(): SetIterator; /** * The number of values in this set. * Can be greater than number of active keys. */ get size(): number; /** * New MeekSet containing the values in either set but not both. * * @param other Other set. * @returns New MeekSet. */ symmetricDifference(other: ReadonlySetLike): MeekSet; /** * New MeekSet containing all values from both sets. * * @param other Other set. * @returns New MeekSet. */ union(other: ReadonlySetLike): MeekSet; /** * Iterator for values in this set. * * @returns Value iterator. */ values(): SetIterator; } /** * Readonly MeekSet. * * @template T Value type. */ export type ReadonlyMeekSet = Omit, 'add' | 'clear' | 'delete'>; //# sourceMappingURL=set.d.ts.map