/**
 * CPM (Constant Potts Model) quality functions.
 * Vendored from ngraph.leiden (MIT) — no external dependencies.
 */
/**
 * Minimal view of a partition needed by CPM quality functions.
 */
export interface PartitionView {
    readonly communityCount: number;
    nodeCommunity: Int32Array;
    readonly communityInternalEdgeWeight: Float64Array;
    readonly communityTotalSize: Float64Array;
    getOutEdgeWeightToCommunity(c: number): number;
    getInEdgeWeightFromCommunity(c: number): number;
    getNeighborEdgeWeightToCommunity(c: number): number;
}
/**
 * Minimal view of a graph needed by CPM quality functions.
 */
export interface GraphView {
    n: number;
    directed: boolean;
    selfLoop: Float64Array;
    size: Float64Array;
}
export declare function diffCPM(part: PartitionView, g: GraphView, v: number, c: number, gamma?: number): number;
export declare function qualityCPM(part: PartitionView, _g: GraphView, gamma?: number): number;
//# sourceMappingURL=cpm.d.ts.map