mina-zkml
Version:
Zero-knowledge machine learning for Mina Protocol
25 lines (24 loc) • 939 B
TypeScript
import { WasmProverOutput, WasmVerifierSystem } from '../pkg/mina_zkml.js';
export type RunArgs = {
variables: {
[key: string]: number;
};
};
export type VarVisibility = {
input: "Public" | "Private";
output: "Public" | "Private";
};
export declare class ZKML {
private proofSystem;
private static initialized;
private static initPromise;
private constructor();
private static initialize;
private static loadModelBytes;
static create(modelPath: string, runArgs?: RunArgs, visibility?: VarVisibility): Promise<ZKML>;
prove(inputs: number[][]): Promise<WasmProverOutput>;
exportVerifier(): Promise<WasmVerifierSystem>;
serializeVerifier(): Promise<string>;
static deserializeVerifier(serialized: string): Promise<WasmVerifierSystem>;
static verify(proof: string, verifier: WasmVerifierSystem, publicInputs?: number[][], publicOutputs?: number[][]): Promise<boolean>;
}