contingent
Version:
Create cryptographically-strong random numbers in node.js or the browser
21 lines (20 loc) • 729 B
TypeScript
/// <reference types="node" />
import { ICryptoLib } from './crypto-lib';
declare type CreateFn<T> = () => T;
export declare function core(crypto: ICryptoLib): {
randomBytes: (n: number) => Buffer | DataView;
randomBit: () => boolean;
randomByte: () => number;
randomInt: () => number;
randomUInt: () => number;
randomFloat: () => number;
randomIn: (min: number, max: number) => number;
randomOf: <T>(list: T[]) => T;
roll: (n: number) => number;
shuffle: <T>(list: T[]) => T[];
pick: <T>(n: number, list: T[]) => T[];
select: <T>(n: number, list: T[]) => T[];
replace: <T>(list: T[], value: T) => T[];
generate: <T>(len: number, create: CreateFn<T>) => T[];
};
export {};