ipfs-core
Version:
JavaScript implementation of the IPFS specification
54 lines • 1.99 kB
TypeScript
/**
* @typedef {object} DekOptions
* @property {string} hash
* @property {string} salt
* @property {number} iterationCount
* @property {number} keyLength
*
* @typedef {object} KeychainConfig
* @property {string} [pass]
* @property {DekOptions} [dek]
*
* @typedef {import('ipfs-repo').IPFSRepo} Repo
* @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId
* @typedef {import('../types').Options} IPFSOptions
* @typedef {import('libp2p').Libp2p} LibP2P
* @typedef {import('libp2p').Libp2pOptions} Libp2pOptions
* @typedef {import('ipfs-core-types/src/config').Config} IPFSConfig
* @typedef {import('@multiformats/multiaddr').Multiaddr} Multiaddr
*/
/**
* @param {object} config
* @param {Repo} config.repo
* @param {IPFSOptions|undefined} config.options
* @param {PeerId} config.peerId
* @param {Multiaddr[]|undefined} config.multiaddrs
* @param {KeychainConfig|undefined} config.keychainConfig
* @param {Partial<IPFSConfig>|undefined} config.config
*/
export function createLibp2p({ options, peerId, multiaddrs, repo, keychainConfig, config }: {
repo: Repo;
options: IPFSOptions | undefined;
peerId: PeerId;
multiaddrs: Multiaddr[] | undefined;
keychainConfig: KeychainConfig | undefined;
config: Partial<IPFSConfig> | undefined;
}): Promise<import("libp2p").Libp2p>;
export type DekOptions = {
hash: string;
salt: string;
iterationCount: number;
keyLength: number;
};
export type KeychainConfig = {
pass?: string | undefined;
dek?: DekOptions | undefined;
};
export type Repo = import('ipfs-repo').IPFSRepo;
export type PeerId = import('@libp2p/interface-peer-id').PeerId;
export type IPFSOptions = import('../types').Options;
export type LibP2P = import('libp2p').Libp2p;
export type Libp2pOptions = import('libp2p').Libp2pOptions;
export type IPFSConfig = import('ipfs-core-types/src/config').Config;
export type Multiaddr = import('@multiformats/multiaddr').Multiaddr;
//# sourceMappingURL=libp2p.d.ts.map