import { Interval } from "../internal_modules";
/**
 * domaine de définition du paramètre
 */
export declare enum ParamDomainValue {
    /** >0, =0, <0 (-inf -> +inf) */
    ANY = 0,
    /** >=0 */
    POS_NULL = 1,
    /** > 0 */
    POS = 2,
    /** <>0 */
    NOT_NULL = 3,
    /** intervalle */
    INTERVAL = 4,
    /** nombre entier relatif */
    INTEGER = 5
}
export declare class ParamDomain {
    static getDefaultBounds(d: ParamDomainValue): {
        min: number;
        max: number;
    };
    private _domain;
    private _minValue;
    private _maxValue;
    constructor(d: ParamDomainValue, min?: number, max?: number);
    get domain(): ParamDomainValue;
    get minValue(): number;
    get maxValue(): number;
    get interval(): Interval;
    clone(): ParamDomain;
    /**
     * Return a value bounded by the definition domain
     * @param v the value to be bounded
     */
    getBoundedValue(v: number): number;
    private checkValue;
}
//# sourceMappingURL=param-domain.d.ts.map