@node-lightning/graph
Version:
Lightning Network P2P Graph
32 lines (31 loc) • 1.24 kB
TypeScript
/// <reference types="node" />
import { OutPoint } from "@node-lightning/core";
import { IGossipEmitter } from "@node-lightning/wire";
import { EventEmitter } from "events";
import { Channel } from "./channel";
import { ChannelSettings } from "./channel-settings";
import { Graph } from "./graph";
import { GraphError } from "./graph-error";
import { Node } from "./node";
export declare interface GraphManager {
on(event: "node", fn: (node: Node) => void): this;
on(event: "channel", fn: (channel: Channel) => void): this;
on(event: "channel_update", fn: (channel: Channel, settings: ChannelSettings) => void): this;
on(event: "error", fn: (err: GraphError) => void): this;
}
/**
* GraphManager is a facade around a Graph object. It converts in-bound
* gossip messages from the wire into a graph representation. Channels
* can also be removed by monitoring the block chain via a chainmon object.
*/
export declare class GraphManager extends EventEmitter {
graph: Graph;
gossipEmitter: IGossipEmitter;
constructor(gossipManager: IGossipEmitter, graph?: Graph);
/**
* Closes channel via the outpoint
* @param outpoint
*/
removeChannel(outpoint: OutPoint): void;
private _onMessage;
}