UNPKG

ipfsd-ctl

Version:

Spawn IPFS Daemons, Kubo or...

68 lines 1.84 kB
import type { Node, NodeOptions } from '../index.js'; import type { KuboRPCClient } from 'kubo-rpc-client'; export interface KuboInit { emptyRepo?: boolean; profiles?: string[]; /** * JSON config directives to patch the config file with */ config?: Record<string, any>; /** * Extra CLI args used to invoke `kubo init` */ args?: string[]; } export interface KuboEd25519Init extends KuboInit { algorithm?: 'ed25519'; } export interface KuboRSAInit extends KuboInit { algorithm: 'rsa'; bits?: number; } export type KuboInitOptions = KuboEd25519Init | KuboRSAInit; export interface KuboStartOptions { offline?: boolean; ipnsPubsub?: boolean; pubsub?: boolean; repoAutoMigrate?: boolean; /** * Extra CLI args used to invoke `kubo daemon` */ args?: string[]; } export interface KuboOptions extends NodeOptions<boolean | KuboInitOptions, boolean | KuboStartOptions, KuboStopOptions> { type: 'kubo'; /** * A function that creates an instance of `KuboRPCClient` */ rpc?(...args: any[]): KuboRPCClient; /** * Path to a Kubo executable */ bin?: string; /** * The path to a repo directory. It will be created during init if it does not * already exist. */ repo?: string; } export interface KuboStopOptions { /** * How long to wait in ms before sending `SIGKILL` to the process * * @default 1000 */ forceKillTimeout?: number; } export interface KuboInfo { pid?: number; version?: string; peerId?: string; multiaddrs: string[]; api?: string; repo: string; gateway: string; } export interface KuboNode extends Node<KuboRPCClient, KuboOptions, KuboInfo, KuboInitOptions, KuboStartOptions, KuboStopOptions> { } //# sourceMappingURL=index.d.ts.map