@web3-storage/pail
Version:
DAG based key value store.
35 lines • 1.44 kB
TypeScript
/** @implements {API.BlockFetcher} */
export class MemoryBlockstore implements API.BlockFetcher {
/**
* @param {Array<import('multiformats').Block>} [blocks]
*/
constructor(blocks?: Array<import("multiformats").Block>);
get<T = unknown, C extends number = number, A extends number = number, V extends API.Version = 1>(link: API.Link<T, C, A, V>): Promise<API.Block<T, C, A, V> | undefined>;
/**
* @param {API.UnknownLink} cid
* @param {Uint8Array} bytes
*/
put(cid: API.UnknownLink, bytes: Uint8Array): Promise<void>;
/**
* @param {API.UnknownLink} cid
* @param {Uint8Array} bytes
*/
putSync(cid: API.UnknownLink, bytes: Uint8Array): void;
/** @param {API.UnknownLink} cid */
delete(cid: API.UnknownLink): Promise<void>;
/** @param {API.UnknownLink} cid */
deleteSync(cid: API.UnknownLink): void;
entries(): Generator<{
cid: API.Link<any, number, number, API.Version>;
bytes: Uint8Array<ArrayBufferLike>;
}, void, unknown>;
#private;
}
export class MultiBlockFetcher {
/** @param {API.BlockFetcher[]} fetchers */
constructor(...fetchers: API.BlockFetcher[]);
get<T = unknown, C extends number = number, A extends number = number, V extends API.Version = 1>(link: API.Link<T, C, A, V>): Promise<API.Block<T, C, A, V> | undefined>;
#private;
}
import * as API from './api.js';
//# sourceMappingURL=block.d.ts.map