@dstanesc/o-o-o-o-o-o-o
Version:
O-O-O-O-O-O-O is a collection of content addressed persistent data structures
25 lines • 1.27 kB
TypeScript
import { Link, Block, IndexedValue } from './types';
interface SearchIndex {
create: (values: IndexedValue[], blockPut: (block: Block) => Promise<void>, blockGet: (cid: any) => Promise<Uint8Array>) => Promise<Link>;
search: (link: Link, blockGet: (cid: any) => Promise<Uint8Array>, value: any) => Promise<IndexedValue>;
}
interface LinkCodec {
encode: (blockBytes: Uint8Array) => Promise<Link>;
decode: (linkBytes: Uint8Array) => Link;
parseString: (encoded: string) => Link;
encodeString: (link: Link) => string;
}
interface BlockCodec {
encode: (json: any, blockPut: (block: Block) => Promise<void>) => Promise<Link>;
decode: (link: Link, blockGet: (cid: any) => Promise<Uint8Array>) => Promise<any>;
}
interface ValueCodec {
encode: (value: any) => Uint8Array;
decode: (valueBytes: Uint8Array) => any;
}
declare const valueCodecFactory: () => ValueCodec;
declare const linkCodecFactory: () => LinkCodec;
declare const blockCodecFactory: () => BlockCodec;
declare const multiBlockCodecFactory: (chunk: (data: Uint8Array) => Uint32Array) => BlockCodec;
export { LinkCodec, BlockCodec, ValueCodec, SearchIndex, valueCodecFactory, linkCodecFactory, blockCodecFactory, multiBlockCodecFactory, };
//# sourceMappingURL=codecs.d.ts.map