import type { Eq } from "@principia/prelude/Eq";
import type { Separated } from "@principia/prelude/Utils";
import type { Either } from "../Either";
import { identity } from "../Function";
import type { Option } from "../Option";
import { mapOption } from "./filterable";
import { elem } from "./guards";
/*
* -------------------------------------------
* Compactable Set
* -------------------------------------------
*/
export const compact = (E: Eq): ((fa: ReadonlySet