import Crypto from '../crypto';
import Shardus from '../shardus';
export declare let memoryReportingInstance: MemoryReporting;
type MemItem = {
    category: string;
    subcat: string;
    itemKey: string;
    count: number;
};
declare class MemoryReporting {
    crypto: Crypto;
    report: MemItem[];
    shardus: Shardus;
    lastCPUTimes: object[];
    constructor(shardus: Shardus);
    registerEndpoints(): void;
    private addNodesToReport;
    getMemoryStringBasic(): string;
    addToReport(category: string, subcat: string, itemKey: string, count: number): void;
    reportToStream(report: MemItem[], stream: any): void;
    gatherReport(): void;
    gatherStateManagerReport(): void;
    getCPUTimes(): object[];
    cpuPercent(): number;
    roundTo3decimals(num: number): number;
    systemProcessReport(): void;
    getShardusNetReport(): object;
    addNetStatsToReport(): void;
}
export default MemoryReporting;
