@specs-feup/alpakka
Version:
A Smali/APK source-to-source compiler written in Typescript
38 lines • 1.89 kB
TypeScript
import cytoscape from "cytoscape";
import { GraphBuilder, GraphConstructor, GraphTransformation, GraphTypeGuard } from "./Graph.js";
import BaseNode from "./BaseNode.js";
import BaseEdge from "./BaseEdge.js";
import { JavaClasses } from "@specs-feup/lara/api/lara/util/JavaTypes.js";
import DotFormatter from "../dot/DotFormatter.js";
declare namespace BaseGraph {
class Class<D extends Data = Data, S extends ScratchData = ScratchData> {
#private;
constructor(graph: cytoscape.Core, _d?: D, _sd?: S);
get data(): D;
get scratchData(): S;
addNode(id?: string): BaseNode.Class;
addEdge(source: BaseNode.Class, target: BaseNode.Class, id?: string): BaseEdge.Class;
getNodeById(id: string): BaseNode.Class | undefined;
getEdgeById(id: string): BaseEdge.Class | undefined;
get nodes(): BaseNode.Class[];
get edges(): BaseEdge.Class[];
is<D2 extends Data, S2 extends ScratchData>(guard: GraphTypeGuard<D2, S2>): this is BaseGraph.Class<D2, S2>;
as<G extends BaseGraph.Class<D, S>>(GraphType: GraphConstructor<D, S, G>): G;
init<D2 extends BaseGraph.Data, S2 extends BaseGraph.ScratchData>(builder: GraphBuilder<D2, S2>): BaseGraph.Class<D2, S2>;
apply(transformation: GraphTransformation): this;
toDot(dotFormatter: DotFormatter, label?: string): string;
toDotFile(dotFormatter: DotFormatter, filename: string, label?: string): JavaClasses.File;
toCy(): cytoscape.Core;
}
class Builder implements GraphBuilder<Data, ScratchData> {
buildData(data: BaseGraph.Data): Data;
buildScratchData(scratchData: BaseGraph.ScratchData): ScratchData;
}
const TypeGuard: GraphTypeGuard<Data, ScratchData>;
interface Data {
}
interface ScratchData {
}
}
export default BaseGraph;
//# sourceMappingURL=BaseGraph.d.ts.map