# generated by datamodel-codegen:
#   filename:  memory.json

from __future__ import annotations

from pydantic import BaseModel, Extra, Field


class LastUpdated(BaseModel):
    """
    Last updated
    """

    swap_total: float | None = None
    swap_used: float | None = None
    swap_free: float | None = None
    swap_percent: float | None = None
    swap_sin: float | None = None
    swap_sout: float | None = None
    virtual_total: float | None = None
    virtual_available: float | None = None
    virtual_percent: float | None = None
    virtual_used: float | None = None
    virtual_free: float | None = None


class Memory(BaseModel):
    """
    Memory
    """

    class Config:
        extra = Extra.allow

    id: str | None = Field(None, description="Event ID")
    swap_total: int | None = None
    swap_used: int | None = None
    swap_free: float | None = None
    swap_percent: float | None = None
    swap_sin: int | None = None
    swap_sout: int | None = None
    virtual_total: int | None = None
    virtual_available: int | None = None
    virtual_percent: float | None = None
    virtual_used: int | None = None
    virtual_free: int | None = None
    last_updated: LastUpdated | None = Field(None, description="Last updated")
