Files
ruvnet--RuView/vendor/sublinear-time-solver/dist/mcp/tools/graph.d.ts
T
ruv 4b1005524e feat: complete vendor repos, add edge intelligence and WASM modules
- Add 154 missing vendor files (gitignore was filtering them)
  - vendor/midstream: 564 files (was 561)
  - vendor/sublinear-time-solver: 1190 files (was 1039)
- Add ESP32 edge processing (ADR-039): presence, vitals, fall detection
- Add WASM programmable sensing (ADR-040/041) with wasm3 runtime
- Add firmware CI workflow (.github/workflows/firmware-ci.yml)
- Add wifi-densepose-wasm-edge crate for edge WASM modules
- Update sensing server, provision.py, UI components

Co-Authored-By: claude-flow <ruv@ruv.net>
2026-03-02 23:53:25 -05:00

111 lines
3.2 KiB
TypeScript

/**
* MCP Tools for graph algorithms using sublinear solvers
*/
import { Matrix, Vector, PageRankParams, EffectiveResistanceParams } from '../../core/types.js';
export declare class GraphTools {
/**
* Compute PageRank using sublinear solver
*/
static pageRank(params: PageRankParams): Promise<{
pageRankVector: Vector;
topNodes: {
node: number;
score: number;
}[];
bottomNodes: {
node: number;
score: number;
}[];
statistics: {
totalScore: number;
maxScore: number;
minScore: number;
mean: number;
standardDeviation: number;
entropy: number;
convergenceInfo: {
damping: number;
personalized: boolean;
};
};
distribution: {
quantiles: Record<string, number>;
concentrationRatio: number;
};
}>;
/**
* Compute personalized PageRank for specific nodes
*/
static personalizedPageRank(adjacency: Matrix, personalizeNodes: number[], params?: Partial<PageRankParams>): Promise<{
personalizedFor: number[];
influence: {
directInfluence: number[];
totalInfluence: number;
};
pageRankVector: Vector;
topNodes: {
node: number;
score: number;
}[];
bottomNodes: {
node: number;
score: number;
}[];
statistics: {
totalScore: number;
maxScore: number;
minScore: number;
mean: number;
standardDeviation: number;
entropy: number;
convergenceInfo: {
damping: number;
personalized: boolean;
};
};
distribution: {
quantiles: Record<string, number>;
concentrationRatio: number;
};
}>;
/**
* Compute effective resistance between nodes
*/
static effectiveResistance(params: EffectiveResistanceParams): Promise<{
effectiveResistance: number;
voltage: number[];
source: number;
target: number;
convergenceInfo: {
iterations: number;
residual: number;
converged: boolean;
};
}>;
/**
* Compute centrality measures using sublinear methods
*/
static computeCentralities(adjacency: Matrix, measures?: string[]): Promise<Record<string, any>>;
/**
* Detect communities using spectral methods
*/
static detectCommunities(adjacency: Matrix, numCommunities?: number): Promise<{
communities: number[][];
assignments: any[];
modularity: number;
quality: {
numCommunities: number;
largestCommunity: number;
smallestCommunity: number;
};
}>;
private static computeQuantiles;
private static createGroundedLaplacian;
private static createNormalizedLaplacian;
private static closenessCentrality;
private static betweennessCentrality;
private static computeModularity;
private static countEdges;
private static getNodeDegree;
}