import { ReadableSet } from "./types/readable-set.js";
import { WritableSet } from "./types/writable-set.js";
import { OnSetChange } from "./types/on-set-change.js";
export declare class RegulatedSet<X> implements WritableSet<X>, ReadableSet<X> {
    #private;
    constructor(set: Set<X>, on_change: OnSetChange<X>);
    add(...items: X[]): void;
    delete(item: X): void;
    clear(): void;
    assign(items: X[]): void;
    forEach(f: (item: X) => void): void;
    has(item: X): boolean;
    array(): X[];
    readable: ReadableSet<X>;
}
