@nori-zk/mina-token-bridge
Version:
A Mina zk-program contract allowing users to mint tokens on Nori Bridge.
30 lines (29 loc) • 1.62 kB
TypeScript
import { JsonProof } from 'o1js';
/**
* Specification of the methods exposed by MockVerificationWorker
* for parent proxying and testing.
*/
export declare const mockVerificationWorkerSpec: {
/**
* Compiles all required programs and contracts.
*/
readonly compile: () => Promise<void>;
/**
* Computes the end-to-end prerequisites proof from given inputs.
* @param credentialAttestationHashBigIntStr - The credential attestation hash as a BigInt string
* @param ethVerifierProofJson - JSON proof of the Ethereum verifier
* @param depositAttestationProofJson - JSON proof of the contract deposit attestor
* @returns JSON representation of the computed E2E proof
*/
readonly computeE2EPrerequisites: (credentialAttestationHashBigIntStr: string, ethVerifierProofJson: JsonProof, depositAttestationProofJson: JsonProof) => Promise<any>;
/**
* Verifies a full end-to-end proof including Ethereum verifier proof,
* deposit attestation proof, and ECDSA presentation.
* @param ethVerifierProofJson - JSON proof of the Ethereum verifier
* @param depositAttestationProofJson - JSON proof of the contract deposit attestor
* @param presentationJsonStr - JSON string of the presentation
* @param senderPrivateKeyBase58 - Base58-encoded sender private key
* @param zkAppPrivateKeyBase58 - Base58-encoded zkApp private key
*/
readonly verify: (ethVerifierProofJson: JsonProof, depositAttestationProofJson: JsonProof, presentationJsonStr: string, senderPrivateKeyBase58: string, zkAppPrivateKeyBase58: string) => Promise<void>;
};