import { Cache, StateObject } from "@hpcc-js/util";
import { IConnection, IOptions } from "../connection";
import { WsMachine, MachineService } from "../services/wsMachine";
export declare class MachineCache extends Cache<{
    Address: string;
}, Machine> {
    constructor();
}
export interface MachineInfoEx extends WsMachine.MachineInfoEx {
}
export declare class Machine extends StateObject<MachineInfoEx, MachineInfoEx> implements MachineInfoEx {
    protected connection: MachineService;
    readonly Address: string;
    readonly ConfigAddress: string;
    readonly Name: string;
    readonly ProcessType: string;
    readonly DisplayType: string;
    readonly Description: string;
    readonly AgentVersion: string;
    readonly Contact: string;
    readonly Location: string;
    readonly UpTime: string;
    readonly ComponentName: string;
    readonly ComponentPath: string;
    readonly RoxieState: string;
    readonly RoxieStateDetails: string;
    readonly OS: number;
    readonly ProcessNumber: number;
    readonly Channels: number;
    readonly Processors: WsMachine.Processors;
    readonly Storage: WsMachine.Storage;
    readonly Running: WsMachine.Running;
    readonly PhysicalMemory: WsMachine.PhysicalMemory;
    readonly VirtualMemory: WsMachine.VirtualMemory;
    readonly ComponentInfo: WsMachine.ComponentInfo;
    readonly Exception: string;
    static attach(optsConnection: IOptions | IConnection | MachineService, address: string, state?: WsMachine.MachineInfoEx): Machine;
    private constructor();
}
//# sourceMappingURL=machine.d.ts.map
