/** * graph:duplicated-function-body — group catalog entries whose body normalizes to the * same hash and report duplicate bodies. Two complementary paths under one slug: * * 1. Per-instance (size-gated): N-1 signals per group of ≥2 byte-identical normalized * bodies passing a line floor (default 5) AND a normalized-char floor (default 200, * which drops thin `defineCheck`/pass-through wrappers). * 2. Aggregate (cross-package): one signal per body hash in ≥ 3 distinct packages, * suppressing that hash's per-instance signals (lighter body-size-only floor, 80). * * The detection algorithm + curation policy now live in `@opensip-cli/clone-detection` * (ADR-0064) so graph and yagni single-source them. This rule is a thin adapter: it maps * the catalog to `CloneCandidate[]` (pre-resolving `bodyLines` from the feature table and * `package` from `pkgOf`), calls `findDuplicateBodies`, and wraps each finding into a * graph `Signal` with the unchanged message/severity/metadata — so output is byte-stable. */ export declare const duplicatedFunctionBodyRule: import("../types.js").Rule; //# sourceMappingURL=duplicated-function-body.d.ts.map