export declare function getMerkleRoot(hashes: string[]): string;
export declare function merkelizeArray(array: string[]): string[];
export declare function getMerklePath(pos: number, hashes: string[]): string;
export declare function getMerkleRootByPath(leaf: string, path: string): string;
export declare function verifyLeaf(leaf: string, merklePath: string, merkleRoot: string): boolean;
/**
  *  Makes sure that
  *  - the new leaf is added at the same depth as the other leafs.
  +  - the new leaf is hashed twice before adding.
  */
export declare function addLeaf(lastEntry: string, lastMerklePath: string, oldMerkleRoot: string, newEntry: string, version?: import("./contracts").marketVersion): string;
export declare function updateLeaf(oldEntry: string, newEntry: string, merklePath: string, oldMerkleRoot: string, version?: import("./contracts").marketVersion): string;
