mirror of
https://github.com/logos-messaging/logos-messaging-js.git
synced 2026-02-27 03:23:20 +00:00
* upgrade libp2p version, partially update protocols, rename to IBaseProtocol * complete transition for protocols * complete transition of connection maanger * finish sdk * complete core * complete relay * complete peer-exchange * complete dns-discovery * add components field to Libp2p interface and use it in core * add type hack for Libp2p creation: * finish waku node test * complete relay test * complete peer exchange * complete dns peer discovery test * add missing dependency to relay * fix new peer store integration * improve initialization of pubsub * add catch for missing peer * update test and remove extra dependency * prevent error throw * fix edge case with peerStore * fix peer exchange * fix protocols used * fix test with another evnet * bump libp2p and interfaces * add missing package * fix peer-exchange problem * prefer libp2p peerDiscovery for integration tests * fix import * increate timeout * return test against Test fleet * remove await for peer:update * increase timeout * add await for peerStore * comment event for testing * fix lint * remove bind * fix stub * decouple to separate test case * move back to explicit build * remove only * do not test event
48 lines
1.1 KiB
TypeScript
48 lines
1.1 KiB
TypeScript
import type { Stream } from "@libp2p/interface-connection";
|
|
import type { PeerId } from "@libp2p/interface-peer-id";
|
|
import type { Multiaddr } from "@multiformats/multiaddr";
|
|
|
|
import type { IFilter, IFilterV2 } from "./filter.js";
|
|
import type { Libp2p } from "./libp2p.js";
|
|
import type { ILightPush } from "./light_push.js";
|
|
import { Protocols } from "./protocols.js";
|
|
import type { IRelay } from "./relay.js";
|
|
import type { IStore } from "./store.js";
|
|
|
|
export interface Waku {
|
|
libp2p: Libp2p;
|
|
relay?: IRelay;
|
|
store?: IStore;
|
|
filter?: IFilter | IFilterV2;
|
|
lightPush?: ILightPush;
|
|
|
|
dial(peer: PeerId | Multiaddr, protocols?: Protocols[]): Promise<Stream>;
|
|
|
|
start(): Promise<void>;
|
|
|
|
stop(): Promise<void>;
|
|
|
|
isStarted(): boolean;
|
|
}
|
|
|
|
export interface LightNode extends Waku {
|
|
relay: undefined;
|
|
store: IStore;
|
|
filter: IFilter | IFilterV2;
|
|
lightPush: ILightPush;
|
|
}
|
|
|
|
export interface RelayNode extends Waku {
|
|
relay: IRelay;
|
|
store: undefined;
|
|
filter: undefined;
|
|
lightPush: undefined;
|
|
}
|
|
|
|
export interface FullNode extends Waku {
|
|
relay: IRelay;
|
|
store: IStore;
|
|
filter: IFilter | IFilterV2;
|
|
lightPush: ILightPush;
|
|
}
|