@dbs-portal/tool-mock
Version:
API mocking toolkit using MSW for DBS Portal development workflows
81 lines • 2.73 kB
TypeScript
/**
* 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