@nori-zk/mina-token-bridge
Version:
A Mina zk-program contract allowing users to mint tokens on Nori Bridge.
40 lines (39 loc) • 2.75 kB
TypeScript
import { ContractDeposit } from '@nori-zk/o1js-zk-utils';
import { EthInput } from '@nori-zk/o1js-zk-utils';
import { UInt64 } from 'o1js';
export declare function compileDepositAttestationPreRequisites(): Promise<void>;
export declare function computeDepositAttestation(depositBlockNumber: number, ethAddressLowerHex: string, attestationBEHex: string): Promise<{
depositAttestationProof: {
publicInput: {
rootHash: import("o1js").Field;
path: InstanceType<{
new (array: import("o1js/dist/node/lib/provable/field.js").Field[], length: import("o1js").Field): import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayBase<import("o1js/dist/node/lib/provable/field.js").Field, bigint>;
readonly maxLength: number;
} & Omit<import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayClass<import("o1js/dist/node/lib/provable/field.js").Field, bigint>, "provable"> & {
provable: Omit<import("o1js").ProvableHashable<import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayBase<import("o1js/dist/node/lib/provable/field.js").Field, bigint>, bigint[]>, "fromValue"> & {
fromValue: (value: import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayBase<import("o1js/dist/node/lib/provable/field.js").Field, bigint> | (bigint | import("o1js/dist/node/lib/provable/field.js").Field)[]) => import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayBase<import("o1js/dist/node/lib/provable/field.js").Field, bigint>;
} & Omit<import("o1js").ProvablePure<import("mina-attestations/build/src/dynamic/dynamic-array.js").DynamicArrayBase<import("o1js/dist/node/lib/provable/field.js").Field, bigint>, bigint[]>, "fromValue">;
}>;
index: import("o1js").UInt64;
value: ContractDeposit;
};
publicOutput: import("o1js").Field;
verify(): void;
verifyIf(condition: import("o1js").Bool): void;
proof: import("o1js/dist/node/snarky.js").Pickles.Proof;
maxProofsVerified: 0 | 1 | 2;
shouldVerify: import("o1js/dist/node/lib/provable/bool.js").Bool;
declare(): boolean;
toJSON(): import("o1js").JsonProof;
publicFields(): {
input: import("o1js/dist/node/lib/provable/field.js").Field[];
output: import("o1js/dist/node/lib/provable/field.js").Field[];
};
};
ethVerifierProof: import("o1js").Proof<EthInput, import("o1js/dist/node/lib/provable/field.js").Field>;
despositSlotRaw: {
slot_key_address: string;
slot_nested_key_attestation_hash: string;
value: string;
};
}>;