25 lines
1018 B
TypeScript
25 lines
1018 B
TypeScript
/**
|
|
* Finds the first element in a Set for which the predicate function returns true.
|
|
*
|
|
* This function iterates through the elements of the Set and returns the first
|
|
* element for which the predicate function returns true. If no element satisfies the predicate,
|
|
* it returns undefined.
|
|
*
|
|
* @template T - The type of elements in the Set.
|
|
* @param {Set<T>} set - The Set to search.
|
|
* @param {(value: T, value2: T, set: Set<T>) => boolean} doesMatch - A predicate function that tests each element.
|
|
* @returns {T | undefined} The first element that satisfies the predicate, or undefined if none found.
|
|
*
|
|
* @example
|
|
* const set = new Set([
|
|
* { name: 'apple', quantity: 10 },
|
|
* { name: 'banana', quantity: 5 },
|
|
* { name: 'grape', quantity: 15 }
|
|
* ]);
|
|
* const result = find(set, (value) => value.quantity > 10);
|
|
* // result will be: { name: 'grape', quantity: 15 }
|
|
*/
|
|
declare function find<T>(set: Set<T>, doesMatch: (value: T, value2: T, set: Set<T>) => boolean): T | undefined;
|
|
|
|
export { find };
|