import Graph, {Attributes, EdgePredicate} from 'graphology-types'; export function forEachConnectedComponent( graph: Graph, callback: (component: Array) => void ): void; export function forEachConnectedComponentOrder( graph: Graph, callback: (componentOrder: number) => void ): void; export function forEachConnectedComponentOrder< NodeAttributes extends Attributes = Attributes, EdgeAttributes extends Attributes = Attributes >( graph: Graph, edgeFilter: EdgePredicate, callback: (componentOrder: number) => void ): void; export function countConnectedComponents(graph: Graph): number; export function connectedComponents(graph: Graph): Array>; export function largestConnectedComponent(graph: Graph): Array; export function stronglyConnectedComponents(graph: Graph): Array>; export function largestConnectedComponentSubgraph(graph: G): G; export function cropToLargestConnectedComponent(graph: Graph): void;