/** * Copyright (c) 2017-2025 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author David Sehnal * @author Alexander Rose * @author Adam Midlik */ export declare function hash1(i: number): number; export declare function hash2(i: number, j: number): number; export declare function hash3(i: number, j: number, k: number): number; export declare function hash4(i: number, j: number, k: number, l: number): number; export declare function hashString(s: string): number; /** * A unique number for each pair of integers * Biggest representable pair is (67108863, 67108863) (limit imposed by Number.MAX_SAFE_INTEGER) */ export declare function cantorPairing(a: number, b: number): number; /** * A unique number for each sorted pair of integers * Biggest representable pair is (67108863, 67108863) (limit imposed by Number.MAX_SAFE_INTEGER) */ export declare function sortedCantorPairing(a: number, b: number): number; export declare function invertCantorPairing(out: [number, number], z: number): [number, number]; /** * 32 bit FNV-1a hash, see http://isthe.com/chongo/tech/comp/fnv/ */ export declare function hashFnv32a(array: ArrayLike): number; /** * 256 bit FNV-1a hash, returns 8 32-bit words * Based on the FNV-1a algorithm extended to 256 bits */ export declare function hashFnv256a(array: ArrayLike, out: Uint32Array): Uint32Array; /** * 256-bit object hash function using FNV-1a */ export declare function hashFnv256o(obj: any): string; /** * 32-bit Murmur hash */ export declare function hashMurmur32o(obj: any, seed?: number): number; /** * 128-bit Murmur hash */ export declare function hashMurmur128o(obj: any, seed?: number): string; /** * MurmurHash3 32-bit implementation * @param key - The input string to hash * @param seed - The seed value (default: 0) * @returns The 32-bit hash as a number */ export declare function murmurHash3_32(key: string, seed: number): number; /** * MurmurHash3 128-bit implementation * @param key - The input data to hash * @param seed - The seed value (default: 0) * @returns The 128-bit hash as a hexadecimal string */ export declare function murmurHash3_128_fromBytes(key: Uint8Array, seed: number): string; /** * MurmurHash3 128-bit implementation * @param key - The input string to hash * @param seed - The seed value (default: 0) * @returns The 128-bit hash as a hexadecimal string */ export declare function murmurHash3_128(key: string, seed: number): string; /** * PCG pseudo-random number generator * See https://www.pcg-random.org/ and https://jcgt.org/published/0009/03/02/ */ export declare class PCG { private state; constructor(seed?: number); /** * 32-bit unsigned integer */ int(): number; /** * Float in [0, 1) */ float(): number; }