UNPKG

merkletreejs

Version:
34 lines (33 loc) 941 B
/// <reference types="node" /> import Base from './Base'; declare type TValue = Buffer | BigInt | string | number | null | undefined; declare type THashFn = (value: TValue) => Buffer; declare type ProofItem = { key: string; hash: Buffer; siblings: { key: string; hash: Buffer; }[]; }; declare class MerkleRadixNode { key: string; value: TValue; children: Map<string, MerkleRadixNode>; hash: Buffer; hashFn: THashFn; constructor(key: string, value: any, hashFn: THashFn); computeHash(): Buffer; updateHash(): void; } export declare class MerkleRadixTree extends Base { root: MerkleRadixNode; hashFn: THashFn; constructor(hashFn: THashFn); insert(key: string, value: TValue): void; lookup(key: string): TValue; private commonPrefixLength; generateProof(key: string): any[]; verifyProof(proof: ProofItem[], rootHash: Buffer): boolean; } export {};