gnablib
Version:
A lean, zero dependency library to provide a useful base for your project.
42 lines (41 loc) • 1.11 kB
TypeScript
/*! Copyright 2022-2025 the gnablib contributors MPL-1.1 */
import type { IHash } from '../interfaces/IHash.js';
type ivFunc = (state: Uint32Array) => void;
type hashFunc = (state: Uint32Array, x: Uint32Array) => void;
declare class RipeMd implements IHash {
#private;
readonly size: number;
readonly blockSize = 64;
private _ingestBytes;
private _bPos;
private readonly _hash;
constructor(digestSize: number, iv: ivFunc, hash: hashFunc);
private hash;
write(data: Uint8Array): void;
sum(): Uint8Array;
sumIn(): Uint8Array;
reset(): void;
newEmpty(): IHash;
clone(): IHash;
}
export declare class RipeMd128 extends RipeMd {
constructor();
private static iv;
private static hash;
}
export declare class RipeMd160 extends RipeMd {
constructor();
private static iv;
private static hash;
}
export declare class RipeMd256 extends RipeMd {
constructor();
private static iv;
private static hash;
}
export declare class RipeMd320 extends RipeMd {
constructor();
private static iv;
private static hash;
}
export {};