import { PublicKey, Bool, Unconstrained, Bytes, Field } from 'o1js'; export { ZkPass, type ZkPassResponseItem }; /** * Utilities to help process zkpass responses. */ declare const ZkPass: { importCredentialPartial: typeof importCredentialPartial; verifyPublicInput: typeof verifyPublicInput; encodeParameters: typeof encodeParameters; genPublicFieldHash: typeof genPublicFieldHash; CredentialPartial(): Promise, { nullifier: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; publicFieldsHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }>; program: { publicInputType: import("o1js").Provable<{ schema: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; taskId: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; validatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorSignature: { r: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; s: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; }; allocatorParityBit: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool; }, { schema: { bytes: { value: bigint; }[]; }; taskId: { bytes: { value: bigint; }[]; }; validatorAddress: { bytes: { value: bigint; }[]; }; allocatorAddress: { bytes: { value: bigint; }[]; }; allocatorSignature: { r: bigint; s: bigint; }; allocatorParityBit: boolean; }>; publicOutputType: import("../o1js-missing.ts").ProvableType>; analyzeMethods(): Promise>; maxProofsVerified(): Promise<0 | 1 | 2>; compile: (options?: { cache?: import("o1js").Cache; forceRecompile?: boolean; proofsEnabled?: boolean; }) => Promise<{ verificationKey: import("o1js").VerificationKey; }>; run(...inputs: any): Promise<{ proof: import("o1js").Proof<{ schema: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; taskId: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; validatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorSignature: { r: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; s: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; }; allocatorParityBit: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool; }, import("../credential.ts").Credential<{ nullifier: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; publicFieldsHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }>>; auxiliaryOutput: undefined; }>; }; isCompiled: boolean; verificationKey: import("o1js").VerificationKey | undefined; create(...inputs: any): Promise>; fromProof(proof: import("o1js").Proof<{ schema: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; taskId: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; validatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; allocatorSignature: { r: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; s: [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field]; }; allocatorParityBit: import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool; }, import("../credential.ts").Credential<{ nullifier: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; publicFieldsHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }>>, vk: import("o1js").VerificationKey): Promise>; compile(options?: { cache?: import("o1js").Cache; forceRecompile?: boolean; proofsEnabled?: boolean; } | undefined): Promise; dummy({ owner, data, }: import("../credential.ts").Credential<{ nullifier: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; publicFieldsHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; } | { nullifier: { bytes: { value: bigint; }[]; }; publicFieldsHash: { bytes: { value: bigint; }[]; }; }>): Promise>; }, "create"> & { create(inputs: { publicInput: { schema: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; taskId: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; validatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; allocatorSignature: { r: bigint | [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field] | import("node_modules/o1js/dist/node/lib/provable/gadgets/foreign-field.js").Field3; s: bigint | [import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field, import("node_modules/o1js/dist/node/lib/provable/field.js").Field] | import("node_modules/o1js/dist/node/lib/provable/gadgets/foreign-field.js").Field3; }; allocatorParityBit: boolean | import("node_modules/o1js/dist/node/lib/provable/bool.js").Bool; }; privateInput: { uHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; publicFieldsHash: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; validatorSignature: import("o1js").EcdsaSignature | { r: bigint; s: bigint; }; validatorParityBit: boolean | Unconstrained; }; owner: PublicKey; }): Promise>; }>; compileDependenciesPartial({ proofsEnabled }?: { proofsEnabled?: boolean | undefined; }): Promise; CredentialFull(): Promise, { allocatorMessage: import("../dynamic.ts").DynamicBytesBase; validatorMessage: import("../dynamic.ts").DynamicBytesBase; }>; program: { publicInputType: import("o1js").Provable<{ allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }, { allocatorAddress: { bytes: { value: bigint; }[]; }; }>; publicOutputType: import("../o1js-missing.ts").ProvableType>; analyzeMethods(): Promise>; maxProofsVerified(): Promise<0 | 1 | 2>; compile: (options?: { cache?: import("o1js").Cache; forceRecompile?: boolean; proofsEnabled?: boolean; }) => Promise<{ verificationKey: import("o1js").VerificationKey; }>; run(...inputs: any): Promise<{ proof: import("o1js").Proof<{ allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }, import("../credential.ts").Credential<{ allocatorMessage: import("../dynamic.ts").DynamicBytesBase; validatorMessage: import("../dynamic.ts").DynamicBytesBase; }>>; auxiliaryOutput: undefined; }>; }; isCompiled: boolean; verificationKey: import("o1js").VerificationKey | undefined; create(...inputs: any): Promise>; fromProof(proof: import("o1js").Proof<{ allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes; }, import("../credential.ts").Credential<{ allocatorMessage: import("../dynamic.ts").DynamicBytesBase; validatorMessage: import("../dynamic.ts").DynamicBytesBase; }>>, vk: import("o1js").VerificationKey): Promise>; compile(options?: { cache?: import("o1js").Cache; forceRecompile?: boolean; proofsEnabled?: boolean; } | undefined): Promise; dummy({ owner, data, }: import("../credential.ts").Credential<{ allocatorMessage: import("../dynamic.ts").DynamicBytesBase; validatorMessage: import("../dynamic.ts").DynamicBytesBase; } | { allocatorMessage: Uint8Array; validatorMessage: Uint8Array; }>): Promise>; }, "create"> & { create(inputs: { publicInput: { allocatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; }; privateInput: { allocatorMessage: Uint8Array | import("../dynamic.ts").DynamicBytesBase; allocatorSignature: import("o1js").EcdsaSignature | { r: bigint; s: bigint; }; allocatorParityBit: boolean | Unconstrained; validatorMessage: Uint8Array | import("../dynamic.ts").DynamicBytesBase; validatorSignature: import("o1js").EcdsaSignature | { r: bigint; s: bigint; }; validatorParityBit: boolean | Unconstrained; validatorAddress: import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes | { bytes: { value: bigint; }[]; }; }; owner: PublicKey; }): Promise>; }>; compileDependenciesFull({ proofsEnabled }?: { proofsEnabled?: boolean | undefined; }): Promise; }; type Type = 'bytes32' | 'address'; type PublicField = string | ({ [key: string]: PublicField; } & { str?: string; }); type ZkPassResponseItem = { taskId: string; publicFields: PublicField[]; allocatorAddress: string; publicFieldsHash: string; allocatorSignature: string; uHash: string; validatorAddress: string; validatorSignature: string; }; declare function importCredentialPartial(owner: PublicKey, schema: string, response: ZkPassResponseItem, log?: (msg: string) => void, { proofsEnabled }?: { proofsEnabled?: boolean | undefined; }): Promise>; type Field3 = [Field, Field, Field]; /** * Verify the public input of a partial zkpass credential. * * Returns the allocator address and schema id for further verification against * expected values. * * This is a verification step that can be done in the clear, and is * outsourced from the proof to the verifier. */ declare function verifyPublicInput(publicInput: { schema: Bytes; taskId: Bytes; validatorAddress: Bytes; allocatorAddress: Bytes; allocatorSignature: { r: Field3; s: Field3; }; allocatorParityBit: Bool; }): { allocatorAddress: string; schema: string; }; declare function encodeParameters(types: Type[], values: Uint8Array[]): Uint8Array; declare function genPublicFieldHash(publicFields: PublicField[]): import("node_modules/o1js/dist/node/lib/provable/bytes.js").Bytes;