<!-- source-hash: 2db0b6673e5d8f02f2a3713fb6528d5d -->
Renders the appropriate logo icon for a given MSP tool type (Fleet MDM, MeshCentral, TacticalRMM, Authentik, Osquery, or OpenFrame variants).

## Key Components

### `toolIconMap`
Internal mapping from each `ToolType` value to its corresponding icon renderer function. OpenFrame variants (`OPENFRAME`, `OPENFRAME_CHAT`, `OPENFRAME_CLIENT`) all share `renderOpenFrameLogo`, while `SYSTEM` renders nothing (`null`).

### `ToolIconProps`
| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `toolType` | `ToolType` | required | The tool whose icon should be rendered |
| `size` | `number` | `16` | Width/height passed to the icon component |
| `className` | `string` | — | Optional CSS class override |

### `ToolIcon`
A functional React component that looks up the icon renderer from `toolIconMap` and invokes it with `size` and `className`. Returns `null` for unknown or `SYSTEM` tool types.

## Usage Example

```typescript
import { ToolIcon } from "./tool-icon";
import { ToolTypeValues } from "../types/tool.types";

// Render a Fleet MDM icon at default size (16px)
<ToolIcon toolType={ToolTypeValues.FLEET_MDM} />

// Render a TacticalRMM icon at 24px with a custom class
<ToolIcon
  toolType={ToolTypeValues.TACTICAL_RMM}
  size={24}
  className="h-6 w-6 text-accent"
/>

// Renders nothing — SYSTEM has no visual icon
<ToolIcon toolType={ToolTypeValues.SYSTEM} />
```