UNPKG

node-os-utils

Version:

Advanced cross-platform operating system monitoring utilities with TypeScript support

135 lines 2.55 kB
import { MonitorError } from './errors'; /** * 监控结果统一返回类型 */ export type MonitorResult<T> = { success: true; data: T; timestamp: number; cached: boolean; platform: string; } | { success: false; error: MonitorError; platform: string; timestamp: number; }; /** * 数据单位处理类 */ export declare class DataSize { readonly bytes: number; constructor(bytes: number); /** * 获取字节数 */ toBytes(): number; /** * 转换为 KB */ toKB(): number; /** * 转换为 MB */ toMB(): number; /** * 转换为 GB */ toGB(): number; /** * 转换为 TB */ toTB(): number; /** * 自动选择合适的单位并格式化 */ toString(unit?: 'auto' | 'B' | 'KB' | 'MB' | 'GB' | 'TB'): string; /** * 创建 DataSize 实例的静态方法 */ static fromBytes(bytes: number): DataSize; static fromKB(kb: number): DataSize; static fromMB(mb: number): DataSize; static fromGB(gb: number): DataSize; } /** * 时间戳处理类 */ export declare class Timestamp { private readonly time; constructor(time?: number); /** * 距离现在多久(毫秒) */ ago(): number; /** * 格式化为 ISO 字符串 */ format(): string; /** * 格式化为本地时间字符串 */ toLocalString(): string; /** * 获取原始时间戳 */ valueOf(): number; /** * 创建当前时间戳 */ static now(): Timestamp; /** * 从特定时间创建时间戳 */ static from(time: number | Date): Timestamp; } /** * 监控订阅接口 */ export interface MonitorSubscription { /** * 取消订阅 */ unsubscribe(): void; /** * 检查是否仍然活跃 */ isActive(): boolean; /** * 暂停监控 */ pause(): void; /** * 恢复监控 */ resume(): void; /** * 获取订阅状态 */ getStatus(): 'active' | 'paused' | 'stopped'; } /** * 百分比类型 */ export type Percentage = number; /** * 频率类型(Hz) */ export type Frequency = number; /** * 温度类型(摄氏度) */ export type Temperature = number; /** * 支持的平台类型 */ export type Platform = 'linux' | 'darwin' | 'win32'; /** * 监控间隔类型(毫秒) */ export type Interval = number; /** * 进程 ID 类型 */ export type ProcessId = number; //# sourceMappingURL=common.d.ts.map