import RandomNumber from "./RandomNumber";
export interface RNGCapture {
    seed: number;
    rollingseed: number;
}
export default class RNG {
    readonly seed: number;
    private rollingseed;
    constructor(seed: number);
    /**
     * Returns a pseudo-random number between 0-1. As a RandomNumber class.
     */
    nextValue(): RandomNumber;
    /**
      Returns a static capture of the RNG configuration.
     */
    capture(): RNGCapture;
    private fade;
    private lerp;
    private grad;
    private hash;
    perlin1D(x: number): RandomNumber;
    perlin2D(x: number, y: number): RandomNumber;
    perlin3D(x: number, y: number, z: number): RandomNumber;
    fbm1D(x: number, octaves?: number, frequency?: number, lacunarity?: number, gain?: number): RandomNumber;
    fbm2D(x: number, y: number, octaves?: number, frequency?: number, lacunarity?: number, gain?: number): RandomNumber;
    fbm3D(x: number, y: number, z: number, octaves?: number, frequency?: number, lacunarity?: number, gain?: number): RandomNumber;
}
//# sourceMappingURL=RNG.d.ts.map