import { Field, type ProvableType } from 'o1js'; import { type EthVerifier } from './ethVerifier.js'; import { type Tuple } from 'o1js/dist/node/lib/util/types.js'; import { type PrivateInput, type ZkProgram as ZkProgramFunc } from 'o1js/dist/node/lib/proof-system/zkprogram.js'; import { type ConversionOutput, type SP1ProofWithPublicValuesPlonkNoTee } from '@nori-zk/proof-conversion/build/src/index.min.js'; export type Constructor = new (...args: any[]) => T; export type ZkProgram; auxiliaryOutput?: ProvableType; }; }; }> = ReturnType>; export type CompilableZkProgram = { compile: (options?: unknown) => Promise<{ verificationKey: { data: string; hash: Field; }; }>; }; export interface CreateProofArgument { sp1PlonkProof: SP1ProofWithPublicValuesPlonkNoTee; conversionOutputProof: ConversionOutput; } export type EthVerifierComputeOutput = Awaited>; export type VerificationKey = { data: string; hash: Field; }; declare const Bytes32_base: typeof import("o1js/dist/node/lib/provable/bytes.js").Bytes; export declare class Bytes32 extends Bytes32_base { static get zero(): Bytes32; } declare const Bytes20_base: typeof import("o1js/dist/node/lib/provable/bytes.js").Bytes; export declare class Bytes20 extends Bytes20_base { static get zero(): Bytes20; static fromHex(hex: string): Bytes20; toField(): Field; } export declare function bytes32FieldPairToBytes32(highByteField: Field, lowerBytesField: Field): import("o1js/dist/node/lib/provable/bytes.js").Bytes; declare const Bytes32FieldPair_base: (new (value: { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }) => { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }) & { _isStruct: true; } & Omit, "fromFields"> & { fromFields: (fields: import("o1js/dist/node/lib/provable/field.js").Field[]) => { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }; } & { fromValue: (value: { highByteField: string | number | bigint | import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: string | number | bigint | import("o1js/dist/node/lib/provable/field.js").Field; }) => { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }; toInput: (x: { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }) => { fields?: Field[] | undefined; packed?: [Field, number][] | undefined; }; toJSON: (x: { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }) => { highByteField: string; lowerBytesField: string; }; fromJSON: (x: { highByteField: string; lowerBytesField: string; }) => { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }; empty: () => { highByteField: import("o1js/dist/node/lib/provable/field.js").Field; lowerBytesField: import("o1js/dist/node/lib/provable/field.js").Field; }; }; export declare class Bytes32FieldPair extends Bytes32FieldPair_base { static fromBytes32(bytes32: Bytes32): Bytes32FieldPair; toBytes32(): Bytes32; } export {};