import { Sigma } from './sigma.js'; export declare class PdgNode { readonly nid: number; readonly cls: string; readonly op: string | null; constructor(nid: number, cls: string, op?: string | null); get label(): string; } export declare class PdgEdge { readonly src: number; readonly dst: number; readonly etype: string; constructor(src: number, dst: number, etype: string); } export declare class PDG { readonly sigma: Sigma; private readonly _nodes; private readonly _edges; private _nextId; constructor(sigma: Sigma); addNode(cls: string, op?: string | null): number; addEdge(src: number, dst: number, etype?: string): void; get nodes(): PdgNode[]; get edges(): PdgEdge[]; node(nid: number): PdgNode; get length(): number; /** * Typed, directed neighborhood of `nid` for WL aggregation. * Returns tuple list of [direction, edge_type, other_id]. */ neighbors(nid: number): [string, string, number][]; toDict(): Record; labelMultiset(): Record; } //# sourceMappingURL=pdg.d.ts.map