ipfs-core-types
Version:
IPFS interface definitions used by implementations for API compatibility.
63 lines • 2.58 kB
TypeScript
import type { API as RootAPI } from './root';
import type { API as BitswapAPI } from './bitswap';
import type { API as BlockAPI } from './block';
import type { API as BootstrapAPI } from './bootstrap';
import type { API as ConfigAPI } from './config';
import type { API as DAGAPI } from './dag';
import type { API as DHTAPI } from './dht';
import type { API as DiagAPI } from './diag';
import type { API as FilesAPI } from './files';
import type { API as KeyAPI } from './key';
import type { API as LogAPI } from './log';
import type { API as NameAPI } from './name';
import type { API as ObjectAPI } from './object';
import type { API as PinAPI } from './pin';
import type { API as PubsubAPI } from './pubsub';
import type { Refs, Local } from './refs';
import type { API as RepoAPI } from './repo';
import type { API as StatsAPI } from './stats';
import type { API as SwarmAPI } from './swarm';
import type { AbortOptions, Await, AwaitIterable } from './utils';
import type { BlockCodec } from 'multiformats/codecs/interface';
import type { MultibaseCodec } from 'multiformats/bases/interface';
import type { MultihashHasher } from 'multiformats/hashes/interface';
interface RefsAPI<OptionExtension = {}> extends Refs<OptionExtension> {
local: Local<OptionExtension>;
}
export interface IPFS<OptionExtension = {}> extends RootAPI<OptionExtension> {
bitswap: BitswapAPI<OptionExtension>;
block: BlockAPI<OptionExtension>;
bootstrap: BootstrapAPI<OptionExtension>;
config: ConfigAPI<OptionExtension>;
dag: DAGAPI<OptionExtension>;
dht: DHTAPI<OptionExtension>;
diag: DiagAPI<OptionExtension>;
files: FilesAPI<OptionExtension>;
key: KeyAPI<OptionExtension>;
log: LogAPI<OptionExtension>;
name: NameAPI<OptionExtension>;
object: ObjectAPI<OptionExtension>;
pin: PinAPI<OptionExtension>;
pubsub: PubsubAPI<OptionExtension>;
refs: RefsAPI<OptionExtension>;
repo: RepoAPI<OptionExtension>;
stats: StatsAPI<OptionExtension>;
swarm: SwarmAPI<OptionExtension>;
bases: Bases;
codecs: Codecs;
hashers: Hashers;
}
interface Bases {
getBase: (code: string) => Promise<MultibaseCodec<any>>;
listBases: () => Array<MultibaseCodec<any>>;
}
interface Codecs {
getCodec: (code: number | string) => Promise<BlockCodec<any, any>>;
listCodecs: () => Array<BlockCodec<any, any>>;
}
interface Hashers {
getHasher: (code: number | string) => Promise<MultihashHasher>;
listHashers: () => MultihashHasher[];
}
export type { AbortOptions, Await, AwaitIterable };
//# sourceMappingURL=index.d.ts.map