UNPKG

yescrypt-wasm

Version:
103 lines (101 loc) 5.68 kB
declare namespace RuntimeExports { /** * @param {string|null=} returnType * @param {Array=} argTypes * @param {Array=} args * @param {Object=} opts */ function ccall(ident: any, returnType?: (string | null) | undefined, argTypes?: any[] | undefined, args?: any[] | undefined, opts?: Object | undefined): any; /** * @param {string=} returnType * @param {Array=} argTypes * @param {Object=} opts */ function cwrap(ident: any, returnType?: string | undefined, argTypes?: any[] | undefined, opts?: Object | undefined): any; /** * Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the * emscripten HEAP, returns a copy of that string as a Javascript String object. * * @param {number} ptr * @param {number=} maxBytesToRead - An optional length that specifies the * maximum number of bytes to read. You can omit this parameter to scan the * string until the first 0 byte. If maxBytesToRead is passed, and the string * at [ptr, ptr+maxBytesToReadr[ contains a null byte in the middle, then the * string will cut short at that byte index. * @param {boolean=} ignoreNul - If true, the function will not stop on a NUL character. * @return {string} */ function UTF8ToString(ptr: number, maxBytesToRead?: number | undefined, ignoreNul?: boolean | undefined): string; let HEAPU8: Uint8Array; } export interface WasmModule { _yescrypt_kdf_full(_0: number, _1: number, _2: number, _3: number, _4: number, _5: BigInt, _6: number, _7: number, _8: number, _9: number, _10: number, _11: number): number; _scrypt_kdf_wasm(_0: number, _1: number, _2: number, _3: number, _4: BigInt, _5: number, _6: number, _7: number): number; _malloc(_0: number): number; _yescrypt_kdf_wasm(_0: number, _1: number, _2: number, _3: number, _4: BigInt, _5: number, _6: number, _7: number): number; _scrypt_hash(_0: number, _1: number, _2: number, _3: number, _4: BigInt, _5: number, _6: number, _7: number): number; _scrypt_hash_full(_0: number, _1: number, _2: number, _3: number, _4: number, _5: BigInt, _6: number, _7: number, _8: number, _9: number): number; _free(_0: number): void; _yescrypt_hash(_0: number, _1: number, _2: number, _3: number, _4: BigInt, _5: number, _6: number, _7: number): number; _yescrypt_hash_full_str(_0: number, _1: number, _2: number, _3: number, _4: number, _5: BigInt, _6: number, _7: number, _8: number, _9: number): number; } export type MainModule = WasmModule & typeof RuntimeExports; export declare function bytesToBase64(bytes: Uint8Array): string; export declare function base64ToBytes(base64: string): Uint8Array; export declare function bytesToHex(bytes: Uint8Array, prefix?: boolean): string; export declare function hexToBytes(hexStr: string): Uint8Array; export type yescrypt_kdf_wasm = (passwd: number, passwdLen: number, salt: number, saltLen: number, N: bigint, r: number, p: number, t: number) => number; export type yescrypt_kdf_full = (flags: number, passwd: number, passwdLen: number, salt: number, saltLen: number, N: bigint, r: number, p: number, t: number, g: number, output: number, outputLen: number) => number; export type yescrypt_hash_full_ptr = (flags: number, passwd: number, passwdLen: number, salt: number, saltLen: number, N: bigint, r: number, p: number, t: number, g: number) => number; /** * yescrypt flag constants (see yescrypt-c/yescrypt.h). OR these together to * build a custom `flags` value. YESCRYPT_DEFAULTS is what the yescrypt_* helpers * use by default; scrypt_* helpers use 0 (classic scrypt). */ export declare const YESCRYPT_WORM = 1; export declare const YESCRYPT_RW = 2; export declare const YESCRYPT_ROUNDS_3 = 0; export declare const YESCRYPT_ROUNDS_6 = 4; export declare const YESCRYPT_GATHER_1 = 0; export declare const YESCRYPT_GATHER_2 = 8; export declare const YESCRYPT_GATHER_4 = 16; export declare const YESCRYPT_GATHER_8 = 24; export declare const YESCRYPT_SIMPLE_1 = 0; export declare const YESCRYPT_SIMPLE_2 = 32; export declare const YESCRYPT_SIMPLE_4 = 64; export declare const YESCRYPT_SIMPLE_8 = 96; export declare const YESCRYPT_SBOX_6K = 0; export declare const YESCRYPT_SBOX_12K = 128; export declare const YESCRYPT_SBOX_24K = 256; export declare const YESCRYPT_SBOX_48K = 384; export declare const YESCRYPT_SBOX_96K = 512; export declare const YESCRYPT_SBOX_192K = 640; export declare const YESCRYPT_SBOX_384K = 768; export declare const YESCRYPT_SBOX_768K = 896; export declare const YESCRYPT_RW_DEFAULTS: number; export declare const YESCRYPT_DEFAULTS: number; export declare class Yescrypt { nByte: number; Module: MainModule & { HEAPU8: Uint8Array; }; scrypt_kdf_wasm: yescrypt_kdf_wasm; yescrypt_kdf_wasm: yescrypt_kdf_wasm; yescrypt_kdf_full_: yescrypt_kdf_full; yescrypt_hash_full_: yescrypt_hash_full_ptr; scrypt_hash_full_: yescrypt_hash_full_ptr; constructor(Module: MainModule & { HEAPU8: Uint8Array; }); static init(): Promise<Yescrypt>; arrayToPtr(array: Uint8Array): number; ptrToArray(ptr: number, length: number): Uint8Array; freePtr(ptr: number): void; private runKdf; private runHash; scrypt_kdf(passwd: Uint8Array, salt: Uint8Array, N?: number, r?: number, p?: number, t?: number, flags?: number, g?: number, dklen?: number): Uint8Array; yescrypt_kdf(passwd: Uint8Array, salt: Uint8Array, N?: number, r?: number, p?: number, t?: number, flags?: number, g?: number, dklen?: number): Uint8Array; scrypt_hash(passwd: Uint8Array, salt: Uint8Array, N?: number, r?: number, p?: number, t?: number, flags?: number, g?: number): string; yescrypt_hash(passwd: Uint8Array, salt: Uint8Array, N?: number, r?: number, p?: number, t?: number, flags?: number, g?: number): string; } export {};