import type { Class_DrawingArea } from '../types/DrawingArea'; import type { Class_LinkElement } from '../Elements/Link'; export declare function straightenLink(da: Class_DrawingArea, link: Class_LinkElement): boolean; /** * #665 (refonte #1231) — Post-processing « flux droit » appliqué APRÈS placement, dans les * **trois modes** (paramétrique, absolu, proportionnel). Modèle simple **par flux** : pour chaque * flux marqué `shape_must_stay_straight`, on déplace le nœud cible verticalement pour que son * accroche coïncide avec celle de la source (source = référence). Pas de groupes rigides, pas de * back-calc : la droiture est re-appliquée à chaque dessin (après `drawElements`). * * Les flux sont traités triés par `position_u` de la source (amont → aval). Option par flux * `shape_straight_include_children` : redresse aussi les flux enfant-enfant (descendants dans la * hiérarchie de dimensions) → la droiture survit à la désagrégation. * * @returns `true` si au moins un nœud cible a bougé (le caller redessine). */ export declare function enforceStraightLinks(da: Class_DrawingArea): boolean;