import * as tsplus_module_1 from "@effect/core/stm/TMap/operations/takeSome";
import { concreteTSet } from "@effect/core/stm/TSet/operations/_internal/InternalTSet";
/**
 * Takes all matching values, or retries until there is at least one.
 *
 * @tsplus fluent ets/TSet takeSome
 */

export function takeSome_(self, pf) {
  void 0;
  return tsplus_module_1.takeSome_(self.tmap, kv => pf(kv.get(0)));
}
/**
 * Takes all matching values, or retries until there is at least one.
 *
 * @tsplus static ets/TSet/Aspects takeSome
 */

export const takeSome = pf => self => takeSome_(self, pf);
//# sourceMappingURL=takeSome.mjs.map