UNPKG

typescript-util

Version:

JS/TS 的简单工具

131 lines 3.68 kB
/** * StorageUnit * @author LL * @date 2022/1/25 14:54 */ export declare class StorageUnit { private static readonly BYTE_VALUE; private static readonly KB_VALUE; private static readonly MB_VALUE; private static readonly GB_VALUE; private static readonly TB_VALUE; private static readonly PB_VALUE; /** * 静态实例: 字节 * @type {StorageUnit} */ static readonly BYTE: StorageUnit; /** * 静态实例: 千字节 * @type {StorageUnit} */ static readonly KB: StorageUnit; /** * 静态实例: 兆字节 * @type {StorageUnit} */ static readonly MB: StorageUnit; /** * 静态实例: GB * @type {StorageUnit} */ static readonly GB: StorageUnit; /** * 静态实例: TB * @type {StorageUnit} */ static readonly TB: StorageUnit; /** * 静态实例: PB * @type {StorageUnit} */ static readonly PB: StorageUnit; /** * 当前单位 一个单位的字节数 * @type {number} * @private */ private readonly value; /** * 当前单位 视图名称 * @type {string} * @private */ private readonly name; constructor(value: number, name: string); /** * 转换到字节 * 如果可能溢出, 按照JS正常规则溢出到负数 * @param {number} size * @returns {number} */ toByte(size?: number): number; /** * 转换到KB * 如果可能溢出, 按照JS正常规则溢出到负数 * 如果从更小的单位转换 会丢失精度 * @param {number} size */ toKByte(size: number): number; /** * 转换到MB * 如果可能溢出, 按照JS正常规则溢出到负数 * 如果从更小的单位转换 会丢失精度 * @param {number} size */ toMByte(size: number): number; /** * 转换到GB * 如果可能溢出, 按照JS正常规则溢出到负数 * 如果从更小的单位转换 会丢失精度 * @param {number} size */ toGByte(size: number): number; /** * 转换到TB * 如果可能溢出, 按照JS正常规则溢出到负数 * 如果从更小的单位转换 会丢失精度 * @param {number} size */ toTBType(size: number): number; /** * @param size 数量 * @param current 当前单位字节 * @param {number} number 右移位 */ private convert; /** * checkSize 小于 指定数量 * @param {number} checkSize 待检查字节数 * @param {number} unitSize 当前单位数量 默认 1 * @returns {boolean} 小于 */ lt(checkSize: number, unitSize?: number): boolean; lte(checkSize: number, unitSize?: number): boolean; /** * checkSize 大于指定数量 * @param {number} checkSize 待检查字节数 * @param {number} unitSize 当前单位数量 默认 1 * @returns {boolean} 大于 */ gt(checkSize: number, unitSize?: number): boolean; gte(checkSize: number, unitSize?: number): boolean; /** * 相等 */ eq(checkSize: number, unitSize?: number): boolean; /** * 友好的显示, 类似 {@code ls -h} * @param {number} size 字节数 * @param {number} decimal 小数位数, 默认两位 * @return {string} 带有可读单位的描述 例: 123 KB */ static displayName(size: number, decimal?: number): string; /** * 确定单位 * @param {number} size 字节数 * @return {StorageUnit} 合适的单位, 最大PB 永不为空 */ static determineUnit(size: number): StorageUnit; } //# sourceMappingURL=StorageUnit.d.ts.map