import { type NumberFactory } from './factory'; import { type RoundingInput } from './round'; /** * Factory that generates random numbers. */ export type RandomNumberFactory = NumberFactory; /** * randomNumberFactory configuration */ export interface RandomNumberFactoryConfig { /** * Rounding configuration. * * No rounding by default. */ round?: RoundingInput; /** * Minimum number (inclusive) */ min?: number; /** * Max number (exclusive) */ max: number; } export type RandomNumberFactoryInput = number | RandomNumberFactoryConfig; /** * Creates a factory that generates random numbers within a configured range. * * Accepts either a simple max number or a full config object with min, max, and rounding options. * * @param maxOrArgs - Maximum value (exclusive) or full configuration object * @param roundingInput - Optional rounding mode override * @returns A factory function that produces random numbers within the range */ export declare function randomNumberFactory(maxOrArgs: RandomNumberFactoryInput, roundingInput?: RoundingInput): RandomNumberFactory; /** * Generates a single random number using {@link randomNumberFactory}. Convenience function for one-off usage. * * @param maxOrArgs - Maximum value (exclusive) or full configuration object * @param roundingInput - Optional rounding mode * @returns A single random number */ export declare function randomNumber(maxOrArgs: RandomNumberFactoryInput, roundingInput?: RoundingInput): number;