// Type definitions for seedrandom 3.0 // Project: https://github.com/davidbau/seedrandom // Definitions by: Kern Handa // Eugene Zaretskiy // Martin Badin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped declare namespace seedrandom { type State = object; interface Callback { (prng?: prng, shortseed?: string, global?: boolean, state?: State): prng; } interface Options { entropy?: boolean | undefined; global?: boolean | undefined; pass?: Callback | undefined; state?: boolean | State | undefined; } } interface prng { (): number; double(): number; int32(): number; quick(): number; state(): seedrandom.State; } interface seedrandom { (seed?: string, options?: seedrandom.Options, callback?: seedrandom.Callback): prng; alea(seed?: string, options?: seedrandom.Options): prng; Alea: new (seed?: string) => prng; tychei(seed?: string, options?: seedrandom.Options): prng; Tychei: new (seed?: string) => prng; xor128(seed?: string, options?: seedrandom.Options): prng; Xor128: new (seed?: string) => prng; xor4096(seed?: string, options?: seedrandom.Options): prng; Xor4096: new (seed?: string) => prng; xorshift7(seed?: string, options?: seedrandom.Options): prng; XorShift7: new (seed?: string) => prng; xorwow(seed?: string, options?: seedrandom.Options): prng; XorWow: new (seed?: string) => prng; } declare const seedrandom: seedrandom; export = seedrandom;