mina-zkml
Version:
Zero-knowledge machine learning for Mina Protocol
65 lines (56 loc) • 1.67 kB
TypeScript
/* tslint:disable */
/* eslint-disable */
export function wasm_init(): void;
export function wasm_main(): void;
export type RunArgs = {
variables: { [key: string]: number };
};
export type VarVisibility = {
input: "Public" | "Private";
output: "Public" | "Private";
};
export interface RunArgs {
variables: { [key: string]: number };
}
export interface VarVisibility {
input: "Public" | "Private";
output: "Public" | "Private";
}
export interface ProverOutput {
output?: number[][];
proof: string;
verifier_index: string;
}
export class WasmVerifierSystem {
constructor(verifier_index_js: string);
serialize(): string;
static deserialize(data: string): WasmVerifierSystem;
readonly verifier_index: string;
verify(proof_js: string, public_inputs_js: number[][] | null, public_outputs_js: number[][] | null): Promise<boolean>;
}
export class WasmModel {
free(): void;
constructor(model_bytes: Uint8Array, run_args_js: any, visibility_js: any);
save(): Uint8Array;
}
export class WasmProverOutput {
private constructor();
free(): void;
readonly output: any;
readonly proof: string;
readonly verifier_index: string;
}
export class WasmProverSystem {
free(): void;
constructor(model_bytes: Uint8Array, run_args_js: any, visibility_js: any);
prove(inputs_js: any): Promise<any>;
verifier(): WasmVerifierSystem;
}
export class WasmVerifierSystem {
private constructor();
free(): void;
serialize(): string;
static deserialize(data: string): WasmVerifierSystem;
verify(proof_js: any, public_inputs_js: any, public_outputs_js: any): boolean;
readonly verifier_index: string;
}