UNPKG

ipfs-core

Version:

JavaScript implementation of the IPFS specification

116 lines 4.03 kB
/** * @typedef {import('@libp2p/interface-peer-id').PeerId} PeerId * @typedef {import('@libp2p/interfaces').AbortOptions} AbortOptions * * @typedef {object} ExperimentalOptions * @property {boolean} [ipnsPubsub] * * @typedef {object} LibP2POptions * @property {DHTConfig} [config] * * @typedef {object} DHTConfig * @property {boolean} [enabled] */ export class IPNSAPI { /** * @param {object} options * @param {string} options.pass * @param {boolean} [options.offline] * @param {LibP2POptions} [options.libp2p] * @param {ExperimentalOptions} [options.EXPERIMENTAL] */ constructor(options?: { pass: string; offline?: boolean | undefined; libp2p?: LibP2POptions | undefined; EXPERIMENTAL?: ExperimentalOptions | undefined; }); options: { pass: string; offline?: boolean | undefined; libp2p?: LibP2POptions | undefined; EXPERIMENTAL?: ExperimentalOptions | undefined; }; /** @type {IPNS | null} */ offline: IPNS | null; /** @type {IPNS | null} */ online: IPNS | null; getIPNS(): IPNS; get routing(): import("ipfs-core-types/src/utils.js").BufferStore; /** * Activates IPNS subsystem in an ofline mode. If it was started once already * it will throw an exception. * * This is primarily used for offline ipns modifications, such as the * initializeKeyspace feature. * * @param {object} config * @param {import('ipfs-repo').IPFSRepo} config.repo * @param {import('@libp2p/interface-peer-id').PeerId} config.peerId * @param {import('@libp2p/interface-keychain').KeyChain} config.keychain */ startOffline({ repo, peerId, keychain }: { repo: import('ipfs-repo').IPFSRepo; peerId: import('@libp2p/interface-peer-id').PeerId; keychain: import('@libp2p/interface-keychain').KeyChain; }): void; /** * @param {object} config * @param {import('libp2p').Libp2p} config.libp2p * @param {import('ipfs-repo').IPFSRepo} config.repo * @param {import('@libp2p/interface-peer-id').PeerId} config.peerId * @param {import('@libp2p/interface-keychain').KeyChain} config.keychain */ startOnline({ libp2p, repo, peerId, keychain }: { libp2p: import('libp2p').Libp2p; repo: import('ipfs-repo').IPFSRepo; peerId: import('@libp2p/interface-peer-id').PeerId; keychain: import('@libp2p/interface-keychain').KeyChain; }): Promise<void>; stop(): Promise<void>; /** * @param {PeerId} peerId * @param {Uint8Array} value * @param {number} lifetime * @param {AbortOptions} [options] */ publish(peerId: PeerId, value: Uint8Array, lifetime: number, options?: import("@libp2p/interfaces").AbortOptions | undefined): Promise<{ name: string; value: Uint8Array; }>; /** * * @param {string} name * @param {object} [options] * @param {boolean} [options.nocache] * @param {boolean} [options.recursive] * @param {AbortSignal} [options.signal] */ resolve(name: string, options?: { nocache?: boolean | undefined; recursive?: boolean | undefined; signal?: AbortSignal | undefined; } | undefined): Promise<any>; /** * @param {PeerId} peerId * @param {Uint8Array} value * @param {AbortOptions} [options] */ initializeKeyspace(peerId: PeerId, value: Uint8Array, options?: import("@libp2p/interfaces").AbortOptions | undefined): Promise<{ name: string; value: Uint8Array; }>; } export type PeerId = import('@libp2p/interface-peer-id').PeerId; export type AbortOptions = import('@libp2p/interfaces').AbortOptions; export type ExperimentalOptions = { ipnsPubsub?: boolean | undefined; }; export type LibP2POptions = { config?: DHTConfig | undefined; }; export type DHTConfig = { enabled?: boolean | undefined; }; import { IPNS } from "../ipns/index.js"; //# sourceMappingURL=ipns.d.ts.map