/**
 * 性能监控数据接口
 */
export interface PerformanceData {
    currentSpeed: number;
    averageSpeed: number;
    peakSpeed: number;
    memoryUsage?: {
        used: number;
        total: number;
        percentage: number;
    };
    activeConnections: number;
    bytesTransferred: number;
    elapsedTime: number;
    estimatedTimeRemaining?: number;
    activeFiles: number;
    totalFiles: number;
    timestamp: number;
}
/**
 * 性能监控器
 * 监控上传速度、内存使用、连接数等性能指标
 */
export declare class PerformanceMonitor {
    private enabled;
    private startTime;
    private lastMeasureTime;
    private lastBytesTransferred;
    private totalBytesTransferred;
    private speedHistory;
    private peakSpeed;
    private activeConnections;
    private activeFiles;
    private totalFiles;
    private maxHistorySize;
    constructor(enabled?: boolean);
    /**
     * 启用/禁用性能监控
     */
    setEnabled(enabled: boolean): void;
    /**
     * 检查是否启用
     */
    isEnabled(): boolean;
    /**
     * 重置监控数据
     */
    reset(): void;
    /**
     * 记录字节传输
     */
    recordBytesTransferred(bytes: number): void;
    /**
     * 设置活跃连接数
     */
    setActiveConnections(count: number): void;
    /**
     * 设置文件数量
     */
    setFileStats(active: number, total: number): void;
    /**
     * 计算当前速度
     */
    private calculateCurrentSpeed;
    /**
     * 更新速度历史
     */
    private updateSpeedHistory;
    /**
     * 计算平均速度
     */
    private calculateAverageSpeed;
    /**
     * 获取内存使用情况
     */
    private getMemoryUsage;
    /**
     * 计算预估剩余时间
     */
    private calculateEstimatedTimeRemaining;
    /**
     * 获取性能数据
     */
    getPerformanceData(remainingBytes?: number): PerformanceData;
    /**
     * 格式化速度为人类可读格式
     */
    static formatSpeed(bytesPerSecond: number): string;
    /**
     * 格式化时间为人类可读格式
     */
    static formatTime(milliseconds: number): string;
    /**
     * 格式化内存大小为人类可读格式
     */
    static formatBytes(bytes: number): string;
}
//# sourceMappingURL=PerformanceMonitor.d.ts.map