diff --git a/package.json b/package.json index 6808a9d..1144fcf 100644 --- a/package.json +++ b/package.json @@ -37,7 +37,7 @@ "@babel/preset-typescript": "^7.17.12", "@commitlint/cli": "^16.0.2", "@commitlint/config-conventional": "^16.0.0", - "@rollup/plugin-typescript": "^8.3.0", + "@rollup/plugin-typescript": "^8.3.3", "@types/glob": "^7.2.0", "@types/jest": "^27.4.0", "@types/node": "^17.0.9", diff --git a/packages/incremental-merkle-tree/build.tsconfig.json b/packages/incremental-merkle-tree/build.tsconfig.json index ac3ae89..2d4a1d6 100644 --- a/packages/incremental-merkle-tree/build.tsconfig.json +++ b/packages/incremental-merkle-tree/build.tsconfig.json @@ -1,7 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "declarationDir": "types" + "baseUrl": ".", + "declarationDir": "dist/types" }, "include": ["src"] } diff --git a/packages/incremental-merkle-tree/package.json b/packages/incremental-merkle-tree/package.json index ff65860..e7a0e32 100644 --- a/packages/incremental-merkle-tree/package.json +++ b/packages/incremental-merkle-tree/package.json @@ -34,10 +34,10 @@ "access": "public" }, "devDependencies": { - "@rollup/plugin-typescript": "^8.3.0", "circomlibjs": "^0.0.8", "rollup-plugin-cleanup": "^3.2.1", "rollup-plugin-terser": "^7.0.2", + "rollup-plugin-typescript2": "^0.32.1", "typedoc": "^0.22.11" } } diff --git a/packages/incremental-merkle-tree/rollup.config.ts b/packages/incremental-merkle-tree/rollup.config.ts index 02d7819..da32af1 100644 --- a/packages/incremental-merkle-tree/rollup.config.ts +++ b/packages/incremental-merkle-tree/rollup.config.ts @@ -1,4 +1,4 @@ -import typescript from "@rollup/plugin-typescript" +import typescript from "rollup-plugin-typescript2" import fs from "fs" import cleanup from "rollup-plugin-cleanup" import { terser } from "rollup-plugin-terser" @@ -32,5 +32,8 @@ export default { { file: pkg.exports.require, format: "cjs", banner }, { file: pkg.exports.import, format: "es", banner } ], - plugins: [typescript({ tsconfig: "./build.tsconfig.json" }), cleanup({ comments: "jsdoc" })] + plugins: [ + typescript({ tsconfig: "./build.tsconfig.json", useTsconfigDeclarationDir: true }), + cleanup({ comments: "jsdoc" }) + ] } diff --git a/packages/incremental-merkle-tree/types/checkParameter.d.ts b/packages/incremental-merkle-tree/types/checkParameter.d.ts new file mode 100644 index 0000000..5e84fd3 --- /dev/null +++ b/packages/incremental-merkle-tree/types/checkParameter.d.ts @@ -0,0 +1 @@ +export default function checkParameter(value: any, name: string, ...types: string[]): void; diff --git a/packages/incremental-merkle-tree/types/createProof.d.ts b/packages/incremental-merkle-tree/types/createProof.d.ts new file mode 100644 index 0000000..af464b9 --- /dev/null +++ b/packages/incremental-merkle-tree/types/createProof.d.ts @@ -0,0 +1,2 @@ +import { MerkleProof, Node } from "./types"; +export default function createProof(index: number, depth: number, arity: number, nodes: Node[][], zeroes: Node[], root: Node): MerkleProof; diff --git a/packages/incremental-merkle-tree/types/incremental-merkle-tree.d.ts b/packages/incremental-merkle-tree/types/incremental-merkle-tree.d.ts new file mode 100644 index 0000000..e881228 --- /dev/null +++ b/packages/incremental-merkle-tree/types/incremental-merkle-tree.d.ts @@ -0,0 +1,87 @@ +import { HashFunction, MerkleProof, Node } from "./types"; +/** + * A Merkle tree is a tree in which every leaf node is labelled with the cryptographic hash of a + * data block, and every non-leaf node is labelled with the cryptographic hash of the labels of its child nodes. + * It allows efficient and secure verification of the contents of large data structures. + * The IncrementalMerkleTree class is a TypeScript implementation of Incremental Merkle tree and it + * provides all the functions to create efficient trees and to generate and verify proofs of membership. + */ +export default class IncrementalMerkleTree { + static readonly maxDepth = 32; + private _root; + private readonly _nodes; + private readonly _zeroes; + private readonly _hash; + private readonly _depth; + private readonly _arity; + /** + * Initializes the tree with the hash function, the depth, the zero value to use for zeroes + * and the arity (i.e. the number of children for each node). + * @param hash Hash function. + * @param depth Tree depth. + * @param zeroValue Zero values for zeroes. + * @param arity The number of children for each node. + */ + constructor(hash: HashFunction, depth: number, zeroValue: Node, arity?: number); + /** + * Returns the root hash of the tree. + * @returns Root hash. + */ + get root(): Node; + /** + * Returns the depth of the tree. + * @returns Tree depth. + */ + get depth(): number; + /** + * Returns the leaves of the tree. + * @returns List of leaves. + */ + get leaves(): Node[]; + /** + * Returns the zeroes nodes of the tree. + * @returns List of zeroes. + */ + get zeroes(): Node[]; + /** + * Returns the number of children for each node. + * @returns Number of children per node. + */ + get arity(): number; + /** + * Returns the index of a leaf. If the leaf does not exist it returns -1. + * @param leaf Tree leaf. + * @returns Index of the leaf. + */ + indexOf(leaf: Node): number; + /** + * Inserts a new leaf in the tree. + * @param leaf New leaf. + */ + insert(leaf: Node): void; + /** + * Deletes a leaf from the tree. It does not remove the leaf from + * the data structure. It set the leaf to be deleted to a zero value. + * @param index Index of the leaf to be deleted. + */ + delete(index: number): void; + /** + * Deletes a leaf from the tree. It does not remove the leaf from + * the data structure. It set the leaf to be deleted to a zero value. + * @param index Index of the leaf to be deleted. + * @param newLeaf New leaf value. + */ + update(index: number, newLeaf: Node): void; + /** + * Creates a proof of membership. + * @param index Index of the proof's leaf. + * @returns Proof object. + */ + createProof(index: number): MerkleProof; + /** + * Verifies a proof and return true or false. + * @param proof Proof to be verified. + * @returns True or false. + */ + verifyProof(proof: MerkleProof): boolean; +} diff --git a/packages/incremental-merkle-tree/types/index.d.ts b/packages/incremental-merkle-tree/types/index.d.ts new file mode 100644 index 0000000..a510181 --- /dev/null +++ b/packages/incremental-merkle-tree/types/index.d.ts @@ -0,0 +1,3 @@ +import IncrementalMerkleTree from "./incremental-merkle-tree"; +export { IncrementalMerkleTree }; +export * from "./types"; diff --git a/packages/incremental-merkle-tree/types/indexOf.d.ts b/packages/incremental-merkle-tree/types/indexOf.d.ts new file mode 100644 index 0000000..78a7fb1 --- /dev/null +++ b/packages/incremental-merkle-tree/types/indexOf.d.ts @@ -0,0 +1,2 @@ +import { Node } from "./types"; +export default function indexOf(leaf: Node, nodes: Node[][]): number; diff --git a/packages/incremental-merkle-tree/types/insert.d.ts b/packages/incremental-merkle-tree/types/insert.d.ts new file mode 100644 index 0000000..f60cf77 --- /dev/null +++ b/packages/incremental-merkle-tree/types/insert.d.ts @@ -0,0 +1,2 @@ +import { HashFunction, Node } from "./types"; +export default function insert(leaf: Node, depth: number, arity: number, nodes: Node[][], zeroes: Node[], hash: HashFunction): Node; diff --git a/packages/incremental-merkle-tree/types/types/index.d.ts b/packages/incremental-merkle-tree/types/types/index.d.ts new file mode 100644 index 0000000..1d27a0d --- /dev/null +++ b/packages/incremental-merkle-tree/types/types/index.d.ts @@ -0,0 +1,8 @@ +export declare type Node = any; +export declare type HashFunction = (values: Node[]) => Node; +export declare type MerkleProof = { + root: any; + leaf: any; + siblings: any[]; + pathIndices: number[]; +}; diff --git a/packages/incremental-merkle-tree/types/update.d.ts b/packages/incremental-merkle-tree/types/update.d.ts new file mode 100644 index 0000000..cb33a66 --- /dev/null +++ b/packages/incremental-merkle-tree/types/update.d.ts @@ -0,0 +1,2 @@ +import { HashFunction, Node } from "./types"; +export default function update(index: number, value: Node, depth: number, arity: number, nodes: Node[][], zeroes: Node[], hash: HashFunction): Node; diff --git a/packages/incremental-merkle-tree/types/verifyProof.d.ts b/packages/incremental-merkle-tree/types/verifyProof.d.ts new file mode 100644 index 0000000..8be21ea --- /dev/null +++ b/packages/incremental-merkle-tree/types/verifyProof.d.ts @@ -0,0 +1,2 @@ +import { HashFunction, MerkleProof } from "./types"; +export default function verifyProof(proof: MerkleProof, hash: HashFunction): boolean; diff --git a/packages/sparse-merkle-tree/build.tsconfig.json b/packages/sparse-merkle-tree/build.tsconfig.json index ac3ae89..2d4a1d6 100644 --- a/packages/sparse-merkle-tree/build.tsconfig.json +++ b/packages/sparse-merkle-tree/build.tsconfig.json @@ -1,7 +1,8 @@ { "extends": "../../tsconfig.json", "compilerOptions": { - "declarationDir": "types" + "baseUrl": ".", + "declarationDir": "dist/types" }, "include": ["src"] } diff --git a/packages/sparse-merkle-tree/package.json b/packages/sparse-merkle-tree/package.json index ee108eb..aa518c0 100644 --- a/packages/sparse-merkle-tree/package.json +++ b/packages/sparse-merkle-tree/package.json @@ -39,12 +39,12 @@ "access": "public" }, "devDependencies": { - "@rollup/plugin-typescript": "^8.3.0", "@types/crypto-js": "^4.1.1", "circomlibjs": "^0.0.8", "crypto-js": "^4.1.1", "rollup-plugin-cleanup": "^3.2.1", "rollup-plugin-terser": "^7.0.2", + "rollup-plugin-typescript2": "^0.32.1", "typedoc": "^0.22.11" } } diff --git a/packages/sparse-merkle-tree/rollup.config.ts b/packages/sparse-merkle-tree/rollup.config.ts index 02d7819..da32af1 100644 --- a/packages/sparse-merkle-tree/rollup.config.ts +++ b/packages/sparse-merkle-tree/rollup.config.ts @@ -1,4 +1,4 @@ -import typescript from "@rollup/plugin-typescript" +import typescript from "rollup-plugin-typescript2" import fs from "fs" import cleanup from "rollup-plugin-cleanup" import { terser } from "rollup-plugin-terser" @@ -32,5 +32,8 @@ export default { { file: pkg.exports.require, format: "cjs", banner }, { file: pkg.exports.import, format: "es", banner } ], - plugins: [typescript({ tsconfig: "./build.tsconfig.json" }), cleanup({ comments: "jsdoc" })] + plugins: [ + typescript({ tsconfig: "./build.tsconfig.json", useTsconfigDeclarationDir: true }), + cleanup({ comments: "jsdoc" }) + ] } diff --git a/types/ffjavascript/index.d.ts b/types/ffjavascript/index.d.ts deleted file mode 100644 index f754ad7..0000000 --- a/types/ffjavascript/index.d.ts +++ /dev/null @@ -1,509 +0,0 @@ -/** Declaration file generated by dts-gen */ - -declare module "ffjavascript" { - export class BigBuffer { - constructor(...args: any[]) - - set(...args: any[]): void - - slice(...args: any[]): void - } - - export class ChaCha { - constructor(...args: any[]) - - nextBool(...args: any[]): void - - nextU32(...args: any[]): void - - nextU64(...args: any[]): void - - update(...args: any[]): void - } - - export class EC { - constructor(...args: any[]) - - add(...args: any[]): void - - affine(...args: any[]): void - - double(...args: any[]): void - - eq(...args: any[]): void - - fromRng(...args: any[]): void - - fromRprBE(...args: any[]): void - - fromRprBEM(...args: any[]): void - - fromRprCompressed(...args: any[]): void - - fromRprLE(...args: any[]): void - - fromRprLEJM(...args: any[]): void - - fromRprLEM(...args: any[]): void - - fromRprUncompressed(...args: any[]): void - - isZero(...args: any[]): void - - mulScalar(...args: any[]): void - - multiAffine(...args: any[]): void - - neg(...args: any[]): void - - sub(...args: any[]): void - - timesScalar(...args: any[]): void - - toRprBE(...args: any[]): void - - toRprBEM(...args: any[]): void - - toRprCompressed(...args: any[]): void - - toRprLE(...args: any[]): void - - toRprLEJM(...args: any[]): void - - toRprLEM(...args: any[]): void - - toRprUncompressed(...args: any[]): void - - toString(...args: any[]): void - } - - export class F1Field { - constructor(...args: any[]) - - e(...args: any[]): any - add(...args: any[]): any - sub(...args: any[]): any - neg(...args: any[]): any - mul(...args: any[]): any - mulScalar(...args: any[]): any - square(...args: any[]): any - eq(...args: any[]): any - neq(...args: any[]): any - lt(...args: any[]): any - gt(...args: any[]): any - leq(...args: any[]): any - geq(...args: any[]): any - div(...args: any[]): any - idiv(...args: any[]): any - inv(...args: any[]): any - mod(...args: any[]): any - pow(...args: any[]): any - exp(...args: any[]): any - band(...args: any[]): any - bor(...args: any[]): any - bxor(...args: any[]): any - bnot(...args: any[]): any - shl(...args: any[]): any - shr(...args: any[]): any - land(...args: any[]): any - lor(...args: any[]): any - lnot(...args: any[]): any - sqrt_old(...args: any[]): any - normalize(...args: any[]): any - random(...args: any[]): any - toString(...args: any[]): any - isZero(...args: any[]): any - fromRng(...args: any[]): any - - fromRprBE(...args: any[]): void - - fromRprBEM(...args: any[]): void - - fromRprLE(...args: any[]): void - - fromRprLEM(...args: any[]): void - - toRprBE(...args: any[]): void - - toRprBEM(...args: any[]): void - - toRprLE(...args: any[]): void - - toRprLEM(...args: any[]): void - } - - export class F2Field { - constructor(...args: any[]) - - add(...args: any[]): void - - conjugate(...args: any[]): void - - copy(...args: any[]): void - - div(...args: any[]): void - - double(...args: any[]): void - - eq(...args: any[]): void - - exp(...args: any[]): void - - fromRng(...args: any[]): void - - fromRprBE(...args: any[]): void - - fromRprBEM(...args: any[]): void - - fromRprLE(...args: any[]): void - - fromRprLEM(...args: any[]): void - - geq(...args: any[]): void - - gt(...args: any[]): void - - inv(...args: any[]): void - - isZero(...args: any[]): void - - leq(...args: any[]): void - - lt(...args: any[]): void - - mul(...args: any[]): void - - mulScalar(...args: any[]): void - - neg(...args: any[]): void - - neq(...args: any[]): void - - pow(...args: any[]): void - - random(...args: any[]): void - - square(...args: any[]): void - - sub(...args: any[]): void - - toRprBE(...args: any[]): void - - toRprBEM(...args: any[]): void - - toRprLE(...args: any[]): void - - toRprLEM(...args: any[]): void - - toString(...args: any[]): void - } - - export class F3Field { - constructor(...args: any[]) - - add(...args: any[]): void - - affine(...args: any[]): void - - copy(...args: any[]): void - - div(...args: any[]): void - - double(...args: any[]): void - - eq(...args: any[]): void - - exp(...args: any[]): void - - fromRng(...args: any[]): void - - fromRprBE(...args: any[]): void - - fromRprBEM(...args: any[]): void - - fromRprLE(...args: any[]): void - - fromRprLEM(...args: any[]): void - - geq(...args: any[]): void - - gt(...args: any[]): void - - inv(...args: any[]): void - - isZero(...args: any[]): void - - leq(...args: any[]): void - - lt(...args: any[]): void - - mul(...args: any[]): void - - mulScalar(...args: any[]): void - - neg(...args: any[]): void - - neq(...args: any[]): void - - pow(...args: any[]): void - - random(...args: any[]): void - - square(...args: any[]): void - - sub(...args: any[]): void - - toRprBE(...args: any[]): void - - toRprBEM(...args: any[]): void - - toRprLE(...args: any[]): void - - toRprLEM(...args: any[]): void - - toString(...args: any[]): void - } - - export class PolField { - constructor(...args: any[]) - - add(...args: any[]): void - - computeVanishingPolinomial(...args: any[]): void - - div(...args: any[]): void - - double(...args: any[]): void - - eq(...args: any[]): void - - eval(...args: any[]): void - - eval2(...args: any[]): void - - evaluateLagrangePolynomials(...args: any[]): void - - extend(...args: any[]): void - - fft(...args: any[]): void - - fft2(...args: any[]): void - - ifft(...args: any[]): void - - ifft2(...args: any[]): void - - lagrange(...args: any[]): void - - log2(...args: any[]): void - - mul(...args: any[]): void - - mulFFT(...args: any[]): void - - mulNormal(...args: any[]): void - - mulScalar(...args: any[]): void - - normalize(...args: any[]): void - - oneRoot(...args: any[]): void - - reduce(...args: any[]): void - - ruffini(...args: any[]): void - - scaleX(...args: any[]): void - - square(...args: any[]): void - - sub(...args: any[]): void - - toString(...args: any[]): void - } - - export class ZqField { - constructor(...args: any[]) - - e(...args: any[]): any - add(...args: any[]): any - sub(...args: any[]): any - neg(...args: any[]): any - mul(...args: any[]): any - mulScalar(...args: any[]): any - square(...args: any[]): any - eq(...args: any[]): any - neq(...args: any[]): any - lt(...args: any[]): any - gt(...args: any[]): any - leq(...args: any[]): any - geq(...args: any[]): any - div(...args: any[]): any - idiv(...args: any[]): any - inv(...args: any[]): any - mod(...args: any[]): any - pow(...args: any[]): any - exp(...args: any[]): any - band(...args: any[]): any - bor(...args: any[]): any - bxor(...args: any[]): any - bnot(...args: any[]): any - shl(...args: any[]): any - shr(...args: any[]): any - land(...args: any[]): any - lor(...args: any[]): any - lnot(...args: any[]): any - sqrt_old(...args: any[]): any - normalize(...args: any[]): any - random(...args: any[]): any - toString(...args: any[]): any - isZero(...args: any[]): any - fromRng(...args: any[]): any - - fromRprBE(...args: any[]): void - - fromRprBEM(...args: any[]): void - - fromRprLE(...args: any[]): void - - fromRprLEM(...args: any[]): void - - toRprBE(...args: any[]): void - - toRprBEM(...args: any[]): void - - toRprLE(...args: any[]): void - - toRprLEM(...args: any[]): void - } - - export function buildBls12381(singleThread: any, plugins: any): any - - export function buildBn128(singleThread: any, plugins: any): any - - export function getCurveFromName(name: any, singleThread?: any, plugins?: any): any - - export function getCurveFromQ(q: any, singleThread: any, plugins: any): any - - export function getCurveFromR(r: any, singleThread: any, plugins: any): any - - export namespace Scalar { - const one: any - - const zero: any - - function abs(a: any): any - - function add(a: any, b: any): any - - function band(a: any, b: any): any - - function bitLength(a: any): any - - function bits(n: any): any - - function bor(a: any, b: any): any - - function bxor(a: any, b: any): any - - function div(a: any, b: any): any - - function e(s: any, radix: any): any - - function eq(a: any, b: any): any - - function exp(a: any, b: any): any - - function fromArray(a: any, radix: any): any - - function fromRprBE(buff: any, o: any, n8: any): any - - function fromRprLE(buff: any, o: any, n8: any): any - - function fromString(s: any, radix: any): any - - function geq(a: any, b: any): any - - function gt(a: any, b: any): any - - function isNegative(a: any): any - - function isOdd(a: any): any - - function isZero(a: any): any - - function land(a: any, b: any): any - - function leq(a: any, b: any): any - - function lnot(a: any): any - - function lor(a: any, b: any): any - - function lt(a: any, b: any): any - - function mod(a: any, b: any): any - - function mul(a: any, b: any): any - - function naf(n: any): any - - function neg(a: any): any - - function neq(a: any, b: any): any - - function pow(a: any, b: any): any - - function shiftLeft(a: any, n: any): any - - function shiftRight(a: any, n: any): any - - function shl(a: any, n: any): any - - function shr(a: any, n: any): any - - function square(a: any): any - - function sub(a: any, b: any): any - - function toArray(s: any, radix: any): any - - function toLEBuff(a: any): any - - function toNumber(s: any): any - - function toRprBE(buff: any, o: any, e: any, n8: any): void - - function toRprLE(buff: any, o: any, e: any, n8: any): void - - function toString(a: any, radix: any): any - } - - export namespace utils { - function array2buffer(arr: any, sG: any): any - - function beBuff2int(buff: any): any - - function beInt2Buff(n: any, len: any): any - - function bitReverse(idx: any, bits: any): any - - function buffReverseBits(buff: any, eSize: any): void - - function buffer2array(buff: any, sG: any): any - - function leBuff2int(buff: any): any - - function leInt2Buff(n: any, len: any): any - - function log2(V: any): any - - function stringifyBigInts(o: any): any - - function stringifyFElements(F: any, o: any): any - - function unstringifyBigInts(o: any): any - - function unstringifyFElements(F: any, o: any): any - } -} diff --git a/types/snarkjs/index.d.ts b/types/snarkjs/index.d.ts deleted file mode 100644 index 7d118e2..0000000 --- a/types/snarkjs/index.d.ts +++ /dev/null @@ -1,57 +0,0 @@ -/** Declaration file generated by dts-gen */ - -declare module "snarkjs" { - export = snarkjs - - declare const snarkjs: { - groth16: { - exportSolidityCallData: any - fullProve: any - prove: any - verify: any - } - plonk: { - exportSolidityCallData: any - fullProve: any - prove: any - setup: any - verify: any - } - powersOfTau: { - beacon: any - challengeContribute: any - contribute: any - convert: any - exportChallenge: any - exportJson: any - importResponse: any - newAccumulator: any - preparePhase2: any - truncate: any - verify: any - } - r1cs: { - exportJson: any - info: any - print: any - } - wtns: { - calculate: any - debug: any - exportJson: any - } - zKey: { - beacon: any - bellmanContribute: any - contribute: any - exportBellman: any - exportJson: any - exportSolidityVerifier: any - exportVerificationKey: any - importBellman: any - newZKey: any - verifyFromInit: any - verifyFromR1cs: any - } - } -} diff --git a/yarn.lock b/yarn.lock index 17e0f78..5412021 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2942,7 +2942,7 @@ __metadata: languageName: node linkType: hard -"@rollup/plugin-typescript@npm:^8.3.0": +"@rollup/plugin-typescript@npm:^8.3.0, @rollup/plugin-typescript@npm:^8.3.3": version: 8.3.3 resolution: "@rollup/plugin-typescript@npm:8.3.3" dependencies: @@ -2972,6 +2972,16 @@ __metadata: languageName: node linkType: hard +"@rollup/pluginutils@npm:^4.1.2": + version: 4.2.1 + resolution: "@rollup/pluginutils@npm:4.2.1" + dependencies: + estree-walker: ^2.0.1 + picomatch: ^2.2.2 + checksum: 6bc41f22b1a0f1efec3043899e4d3b6b1497b3dea4d94292d8f83b4cf07a1073ecbaedd562a22d11913ff7659f459677b01b09e9598a98936e746780ecc93a12 + languageName: node + linkType: hard + "@scure/base@npm:~1.1.0": version: 1.1.1 resolution: "@scure/base@npm:1.1.1" @@ -3836,10 +3846,10 @@ __metadata: version: 0.0.0-use.local resolution: "@zk-kit/incremental-merkle-tree@workspace:packages/incremental-merkle-tree" dependencies: - "@rollup/plugin-typescript": ^8.3.0 circomlibjs: ^0.0.8 rollup-plugin-cleanup: ^3.2.1 rollup-plugin-terser: ^7.0.2 + rollup-plugin-typescript2: ^0.32.1 typedoc: ^0.22.11 languageName: unknown linkType: soft @@ -3861,12 +3871,12 @@ __metadata: version: 0.0.0-use.local resolution: "@zk-kit/sparse-merkle-tree@workspace:packages/sparse-merkle-tree" dependencies: - "@rollup/plugin-typescript": ^8.3.0 "@types/crypto-js": ^4.1.1 circomlibjs: ^0.0.8 crypto-js: ^4.1.1 rollup-plugin-cleanup: ^3.2.1 rollup-plugin-terser: ^7.0.2 + rollup-plugin-typescript2: ^0.32.1 typedoc: ^0.22.11 languageName: unknown linkType: soft @@ -6857,6 +6867,13 @@ __metadata: languageName: node linkType: hard +"commondir@npm:^1.0.1": + version: 1.0.1 + resolution: "commondir@npm:1.0.1" + checksum: 59715f2fc456a73f68826285718503340b9f0dd89bfffc42749906c5cf3d4277ef11ef1cca0350d0e79204f00f1f6d83851ececc9095dc88512a697ac0b9bdcb + languageName: node + linkType: hard + "compare-func@npm:^2.0.0": version: 2.0.0 resolution: "compare-func@npm:2.0.0" @@ -8542,6 +8559,13 @@ __metadata: languageName: node linkType: hard +"estree-walker@npm:^2.0.1": + version: 2.0.2 + resolution: "estree-walker@npm:2.0.2" + checksum: 6151e6f9828abe2259e57f5fd3761335bb0d2ebd76dc1a01048ccee22fabcfef3c0859300f6d83ff0d1927849368775ec5a6d265dde2f6de5a1be1721cd94efc + languageName: node + linkType: hard + "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -9694,6 +9718,17 @@ __metadata: languageName: node linkType: hard +"find-cache-dir@npm:^3.3.2": + version: 3.3.2 + resolution: "find-cache-dir@npm:3.3.2" + dependencies: + commondir: ^1.0.1 + make-dir: ^3.0.2 + pkg-dir: ^4.1.0 + checksum: 1e61c2e64f5c0b1c535bd85939ae73b0e5773142713273818cc0b393ee3555fb0fd44e1a5b161b8b6c3e03e98c2fcc9c227d784850a13a90a8ab576869576817 + languageName: node + linkType: hard + "find-node-modules@npm:^2.1.2": version: 2.1.3 resolution: "find-node-modules@npm:2.1.3" @@ -14169,7 +14204,7 @@ __metadata: languageName: node linkType: hard -"make-dir@npm:^3.0.0": +"make-dir@npm:^3.0.0, make-dir@npm:^3.0.2": version: 3.1.0 resolution: "make-dir@npm:3.1.0" dependencies: @@ -16037,7 +16072,7 @@ __metadata: languageName: node linkType: hard -"pkg-dir@npm:^4.2.0": +"pkg-dir@npm:^4.1.0, pkg-dir@npm:^4.2.0": version: 4.2.0 resolution: "pkg-dir@npm:4.2.0" dependencies: @@ -17223,6 +17258,22 @@ __metadata: languageName: node linkType: hard +"rollup-plugin-typescript2@npm:^0.32.1": + version: 0.32.1 + resolution: "rollup-plugin-typescript2@npm:0.32.1" + dependencies: + "@rollup/pluginutils": ^4.1.2 + find-cache-dir: ^3.3.2 + fs-extra: ^10.0.0 + resolve: ^1.20.0 + tslib: ^2.4.0 + peerDependencies: + rollup: ">=1.26.3" + typescript: ">=2.4.0" + checksum: f41ab63ad1e4d21ec99fbf4a367abdf29ef95c41fd0a5612f2b60a8619f5fe633f75982bfbaf8fe9632bddfb6730ff9cb38be77d82561088168fcaccd2cd1e85 + languageName: node + linkType: hard + "rollup-pluginutils@npm:^2.8.2": version: 2.8.2 resolution: "rollup-pluginutils@npm:2.8.2" @@ -19102,7 +19153,7 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.1.0, tslib@npm:^2.3.1": +"tslib@npm:^2.1.0, tslib@npm:^2.3.1, tslib@npm:^2.4.0": version: 2.4.0 resolution: "tslib@npm:2.4.0" checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 @@ -21386,7 +21437,7 @@ __metadata: "@babel/preset-typescript": ^7.17.12 "@commitlint/cli": ^16.0.2 "@commitlint/config-conventional": ^16.0.0 - "@rollup/plugin-typescript": ^8.3.0 + "@rollup/plugin-typescript": ^8.3.3 "@types/glob": ^7.2.0 "@types/jest": ^27.4.0 "@types/node": ^17.0.9