interface AlphabateOptions {
    lowercase?: boolean;
    uppercase?: boolean;
}

interface GenerateArrayOptions {
    min?: number;
    max?: number;
}
declare const Generate: {
    /**
     * Generate a random alphanumeric string of a given length.
     * @param len Length of the string (default 4).
     */
    alphanum(len?: number): string;
    /**
     * Generate a MongoDB-style ObjectId.
     */
    objectId(): string;
    /**
     * Generate a random integer in [min, max). Includes min, excludes max.
     */
    int(min: number, max: number): number;
    /**
     * Generate a random float in [min, max).
     */
    random(min: number, max: number): number;
    /**
     * Generate an array of random integers.
     * @param len Length of the array.
     * @param ops min/max bounds for each integer (default min=0, max=11).
     */
    array(len: number, ops?: GenerateArrayOptions): number[];
    /**
     * Generate a random alphabetic string.
     * @param len Length of the string (default 5).
     * @param options lowercase/uppercase toggles.
     */
    alphabate(len?: number, options?: AlphabateOptions): string;
    /** @returns Current date as "YYYY-MM-DD" */
    currentDate(): string;
    /** @returns Current time as "HH:mm:ss" */
    currentTime(): string;
    /** @returns Current datetime as "YYYY-MM-DD HH:mm:ss" */
    currentDateTime(): string;
    /**
     * Generate a list of date strings matching specified days of the week.
     * @param f From date "YYYY-MM-DD"
     * @param t To date "YYYY-MM-DD"
     * @param days Day indices 0–6 (Sunday=0, Saturday=6)
     */
    listOfDateOfDays(f: string, t: string, days: number[]): string[];
    /**
     * Fast RFC4122 v4 UUID generator.
     * @author Jeff Ward (jcward.com) — MIT license
     */
    uuidv4(): string;
};

export { Generate };
