import { GraphSpec } from '../spec'; /** * Node in a generated test graph. */ export interface TestNode { id: string; type?: string; data?: Record; partition?: "left" | "right"; } /** * Edge in a generated test graph. */ export interface TestEdge { source: string; target: string; weight?: number; type?: string; } /** * Complete graph structure for testing. */ export interface TestGraph { nodes: TestNode[]; edges: TestEdge[]; spec: GraphSpec; } /** * Configuration for graph generation. */ export interface GraphGenerationConfig { /** Number of nodes to generate */ nodeCount: number; /** Node type distribution (for heterogeneous graphs) */ nodeTypes?: { type: string; proportion: number; }[]; /** Edge type distribution (for heterogeneous graphs) */ edgeTypes?: { type: string; proportion: number; }[]; /** Weight range for weighted graphs */ weightRange?: { min: number; max: number; }; /** Random seed for reproducibility */ seed?: number; } /** * Simple seeded random number generator for reproducible tests. */ export declare class SeededRandom { private seed; constructor(seed?: number); next(): number; integer(min: number, max: number): number; choice(array: T[]): T; sample(array: T[], count: number): T[]; } //# sourceMappingURL=types.d.ts.map