/**
 * Static seeds used to generate different types of "random" hashes.
 * Changing these WILL change existing bucketing decisions!
 */
type HashSeed = number;
declare namespace HashSeed {
    let IGNORING: number;
    let BUCKETING: number;
    let FALLBACK: number;
    let HOLDBACK: number;
    let BEHAVIOR_EVENT: number;
}
/**
 * Returns hashed value as a hex string.
 * @param {string} data A byte string to run murmur on. A byte string has no characters with a
 *   code point > 255. When in doubt pass ASCII or pass the string through optly.hashing.toByteString.
 * @param {number} seed The seed to use for murmur.
 * @return {string} Hashed value as a hexadecimal string.
 */
export function hashToHex(data: string, seed: number): string;
/**
 * Returns an integer in [0, maxInt), representing the hash of data with the current seed
 * @param {string} data
 * @param {number} seed Seed for murmur3.
 * @param {number} maxInt Maximum integer.
 * @return {number} Integer in range [0, maxInt).
 */
export function hashToInt(data: string, seed: number, maxInt: number): number;
/**
 * Returns a hash value in [0, 1.0) using murmur3.
 * @param {string} data A byte string to run murmur on. A byte string has no characters with a
 *   code point > 255. When in doubt pass ASCII or pass the string through toByteString.
 * @param {number} seed The seed to use for murmur.
 * @returns {number} A hash value in [0, 1).
 */
export function hashToReal(data: string, seed: number): number;
/**
 * Returns a byte string version of the given string. Any characters with a code point of less than 255
 * will be converted into a single byte/character. All other characters will be converted into two or
 * three bytes/characters.
 * @param {string} string A string to convert to a byte string.
 * @return {string} A hexadecimal string.
 */
export function toByteString(string: string): string;
export { HashSeed as Seed };
