import { Metadata } from "../Metadata";
import { type HasMetadata } from "../repo/ResourceRepo";

export class Node implements HasMetadata
{
    constructor (
        public metadata: Metadata,
        public metrics: NodeMetrics,
        public status: Status
    ) { }
}

class NodeMetrics
{
    absoluteCpuUsage?: number;
    relativeCpuUsage?: number;
    absoluteMemory?: number;
    relativeMemory?: number;
    runningPods?: number;
    relativeDiskUsage?: number;
    totalDiskSpace?: number;

}

class Status
{
    conditions?: Condition[]
}

class Condition
{
    type?: string;
    status?: string;
}