import { Version } from "./Version.js";
import { VersionInterval } from "./VersionInterval.js";
export declare class VersionIntervalImpl extends VersionInterval {
    static INFINITE: VersionInterval;
    private readonly min?;
    private readonly minInclusive;
    private readonly max?;
    private readonly maxInclusive;
    constructor(min: Version | undefined, minInclusive: boolean, max: Version | undefined, maxInclusive: boolean);
    isSemantic(): boolean;
    getMin(): Version | undefined;
    isMinInclusive(): boolean;
    getMax(): Version | undefined;
    isMaxInclusive(): boolean;
    equals(obj: unknown): boolean;
    toString(): string;
    static andOne(a: VersionInterval, b: VersionInterval): VersionInterval | undefined;
    private static andPlain;
    private static andSemantic;
    static and(a: VersionInterval[], b: VersionInterval[]): VersionInterval[];
    static or(a: VersionInterval[], b: VersionInterval): VersionInterval[];
    private static merge;
    private static mergePlain;
    private static mergeSemantic;
    private static compareMin;
    private static compareMax;
    static notOne(interval: VersionInterval): VersionInterval[];
    static not(intervals: VersionInterval[]): VersionInterval[] | undefined;
}
