typescript-util
Version:
JS/TS 的简单工具
131 lines • 3.68 kB
TypeScript
/**
* 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