/**
 * Data generation utilities for creating realistic mock data
 */
import type { DateRangeOptions, NumberRangeOptions, StringGenerationOptions, ArrayGenerationOptions, PersonMockOptions, CompanyMockOptions, AddressMockOptions } from './types';
/**
 * Generate a UUID
 */
export declare function generateId(): string;
/**
 * Generate a random integer between min and max (inclusive)
 */
export declare function generateNumber(min?: number, max?: number, decimals?: number): number;
/**
 * Generate a random number within a range
 */
export declare function generateNumberInRange(options: NumberRangeOptions): number;
/**
 * Generate a random boolean with optional probability
 */
export declare function generateBoolean(probability?: number): boolean;
/**
 * Generate a random string
 */
export declare function generateString(minLength?: number, maxLength?: number, charset?: 'alphanumeric' | 'alpha' | 'numeric' | 'ascii'): string;
/**
 * Generate a string with specific options
 */
export declare function generateStringWithOptions(options: StringGenerationOptions): string;
/**
 * Generate a random date within a range
 */
export declare function generateDate(start?: Date | string, end?: Date | string, format?: 'iso' | 'timestamp' | 'date'): string | number | Date;
/**
 * Generate a date within a range with options
 */
export declare function generateDateInRange(options: DateRangeOptions): string | number | Date;
/**
 * Generate a random email address
 */
export declare function generateEmail(domain?: string): string;
/**
 * Generate a random name
 */
export declare function generateName(type?: 'first' | 'last' | 'full'): string;
/**
 * Generate a random phone number
 */
export declare function generatePhoneNumber(format?: string): string;
/**
 * Generate a random URL
 */
export declare function generateUrl(protocol?: 'http' | 'https'): string;
/**
 * Generate a random color
 */
export declare function generateColor(format?: 'hex' | 'rgb' | 'hsl'): string;
/**
 * Generate a random array
 */
export declare function generateArray<T>(options: ArrayGenerationOptions<T>): T[];
/**
 * Pick a random item from an array
 */
export declare function pickRandom<T>(items: T[]): T;
/**
 * Pick multiple random items from an array
 */
export declare function pickRandomMultiple<T>(items: T[], count: number, unique?: boolean): T[];
/**
 * Generate a random person
 */
export declare function generatePerson(options?: PersonMockOptions): any;
/**
 * Generate a random company
 */
export declare function generateCompany(options?: CompanyMockOptions): any;
/**
 * Generate a random address
 */
export declare function generateAddress(options?: AddressMockOptions): any;
//# sourceMappingURL=data-generators.d.ts.map