import { BaseMonitor } from '../core/base-monitor';
import { MonitorResult, CPUConfig, CPUInfo, CPUUsage, LoadAverage, Temperature, FrequencyInfo } from '../types';
import { PlatformAdapter } from '../types/platform';
import { CacheManager } from '../core/cache-manager';
/**
 * CPU 监控器
 *
 * 提供 CPU 相关的监控功能，包括基本信息、使用率、温度、频率等
 */
export declare class CPUMonitor extends BaseMonitor<CPUInfo> {
    private cpuConfig;
    constructor(adapter: PlatformAdapter, config?: CPUConfig, cache?: CacheManager);
    /**
     * 获取 CPU 基本信息
     */
    info(): Promise<MonitorResult<CPUInfo>>;
    /**
     * 获取 CPU 使用率
     */
    usage(): Promise<MonitorResult<number>>;
    /**
     * 获取详细的 CPU 使用率信息
     */
    usageDetailed(): Promise<MonitorResult<CPUUsage>>;
    /**
     * 获取每个 CPU 核心的使用率
     */
    usageByCore(): Promise<MonitorResult<number[]>>;
    /**
     * 获取系统负载平均值
     */
    loadAverage(): Promise<MonitorResult<LoadAverage>>;
    /**
     * 获取 CPU 温度
     */
    temperature(): Promise<MonitorResult<Temperature[]>>;
    /**
     * 获取 CPU 频率信息
     */
    frequency(): Promise<MonitorResult<FrequencyInfo[]>>;
    /**
     * 获取 CPU 缓存信息
     */
    getCacheInfo(): Promise<MonitorResult<any>>;
    /**
     * 获取 CPU 核心数
     */
    coreCount(): Promise<MonitorResult<{
        physical: number;
        logical: number;
    }>>;
    /**
     * 配置采样间隔
     */
    withSamplingInterval(interval: number): this;
    /**
     * 配置是否包含温度信息
     */
    withTemperature(include: boolean): this;
    /**
     * 配置是否包含频率信息
     */
    withFrequency(include: boolean): this;
    /**
     * 配置是否包含缓存信息
     */
    withCacheInfo(include: boolean): this;
    /**
     * 配置是否按核心监控
     */
    withPerCore(enable: boolean): this;
    /**
     * 获取默认配置
     */
    protected getDefaultConfig(): CPUConfig;
    /**
     * 转换 CPU 基本信息
     */
    private transformCPUInfo;
    /**
     * 转换 CPU 使用率信息
     */
    private transformCPUUsage;
    /**
     * 转换负载平均值
     */
    private transformLoadAverage;
    /**
     * 转换温度信息
     */
    private transformTemperature;
    /**
     * 转换缓存信息
     */
    private transformCacheInfo;
    /**
     * 提取频率信息
     */
    private extractFrequencyInfo;
    /**
     * 提取缓存信息
     */
    private extractCacheInfo;
    /**
     * 解析缓存大小字符串
     */
    private parseCacheSize;
    /**
     * 安全解析数字
     */
    private safeParseNumber;
    /**
     * 获取系统负载平均值（同步版本，向后兼容）
     * @returns 负载平均值数组 [1分钟, 5分钟, 15分钟] 或 'not supported'
     */
    loadavg(): number[] | string;
    /**
     * 获取指定时间窗口的负载平均值（同步版本，向后兼容）
     * @param minutes 时间窗口（1, 5, 或 15 分钟）
     * @returns 指定时间窗口的负载平均值或 'not supported'
     */
    loadavgTime(minutes: 1 | 5 | 15): number | string;
    /**
     * 获取 CPU 平均信息（同步版本，向后兼容）
     * Get CPU average info (sync, for backward compatibility)
     *
     * @deprecated
     * 此方法在 Windows 及 Deno 等环境下 `usage` 固定返回 0，无法反映真实 CPU 使用率。
     * This method always returns `usage: 0` on Windows and Deno-like environments,
     * and cannot reflect real-time CPU utilization.
     *
     * 请迁移到异步方法 / Please migrate to the async API:
     * ```ts
     * const result = await osUtils.cpu.usage();
     * if (result.success) console.log(result.data); // 实时 CPU 使用率（%） / real-time CPU usage (%)
     * ```
     * 此方法将在未来版本中移除。/ This method will be removed in a future release.
     *
     * @returns CPU 平均信息对象或 'not supported' / CPU average info object or 'not supported'
     */
    average(): any;
    /**
     * 获取 CPU 型号（同步版本，向后兼容）
     * @returns CPU 型号字符串或 'not supported'
     */
    model(): string;
    /**
     * 获取 CPU 核心数（同步版本，向后兼容）
     * @returns CPU 核心数或 'not supported'
     */
    count(): number | string;
}
//# sourceMappingURL=cpu-monitor.d.ts.map