gnablib
Version:
A lean, zero dependency library to provide a useful base for your project.
23 lines (22 loc) • 1.05 kB
TypeScript
/*! Copyright 2024-2025 the gnablib contributors MPL-1.1 */
import { APrng32 } from './APrng32.js';
export declare class Mcg extends APrng32<Uint32Array> {
protected readonly _shift: number;
readonly bitGen: number;
readonly safeBits: number;
protected constructor(state: Uint32Array, shift: number, saveable: boolean);
protected trueSave(): Uint8Array<ArrayBuffer>;
rawNext(): number;
get [Symbol.toStringTag](): string;
static new16807(saveable?: boolean): Mcg;
static new48271(saveable?: boolean): Mcg;
static new69621(saveable?: boolean): Mcg;
static newRandu(saveable?: boolean): Mcg;
static newMsvc(saveable?: boolean): Mcg;
static seed16807(seed: number, saveable?: boolean): Mcg;
static seed48271(seed: number, saveable?: boolean): Mcg;
static seed69621(seed: number, saveable?: boolean): Mcg;
static seedRandu(seed: number, saveable?: boolean): Mcg;
static seedMsvc(seed: number, saveable?: boolean): Mcg;
static restore(state: Uint8Array, saveable?: boolean): Mcg;
}