import { BitSet } from './BitSet';
/**
 * Class representing a Combination, which extends BitSet to manage combinations
 * of bits. It includes additional methods specific to combination logic.
 */
export declare class Combination extends BitSet {
    constructor(n: number);
    getN(): number;
    static fromBooleanArray(array: boolean[]): Combination;
    static createWithSizeAndSet(n: number, set: Set<number>): Combination;
    asSequence(): number[];
    combinationString(): string;
    getIntervalVector(): number[];
    getCombinationAsArray(): number[];
    intersect(c: Combination): Combination;
    minus(c: Combination): Combination;
    static merge(a: Combination, b: Combination): Combination;
    mergeWith(a: Combination): Combination;
    symmetricDifference(y: Combination): Combination;
    rotate(t: number): Combination;
    static generateRandom(n: number, k: number): Combination;
    static combinationFromBinaryArray(bitArray: boolean[]): Combination;
    static combinationFromBitSet(x: BitSet): Combination;
    partition(sequence: number[]): Combination[];
    private partitionByIndices;
    private copyFrom;
    copy(): Combination;
    equals(obj: any): boolean;
    toString(): string;
    static generateAll(n: number, k: number): Combination[];
    static combinationRefinements(c: Combination): Combination[];
}
