import { Nub, RugoFond } from "../internal_modules";
import { Observer } from "../internal_modules";
import { Result } from "../internal_modules";
import { RugoFondMultipleParams } from "./rugofond_multiple_params";
/** Type de radier */
export declare enum RugofondType {
    /** Horizontale */
    HORIZONTAL = 0,
    /** Incliné*/
    INCLINED = 1
}
export declare class RugoFondMultiple extends Nub implements Observer {
    /**
     * { symbol => string } map that defines units for extra results
     */
    private static _resultsUnits;
    /** enfants castés au bon type */
    get children(): RugoFond[];
    /** parameters cast to the right type */
    get prms(): RugoFondMultipleParams;
    constructor(prms: RugoFondMultipleParams, dbg?: boolean);
    /**
     * Calcul du débit total, de la cote amont ou aval ou d'un paramètre d'une structure
     * @param sVarCalc Nom du paramètre à calculer
     * @param rInit Valeur initiale
     */
    Calc(sVarCalc: string, rInit?: number): Result;
    CalcSerie(rInit?: number): Result;
    Equation(sVarCalc: string): Result;
    addChild(child: RugoFond, after?: number): void;
    addDefaultChild(after?: number): void;
    generateInclinedRugoFond(): void;
    generateHorizontalRugoFond(ZF1: number, L: number): void;
    updateChildParams(): void;
    update(sender: any, data: any): void;
    /**
     * paramétrage de la calculabilité des paramètres
     */
    protected setParametersCalculability(): void;
    static resultsUnits(): {
        Q: string;
        Ks: string;
        Yn: string;
        Vdeb: string;
        LIncl: string;
    };
    protected exposeResults(): void;
    private copyPrmsToChildren;
}
//# sourceMappingURL=rugofond_multiple.d.ts.map