import { ControlFlowProgram } from "../ControlFlowProgram";
import { ContractedControlFlowGraph } from "../graph/ContractedControlFlowGraph";
import { ControlFlowGraph } from "../graph/ControlFlowGraph";
/**
 * Edge contraction algorithm.
 *
 * This algorithm contracts every edge whose source has a single exit and whose destination has a single entry.
 *
 * https://en.wikipedia.org/wiki/Control-flow_graph
 * @param controlFlowGraph the control flow graph to contract
 * @returns the contracted control flow graph
 */
export declare function edgeContraction(controlFlowGraph: ControlFlowGraph): ContractedControlFlowGraph;
export declare function contractControlFlowProgram(program: ControlFlowProgram): ControlFlowProgram;
//# sourceMappingURL=edgeContraction.d.ts.map