import { ParamsModel } from "./analyzer.js";
import { Preset } from "./parser.js";
import { PresetLibrary } from "./presetLibrary.js";
import { Config } from "./config.js";
/**
 * Fully randomized presets, with real values from library
 */
export declare function generateFullyRandomPresets(presetLibrary: PresetLibrary, paramModel: ParamsModel, config: Config): PresetLibrary;
/**
 * Randomize a given preset, with specific randomization ratio
 */
export declare function generateRandomizedPresets(presetLibrary: PresetLibrary, paramModel: ParamsModel, config: Config): PresetLibrary;
/**
 * Merge multiple presets together, with randomization amount
 */
export declare function generateMergedPresets(presetLibrary: PresetLibrary, paramModel: ParamsModel, config: Config): PresetLibrary;
export declare function getRandomArrayItem<T>(list: T[]): T;
export declare function randomizePreset(basePreset: Preset, paramModel: ParamsModel, config: Config): Preset;
