# System

**Kind:** Service

**Source:** `Pams/Logic/Common/Pams.Common.csproj` (line 1)

**Part of:** [Pams](subsystem-pams)

NuGet package dependency

`System` is a NuGet package dependency declared by `Pams.Common.csproj`. It provides .NET framework types required when the common PAMS project is restored and compiled.

## Diagram

```mermaid
sequenceDiagram
    participant Developer
    participant NuGet
    participant Project as Pams.Common.csproj
    participant Build as MSBuild

    Developer->>NuGet: Restore project dependencies
    NuGet->>Project: Resolve System package reference
    NuGet-->>Build: Provide restored package assets
    Build->>Project: Compile common project
```

## Usage

```ts
import { execFileSync } from "node:child_process";

const projectPath = "Pams/Logic/Common/Pams.Common.csproj";

execFileSync("nuget", ["restore", projectPath], {
  stdio: "inherit",
});

execFileSync("msbuild", [projectPath], {
  stdio: "inherit",
});
```

## AI Coding Instructions

- Keep the `System` dependency declaration aligned with the existing legacy project format.
- Restore NuGet dependencies before building `Pams.Common.csproj`.
- Do not treat this package as a JavaScript runtime dependency; it is resolved during the .NET restore and build process.
- Update package references through the project’s existing NuGet configuration rather than adding unrelated dependency formats.
