import type { Autodiag, Contexte, EtapeDebug, InputsSimulation, LigneClimat, Option, Poste, Reglages, Selection, SortieSelection, Statut } from './types.js'; export interface SelectionFinalisee { axes: Selection; total_eur_ht: number; status: Statut; message_status?: string; couplages: string[]; debug_reajust: string[] | null; } /** * Étapes 4 à 6 du pipeline d'origine : couplages contraints, réajustement au * budget, re-passe couplages bornée à deux tours, total. Ne touche pas à la * sélection reçue (appliqueCouplages copie). */ export declare function finaliseSelection(selection: Selection, budget_total: number, options: Option[], postes: Poste[], inputs: Autodiag, contexte: Contexte, reglages: Reglages, debugMode?: boolean, debug?: { steps: EtapeDebug[]; }): SelectionFinalisee; /** * Sélectionne les typologies optimales selon budget + contexte. * * @param inputs — saisie utilisateur (autodiag + budget_eur) * @param options — typologies BDD (options.json) * @param postes — postes BDD (postes.json) * @param climat — données climatiques (france_climat.json) * @param reglages — { config: algo-config.json parsé, coefficients } * @param debugMode — active la trace debug exhaustive */ export declare function selectionner(inputs: InputsSimulation, options: Option[], postes: Poste[], climat: LigneClimat[], reglages: Reglages, debugMode?: boolean): SortieSelection;