Index: node_modules/es-toolkit/dist/set/countBy.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/countBy.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/countBy.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,26 @@
+/**
+ * Counts the occurrences of items in a Set based on a transformation function.
+ *
+ * This function takes a Set and a function that generates a key from each value.
+ * It returns a Map with the generated keys and their counts as values.
+ * The count is incremented for each element for which the transformation produces the same key.
+ *
+ * @template T - The type of elements in the Set.
+ * @template K - The type of keys produced by the transformation function.
+ * @param {Set<T>} set - The Set to count occurrences from.
+ * @param {(value: T, value2: T, set: Set<T>) => K} mapper - The function to produce a key for counting.
+ * @returns {Map<K, number>} A Map containing the mapped keys and their counts.
+ *
+ * @example
+ * const set = new Set([1, 2, 3, 4, 5]);
+ * const result = countBy(set, (value) => value % 2 === 0 ? 'even' : 'odd');
+ * // result will be Map(2) { 'odd' => 3, 'even' => 2 }
+ *
+ * @example
+ * const set = new Set(['apple', 'banana', 'cherry']);
+ * const result = countBy(set, (value) => value.length);
+ * // result will be Map(2) { 5 => 1, 6 => 2 }
+ */
+declare function countBy<T, K>(set: Set<T>, mapper: (value: T, value2: T, set: Set<T>) => K): Map<K, number>;
+
+export { countBy };
Index: node_modules/es-toolkit/dist/set/countBy.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/countBy.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/countBy.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,26 @@
+/**
+ * Counts the occurrences of items in a Set based on a transformation function.
+ *
+ * This function takes a Set and a function that generates a key from each value.
+ * It returns a Map with the generated keys and their counts as values.
+ * The count is incremented for each element for which the transformation produces the same key.
+ *
+ * @template T - The type of elements in the Set.
+ * @template K - The type of keys produced by the transformation function.
+ * @param {Set<T>} set - The Set to count occurrences from.
+ * @param {(value: T, value2: T, set: Set<T>) => K} mapper - The function to produce a key for counting.
+ * @returns {Map<K, number>} A Map containing the mapped keys and their counts.
+ *
+ * @example
+ * const set = new Set([1, 2, 3, 4, 5]);
+ * const result = countBy(set, (value) => value % 2 === 0 ? 'even' : 'odd');
+ * // result will be Map(2) { 'odd' => 3, 'even' => 2 }
+ *
+ * @example
+ * const set = new Set(['apple', 'banana', 'cherry']);
+ * const result = countBy(set, (value) => value.length);
+ * // result will be Map(2) { 5 => 1, 6 => 2 }
+ */
+declare function countBy<T, K>(set: Set<T>, mapper: (value: T, value2: T, set: Set<T>) => K): Map<K, number>;
+
+export { countBy };
Index: node_modules/es-toolkit/dist/set/countBy.js
===================================================================
--- node_modules/es-toolkit/dist/set/countBy.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/countBy.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function countBy(set, mapper) {
+    const result = new Map();
+    for (const value of set) {
+        const mappedKey = mapper(value, value, set);
+        result.set(mappedKey, (result.get(mappedKey) ?? 0) + 1);
+    }
+    return result;
+}
+
+exports.countBy = countBy;
Index: node_modules/es-toolkit/dist/set/countBy.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/countBy.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/countBy.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function countBy(set, mapper) {
+    const result = new Map();
+    for (const value of set) {
+        const mappedKey = mapper(value, value, set);
+        result.set(mappedKey, (result.get(mappedKey) ?? 0) + 1);
+    }
+    return result;
+}
+
+export { countBy };
Index: node_modules/es-toolkit/dist/set/every.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/every.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/every.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,23 @@
+/**
+ * Tests whether all elements in a Set satisfy the provided predicate function.
+ *
+ * This function iterates through all elements of the Set and checks if the predicate function
+ * returns true for every element. It returns true if the predicate is satisfied for all elements,
+ * and false otherwise.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to test.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} doesMatch - A predicate function that tests each element.
+ * @returns {boolean} true if all elements satisfy the predicate, false otherwise.
+ *
+ * @example
+ * const set = new Set([10, 20, 30]);
+ * const result = every(set, (value) => value > 5);
+ * // result will be: true
+ *
+ * const result2 = every(set, (value) => value > 15);
+ * // result2 will be: false
+ */
+declare function every<T>(set: Set<T>, doesMatch: (value: T, value2: T, set: Set<T>) => boolean): boolean;
+
+export { every };
Index: node_modules/es-toolkit/dist/set/every.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/every.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/every.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,23 @@
+/**
+ * Tests whether all elements in a Set satisfy the provided predicate function.
+ *
+ * This function iterates through all elements of the Set and checks if the predicate function
+ * returns true for every element. It returns true if the predicate is satisfied for all elements,
+ * and false otherwise.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to test.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} doesMatch - A predicate function that tests each element.
+ * @returns {boolean} true if all elements satisfy the predicate, false otherwise.
+ *
+ * @example
+ * const set = new Set([10, 20, 30]);
+ * const result = every(set, (value) => value > 5);
+ * // result will be: true
+ *
+ * const result2 = every(set, (value) => value > 15);
+ * // result2 will be: false
+ */
+declare function every<T>(set: Set<T>, doesMatch: (value: T, value2: T, set: Set<T>) => boolean): boolean;
+
+export { every };
Index: node_modules/es-toolkit/dist/set/every.js
===================================================================
--- node_modules/es-toolkit/dist/set/every.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/every.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function every(set, doesMatch) {
+    for (const value of set) {
+        if (!doesMatch(value, value, set)) {
+            return false;
+        }
+    }
+    return true;
+}
+
+exports.every = every;
Index: node_modules/es-toolkit/dist/set/every.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/every.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/every.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function every(set, doesMatch) {
+    for (const value of set) {
+        if (!doesMatch(value, value, set)) {
+            return false;
+        }
+    }
+    return true;
+}
+
+export { every };
Index: node_modules/es-toolkit/dist/set/filter.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/filter.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/filter.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,20 @@
+/**
+ * Filters a Set based on a predicate function.
+ *
+ * This function takes a Set and a predicate function, and returns a new Set containing
+ * only the elements for which the predicate function returns true.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to filter.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} callback - A predicate function that tests each element.
+ * @returns {Set<T>} A new Set containing only the elements that satisfy the predicate.
+ *
+ * @example
+ * const set = new Set([1, 2, 3, 4, 5]);
+ * const result = filter(set, (value) => value > 2);
+ * // result will be:
+ * // Set(3) { 3, 4, 5 }
+ */
+declare function filter<T>(set: Set<T>, callback: (value: T, value2: T, set: Set<T>) => boolean): Set<T>;
+
+export { filter };
Index: node_modules/es-toolkit/dist/set/filter.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/filter.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/filter.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,20 @@
+/**
+ * Filters a Set based on a predicate function.
+ *
+ * This function takes a Set and a predicate function, and returns a new Set containing
+ * only the elements for which the predicate function returns true.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to filter.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} callback - A predicate function that tests each element.
+ * @returns {Set<T>} A new Set containing only the elements that satisfy the predicate.
+ *
+ * @example
+ * const set = new Set([1, 2, 3, 4, 5]);
+ * const result = filter(set, (value) => value > 2);
+ * // result will be:
+ * // Set(3) { 3, 4, 5 }
+ */
+declare function filter<T>(set: Set<T>, callback: (value: T, value2: T, set: Set<T>) => boolean): Set<T>;
+
+export { filter };
Index: node_modules/es-toolkit/dist/set/filter.js
===================================================================
--- node_modules/es-toolkit/dist/set/filter.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/filter.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,15 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function filter(set, callback) {
+    const result = new Set();
+    for (const value of set) {
+        if (callback(value, value, set)) {
+            result.add(value);
+        }
+    }
+    return result;
+}
+
+exports.filter = filter;
Index: node_modules/es-toolkit/dist/set/filter.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/filter.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/filter.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,11 @@
+function filter(set, callback) {
+    const result = new Set();
+    for (const value of set) {
+        if (callback(value, value, set)) {
+            result.add(value);
+        }
+    }
+    return result;
+}
+
+export { filter };
Index: node_modules/es-toolkit/dist/set/find.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/find.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/find.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,24 @@
+/**
+ * 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 };
Index: node_modules/es-toolkit/dist/set/find.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/find.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/find.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,24 @@
+/**
+ * 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 };
Index: node_modules/es-toolkit/dist/set/find.js
===================================================================
--- node_modules/es-toolkit/dist/set/find.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/find.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function find(set, doesMatch) {
+    for (const value of set) {
+        if (doesMatch(value, value, set)) {
+            return value;
+        }
+    }
+    return undefined;
+}
+
+exports.find = find;
Index: node_modules/es-toolkit/dist/set/find.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/find.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/find.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function find(set, doesMatch) {
+    for (const value of set) {
+        if (doesMatch(value, value, set)) {
+            return value;
+        }
+    }
+    return undefined;
+}
+
+export { find };
Index: node_modules/es-toolkit/dist/set/index.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/index.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/index.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,8 @@
+export { countBy } from './countBy.mjs';
+export { every } from './every.mjs';
+export { filter } from './filter.mjs';
+export { find } from './find.mjs';
+export { keyBy } from './keyBy.mjs';
+export { map } from './map.mjs';
+export { reduce } from './reduce.mjs';
+export { some } from './some.mjs';
Index: node_modules/es-toolkit/dist/set/index.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/index.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/index.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,8 @@
+export { countBy } from './countBy.js';
+export { every } from './every.js';
+export { filter } from './filter.js';
+export { find } from './find.js';
+export { keyBy } from './keyBy.js';
+export { map } from './map.js';
+export { reduce } from './reduce.js';
+export { some } from './some.js';
Index: node_modules/es-toolkit/dist/set/index.js
===================================================================
--- node_modules/es-toolkit/dist/set/index.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/index.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,23 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+const countBy = require('./countBy.js');
+const every = require('./every.js');
+const filter = require('./filter.js');
+const find = require('./find.js');
+const keyBy = require('./keyBy.js');
+const map = require('./map.js');
+const reduce = require('./reduce.js');
+const some = require('./some.js');
+
+
+
+exports.countBy = countBy.countBy;
+exports.every = every.every;
+exports.filter = filter.filter;
+exports.find = find.find;
+exports.keyBy = keyBy.keyBy;
+exports.map = map.map;
+exports.reduce = reduce.reduce;
+exports.some = some.some;
Index: node_modules/es-toolkit/dist/set/index.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/index.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/index.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,8 @@
+export { countBy } from './countBy.mjs';
+export { every } from './every.mjs';
+export { filter } from './filter.mjs';
+export { find } from './find.mjs';
+export { keyBy } from './keyBy.mjs';
+export { map } from './map.mjs';
+export { reduce } from './reduce.mjs';
+export { some } from './some.mjs';
Index: node_modules/es-toolkit/dist/set/keyBy.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/keyBy.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/keyBy.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,30 @@
+/**
+ * Maps each element of a Set based on a provided key-generating function.
+ *
+ * This function takes a Set and a function that generates a key from each value.
+ * It returns a new Map where the keys are generated by the key function and the values are
+ * the corresponding values from the original set. If multiple elements produce the same key,
+ * the last value encountered will be used.
+ *
+ * @template T - The type of elements in the Set.
+ * @template K - The type of keys to produce in the returned Map.
+ * @param {Set<T>} set - The set of elements to be mapped.
+ * @param {(value: T, value2: T, set: Set<T>) => K} getKeyFromValue - A function that generates a key from a value.
+ * @returns {Map<K, T>} A Map where the generated keys are mapped to each element's value.
+ *
+ * @example
+ * const set = new Set([
+ *   { type: 'fruit', name: 'apple' },
+ *   { type: 'fruit', name: 'banana' },
+ *   { type: 'vegetable', name: 'carrot' }
+ * ]);
+ * const result = keyBy(set, item => item.type);
+ * // result will be:
+ * // Map(2) {
+ * //   'fruit' => { type: 'fruit', name: 'banana' },
+ * //   'vegetable' => { type: 'vegetable', name: 'carrot' }
+ * // }
+ */
+declare function keyBy<T, K>(set: Set<T>, getKeyFromValue: (value: T, value2: T, set: Set<T>) => K): Map<K, T>;
+
+export { keyBy };
Index: node_modules/es-toolkit/dist/set/keyBy.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/keyBy.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/keyBy.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,30 @@
+/**
+ * Maps each element of a Set based on a provided key-generating function.
+ *
+ * This function takes a Set and a function that generates a key from each value.
+ * It returns a new Map where the keys are generated by the key function and the values are
+ * the corresponding values from the original set. If multiple elements produce the same key,
+ * the last value encountered will be used.
+ *
+ * @template T - The type of elements in the Set.
+ * @template K - The type of keys to produce in the returned Map.
+ * @param {Set<T>} set - The set of elements to be mapped.
+ * @param {(value: T, value2: T, set: Set<T>) => K} getKeyFromValue - A function that generates a key from a value.
+ * @returns {Map<K, T>} A Map where the generated keys are mapped to each element's value.
+ *
+ * @example
+ * const set = new Set([
+ *   { type: 'fruit', name: 'apple' },
+ *   { type: 'fruit', name: 'banana' },
+ *   { type: 'vegetable', name: 'carrot' }
+ * ]);
+ * const result = keyBy(set, item => item.type);
+ * // result will be:
+ * // Map(2) {
+ * //   'fruit' => { type: 'fruit', name: 'banana' },
+ * //   'vegetable' => { type: 'vegetable', name: 'carrot' }
+ * // }
+ */
+declare function keyBy<T, K>(set: Set<T>, getKeyFromValue: (value: T, value2: T, set: Set<T>) => K): Map<K, T>;
+
+export { keyBy };
Index: node_modules/es-toolkit/dist/set/keyBy.js
===================================================================
--- node_modules/es-toolkit/dist/set/keyBy.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/keyBy.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function keyBy(set, getKeyFromValue) {
+    const result = new Map();
+    for (const value of set) {
+        const newKey = getKeyFromValue(value, value, set);
+        result.set(newKey, value);
+    }
+    return result;
+}
+
+exports.keyBy = keyBy;
Index: node_modules/es-toolkit/dist/set/keyBy.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/keyBy.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/keyBy.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function keyBy(set, getKeyFromValue) {
+    const result = new Map();
+    for (const value of set) {
+        const newKey = getKeyFromValue(value, value, set);
+        result.set(newKey, value);
+    }
+    return result;
+}
+
+export { keyBy };
Index: node_modules/es-toolkit/dist/set/map.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/map.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/map.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,21 @@
+/**
+ * Creates a new Set with elements transformed by the provided function.
+ *
+ * This function takes a Set and a function that generates a new value from each element.
+ * It returns a new Set where the elements are the result of applying the function to each element.
+ *
+ * @template T - The type of elements in the input Set.
+ * @template U - The type of elements in the output Set.
+ * @param {Set<T>} set - The Set to transform.
+ * @param {(value: T, value2: T, set: Set<T>) => U} getNewValue - A function that generates a new value from an element.
+ * @returns {Set<U>} A new Set with transformed elements.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = map(set, (value) => value * 2);
+ * // result will be:
+ * // Set(3) { 2, 4, 6 }
+ */
+declare function map<T, U>(set: Set<T>, getNewValue: (value: T, value2: T, set: Set<T>) => U): Set<U>;
+
+export { map };
Index: node_modules/es-toolkit/dist/set/map.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/map.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/map.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,21 @@
+/**
+ * Creates a new Set with elements transformed by the provided function.
+ *
+ * This function takes a Set and a function that generates a new value from each element.
+ * It returns a new Set where the elements are the result of applying the function to each element.
+ *
+ * @template T - The type of elements in the input Set.
+ * @template U - The type of elements in the output Set.
+ * @param {Set<T>} set - The Set to transform.
+ * @param {(value: T, value2: T, set: Set<T>) => U} getNewValue - A function that generates a new value from an element.
+ * @returns {Set<U>} A new Set with transformed elements.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = map(set, (value) => value * 2);
+ * // result will be:
+ * // Set(3) { 2, 4, 6 }
+ */
+declare function map<T, U>(set: Set<T>, getNewValue: (value: T, value2: T, set: Set<T>) => U): Set<U>;
+
+export { map };
Index: node_modules/es-toolkit/dist/set/map.js
===================================================================
--- node_modules/es-toolkit/dist/set/map.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/map.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function map(set, getNewValue) {
+    const result = new Set();
+    for (const value of set) {
+        const newValue = getNewValue(value, value, set);
+        result.add(newValue);
+    }
+    return result;
+}
+
+exports.map = map;
Index: node_modules/es-toolkit/dist/set/map.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/map.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/map.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function map(set, getNewValue) {
+    const result = new Set();
+    for (const value of set) {
+        const newValue = getNewValue(value, value, set);
+        result.add(newValue);
+    }
+    return result;
+}
+
+export { map };
Index: node_modules/es-toolkit/dist/set/reduce.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/reduce.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/reduce.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,28 @@
+/**
+ * Reduces a Set to a single value by iterating through its elements and applying a callback function.
+ *
+ * This function iterates through all elements of the Set and applies the callback function to each element,
+ * accumulating the result. If an initial value is provided, it is used as the starting accumulator value.
+ * If no initial value is provided and the Set is empty, a TypeError is thrown.
+ *
+ * @template T - The type of elements in the Set.
+ * @template A - The type of the accumulator.
+ * @param {Set<T>} set - The Set to reduce.
+ * @param {(accumulator: A, value: T, value2: T, set: Set<T>) => A} callback - A function that processes each element and updates the accumulator.
+ * @param {A} [initialValue] - The initial value for the accumulator. If not provided, the first element in the Set is used.
+ * @returns {A} The final accumulated value.
+ * @throws {TypeError} If the Set is empty and no initial value is provided.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = reduce(set, (acc, value) => acc + value, 0);
+ * // result will be: 6
+ *
+ * @example
+ * const set = new Set([10, 20]);
+ * const result = reduce(set, (acc, value) => acc + value);
+ * // result will be: 30 (starts with first value 10)
+ */
+declare function reduce<T, A = T>(set: Set<T>, callback: (accumulator: A, value: T, value2: T, set: Set<T>) => A, initialValue?: A): A;
+
+export { reduce };
Index: node_modules/es-toolkit/dist/set/reduce.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/reduce.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/reduce.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,28 @@
+/**
+ * Reduces a Set to a single value by iterating through its elements and applying a callback function.
+ *
+ * This function iterates through all elements of the Set and applies the callback function to each element,
+ * accumulating the result. If an initial value is provided, it is used as the starting accumulator value.
+ * If no initial value is provided and the Set is empty, a TypeError is thrown.
+ *
+ * @template T - The type of elements in the Set.
+ * @template A - The type of the accumulator.
+ * @param {Set<T>} set - The Set to reduce.
+ * @param {(accumulator: A, value: T, value2: T, set: Set<T>) => A} callback - A function that processes each element and updates the accumulator.
+ * @param {A} [initialValue] - The initial value for the accumulator. If not provided, the first element in the Set is used.
+ * @returns {A} The final accumulated value.
+ * @throws {TypeError} If the Set is empty and no initial value is provided.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = reduce(set, (acc, value) => acc + value, 0);
+ * // result will be: 6
+ *
+ * @example
+ * const set = new Set([10, 20]);
+ * const result = reduce(set, (acc, value) => acc + value);
+ * // result will be: 30 (starts with first value 10)
+ */
+declare function reduce<T, A = T>(set: Set<T>, callback: (accumulator: A, value: T, value2: T, set: Set<T>) => A, initialValue?: A): A;
+
+export { reduce };
Index: node_modules/es-toolkit/dist/set/reduce.js
===================================================================
--- node_modules/es-toolkit/dist/set/reduce.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/reduce.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,21 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function reduce(set, callback, initialValue) {
+    if (initialValue == null && set.size === 0) {
+        throw new TypeError('Reduce of empty set with no initial value');
+    }
+    let accumulator = initialValue;
+    for (const value of set) {
+        if (accumulator == null) {
+            accumulator = value;
+        }
+        else {
+            accumulator = callback(accumulator, value, value, set);
+        }
+    }
+    return accumulator;
+}
+
+exports.reduce = reduce;
Index: node_modules/es-toolkit/dist/set/reduce.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/reduce.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/reduce.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,17 @@
+function reduce(set, callback, initialValue) {
+    if (initialValue == null && set.size === 0) {
+        throw new TypeError('Reduce of empty set with no initial value');
+    }
+    let accumulator = initialValue;
+    for (const value of set) {
+        if (accumulator == null) {
+            accumulator = value;
+        }
+        else {
+            accumulator = callback(accumulator, value, value, set);
+        }
+    }
+    return accumulator;
+}
+
+export { reduce };
Index: node_modules/es-toolkit/dist/set/some.d.mts
===================================================================
--- node_modules/es-toolkit/dist/set/some.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/some.d.mts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,23 @@
+/**
+ * Tests whether at least one element in a Set satisfies the provided predicate function.
+ *
+ * This function iterates through the elements of the Set and checks if the predicate function
+ * returns true for at least one element. It returns true if any element satisfies the predicate,
+ * and false otherwise.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to test.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} doesMatch - A predicate function that tests each element.
+ * @returns {boolean} true if at least one element satisfies the predicate, false otherwise.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = some(set, (value) => value > 2);
+ * // result will be: true
+ *
+ * const result2 = some(set, (value) => value > 5);
+ * // result2 will be: false
+ */
+declare function some<T>(set: Set<T>, doesMatch: (value: T, value2: T, set: Set<T>) => boolean): boolean;
+
+export { some };
Index: node_modules/es-toolkit/dist/set/some.d.ts
===================================================================
--- node_modules/es-toolkit/dist/set/some.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/some.d.ts	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,23 @@
+/**
+ * Tests whether at least one element in a Set satisfies the provided predicate function.
+ *
+ * This function iterates through the elements of the Set and checks if the predicate function
+ * returns true for at least one element. It returns true if any element satisfies the predicate,
+ * and false otherwise.
+ *
+ * @template T - The type of elements in the Set.
+ * @param {Set<T>} set - The Set to test.
+ * @param {(value: T, value2: T, set: Set<T>) => boolean} doesMatch - A predicate function that tests each element.
+ * @returns {boolean} true if at least one element satisfies the predicate, false otherwise.
+ *
+ * @example
+ * const set = new Set([1, 2, 3]);
+ * const result = some(set, (value) => value > 2);
+ * // result will be: true
+ *
+ * const result2 = some(set, (value) => value > 5);
+ * // result2 will be: false
+ */
+declare function some<T>(set: Set<T>, doesMatch: (value: T, value2: T, set: Set<T>) => boolean): boolean;
+
+export { some };
Index: node_modules/es-toolkit/dist/set/some.js
===================================================================
--- node_modules/es-toolkit/dist/set/some.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/some.js	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,14 @@
+'use strict';
+
+Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
+
+function some(set, doesMatch) {
+    for (const value of set) {
+        if (doesMatch(value, value, set)) {
+            return true;
+        }
+    }
+    return false;
+}
+
+exports.some = some;
Index: node_modules/es-toolkit/dist/set/some.mjs
===================================================================
--- node_modules/es-toolkit/dist/set/some.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
+++ node_modules/es-toolkit/dist/set/some.mjs	(revision a762898ecd37a452c782821d4c2c4955c6ed2521)
@@ -0,0 +1,10 @@
+function some(set, doesMatch) {
+    for (const value of set) {
+        if (doesMatch(value, value, set)) {
+            return true;
+        }
+    }
+    return false;
+}
+
+export { some };
