UNPKG

@imaginerlabs/user-agent-generator

Version:

High-performance, configurable, batch-generating User-Agent spoofing library. Supports multiple browsers, devices, and returns detailed meta information. Perfect for web scraping, automated testing, proxy pools and more.

55 lines (54 loc) 2.1 kB
/** * Utility Functions Module * 工具函数模块 * * This module provides utility functions for the User-Agent generator * 该模块为 User-Agent 生成器提供工具函数 */ /** * Read version numbers array from specified data file (supports string or {value, weight}) * 从指定的数据文件中读取版本号数组(支持字符串或 {value, weight} 格式) * * @param file Filename (e.g., chrome.json) / 文件名(如 chrome.json) * @returns Array of version numbers / 版本号数组 */ export declare function readVersions(file: string): (string | { value: string; weight: number; })[]; /** * Pick a random item from an array * 从数组中随机选择一个元素 * * @param array Array to pick from / 要选择的数组 * @param random Optional random number (0-1) / 可选的随机数(0-1) * @returns Random item from array / 数组中的随机元素 */ export declare function pickRandom<T>(array: T[], random?: number): T; /** * Pick a random item from a weighted array * 从带权重的数组中随机选择一个元素 * * @param array Array of {value, weight} objects / {value, weight} 对象数组 * @param random Optional random number (0-1) / 可选的随机数(0-1) * @returns Random value based on weights / 基于权重的随机值 */ export declare function pickWeightedRandom<T extends { value: any; weight: number; }>(array: T[], random?: number): T['value']; /** * Pick a random version from a weighted version array with subValues * 从带权重的版本数组中随机选择一个版本,并从其 subValue 数组中随机选择具体版本号 * * @param array Array of {value, weight, subValue} objects / {value, weight, subValue} 对象数组 * @param random Optional random number (0-1) / 可选的随机数(0-1) * @returns Random subValue based on weights / 基于权重的随机子版本号 */ export declare function pickWeightedVersionWithSubValue<T extends { value: any; weight: number; subValue: { value: string; }[]; }>(array: T[], random?: number): string;