import { BaseMonitor } from '../core/base-monitor';
import { MonitorResult, DiskConfig, DiskInfo, DiskUsage, DiskStats, MountPoint, FileSystem, DataSize } from '../types';
import { PlatformAdapter } from '../types/platform';
import { CacheManager } from '../core/cache-manager';
/**
 * 磁盘监控器
 *
 * 提供磁盘相关的监控功能，包括空间使用、I/O统计、挂载点等
 */
export declare class DiskMonitor extends BaseMonitor<DiskInfo[]> {
    private diskConfig;
    constructor(adapter: PlatformAdapter, config?: DiskConfig, cache?: CacheManager);
    /**
     * 获取所有磁盘信息
     */
    info(): Promise<MonitorResult<DiskInfo[]>>;
    /**
     * 获取指定磁盘的信息
     */
    infoByDevice(device: string): Promise<MonitorResult<DiskInfo | null>>;
    /**
     * 获取磁盘使用情况
     */
    usage(): Promise<MonitorResult<DiskUsage[]>>;
    /**
     * 获取总体磁盘使用率（百分比）
     */
    overallUsage(): Promise<MonitorResult<number>>;
    /**
     * 获取指定挂载点的使用情况
     */
    usageByMountPoint(mountPoint: string): Promise<MonitorResult<DiskUsage | null>>;
    /**
     * 获取磁盘 I/O 统计
     */
    stats(): Promise<MonitorResult<DiskStats[]>>;
    /**
     * 获取挂载点信息
     */
    mounts(): Promise<MonitorResult<MountPoint[]>>;
    /**
     * 获取文件系统信息
     */
    filesystems(): Promise<MonitorResult<FileSystem[]>>;
    /**
     * 获取磁盘空间总览
     */
    spaceOverview(): Promise<MonitorResult<{
        total: DataSize;
        used: DataSize;
        available: DataSize;
        usagePercentage: number;
        disks: number;
    }>>;
    /**
     * 获取磁盘健康状态检查
     */
    healthCheck(): Promise<MonitorResult<{
        status: 'healthy' | 'warning' | 'critical';
        issues: string[];
        checks: {
            spaceUsage: boolean;
            mountStatus: boolean;
            ioErrors: boolean;
        };
    }>>;
    /**
     * 配置是否包含 I/O 统计
     */
    withStats(include: boolean): this;
    /**
     * 配置排除的文件系统类型
     */
    withExcludeTypes(types: string[]): this;
    /**
     * 配置只监控指定的挂载点
     */
    withMountPoints(mountPoints: string[]): this;
    /**
     * 配置磁盘单位
     */
    withUnit(unit: 'auto' | 'B' | 'KB' | 'MB' | 'GB' | 'TB'): this;
    /**
     * 获取默认配置
     */
    protected getDefaultConfig(): DiskConfig;
    /**
     * 转换磁盘基本信息
     */
    private transformDiskInfo;
    /**
     * 转换磁盘使用情况
     */
    private transformDiskUsage;
    /**
     * 转换磁盘 I/O 统计
     */
    private transformDiskStats;
    /**
     * 转换挂载点信息
     */
    private transformMountPoints;
    /**
     * 转换文件系统信息
     */
    private transformFileSystems;
    /**
     * 计算使用率百分比
     */
    private calculateUsagePercentage;
    /**
     * 判断是否应该包含该磁盘
     */
    private shouldIncludeDisk;
    /**
     * 规范化设备类型
     */
    private normalizeDeviceType;
    /**
     * 安全解析数字
     */
    private safeParseNumber;
    /**
     * 获取指定路径的空闲磁盘空间（同步版本，向后兼容）
     * @param path 路径（默认为根目录）
     * @returns 空闲磁盘空间对象或 'not supported'
     */
    free(path?: string): any;
    /**
     * 获取指定路径的已用磁盘空间（同步版本，向后兼容）
     * @param path 路径（默认为根目录）
     * @returns 已用磁盘空间对象或 'not supported'
     */
    used(path?: string): any;
}
//# sourceMappingURL=disk-monitor.d.ts.map