ipfs-core
Version:
JavaScript implementation of the IPFS specification
67 lines • 2.53 kB
TypeScript
/**
* @typedef {object} Online
* @property {libp2p} libp2p
* @property {Bitswap} bitswap
*
* @typedef {object} Options
* @property {PeerId} options.peerId
* @property {Repo} options.repo
* @property {Print} options.print
* @property {IPFSOptions} options.options
* @property {import('ipfs-core-utils/multihashes').Multihashes} options.hashers
*
* @typedef {import('ipfs-core-types/src/config').Config} IPFSConfig
* @typedef {import('../types').Options} IPFSOptions
* @typedef {import('ipfs-repo').IPFSRepo} Repo
* @typedef {import('../types').Print} Print
* @typedef {import('libp2p').Libp2p} libp2p
* @typedef {import('ipfs-bitswap').IPFSBitswap} Bitswap
* @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId
* @typedef {import('ipfs-core-types/src/utils').AbortOptions} AbortOptions
* @typedef {import('@multiformats/multiaddr').Multiaddr} Multiaddr
*/
export class Network {
/**
* @param {Options} options
*/
static start({ peerId, repo, print, hashers, options }: Options): Promise<Network>;
/**
* @param {Network} network
*/
static stop(network: Network): Promise<void>;
/**
* @param {PeerId} peerId
* @param {libp2p} libp2p
* @param {Bitswap} bitswap
* @param {Repo} repo
* @param {BlockStorage} blockstore
*/
constructor(peerId: PeerId, libp2p: libp2p, bitswap: Bitswap, repo: Repo, blockstore: BlockStorage);
peerId: import("@libp2p/interface-peer-id").PeerId;
libp2p: import("libp2p").Libp2p;
bitswap: import("ipfs-bitswap/dist/src/types.js").IPFSBitswap;
repo: import("ipfs-repo/dist/src/types.js").IPFSRepo;
blockstore: BlockStorage;
}
export type Online = {
libp2p: libp2p;
bitswap: Bitswap;
};
export type Options = {
peerId: PeerId;
repo: Repo;
print: Print;
options: IPFSOptions;
hashers: import('ipfs-core-utils/multihashes').Multihashes;
};
export type IPFSConfig = import('ipfs-core-types/src/config').Config;
export type IPFSOptions = import('../types').Options;
export type Repo = import('ipfs-repo').IPFSRepo;
export type Print = import('../types').Print;
export type libp2p = import('libp2p').Libp2p;
export type Bitswap = import('ipfs-bitswap').IPFSBitswap;
export type PeerId = import('@libp2p/interface-peer-id').PeerId;
export type AbortOptions = import('ipfs-core-types/src/utils').AbortOptions;
export type Multiaddr = import('@multiformats/multiaddr').Multiaddr;
import { BlockStorage } from "../block-storage.js";
//# sourceMappingURL=network.d.ts.map