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