export declare class DeterministicSet<T> {
    private compareFn;
    private elements;
    constructor(compareFn: (a: T, b: T) => number);
    add(value: T): void;
    delete(value: T): boolean;
    has(value: T): boolean;
    clear(): void;
    forEach(callback: (value: T, set: DeterministicSet<T>) => void): void;
    static fromSet<T>(set: Set<T>, compareFn: (a: T, b: T) => number): DeterministicSet<T>;
    get size(): number;
    [Symbol.iterator](): IterableIterator<T>;
}
