semaphore-rs-js
Version:
Rust support library for Semaphore
52 lines (47 loc) • 2.5 kB
TypeScript
/* tslint:disable */
/* eslint-disable */
/**
* Compresses a Groth16 proof
* @param proof - An array of 8 hex encoded strings (with optional 0x prefixes) that represent an uncompressed proof
* @returns An array of 4 0x prefixed, hex encoded strings represeting a compressed proof
*/
export function compressProof(proof: [string, string, string, string, string, string, string, string]): [string, string, string, string];
/**
* Decompresses a Groth16 proof
* @param compressedProof - An array of 4 hex encoded strings (with optional 0x prefixes) that represent a compressed proof
* @returns An array of 8 0x prefixed, hex encoded strings representing an uncompressed proof
*/
export function decompressProof(compressedProof: [string, string, string, string]): [string, string, string, string, string, string, string, string];
export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
export interface InitOutput {
readonly memory: WebAssembly.Memory;
readonly compressProof: (a: number, b: number) => [number, number, number, number];
readonly decompressProof: (a: number, b: number) => [number, number, number, number];
readonly __wbindgen_malloc: (a: number, b: number) => number;
readonly __wbindgen_realloc: (a: number, b: number, c: number, d: number) => number;
readonly __wbindgen_export_2: WebAssembly.Table;
readonly __externref_table_alloc: () => number;
readonly __externref_table_dealloc: (a: number) => void;
readonly __externref_drop_slice: (a: number, b: number) => void;
readonly __wbindgen_free: (a: number, b: number, c: number) => void;
readonly __wbindgen_start: () => void;
}
export type SyncInitInput = BufferSource | WebAssembly.Module;
/**
* Instantiates the given `module`, which can either be bytes or
* a precompiled `WebAssembly.Module`.
*
* @param {{ module: SyncInitInput }} module - Passing `SyncInitInput` directly is deprecated.
*
* @returns {InitOutput}
*/
export function initSync(module: { module: SyncInitInput } | SyncInitInput): InitOutput;
/**
* If `module_or_path` is {RequestInfo} or {URL}, makes a request and
* for everything else, calls `WebAssembly.instantiate` directly.
*
* @param {{ module_or_path: InitInput | Promise<InitInput> }} module_or_path - Passing `InitInput` directly is deprecated.
*
* @returns {Promise<InitOutput>}
*/
export default function __wbg_init (module_or_path: { module_or_path: InitInput | Promise<InitInput> } | InitInput | Promise<InitInput>): Promise<InitOutput>;