import type { CycleNode, LeaksReport } from "../types.js"; /** * Parse the full output of `leaks ` into a structured report. * * Tolerates trailing/leading whitespace and unknown header keys. Body lines * that don't match the cycle grammar are silently skipped (the leaks(1) * format is loose — better to ignore an unknown line than fail the whole parse). */ export declare function parseLeaksOutput(text: string): LeaksReport; /** * Walk the cycle tree top-down, yielding every node with its depth. */ export declare function walkCycles(cycles: CycleNode[], depth?: number): Generator<{ node: CycleNode; depth: number; }>; /** * Return only the top-level ROOT CYCLE nodes (skipping standalone leaks). */ export declare function rootCyclesOnly(cycles: CycleNode[]): CycleNode[]; /** * Find all class names mentioned in the cycle forest. Useful for `countAlive` * and `findRetainers` lookups. */ export declare function classNames(cycles: CycleNode[]): Set;