export type RoaringBitmapSubset = {
    readonly size: number;
    add(value: number): void;
    clear(): void;
    remove(value: number): void;
    has(value: number): boolean;
    orInPlace(other: Iterable<number>): void;
    serialize(portable: boolean): Uint8Array;
    toArray(): number[];
    [Symbol.iterator](): Iterator<number>;
};
export type RoaringBitmap32Constructor = {
    new (values?: Iterable<number>): RoaringBitmapSubset;
    deserialize(data: Uint8Array | ArrayLike<number>, portable: boolean): RoaringBitmapSubset;
    isNativelyInstalled?: () => boolean;
};
type RoaringModuleOverride = {
    readonly RoaringBitmap32: RoaringBitmap32Constructor;
    readonly default?: {
        readonly RoaringBitmap32?: RoaringBitmap32Constructor;
    };
    readonly isNativelyInstalled?: boolean;
};
export type RoaringModuleInput = RoaringModuleOverride | object;
export declare function initRoaring(mod?: RoaringModuleInput): Promise<void>;
export declare function getRoaringBitmap32(): RoaringBitmap32Constructor;
export declare function getNativeRoaringAvailable(): boolean | null;
export {};
