import { Set2 } from '../object/index.js';
import type { Comparator } from '../types.js';
export interface SortedSetOptions<T> {
    /**
     * Defaults to undefined.
     * Undefined (default comparator) works well for String keys.
     * For Number keys - use comparators.numericAsc (or desc),
     * otherwise sorting will be wrong (lexicographic).
     */
    comparator?: Comparator<T>;
}
/**
 * Like Set, but keeps members sorted after every insertion.
 */
export declare class SortedSet<T> extends Set2<T> {
    #private;
    constructor(values?: Iterable<T>, opt?: SortedSetOptions<T>);
    add(value: T): this;
    addMany(items: Iterable<T>): this;
    private recreate;
    get [Symbol.toStringTag](): string;
}
